Artificial Intelligence for Simple Games

Course content

  • Installation
  • Get the materials
  • Genetic Algorithms Intuition
  • Genetic Algorithms Practical
  • a-Learning
  • a-Learning Practical
  • Deep a-Learning with ANNs
  • Deep a-Learning Practical
  • Deep Convolutional Q-Learning
  • Deep Convolutional a-Learning Practical
  • ANNEX 1: Artificial Neural Networks
  • ANNEX 2: Convolutional Neural Networks
  • Congratulations!! Don’t forget your Prize 🙂

Learn Explainable AI (XAI)

About this course

The deep learning models that power AI systems are often black boxes. Explainable AI tries to understand how these models make decisions, so that we can use them responsibly. In this course, you will learn the basic techniques of Explainable AI, including Generative Adversarial Networks (GANs). You will also learn about legal rights to explanation, and the role of explanation in regulating AI.

Skills you’ll gain

  • Understand how neural networks function
  • Evaluate common Explainable AI methods
  • Understand legal rights to explanation

Intro to Generative AI

About this course

Artificial Intelligence is a fast-evolving field of technology that lets computers simulate human functions, such as learning and problem-solving. A subset of AI that’s been gaining traction recently is generative AI, which specializes in creating new content, be it text, images, audio, or videos. Take this course to learn about the different types of generative AI using interactive applets!

Skills you’ll gain

  • Understand what generative AI is
  • See the different types of generative AI
  • Study the ethics of using generative AI

ParlAI for Conversational AI Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

  • Knowledge of Python or other programming languages
  • General understanding of artificial intelligence (AI) concepts

Audience

  • Researchers
  • Developers

Overview

ParlAI is an open-source, Python-based platform that helps users train, configure, and test dialogue models for conversational AI. ParlAI integrates with existing chat services and provides various datasets and reference models to improve dialog AI research.

This instructor-led, live training (online or onsite) is aimed at researchers and developers who wish to install, configure, customize, and manage the ParlAI platform to develop their AI models.

By the end of this training, participants will be able to share, train, and evaluate AI models to build and develop conversational solutions across existing chat services.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Overview of ParlAI Features and Architecture

  • ParlAI framework
  • Key capabilities and goals
  • Core concepts (agents, messages, teachers, and worlds)

Getting Started with ParlAI for Conversational AI

  • Installation
  • Adding a simple model
  • Simple display data script
  • Validation and testing
  • Tasks
  • Agent training and evaluation
  • Interacting with models

Working with Tasks and Datasets in ParlAI

  • Adding datasets
  • Separating data into sets (train, valid, or test)
  • Using JSON instead of a text file
  • Creating and executing tasks

Exploring Worlds, Sharing, and Batching

  • The concept of Worlds
  • Agent sharing
  • Implementing batching
  • Dynamic batching

Using Torch Generator and Ranker Agents

  • Torch generator agent
  • Torch ranker agent
  • Example models
  • Creating models
  • Training and evaluating models

Adding Built-In and Custom Metrics

  • Standard metrics
  • Adding custom metrics
  • Teacher metrics
  • Agent level metrics (global and local)
  • List of metrics

Speeding up Training Runs in ParlAI

  • Setting a baseline
  • Skip generation command
  • Dynamic batching training command
  • Using FP16 and multiple GPUs
  • Background preprocessing

Exploring Other ParlAI Topics

  • Using and writing mutators
  • Running crowdsourcing tasks
  • Using existing chat services
  • Swapping out transformer subcomponents
  • Running and writing tests
  • ParlAI tips and tricks

Troubleshooting

Summary and Conclusion

Artificial Intelligence (AI) for Mechatronics Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • Basic understanding of computer science and engineering

Audience

  • Engineers

Overview

Mechatronics (a.k.a. mechatronic engineering) is a combination of mechanical, electronics and computer science.

This instructor-led, live training (online or onsite) is aimed at engineers who wish to learn about the applicability of artificial intelligence to mechatronic systems.

By the end of this training, participants will be able to:

  • Gain an overview of artificial intelligence, machine learning, and computational intelligence.
  • Understand the concepts of neural networks and different learning methods.
  • Choose artificial intelligence approaches effectively for real-life problems.
  • Implement AI applications in mechatronic engineering.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Overview of Artificial Intelligence (AI)

  • Machine learning
  • Computational intelligence

