Learning and adaptive control for robots
MICRO-462
Media
MICRO-462 Learning and adaptive control for robots
Lecture 04 part 3 : Linear Parameter Varying of Dynamical System (LPVDS)
21.03.2023, 10:19
Part 3 of course from the 15.03.2023
Lecture 04 part 2 : Stable Estimator of Dynamical System (SEDS)
21.03.2023, 10:15
Part 2 of course from the 15.03.2023
Lecture 04 part 1 : Learning control laws with DS
21.03.2023, 10:13
Part 1 of course from the 15.03.2023
Lecture 03: Introduction to Dynamical System
08.03.2023, 18:06
Lecture 02: Acquiring Data for Learning 2023
02.03.2023, 10:26
Lecture 01: Motivation and Overview of Course 2023
24.02.2023, 12:51
Course from the 22.02.2023
Lecture 12 - Part 2 | Learning and adaptive control course, Extensions to DS - Part 2
19.05.2022, 15:44
Lecture 12 - Part 1 | Learning and adaptive control course, Extensions to DS - Part 1
19.05.2022, 15:43
Lecture 9 | Learning and adaptive control course, Compliant and Force Control with DS
06.05.2022, 11:39
Lecture 8 | Learning and adaptive control course, Compliant Control for Robots
28.04.2022, 17:14
Lecture 7 | Learning and adaptive control course, Obstacle Avoidance with DS
07.04.2022, 16:00
Lecture 6 | Learning and adaptive control course, Learning Modulation for DS
31.03.2022, 15:45
Lecture 4 - Part 2 | Learning and adaptive control course, SEDS & LPV-DS
20.03.2022, 09:05
Lecture 4 - Part 1 | Learning and adaptive control course, Why standard ML is not sufficient
20.03.2022, 09:04
Lecture 3 | Learning and adaptive control course, Introduction to Dynamical Systems
11.03.2022, 17:19
Lecture 2 | Learning and adaptive control course, Acquiring Data for Learning
06.03.2022, 10:55
Lecture 1 | Learning and adaptive control course, Motivation and Overview of Course
28.02.2022, 13:34
Course's General Objective and Approach
Learning for Adaptive and Reactive Robot Control is designed for graduate students interested in robotics. Techniques covered include learning from demonstration, optimization, and reinforcement learning, and using dynamical systems in learning control laws, trajectory planning, and methods for compliant and force control.
• pencil-and-paper and programming exercises
• lecture videos, slides, and MATLAB code examples
=========================================================================================
Time and Location of the Course
The course is held on Wednesday morning from
8.15 am - 10.00 am: Lecture - this time may be divided into one hour dedicated to preparation to be done at home and one hour interactive lecture, held simultaneously online and in person.
10.15 am - 12.00 pm: Interactive exercises split into theoretical exercises (pen and paper) and matlab exercises.
The room for the class and exercise is held in INF 213
ROBOT PRACTICE SESSION:
=========================================================================================
Zoom Link
https://epfl.zoom.us/j/62554789973
Only the lecture hours are broacasted on zoom. Exercises and practice sessions are done on site.
=========================================================================================
VIDEOS
Videos recordings of the lectures are posted on the class's video channel on this media channel. Exercise sessions and matlab practice sessions are not recorded.
=========================================================================================
Course Material
The Lecture is based on the book:
Billard, Aude, Sina Mirrazavi, and Nadia Figueroa. Learning for Adaptive and Reactive Robot Control: A Dynamical Systems Approach. MIT Press, 2022.
PURCHASE of Hardcopies: since EPFL bookstore closed, a few copies of the book can be purchased directly from LASA laboratory secretary. Please, contact the teaching assistants of the class. Alternatively, you can purchase hardcopies or Kindle versions from Amazon.
ELECTRONIC VERSION: An electronic copy is available through the EPFL library via the BEAST Catalog or directly on the provider at this LINK. You are required to login via VPN or be on campus to access the book.
RENTAL: the book can be rented as e-textbook rentals through https://mitpress.ublish.com/
=============================================================================================
ADDITIONAL READINGS
- Handbook of Robotics – Edited by B. Siciliano and O. Khatib - Springer-Verlag – available for free on-line - This book offers comprehensive overview of basics of robot control Most relevant chapters for this class are: “Kinematics,” “Motion Planning,” “Motion Control” and “Force Control”.
- Applied Nonlinear Control - J-J. Slotine and W. Li - Prentice Hall –
available
for free on-line -- This book offers comprehensive introduction to dynamical systems for control. Most relevant chapters are "Phase Plane
Analysis” and “Fundamental of Lyapunov’s Theory.”
=========================================================================================
SOFTWARE
The course uses Matlab. You must bring your own laptop and should use a version of Matlab 2019 and higher.
Instructions to access the EPFL virtual machine are available HERE.
========================================================================================
Prof. Aude Billard
LASA Laboratory
Swiss Federal Institute of Technology - EPFL
CH-1015 Lausanne, Switzerland
email: aude.billard@epfl.ch
Office Hours: Thursday, 13:00 to 14:00, by appointment. (room ME.A3.393)
Tel: +41 (21) 693.54.64
fax: +41 (21) 693.78.50
=================================================================
Teaching Assistants
- Erfan Etesami erfan.etesami@epfl.ch
- Yang Liu, yang.liuu@epfl.ch
- Elise Jeandupeux elise.jeandupeux@epfl.ch
GRADING / EXAM
Grade is based 100% on an oral exam that will be held at the end of the semester during the regular exam session. A doodle poll will be sent to choose the time of the exam. The dates of the exam will be announce by the academic services during the spring semester.
===================================================================
- Announcements (Forum)
- FORUM learning and adaptive control for robots (Forum)
- Instructions Virtual Machines (File)
19 February - Intro to robot path planning
Objective: This is an introductory course to the motivation for fast and reactive planning in robotics. It will also give an overview of the course's content and format. The first set of exercises are important as they form the basis of the all exercises we will do in class. Students are strongly encouraged to do the handwritten and programming exercises.
BOOK CHAPTER TO READ: Chapter 1
- Lecture 1 (2024) - Video (valid for 30 days after lecture - see repo for older videos) (URL)
- Slides | Introduction to the course (File)
- Pen & Paper + Matlab Exercises | Instructions (File)
- Pen & Paper Exercises | Solutions (File)
- matlab exercises - solutions (File)
- Github repository for MATLAB exercises (URL)
- Do you want to purchase a hard copy of the book? (Limited Availability) (Choice)
26 Feb - Acquiring data for learning
Objective: This lecture will overview methods from learning from demonstration to generate data that can then be used to train control laws for robots with a particular focus on the type of interfaces required for training robots.
The lecture is followed by two hours of matlab exercises.
BOOK CHAPTER TO READ: Chapter 2
- Slides | Learning from Demonstrations (File)
- Matlab Exercises | Instructions (File)
- matlab exercises - solutions (File)
5 March - Introduction to dynamical systems
Objective: This lecture introduces basic concepts of dynamical systems, fixed points, stability, convergence, path integrals, etc.
It is complemented with 1 hour of pen and paper exercises and 1 hour of matlab implementation of some of these exercises.
BOOK CHAPTER TO READ: Annexes A
- Slides | Introduction to DS (File)
- Video | Live lecture Intro. to DS (URL)
- Exercises | Instructions (File)
- Pen & Paper Exercises | Solutions (File)
- matlab exercises - solutions (File)
12 March - Learning control laws with dynamical systems
Objective: This lecture introduces two fundamental approaches to learning dynamical systems control laws asymptotically stable at a single attractor.
The lecture is complemented with 1 hour of pen and paper exercises, followed by 1 hour of matlab exercises during which you will be able to test the sensitivity of these algorithms to choice of hyperparameters.
BOOK CHAPTER TO READ: Chapter 3 - Sections 3.1, 3.2, 3.3 and 3.4, Annexes B3.1-3.3
- Slides | Why ML is Not Sufficient (File)
- Slides | SEDS (File)
- Slides | LPVDS (File)
- RD | Complements on Conjugate Bayesian Priors (File)
- Exercises | Instructions (File)
- Solutions (Pen & Paper) (File)
- Matlab exercices solutions (Folder)
19 March - Practice session I
Time: 8:15-12:00
Objective: This is a 4-hour practice session in matlab. You will systematically assess the power of the two algorithms seen in class for learning stable control laws with dynamical system for a 7-degrees of freedom robot arm.
26 March - Learning how to modulate a dynamical system
Objective: This lecture introduces the notion of local modulation. It will show how one can modulate an initial simple linear dynamical system to make it locally non-linear. It will show how such modulation can be learned from data.
The lecture is accompanied with pen and paper exercises and matlab exercises to familiarize you with the theoretical construct of the modulation and its implementation for learning from handdrawn data.
BOOK CHAPTER TO READ: Chapter 8
- Slides | Modulating a DS (File)
- matlab exercises - solutions (File)
- Exercises Instructions | Hand Written & Matlab (File)
- Exercises Solutions | Hand Written (File)
2 April - Obstacle avoidance with dynamical systems
Obstacle avoidance with dynamical systems. This is a special application of local modulation seen in the previous lecture.
The lecture is
followed by a 45 minutes pen and paper exercise session and another 45 minutes session on matlab to
familiarize you with the theoretical construct of the obstacle avoidance modulation and its
implementation.
BOOK CHAPTER TO READ: Chapter 9
- Slides | Obstacle avoidance with DS (File)
- Video | Lecture Obstacle Avoidance with DS (lasts only 30 days) (URL)
- Exercises Instructions | Hand Written & Matlab (File)
- Exercises Solutions | Hand Written (File)
- matlab exercises - solutions (File)
9 April - Impedance control with dynamical systems
Guest Lecturer: Dr. Sina Mirrazavi
Objective:
This lecture introduces the concept of impedance control and its role in enabling robots to make safe contact with their environment. It then presents ways by which the impedance can be learned through human demonstrations. Finally, it offers one solution to combine dynamical systems control and impedance control to enable safe control of robots.
The lecture is
followed by a 45 minutes pen and paper exercise session and another 45 minutes session on matlab to
familiarize you with the theoretical construct of the obstacle avoidance modulation and its
implementation.
Book Correspondence: Chapter 10, sections 10.1, 10.2, 10.3 and 10.4
- Slides | Impedance Control (File)
- Pen and Paper | Matlab Exercises - instructions (File)
- Pen and Paper | Matlab Exercises - Solutions (File)
16 April - Force control with dynamical systems
Objective:
This lecture presents method to perform torque control of robots through DS. It also shows how the modulation in force can be taught to the robot either offline or live.
The lecture is
followed by a 45 minutes pen and paper exercise session and another 45 minutes session on matlab to
familiarize you with the theoretical construct of the obstacle avoidance modulation and its
implementation.
Book Correspondence: Chapter 10, section 10.4 & Chapter 11
- Slides | Passive DS (File)
- Slides | Force control with DS (File)
- Exercises Instructions | Hand Written and Matlab (File)
- Exercises Solutions | Hand Written (File)
- matlab exercises - solutions (File)
23 April - Easter Holiday
30 April - Practice session 2
Time: 8:15-12:00
Objective:
This is a 4-hour practice
session in matlab. You will explore the DS modulation method for obstacle avoidance in 3D using the simulated 7-degrees of freedom robot arm.
- Instructions Practical 2 (File)
- Poll to register for the Robotics Practical Session (Group choice)
- practical 2 - solution (File)
7 May - Coupled DS, Course Overview and Exam Preparation
Objective:
This week entails no exercise session. It will consist solely of a lecture, that will likely last from 8h15 to 11am.
The lecture will start with a brief a overview of the class material and present the exam format.
It will then be followed by a presentation of several extensions to the method we have seen in class to use DS for enabling coupling across dynamical systems and their multiple applications for coordinated control of arm and hand, and for coordinated control of multi-arm systems, with examples for catching objects in flight, or cutting tissues. This additional material will not be part of the material examined during the exam.
Book Correspondence: Chapters 6 and 7
14 May - Practice session on robots
Practice Session on Robot: 8:15-12:00
Practice Session :
This practice session will allow you to test the different algorithms seen in class when controlling real robots. It will replace the exercise sessions until the end of the semester.
21 May - Practice session on robots
Time: 8:15-13:00
Objective:
This practice session will allow you to test the different algorithms seen in class when controlling real robots. It will replace the exercise sessions until the end of the semester.
Practice session on robots
Time Practical: 8:15-12:00
This practice session will allow you to test the different algorithms seen in class when controlling real robots. It will replace the exercise sessions until the end of the semester.