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 Robotics Training Course

Duration

21 hours (usually 3 days including breaks)

Requirements

  • Programming experience
  • Basic understanding of computer science and engineering
  • Familiarity with probability concepts and linear algebra

Audience

  • Engineers

Overview

Robotics is an area in artificial intelligence (AI) that deals with the programming and designing of intelligent and efficient machines.

This instructor-led, live training (online or onsite) is aimed at engineers who wish to program and create robots through basic AI methods.

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

  • 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.

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) and Robotics

  • Computer-simulated versus physical
  • Robotics as a branch of AI
  • Applications for AI in robotics

Understanding Localization

  • Locating your robot
  • Using sensors to assess location and environment
  • Probability exercises

Learning About Robot Motion

  • Exact and inexact motions
  • Sense and move functions

Using Probability Tools

  • Bayes’ rule
  • Theorem of total probability

Estimating Vehicle State Using Kalman Filter

  • Gaussian processes
  • Measurement and motion
  • Kalman filtering (code, prediction, design, and matrices)

Tracking Your Robotic Car Using Particle Filter

  • State space dimension and brief modality
  • Robot class, robot world, and robot particles

Exploring Planning and Search Methods

  • A* search algorithm
  • Motion planning
  • Compute cost and optimal path

Programming Your AI Robot

  • First search program and expansion grid table
  • Dynamic programming
  • Computing value and optimal policy

Using PID Control

  • Robot motion and path smoothing
  • Implementing PID controller
  • Parameter optimization

Mapping and Tracking Using SLAM

  • Constraints
  • Landmarks
  • Implementing SLAM

Troubleshooting

Summary and Conclusion

AI in business and Society & The future of AI – AI/Robotics Training Course

Duration

7 hours (usually 1 day including breaks)

Requirements

There are no specific requirements needed to attend this course.

Overview

This is a classroom based training session in a presentation and Q&A format

Course Outline

  1. Introduction
    • Impacts of AI technologies on human society
    • Expectations and concerns regarding AI technologies
    • Features of AI technologies differ from previous technologies
    • AI and the Macroeconomy- technology and productivity growth
  2. Labor and automation
    • Research by Sector and Task
    • AI and the Nature of Work
    • Inequality and Redistribution
    • Impact on jobs and workforce
    • Diverste potential effects
  3. Bias and Inclusion
    • Where Bias Comes From
    • The AI Field is Not Diverse
    • Recent Developments in Bias Research
    • Emerging Strategies to Address Bias
  4. Rights​ ​and​ ​Liberties
    • Population Registries and Computing Power
    • Corporate and Government Entanglements
    • AI and the Legal System
    • AI and Privacy
  5. Ethics​ ​and​ ​Governance
    • Ethical Concerns in AI
    • AI Reflects Its Origins
    • Ethical Codes
    • Challenges and Concerns Going Forward
  6. Summary of Issues to be addressed
    • Ethical issues
    • Legal issues
    • Economic issues
    • Educational issues
    • Social issues
    • Research and Development issues
  7. The future and challenges of AI
    • Economics of AI-Driven automation
    • AI and the Labor Market
    • Misuse
    • Unpredictability

Python Programming – Basics and Hands On

Python programming starting with the basics along with practice of different programs on python software

Requirements

  • No prerequisites. Just desire to learn new things.

Description

Because of globalization and digital transformation the world of work is changing dramatically. And to cope up with this high Expectations of Marketplace, we will have to learn new skills.

Nowadays we are surrounded by all smart devices. This intelligence is emerged into these devices using programming.

There are many programming languages but we are going to learn a very simple but yet powerful programming language which is known as python. Python is used in many advanced applications nowadays like website development, artificial intelligence, robotics and many more.

After completion of this course, students will be able to install the python software on their system. They will be able to use different variables and use different operations on them according to the requirement. The requirements and the aim of programs are given. The students will be able to accept the input from user and use it in their program. They will also be able to use conditional expressions. The whole procedure to type the program, save it and to run it is shown. Using these hands on sessions, the confidence to run the program will be developed in the students. Also the logic development skills and critical thinking skills of the learners will be surely enhanced.

Who this course is for:

  • Engineering students, diploma students, enthusiastic school students

Course content

Python Masterclass 2021: Python for Everything[AI+ML+WebDev]

Master the complete basics of Python that will help you widely to work with latest tech fields AI, ML, Robotics, WebDev

Requirements

  • A computer with any operating system with internet connection

Description

Python Masterclass 2021: Python for Everything[AI+ML+WebDev]

Master the complete basics of Python that will help you widely to work with latest tech fields AI, ML, DS-ALGO, WebDev

So why learn Python?

Python is extremely versatile, with multiple uses

Just to name a few of its most common uses, Python is used in Data Mining, Data Science, AI, Machine Learning, Web Development, Web Frameworks, Embedded Systems, Graphic Design applications, Gaming, Network development, Product development, Rapid Application Development, Testing, Automation Scripting, the list goes on.