Understanding the Concepts of Neural Networks

  • Generative networks
  • Deep neural networks
  • Convolution neural networks

Understanding Various Learning Methods

  • Supervised learning
  • Unsupervised learning
  • Reinforcement learning
  • Semi-supervised learning

Other Computational Intelligence Algorithms

  • Fuzzy systems
  • Evolutionary algorithms

Exploring Artificial Intelligence Approaches to Optimization

  • Choosing AI Approaches Effectively

Learning about Stochastic Dynamic Programming

  • Relationship with AI

Implementing Mechatronic Applications with AI

  • Medicine
  • Rescue
  • Defense
  • Industry-agnostic trend

Case Study: The Intelligent Robotic Car

Programming the Major Systems of a Robot

  • Planning the Project

Implementing AI Capabilities

  • Searching and Motion Control
  • Localization and Mapping
  • Tracking and Controlling

Summary and Next Steps

Artificial Intelligence (AI) with H2O Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

  • Programming experience in Python, R, Scala, or Java.

Audience

  • Data scientists
  • Data analysts
  • Developers

Overview

H2O is an open source predictive analytics platform. It supports R, Python, Scala, Java and REST.

This instructor-led, live training (online or onsite) is aimed at technical persons who wish to build machine learning models using algorithms such as GLM, Deep Learning and Random Forests.

By the end of this training, participants will be able to:

  • Install and configure H2O.
  • Create machine learning models using different popular algorithms.
  • Evaluate models based on the type of data and business requirements.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.
  • To learn more about H2O, please visit: https://www.h2o.ai/

Course Outline

Introduction

Setting up H2O

Overview of H2O Features and Architecture

Navigating the H2O WebUI

Preparing the Dataset

Working with Decision Tree Models

Creating a Linear Model

Real-time Data Scoring in H2O

Creating a Random Forest Model

Creating GBMs

Analyzing Hadoop Data 

Creating a Deep Learning Model

Creating an Unsupervised Learning Model

Using H2O AutoML to Automate the Model Evaluation Process

Troubleshooting

Summary and Conclusion

Artificial Intelligence (AI) in Automotive Training Course

Duration

14 hours (usually 2 days including breaks)

Requirements

The participants must have programming experience (any language) and engineering background, but are not required to write any code during the course.

Overview

This course covers AI (emphasizing Machine Learning and Deep Learning) in Automotive Industry. It helps to determine which technology can be (potentially) used in multiple situation in a car: from simple automation, image recognition to autonomous decision making.

Course Outline

Current state of the technology

  • What is used
  • What may be potentially used

Rules based AI 

  • Simplifying decision

Machine Learning 

  • Classification
  • Clustering
  • Neural Networks
  • Types of Neural Networks
  • Presentation of working examples and discussion

Deep Learning

  • Basic vocabulary 
  • When to use Deep Learning, when not to
  • Estimating computational resources and cost
  • Very short theoretical background to Deep Neural Networks

Deep Learning in practice (mainly using TensorFlow)

  • Preparing Data
  • Choosing loss function
  • Choosing appropriate type on neural network
  • Accuracy vs speed and resources
  • Training neural network
  • Measuring efficiency and error

Sample usage

  • Anomaly detection
  • Image recognition
  • ADAS

From Zero to AI Training Course

Duration

35 hours (usually 5 days including breaks)

Requirements

None. All concepts like probability and statistics will be explained during this course. If you are already familiar with probability and statistics, please refer to our course code aiint.

Overview

This course is created for people who have no previous experience in probability and statistics.

Course Outline

Probability (3.5h)

  • Definition of probability
  • Binomial distribution
  • Everyday usage exercises

Statistics (10.5h)

  • Descriptive Statistics
  • Inferential Statistics
  • Regression
  • Logistic Regression
  • Exercises

Introduction to Programming (3.5h)

  • Procedural Programming
  • Functional Programming
  • OOP Programming
  • Exercises (writing logic for a game of choice, e.g. noughts and crosses)

Machine Learning (10.5h)

  • Classification
  • Clustering
  • Neural Networks
  • Exercises (write AI for a computer game of choice)

Rules Engines and Expert Systems (7 hours)

  • Intro to Rule Engines
  • Write AI for the same game and combine solutions into hybrid approach

AI and Robotics for Nuclear Training Course

Duration

80 hours (usually 12 days including breaks)

Requirements

  • Programming experience in C or C++
  • Programming experience in Python (useful but not necessary; can be taught as part of course)
  • Experience with Linux command line

