A minimum of 75% attendance is required
Lecturers: Michele Focchi (University of Trento, Italy), Marco Frego (Free University of Bolzano, Italy), Giulio Turrisi (Istituto Italiano di Tecnologia, Italy), Andrea Del Prete (University of Trento, Italy), Enrico MIngo (Inria Centre at Université de Lorraine, France), Marco Camurri (University of Trento, Italy)
Software Tool
Python will be used for the practical lab session implementations and for the examples in the theoretical sessions.
Teaching Methods
Theoretical lessons will be mainly delivered through the use of the blackboard and slides. Laboratory sessions will make use of the Python / C++ language to simulate robot control, locomotion and perception. They will be a practical implementation of the tools acquired during the theoretical lectures. Attendance is stronglyrecommended.
Syllabus/Content
MONDAY 21:
Modeling Of Legged Robots (Monday morning) (Michele Focchi) (5h) start at
10:00 for registration
B1. Introduction to floating based robots
B2. Modeling of legged robots: dynamics of floating base robots (excess of coordinates/minimal coordinates modeling, non-holonomy of angular momentum)
B3. Building a simulator: contact Models (rigid contact, compliant contacts), modeling of impact dynamics. Constrained dynamics obtained by contact null-space projection.
Gauss principle of minimum effort.
Reduced Models:
D2. Linear Inverted pendulum (LIP): derivation of dynamics from the centroidal dynamics
D3. Linear Inverted pendulum + flywheel: incorporation of moments about com
D4. Cart-Table model/ 3D ZMP Model
D6. Other models for locomotion: VHLIP, point mass model, inverted pendulum, spring-loaded inverted pendulum (Limit cycles, Poincarè map)
D7. Single Rigid Body Centroidal Dynamics model
D8. Capture point (derivation from LIP dynamics or from orbital energy, analysis of lip dynamics, stable, unstable eigenvectors, stability analysis of COM ZMP and CP)
D9. Capture point and real robots (finite size feet, capturability regions)
TUESDAY 22:
Advanced robot control (Tuesday morning) (Michele Focchi, Andrea Del Prete)(3h)
C1. Constraint inverse dynamics for floating base robots.
C2. Whole-body control: Quasi static approach (pseudo-inverses) to control the Base or the Com
C3. QP-based controller (with inequality constraints): joint space / task space inverse dynamics (Torque limits, acceleration limits, velocity limits, position limits)
C4. QP-based controller in contact: friction constraints
Primer on optimization/optimal control (Tuesday afternoon)(MarcoFrego) (3h)
E1. Overview on Optimal control Problems transcription: Single shooting / Multiple Shooting/Direct collocation for CoM trajectory optimization
E2. Automatic differentiation/finite differences
E3. Types of Solvers: SQP, Interior Point, solvers exploiting sparsity
E4. Discretization of dynamics (forward Euler, exact discretization with matrix exponentials).
WEDNESDAY 23:
Trajectory Optimization (Wednesday morning) (Andrea Del Prete or Enrico Mingo) (3h)
E1. Introduction to Trajectory optimization for legged robots
E2. Reference Generator
E3. Gait scheduler: assembly of the support polygon constraints
E4. Examples of linear optimization: with LIP (time invariant)
E5. Examples of linear optimization: with Single rigid body (time variant)
E6. Examples of non linear optimization: SQP with Centroidal Model
E7. Concept of sparsity emerging in legged robot dynamic
Model Predictive Control (Wednesday afternoon) (Andrea del Prete, Giulio Turrisi)(3h)
F1. Model Predictive Control strategies for LIP
F2. Non linear Model Predictive Control strategies
F3. MPC Feasibility
F4. Sample-based approaches for MPC
THURSDAY 24:
State Estimation for legged robot (Thursday morning) (Marco Camurri) (3h)
H1. Design of an EKF for state estimation
H2. Fusing IMU, kinematics and laser scan
LABS (Thursday afternoon)
Locomotion lab in simulation (3h)
Social Dinner
FRIDAY 25:
Reinforcement Learning (Friday) (Giulio Turrisi) (6h)
G1. Imitation Learning
G2. Introduction to Reinforcement Learning:
G3. Policy Gradient/Value-based/Actor-Critic
G4. Off-policy/On-policy
G5. Simulators (Differentiable/Non-differentiable)
G5. Sim-to-real transfer: Domain Randomization
G5. Sim-to-real transfer: Actuator Network
G6. Sim-to-real transfer: Rapid-Motor adaptation
G7. State-of-the-Art in Legged robots
SATURDAY 26:
Optional tutored practical session with Real Robot Aliengo
L1. Modeling: floating base dynamics properties/contact consistent fixed base dynamics.
L2. Implementation of QP based whole-body controller: CoM (quasi static approach), move CoM out of the support polygon.
L3. Trajectory optimization: CoM planning with LIP model
L5. Implementation of MPC based on Single Rigid body, for online replanning.
L6. Implementation of a Sample MPC approach.
L7. Implementation of an EKF for state estimation
L8. Implementation of an RL strategy for trotting with foothold adaptation.
L9. Locomotion Planning closing the loop with the whole-body controller, implementation of a real robot exploiting an existing C++ library with Python bindings.
SUNDAY 27:
Trekking in Dolomites with BBQ
Recordings
All the lectures
Assessment methods
Multiple-choice exam for those that need credits
Bibliography
Linear Algebra
• Strang, G. (2010). Introduction to Linear Algebra. MIT OpenCourseWare. https://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010...
Linear Systems
• Franklin, G. F., Powell, J. D., & Emami-Naeini, A. (2015). Feedback Control of Dynamic Systems.
• Franklin, G. F., Powell, J. D., & Workman, M. L. (1998). Digital Control of Dynamic Systems.
• Boyd, S. EE263 – Introduction to Linear Dynamical Systems. Stanford SEE. https://see.stanford.edu/Course/EE263
Robotics
• Siciliano, B., Villani, L., Oriolo, G., & De Luca, A. (2025). Foundations of Robotics.
• Khatib, O. Introduction to Robotics. http://videolectures.net/stanfordcs223aw08_introduction_robotics
• Lynch, K. M., & Park, F. C. (2017). Modern Robotics: Mechanics, Planning, and Control.
Numerical Optimization
• Gros, S. (2018). Numerical Methods for Optimal Control (Short Course). NTNU Cybernetics. https://youtu.be/x4kvKEhI5qU?si=y0ewyOcgOjmCne3H
• Nocedal, J., & Wright, S. (2009). Numerical Optimization.
• Boyd, S., & Vandenberghe, L. (2004). Convex Optimization.
Legged Robots
• Dong, Y. (2019). Robot Dynamics (ETH Zurich). https://github.com/yifeidong0/robot-dynamics
• Kajita, S., Hirukawa, H., Harada, K., & Yokoi, K. (2014). Introduction to Humanoid Robotics.
Model Predictive Control
• J. Rawlings, D. Mayne, M. Diehl (2024). Model Predictive Control:Theory, Computation, and Design. https://sites.engineering.ucsb.edu/~jbraw/mpc/MPC-book-2nd-edition-1st-p...
• (Linear MPC) F. Borrelli, A. Bemporad, M. Moraro (2017). Predictive Control for Linear and Hybrid Systems.https://cse.lab.imtlucca.it/~bemporad/publications/papers/BBMbook.pdf
Reinforcement Learning
• Richard S. Sutton and Andrew G. Barto (2018). Reinforcement Learning: An Introduction. http://incompleteideas.net/book/the-book-2nd.html
• P. Abbeel (2021). Foundations of Deep RL, lecture series. youtube.com/playlist?list=PLwRJQ4m4UJjNymuBM9RdmB3Z9N5-0IlY0&si=Llmhhdz_HTNxrPRc
SLAM
• Thrun, S., Burgard, W., & Fox, D. (2005). Probabilistic Robotics.
• L.Carlone, A. Kim, T. Barfoot, D. Cremers, F. Dellaert. (2025). SLAM Hanbook. https://github.com/SLAM-Handbook-contributors/slam-handbook-public-release