Python is used as an easier and more efficiently-written alternative to languages that perform similar functionalities like C, R, and Java. Therefore Python is growing in popularity as the primary language for many applications.

Python uses in Data Science and Machine Learning

Historically, the R programming language is most commonly used for data science. As Python code is considered easier to maintain and more scalable than R, Python has increased in popularity for data science – especially among professionals without advanced education in statistics or mathematical fields.

In the past few years, many packages have been developed for data analysis and machine learning using Python. This includes numpy and pandas, which allow users to understand and transform data; tensorflow, which is used to code machine learning algorithms; and pyspark, an API for working with Spark – a framework for easily working with large data sets.

These libraries enable your every day web developer to analyze large data trends, without having to learn the ins and outs of the more complex R.

What types of companies use Python?

Python is great for quick prototyping, hence is used extensively by startups to build their first minimum viable product (MVP). As a highly scalable language, Python is also used in the world’s largest and most sophisticated companies. Netflix discussed its uses of Python in everything from their Content Delivery Network (CDN) to their monitoring systems.

Google also loves Python programming for its solutions

Who this course is for:

  • Beginner Python Developers Curious about Development in Python

Course content

3 sections • 20 lectures • 1h 44m total length

The New Future with Ai Basic understanding & Ethics

What you’ll learn

Get a good basic understanding of Ai & Robotics, without being into software development

Learn how the World is going to be different and how we could make it the best ever with good Ethics

Understand the full power of Ai with simple examples

Understand the surprising Robotics production growth model

Requirements

  • No programming skills needed. I use everyday language and simple concepts.

Description

We are at the extremely special point in time where humanity transitions from biological intelligence to digital intelligence and a robotic workforce. I will go through what it will mean to our daily lives, the economy, jobs, income, production and property law. All done with a positive attitude but also a healthy sense of caution.

I have put in a lot of work creating this course and I truly hope it will help bring a useful and exciting perspective on the future.

At this point everyone should consider what the future could look like with A.i. and what can be done to get there the best way.

The neural network progress is substantial and this is a historic moment where we have to pay extra attention.

Overview:

This is intended for everyone who cares about our future with Ai and Robotics. No programming skills needed. I use everyday language and simple concepts.

Each video includes small exercises and thought experiments to help expand your understanding of A.i. and Robotics.

Learn how the World is going to be different and how we could make it the best ever with good Ethics.

Understand the full power of Ai with simple examples.

Understand the surprising Robotics production growth model.

Take part in Q & A where you can get feedback on your thoughts and questions related to the course.

Who this course is for:

  • This is intended for everyone who cares about our future with Ai and Robotics

Course content

Machine learning in industry

deep learning

Contenido:

  • Machine learning 
  • Machine Learning vs Deep Learning
  • Deep learning in computer vision
  • Possible applications of Machine learning in the industry
  • Benefits of Machine learning in the industry

The ‘machine learning’ is a part of artificial intelligence and consists in that machines learn from real data without being directly programmed for it. In this post we will see how to use the advantage that these algorithms can bring to the industry.

Machine learning 

Machine learning is a branch of artificial intelligence (AI) that allows machines to learn through algorithms. These algorithms learn from real data with which a model is generated. This model allows predicting what class or what type is a new data.

Within machine learning we find two types: supervised learning and unsupervised learning.

In supervised learning the data must be correctly labeled with the class to which it belongs, it is necessary to have a dataset with labels.

In the case of unsupervised learning, the data is entered into the model without any type of reference regarding the class to which they belong, and it is the same algorithm that classifies these data based on their characteristics.

This type of machine learning algorithms allow to detect patterns and classify new data from the trained models. For example, they can be used to detect faults or make decisions without the need for human intervention, which opens up many possibilities to automate processes that were not possible until the appearance of this type of algorithm.

These are some of the necessary phases to identify and carry out a project based on machine learning:

  • Data acquisition: images, numerical data, existing databases, etc. Large amounts of data are required.
  • Creation of the dataset from the data obtained. For the creation of the dataset it is necessary to carry out the labeling of all the data (supervised learning). Usually this task is done manually and is quite tedious.
  • Model training. The model is trained with part of the data from the dataset.
  • Evaluation of the model. To obtain the behavior of the model, it is evaluated with new data that have not been used during training.

Machine Learning vs Deep Learning

A few years ago a branch of machine learning emerged that is known as deep learning or Deep learning. Machine learning algorithms are based on regression equations and decision trees, among others. However, Deep learning algorithms use what are known as neural networks that in a way try to mimic the functioning of neurons in living organisms. They are a set of neurons connected to each other and that perform mathematical operations to extract parameters and characteristics, to finally obtain a classification result.

Deep learning in computer vision

