MahanFathi / iLQG-MuJoCo

Iterative LQG for a couple of MuJoCo models

Home Page:https://mahanfathi.github.io/blog/ilqr/index.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

iLQG-MuJoCo

Iterative LQG for a couple of MuJoCo models. Find a write-up HERE.

Demo for Inverted Pendulum and Hopper

A few iterations before convergence is shown here. Hopper in particular does some crazy stuff, but it will get there (no wonder why evolution wiped out these guys). This whole process below is considered as a signle MPC run. You can set contact solref[0] to a slightly higher number in the model, for more smooth dynamics and hence better derivative behaviors.

This Repo Contains:

  • Iterative LQR algorithm, based on this paper:
    • Improved Regularization
    • Backtrack Linesearch
  • Finite difference calculation of derivatives, in parallel
  • The Levenberg-Marquardt heuristic
  • Hessian approximation from gradients
  • MPC mode

Dependencies

Usage

Modify the Makefile by specifying MUJOCO_PATH, make the executables with make, and run with ./bin/base ./res/inverted_pendulum.xml.

TODOs

  • Make it faster of course
  • Extend to walking robots
  • Use proposed cost function from the paper

Acknowledgement

Big thanks to Taylor Apgar, from Dynamic Robotics Laboratory at Oregon State University.

About

Iterative LQG for a couple of MuJoCo models

https://mahanfathi.github.io/blog/ilqr/index.html


Languages

Language:C++ 93.7%Language:Makefile 3.7%Language:C 2.6%