📖Program Curriculum
Course modules
Compulsory modules
All the modules in the following list need to be taken as part of this course.
Fundamentals of Robotics
Module Leader
Dr Gilbert Tang
Aim
Robotics technologies are being increasingly adopted across various industries, these include automotive, oil and gas, aerospace and energy as well as potential significant future growth in the service robot domain. The aim of this module is to introduce students to different types of robots and their practical uses. Students will experience offline programming of industrial robot as well as hands on programming during a study tour on the last day of the module.
Syllabus
• Introduction to Robotics and history of robots
• Classification of robotic systems
• Industrial Robots
• Basic control of robots
• Robot sensing
• Robotic applications
• Offline programming of industrial robot
• Practical robot programming
Intended learning outcomes
On successful completion of this module a student should be able to:
1. Distinguish different types of robots across different domains, appraise their characteristics and examine their common applications.
2. Examine critical components of different robot systems and critique the functionalities and performance of different configurations.
3. Distinguish industrial robot programming methods and techniques, and construct robot procedures for automated operations.
4. Demonstrate a systematic approach in constructing an offline programme using professional robot simulation software package.
5. Develop an industrial robot programme and integrate onto a real robot to perform simple tasks.
Robotics Control
Module Leader
Dr Seemal Asif
Aim
This module aims to provide students with the fundamental knowledge for solving robot control problems that will be applicable in the design of robot control systems. The syllabus covers control theories that are essential for the control of robot manipulators as well as mobile robots.
Syllabus
• Transformation of coordinates
• Kinematics and inverse kinematics
• Jacobians
• Modelling Control, Proportional (P), Proportional-Integral (PI), Proportional-Integral-Derivative (PID) and Model Based Predictive Controller (MPC)
• Feedback Control System
• Motion and path planning
• Collision avoidance and navigation
Intended learning outcomes
On successful completion of this module a student should be able to:
1. Examine a given control problem and appraise the suitability of a control system as a solution
2. Construct Forward Kinematic and Inverse Kinematic solutions for a Multi Degree of Freedom Robots
3. Design a feedback control system for solving a real world situation
4. Construct the path and motion planning of a robot manipulator for solving a practical task
Artificial Intelligence and Machine Learning for Robotics
Aim
The aim of this module is to provide students with the necessary knowledge and understanding for the application of machine learning & artificial intelligence techniques to real world industrial problems within the domain of robotics and beyond.
Syllabus
Introduction to Machine Learning Theory Applications.
Decision tree modelling, logical reasoning.
Probability theory and Bayesian methods.
Classification methods and clustering techniques.
Bio-inspired artificial intelligence algorithms.
Reinforcement learning.
Case study for robotics applications.
Intended learning outcomes
On successful completion of this module a student should be able to:
Construct a wide range of machine learning techniques to solve industry problems particularly within the domain of robotics.
Appraise the application of machine learning approaches to a wider set of data mining and classification type problems.
Using a provided implementation, plan machine learning analysis on suitable forms of computer and robotics data.
Examine the concepts and operation of a range of machine learning algorithms in order to facilitate re-implementation in a software programming environment with which they are already familiar
Develop programme in solving machine learning problems through interactive learning workshops.
Programming Methods for Robotics
Module Leader
Dr Irene Moulitsas
Aim
Object oriented programming (OOP) is the standard programming methodology used in nearly all fields of major software construction today, including engineering and science and C++ is one of the most heavily employed languages. OOP using C++ is also needed in a number of software tools, such as OpenCV in Machine Vision for Robotics or ROS in Digital Robotics, in order to program specific modules and further enhance their associated functionality. This module aims to answer the question ‘what is OOP’ and to provide the students with the understanding and skills necessary to write well designed and robust OO programs in C++. Students will learn how to write C++ code, starting from fundamental programming aspects and progressing through to advanced OOP. Hands-on programming sessions form an essential part of the module.
Syllabus
• Programming concepts and their implementation
• The OOP methodology, classes, abstraction and encapsulation.
• Destructors and memory management.
• Stream input and output.
• Function and operator overloading.
• Inheritance and aggregation.
• Polymorphism and virtual functions.
• Templates, Exception handling.
• The C++ Standard Library and STL.
Intended learning outcomes On successful completion of this module a student should be able to:
1. Examine the principles of the object oriented programming methodology - abstraction, encapsulation, inheritance and aggregation – and implement in the development of C++ programs.
2. Create robust C++ programs of simple to moderate complexity given a suitable specification.
3. Develop C++ programs through implementation of the Standard Template Library .
4. Construct robust C++ programs using development environments and associated software engineering tools.
Human-Robot Interaction
Module Leader
Dr Gilbert Tang
Aim
Human-robot interaction (HRI) is a relatively new topic that has gained popularity in recent due to updates in safety legislations and advancement in interactive and collaborative technology. Human-robot interaction is becoming more common in social and domestic settings, and human-robot collaborative systems could be the solution to numerous industrial problems. However, the HRI must be designed appropriately to ensure high-level of usesability and seamless interaction. The aim of this module is to introduce students to human-robot interaction design and technology, and their applications. Students will learn about natural user interface and its applications in interaction. There will be opportunities to experience and practice hands-on programming of industrial collaborative robots to carry out basis tasks.
Syllabus
• Introduction to Human-Robot Interaction
• Human-Robot Interactive Systems
• Interaction Design/ Collaboration and teamwork
• Natural User Interface
• Natural Language User Interface
• Safe Human-Robot Interaction
• Robot programming for collaborative tasks
Intended learning outcomes
On successful completion of this module a student should be able to:
1. Examine different types of HRI system and appraise fundamental HRI theory and principles in HRI systems design.
2. Differentiate different types of human-robot interface, distinguish their functionalities and investigate novel applications.
3. Implement HRI and safety principles to develop a safe HRI system that complies to current robot standards.
4. Appraise and implement intuitive user interfaces in enhancing the efficiency and seamlessness of the interaction between humans and robots.
5. Design and construct a robot programme for carrying out human-robot collaborative tasks
Machine Vision for Robotics
Module Leader
Dr Zeeshan Rana
Aim
The most powerful method of sensing available to humans is vision. In computing and robotics visual information is represented as a digital image. In order to process visual information in computer systems we need to know about processing digital images. By processing visual information we can develop automated visual interpretation and understanding – artificial vision, itself a large part of wider field of the Artificial Intelligence. In order to achieve this we must be able to extract high-level visual information such as edges and regions from images and additionally allow for the efficient storage of large amounts of visual data which can then be used in robotics applications.
Syllabus
• Image Applications
• Image Representation
• Image Capture Hardware
• Image Sampling & Noise
• Image Geometry & Locality, Processing Operations Upon Images
• Camera Projection / Convolution Model
• Image Transformation
• Image Enhancement
• Stereo Vision and Object Tracking
• Case Study: Vision Based Metrology in Robotics
Intended learning outcomes
On successful completion of this module a student should be able to:
1. Appraise the applications of common digital image representations techniques in solving Machine Vision problems.
2. Demonstrate a systematic application of Local and Global Image Transformations, and Basic Image Feature extraction for image processing.
3. Construct computer programme for implementing Image processing in Frequency domain.
4. Construct computer programme for implementing counter noise in digital images.
5. Analyse and appraise the robotics applications of three dimensional Stereo vision based systems and Object Tracking.
Autonomy in Robotic Systems
Module Leader
Professor Antonios Tsourdos
Aim
The aim of this module is to introduce the students to the algorithms suitable for real life problems concerning autonomy in robotics: path planning, task allocation, robotic perception, mapping and navigation, cooperative robotics, including accuracy assessment and uncertainty reduction for these applications.
Syllabus
• Introduction to autonomy aspects (1 lecture)
• Perception and sensing technologies (4 lectures)
• Sensor fusion algorithms and architectures (3 lectures)
• Autonomy in Robotics: learning and reactive paradigms (3 lectures)
• Autonomy in Robotics: Multi-agents problem (3 lectures)
• Navigation: path planning (4 lectures)
• Navigation: localization and mapping (4 lectures)
Intended learning outcomes
On successful completion of this module a student should be able to:
1) Examine fundamental meaning and appraise the applicability of AI methods for robotics with multiple degrees of autonomy.
2) Examine commonly used AI algorithms and develop solutions to practical examples in context of the autonomous robotics.
3) Appraise suitable methods for autonomy in common robotics applications and analyse their performance in real-life scenarios.
4) Develop and enhance the level of autonomy in robotic systems through implementation of AI algorithms, and critique the performance of the algorithm in a simulated environment.
Psychology, Ethics and Standards
Module Leader
Dr Sarah Fletcher
Aim
As robots and robotic devices are increasingly becoming part of our day-to-day lives it is vital that we know how to effectively integrate them with people new advanced systems. This module explores the changing landscape of robotics in society and how we comply with evolving demands and perspectives of ethics and safety standards. With a focus on fundamental human factors and psychological principles we examine how to optimise the integration of people with different types of robotic systems and environments. Students will be given the opportunity to apply practical human analysis tools and techniques that complement traditional engineering approaches to enhance usability and performance in the design of safe human-robot interaction.
Syllabus
• Fundamental psychology
• Human performance and error
• Social cognition and behaviour
• HCI and user-centred design
• Safety standards and ethics
• Research methods
• Research practicals
Intended learning outcomes On successful completion of this module a student should be able to:
1. Examine how humans receive, process and utilise information in their interactions with robot systems
2. Analyse human factors affecting system performance and
identify impacts from the surrounding environment on human-robot interaction
3. Appraise the design of systems using a user-centred approach
4. Interpret requirements of current legislation and safety standards for the design of human-robot systems and understand key ethical principles
5. Select and apply appropriate methods for analysing the design of human-robot systems and interactions across contexts