Computervision combined with Deep learning allows solving more complex problems than traditional vision, using more robust algorithms based on the learning methods provided by Deep learning. With the advancement of this technology, problems can be addressed and solutions designed that until now were not feasible.

These types of applications are designed for complex and changing environments in which characteristics cannot be extracted with traditional algorithms. They are used in character recognition applications, inspection of surface defects, security applications among others.

Mainly, deep learning allows you to expand solutions that are limited to traditional vision applications.

Possible applications of Machine learning in the industry

Applications based on machine learning algorithms can be used in different sectors and to solve very different problems.

  • Quality systems: machine learning algorithms create models that allow, for example, to detect defects in parts. Surface type defects in manufacturing, painting, etc. They also allow quality checks in an assembly process, presence or absence of parts, inspect welds, etc.
  • Production: in production, vision systems and robotics are combined with machine learning algorithms to improve processes and increase productivity. It is possible to automate tasks with variability that a traditional robot could not carry out by itself: recognizing and locating types of parts, processes and variable paths, etc. This allows in many cases to reduce costs and increase the competitiveness of companies.
  • Machine maintenance and predictive maintenance: by analyzing data (of any type) obtained from the different machines, models can be generated that are capable of predicting when a failure will occur. This serves to improve processes and prevent failures before machines break down. Avoid downtime in production and reduce preventive maintenance times.

The ability of these machine learning algorithms to process a large number of data allows the processes to be monitored and all their parameters controlled, which avoids errors and failures and therefore increases the final quality of the product.

Benefits of Machine learning in the industry

As you have seen, the use of machine learning algorithms has many benefits. Systems that are based on this type of algorithm are more versatile and are capable of working in changing environments and adapting to them. You can perform tasks and solve problems related to computer vision, robotics and data analysis, among many others, which, until the appearance of these algorithms, was unthinkable. All this makes machine learning applications a great ally of Industry 4.0 when it comes to automating processes.

Some of the clear benefits that can be obtained from using these systems are:

  • Reduction rate of failure. They allow the detection of failures and their reduction, which has a direct impact on the quality of the process and its improvement. The mistakes that are made help improve the process.
  • Stock prediction. These systems also make it possible to prevent errors and failures. Models created from data are capable of predicting when an error will occur, which allows preventive actions to be taken so that it does not occur.
  • Process automation. With these algorithms, processes can be automated that would not be possible without learning-based systems: variable inspections, changing environments, etc.

Do you want to use applications based on machine learning in any of your Projects? Contact us!

Related posts:

  • SIARA: artificial intelligence system for the identification and classification of waste through computer vision
  • How smart can an AI be?
  • Everything you need to know about the autonomous car
  • Artificial Intelligence Robots

 Related Projects:

  • Defects detection in pressed parts
  • Automatic cuvette cleaning system
  • Computer vision system for reading variable codes in color size and font
  • SIARA

What is machine learning?

Many services that we use every day rely on machine learning – a field of science and a powerful technology that allows machines to learn from data and self-improve.

Machine learning is used in internet search engines, email filters to sort out spam, websites to make personalised recommendations, banking software to detect unusual transactions, and lots of apps on our phones such as voice recognition.

The technology has many more potential applications, some with higher stakes than others. Future developments could support the UK economy and will have a significant impact upon society. For example, machine learning could provide us with readily available ‘personal assistants’ to help manage our lives, it could dramatically improve the transport system through the use of autonomous vehicles; and the healthcare system, by improving disease diagnoses or personalising treatment. Machine learning could also be used for security applications, such as analysing email communications or internet usage. The implications of these and other applications of the technology need to be considered now and action taken to ensure uses will be beneficial to society.

Machine learning is distinct from, but overlaps with, some aspects of robotics (robots are an example of the hardware that can use machine learning algorithms, for instance to make robots autonomous) and artificial intelligence (AI) (a concept that doesn’t have an agreed definition; however machine learning is a way of achieving a degree of AI). 

What is the Royal Society project about?

There are both opportunities and challenges around this transformative technology

There are both opportunities and challenges around this transformative technology and it raises social, legal, and ethical questions. This is why the Royal Society is starting a project on machine learning, aiming to stimulate a debate, to increase awareness and demonstrate the potential of machine learning and highlight the opportunities and challenges it presents. In the course of the project we will engage with policymakers, academia, industry and the wider public.

The project will focus on current and near-term (5-10 years) applications of machine learning. It will have a strong public engagement element, and a variety of resources will be produced over the course of the project. Details of these will also be posted these web pages.

The project scope was developed by a Core Group of experts who met over the summer 2015. 

Who will inform this project?

This Royal Society project is led by a Working Group involving a range of expertise.

Answers to our call for evidence (now closed) also inform the project.

Evidence gathering sessions and public events will be held over the course of the project. 

What will come out of the project?

The project also pulls together evidence-based recommendations in a policy report for UK and EU policy makers, published April 2017.