Audience

  • Developers
  • Engineers
  • Scientists
  • Technicians

Overview

Robotics and Artificial Intelligence (AI) are powerful tools for the development of safety systems in nuclear facilities.

In this instructor-led, live training (online or onsite), participants will learn the different technologies, frameworks and techniques for programming different types of robots to be used in the field of nuclear technology and environmental systems.

The 4-week course is held 5 days a week. Each day is 4-hours long and consists of lectures, discussions, and hands-on robot development in a live lab environment. Participants will complete various real-world projects applicable to their work in order to practice their acquired knowledge.

The target hardware for this course will be simulated in 3D through simulation software. The code will then be loaded onto physical hardware (Arduino or other) for final deployment testing. The ROS (Robot Operating System) open-source framework, C++ and Python will be used for programming the robots.

By the end of this training, participants will be able to:

  • Understand the key concepts used in robotic technologies.
  • Understand and manage the interaction between software and hardware in a robotic system.
  • Understand and implement the software components that underpin robotics.
  • Build and operate a simulated mechanical robot that can see, sense, process, navigate, and interact with humans through voice.
  • Understand the necessary elements of artificial intelligence (machine learning, deep learning, etc.) applicable to building a smart robot.
  • Implement filters (Kalman and Particle) to enable the robot to locate moving objects in its environment.
  • Implement search algorithms and motion planning.
  • Implement PID controls to regulate a robot’s movement within an environment.
  • Implement SLAM algorithms to enable a robot to map out an unknown environment.
  • Test and troubleshoot a robot in realistic scenarios.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

About the Hardware

  • Hardware kits will be confirmed by the instructor before the training. Kits will more-or-less contain the following components:
    • Arduino board
    • Motor controller
    • Distance sensor
    • Bluetooth slave
    • Prototyping board and cables
    • USB cable
    • Vehicle kit
  • Participants will need to provision their own hardware.

Course Customization Options

  • To customize any part of this course (programming language, robot model, microcontroller, etc.) please contact us to arrange.

Course Outline

Week 01

Day 01

Introduction

  • What Makes a Robot smart?

Physical vs Virtual Robots

  • Smart Robots, Smart Machines, Sentient Machines and Robotic Process Automation (RPA), etc.

The Role of Artificial Intelligence (AI) in Robotics

  • Beyond “if-then-else” and the learning machine
  • The algorithms behind AI
  • Machine learning, computer vision, natural language processing (NLP), etc.
  • Cognitive robotics

Day 02

The Role of Big Data in Robotics

  • Decision-making based on data and patterns

The Cloud and Robotics

  • Linking robotics with IT
  • Building more functional robots that access more information and collaborate

Case Study: Industrial Robots

  • Mechanical Robots
    • Baxter
  • Robots in Nuclear Facilities
    • Radiation detection and protection
  • Robots in Nuclear Reactors
    • Radiation detection and protection

Day 03

Hardware Components of a Robot

  • Motors, sensors, microcontrollers, cameras, etc.

Common Elements of Robots

  • Machine vision, voice recognition, speech synthesis, proximity sensing, pressure sensing, etc.

Day 04

Development Frameworks for Programming a Robot

  • Open source and commercial frameworks
  • Robot Operating System (ROS)
    • Architecture: workspace, topics, messages, services, nodes, actionlibs, tools, etc.

Languages for Programming a Robot

  • C++ for low level controlling
  • Python for orchestration
  • Programming ROS nodes in Python and C ++
  • Other languages

Day 05

Tools for Simulating a Physical Robot

  • Commercial and open source 3D simulation and visualization software

Tools for Designing the Physical Characteristics of a Robot

  • Commercial and open source CAD software

Case Study: Mechanical Robots

  • Robots in the nuclear technology field
  • Robots in environmental systems

Week 02

Day 06

Crash Course in Python

  • Software installation and setup
  • Useful packages and utilities
  • Working with Python data structures, operators, loops, conditionals, functions, methods, etc.
  • Writing a sample program
  • Team project

Day 07

Preparing for Robot Development

  • Setting up the development environment (e.g., Arduino IDE)
  • Exploring the Arduino language (C/C++) syntax
  • Coding, compiling, and uploading to the microcontroller
  • Assembling the hardware components of an Arduino robot

Day 08

Working with Arduino Components

  • Analog sensors
  • Digital sensors

