Learning outcomes

At the end of the theoretical and practical teaching activities of this module, the student will know how theories and methods in the design of autonomous systems has developed since 1950. On top of this theoretical knowledge, the student will acquire practical skills be able to work with both an open source robot simulator developed in Python and with the physical E-puck robot. Within the simulator, the student will be able to design different types of control systems for mobile robotic platforms (e.g., the e-puck educational robot). The student will be capable to build both hand-coded controllers (e.g., PDI, probabilistic finite state machines) and those requiring the support of an optimisation algorithm to be parametrised (e.g., artificial neural networks synthesised using reinforcement learning and evolutionary computation techniques). The student will know basic concepts in mobile robotics, related to the robot kinematics, sensors, and capabilities such as navigation, localisation and mapping. The student will be also capable of porting onto a physical platform controllers developed with the simulator.


Goals

The main objective of this module is to teach students theories and methods in autonomous robotics, to provide them with practical skills to simulate the kinematics of a differential drive robot, to design different types of control systems, and to port them on a physical robotic platform.

Content

The module is illustrating the following:

  • Theoretical foundations of autonomous bio-inspired robotics, from deliberative approach to dynamical system theory perspective

  • How to instal, use and modify an open source robot simulator in developed in Python

  • Concepts of differential drive kinematics model

  • PID and Reactive controllers

  • Odometry, navigation, localisation and mapping

  • Introduction of Evolutionary rRobotics

  • Introduction to Multi-Agent Reinforcement Learning

  • How to design Probabilistic Finite State Machines as robot's controller

  • How to port control systems developed in simulation onto a physical robot


Table of contents

See description of module content

Exercices

Practical sessions will be run to provide further support to assimilate theoretical and practical concepts of the content of this module. Practical session are scheduled one every two weeks of teaching. However, the frequency of practical sessions will be modulated (i.e., increased or decreased) based on students needs.


Teaching methods

Given the highly practical content of this module, every lectures will be made of classic content illustration with the support of slides, and practical exercises aimed to allow the student to assimilate the lectures’ content. To realise the practical exercises, the student can either use the computational support provided by the Faculty, or use her own laptop. This latter option is highly encouraged since it will allow the student to practise outside the lectures.

Assessment method

The student will be evaluated with an assignment (made of more then one exercise) to be submitted few weeks after the end of teaching, and an oral exam in which the examiner will ask questions concerning the submitted assignment (e.g., questions on aspect concerning the implementation) and questions concerning the entire content of the module including the theoretical parts. The assignment will concern the design of a control systems for autonomous robots using the tools illustrated during the lectures. For her assignment, the student will be able to choose robot scenarios from a list of scenarios provided by the lecturer towards the end of the teaching. The assignment and the oral exam will count for 100% of the marks of this module. If the student fails the first session, she can submit the assignment and undergo the oral exam during the summer (second) session.

Sources, references and any support material

All reading material and any required support will be provided by the lecturer using the many freely available resources from the Web.


Language of instruction

French
Training Study programme Block Credits Mandatory
Master in Computer Science Finalité spécialisée en data science 2 5 No
Master in Computer Science Finalité spécialisée en software engineering 2 5 No