Robot Control (RoCo)
Course content
Controlling a robot, e.g. a robot arm or a humanoid, is witnessing a paradigm shift by combining physical simulation with machine learning, typically reinforcement learning to solve a large repertoire of challenges that previously have been impossible to solve. In such a scenario the simulator provides a model or prior for the robot to interact and learn before its deployment to the real world. This field of simulation-based reinforcement learning (SiRL) addresses many interesting issues such as motion control, motion imitation, and system identification in advanced autonomous robotics manipulation and navigation, prediction, detection or mimicking of human motion, that may benefit sectors like health-care, industrial manufacturing and entertainment. Many more examples exist. This course will prepare students for working with this world-changing technology.
This course is ideal for students who wish to work with robotics, simulation and practical reinforcement learning in their master's thesis. It is also helpful for students who want to work with character animation or content creation for XR.
Students are expected to solve weekly practical exercises mostly programming with python, but some C++ could be involved if preferred, as well as some lab-space work as well. Students are expected to be self-driven in getting the software to work on their own devices, like installing an auto differentiation framework and making it run. Students could be exposed to working with vision or motion capture data.
Knowledge of
- Formulation and elements of reinforcement learning problems.
- Reinforcement learning software frameworks such as Gymnasium and Stable Baselines3.
- Fundamentals of articulated body kinematics and dynamics.
- Using robot arms such as UR5 and motion capture data.
- Concepts in optimal control such as open and closed loop control, PD controllers, trajectory optimization and model-predictive control (MPC) etc.
- Computational Graphs, forward- and reverse-mode automatic differentiation, the adjoint method, adjoint state equation, and sensitivity analysis.
- Auto-differentiation tools & differentiable simulator frameworks such as DiffTaiChi, PyTorch, Warp, JAX, MuJoCo, and more.
- Simulation-based reinforcement learning, sim-to-real gap and mitigation.
- Augmenting differentiable simulators with trajectory optimization and policy optimization.
Skills in
- Using a differentiable simulator to model robot control and compute gradients.
- Deriving the models for trajectory optimization and policy optimization and explaining their differences.
Competences to
- Formulate and solve reinforcement learning problems for control
- Solve motion control problems such as grasping, manipulation, locomotion, or navigation.
- Solve system identification problems such as parameter estimation from vision data.
A mixture of lectures and exercise classes on project group work with written hand-ins.
See Absalon when the course is set up.
We recommend academic qualifications equivalent to a BSc degree.
We recommend students to have passed courses that involve python
programming, linear algebra, calculus (analytical computing
derivatives of functions), and solving minimization problems with
gradient descent methods.
This is the rebranded version of the course "Simulation-based Reinforcement Learning (SiRL)". Students that have taken the old version will not be able to sign up this one.
As
an exchange, guest and credit student - click here!
Continuing Education - click here!
PhD’s can register for MSc-course by following the same procedure as credit-students, see link above.
- ECTS
- 7,5 ECTS
- Type of assessment
-
Oral examination, 30 minutes (no preparation time)
- Type of assessment details
- The exam takes an outset in theory taught over the course. Students should be able to derive theory/math on the blackboard during the examination.
- Examination prerequisites
-
To qualify for the exam, the student must complete at least 5 reports. There will be 7 short reports during the course. The reports can be made as a group or as individual reports. Each report should be a maximum of 5 pages.
- Aid
- No aids allowed
- Marking scale
- 7-point grading scale
- Censorship form
- No external censorship
Several internal examiners
- Re-exam
-
Same as the ordinary exam.
The exam prerequisite must be met (submitted or approved according to the exam prerequisites field) no later than three weeks before the re-exam. The course responsible will inform the student/s, about when they will be notified, whether they can take the exam or not.
Criteria for exam assessment
In order to obtain the grade 12 the student should convincingly and accurately demonstrate the knowledge, skills and competences described under Learning Outcome.
Single subject courses (day)
- Category
- Hours
- Lectures
- 28
- Preparation
- 52
- Exercises
- 28
- Project work
- 70
- Exam Preparation
- 27
- Exam
- 1
- English
- 206
Kursusinformation
- Language
- English
- Course number
- NDAK26004U
- ECTS
- 7,5 ECTS
- Programme level
- Full Degree Master
- Duration
-
1 block
- Placement
- Block 4
- Schedulegroup
-
A
- Capacity
- 30
The number of places might be reduced if you register in the late-registration period (BSc and MSc) or as a credit or single subject student. - Studyboard
- Study Board of Mathematics and Computer Science
Contracting department
- Department of Computer Science
Contracting faculty
- Faculty of Science
Course Coordinator
- Hang Yin (4-6b647c6c43676c316e7831676e)
Er du BA- eller KA-studerende?
Kursusinformation for indskrevne studerende