Working with Arduino Communication Modules

  • Bluetooth Modules
  • Wi-Fi Modules
  • RFID Modules
  • I2C and SPI
  • Mobile internet

Day 09

Constructing a Robot

  • Planning the features and characteristics of a robot
  • Implementing robot movement

Team project

  • Discussion and review

Day 10

Controlling the Robot

  • Implementing the controller
  • Connecting to the robot (wired and wirelessly)

Team Project

  • Discussion and review

Week 03

Day 11

Programming the Robot

  • Simulating a robot with Gazebo / ROS
  • Understanding ROS node
  • Programming a node in Python and C ++
  • Messages and topics in ROS
  • Publication / subscription paradigm

Team Project

  • Bump & Go with real robot
  • Discussion and review

Day 12

Programming the Robot (continued…)

  • Frames in ROS and reference changes
  • 2D information processing of cameras with OpenCV
  • Information processing of a laser

Team Project

  • Safe tracking of objects by color
  • Discussion and review

Day 13

Testing the Robot

  • Tools for testing your code
  • Unit testing
  • Creating a test suite
  • Automating your tests
  • Troubleshooting

Team Project

  • Safe tracking of objects by color
  • Discussion and review

Day 14

Programming the Robot (Continued…)

  • Services in ROS
  • 3D information processing of RGB-D sensors with PCL
  • Maps and Navigation with ROS

Day 15

Programming the Robot (Continued…)

  • Completing tasks with ActionLib

Team Project

  • Search for objects in the environment

Week 04

Day 16

Programming the Robot (Continued…)

  • Completing tasks with ActionLib

Day 17

Programming the Robot (Continued…)

  • Speech Recognition and Speech Generation
  • Troubleshooting

Team Project

  • Controlling a robot using voice

Day 18

Programming the Robot (Continued…)

  • Controlling robotic arms with MoveIt!
  • Controlling robotic neck for active vision
  • Troubleshooting

Team Project

  • Search and collection of objects

Day 19

Deploying the Robot

  • Deploying the robot in the physical world
  • Monitoring and servicing robots in the field
  • Using a mobile app to control a robot

Securing the Robot

  • Preventing unauthorized tampering
  • Preventing hackers from viewing and stealing sensitive data

Day 20

Data Analytics

  • Collecting and organizing data generated by the robot
  • Making sense of the data through visualization tools and processes

Building a Robot Collaboratively

  • Building a robot in the cloud
  • Building a mobile app to interact with your robot
  • Joining the robotics community

Future Outlook for Robots in the Science and Energy Field

Summary and Conclusion

Artificial Intelligence (AI) for Managers Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

  • Familiarity with programming
  • Basic understanding of algorithms

Audience

  • Business leaders
  • Project managers

Overview

Artificial Intelligence (AI) is the simulation of human intelligence in machines that are programmed to think and act like humans. It covers a variety of technologies, such as machine learning and deep learning, and is used for various business and corporate applications to solve organizational challenges and needs.

This instructor-led, live training (online or onsite) is aimed at managers and business leaders who wish to learn about the fundamentals of artificial intelligence and manage AI projects for their organization.

By the end of this training, participants will be able to understand AI at a technical level and strategize using their organization’s data and resources to successfully manage AI projects.

Format of the Course

  • Interactive lecture and discussion.
  • Lots of exercises and practice.
  • Hands-on implementation in a live-lab environment.

Course Customization Options

  • To request a customized training for this course, please contact us to arrange.

Course Outline

Introduction

Overview of Artificial Intelligence (AI)

  • Machine learning systems

Exploring Applications for AI

  • AI in the corporate context

Learning About the Technology of AI

  • Underfit and overfit, classification, and regularization
  • Multi-layer perception (MLP) and deep learning
  • Convolutional and recurrent neural networks

Assessing Strategic Approaches

  • Commissioning or procurement (build or buy?)
  • AI maturity models for your organization

Working With Data in Your Organization

  • Data readiness evaluation
  • Word embeddings
  • Training with artificial data

Assessing AI Project Selection

  • Key criteria for project selection

Managing an AI Project

  • Machine learning versus deep learning
  • Project management (lifecycle, timescales, methodology)
  • Operations, maintenance, and risk management

Gathering Feedback

  • Implementing feedback methods (surveys, interviews, etc.)
  • Key stakeholders who will provide feedback
  • Analyzing results

Summary and Conclusion