This repo contains iLQR control code developed for my Legged Robots course at the University of Michigan taught by Prof. Yanran Ding in the Winter 2024 semester. This work mainly follows the publication from Kim et al. "Contact-Implicit Differential Dynamic Programming for Model Predictive Control with Relaxed Complementarity Constraints", IROS 2022.
For the systems with contact, the contact modes and timings are implicitly found via the trajectory optimization, rather than provided by a high-level planner. Hopping motions are generated automatically by commanding changes in the center of mass location.
Acrobot:
Cart Pole:
RP Hopper: Single hop to the right:
RP Hopper: Constant forward 0.5 m/s reference velocity:
RR Hopper: Constant forward 0.5 m/s reference velocity:
The controller uses the concepts presented in:
- Tassa, Y., Mansard, N. & Todorov, E. Control-Limited Differential Dynamic Programming. 2014 IEEE Int. Conf. Robot. Autom. (ICRA) 1168–1175 (2014) doi:10.1109/icra.2014.6907001.
- Hwangbo, J., Lee, J. & Hutter, M. Per-Contact Iteration Method for Solving Contact Dynamics. IEEE Robot. Autom. Lett. 3, 895–902 (2018).
- Kim, G., Kang, D., Kim, J.-H. & Park, H.-W. Contact-Implicit Differential Dynamic Programming for Model Predictive Control with Relaxed Complementarity Constraints. 2022 IEEERSJ Int. Conf. Intell. Robot. Syst. (IROS) 00, 11978–11985 (2022).




