Skip to content


Folders and files

Last commit message
Last commit date

Latest commit


Repository files navigation


License Documentation Status

Humanoid robotics controller prototyping environment based on OpenRAVE.

⚠️ This project is archived. Feel free to look at the code, but don't expect support to install and run it.

Most of the project's functionality has been ported to follow-up libraries that are maintained and easier to install.

Follow-up software

  • pink: inverse kinematics in Python based on Pinocchio
  • pypoman: polyhedral projection functions used to compute contact inequality constraints
  • qpmpc: linear model predictive control in Python
  • qpsolvers: interfaces to quadratic programming solvers in Python
  • vhip_light: variable-height inverted pendulum balancing in Python


Contact stability

Model predictive control

Inverse kinematics

Geometry and optimization toolbox

  • Interfaces to polyhedral geometry: double description, polytope projection
  • Interfaces for numerical optimization solvers: LP, QP and NLP

Use cases

Getting started

Citing pymanoid

I developed pymanoid during my PhD studies and share it in the hope it can be useful to others. If it helped you in your research, please cite it e.g. as follows:

    title = {Computational Foundation for Planner-in-the-Loop Multi-Contact Whole-Body Control of Humanoid Robots},
    author = {Caron, St{\'e}phane},
    year = {2016},
    month = jan,
    school = {The University of Tokyo},
    url = {},
    doi = {10.15083/00074003},


It is not recommended to try to install this library as it is not maintained and relies on deprecated software. Yet, If you are digging into the archives, you can find instructions for Ubuntu 14.04 in the wiki.