Imperial College London


Faculty of EngineeringDepartment of Computing

Senior Lecturer



e.johns Website




365ACE ExtensionSouth Kensington Campus




Robot Learning - COMP70067


Robot Learning is an exciting new field, which studies how physical robots can learn skills using machine learning techniques, and can be seen as an "advanced reinforcement learning" module. The module first motivates the need for robot learning, by describing classical robot control methods and their limitations. Then, the module explains how reinforcement learning can be applied to physical robots acting in the real world. Finally, the module explores how robots can learn new skills by observing and interacting with humans. Lab sessions and courseworks teach students how to implement these methods in Python for a simulated robot learning to solve tasks, which culminates in a fun live competition in the final lecture.

The module assumes knowledge of the Reinforcement Learning module in the previous term, so taking Reinforcement Learning is strongly recommended, unless students have already taken a similar module elsewhere. For example, the module assumes familiarity with Markov decision processes, Q-learning, and deep reinforcement learning, although these will be briefly recapped


Course Leader