Some of our work has resulted in software packages that may be useful to other researchers or practitioners. If you find it useful, please reference the relevant papers.


The EXOTica library is a generic Optimisation Toolset for Robotics platforms, written in C++ and with bindings for Python. Its motivation is to provide a more streamlined process for developing and benchmarking algorithms for motion planning and control.

Please acknowledge/reference:

Vladimir Ivan, Yiming Yang, Wolfgang Merkt, Michael P. Camilleri, Sethu Vijayakumar, EXOTica: An Extensible Optimization Toolset for Prototyping and Benchmarking Motion Planning and Control, In: Koubaa A. (eds) Robot Operating System (ROS). Studies in Computational Intelligence, Springer, vol. 778, pp. 211-240 (2019) [preprint pdf] [software webpage] [DOI]

The library is freely available under the terms of the LGPL (with an exception that allows for static linking).


Crocoddyl is an optimal control library for robot control under contact sequence. Its solvers are based on novel and efficient Differential Dynamic Programming (DDP) algorithms. Crocoddyl computes optimal trajectories along with optimal feedback gains. It uses Pinocchio for fast computation of robots dynamics and their analytical derivatives.

Please acknowledge/reference:

C. Mastalli, R. Budhiraja, W.Merkt, G. Saurel, B. Hammoud, M. Naveau, J. Carpentier, L. Righetti, S. Vijayakumar and N. Mansard, Crocoddyl: An Efficient and Versatile Framework for Multi-Contact Optimal Control, Proc. IEEE International Conference on Robotics and Automation (ICRA 2020), Paris, France (2020). [pdf]

The source code is released under the BSD 3-Clause license.


Locally Weighted Projection Regression (LWPR) is an algorithm developed in our group that achieves online, incremental nonlinear function approximation in high dimensional spaces with redundant and irrelevant input dimensions. We developed a C-library with wrappers for C++, Matlab/Octave, and Python.

Please acknowledge/reference:

S. Vijayakumar, A. D'Souza and S. Schaal. Incremental Online Learning in High Dimensions. Neural Computation, vol. 17, no. 12, pp. 2602-2634 (2005). [pdf]

S. Klanke, S. Vijayakumar and S. Schaal, A library for Locally Weighted Projection Regression, Journal of Machine Learning Research (JMLR), vol. 9, pp. 623-626 (2008). [pdf] [Supplementary Documentation]

The library is freely available under the terms of the LGPL (with an exception that allows for static linking).



MultiMotionFusion implements an online tracking and modelling approach for multiple rigid objects, including the environment. It enables the reconstruction and pose estimation of previously unseen objects with respect to the world and the camera. The segmentation of the scene and the detection of new objects relies on motion and thus does not require prior information about objects or the environment.

Please acknowledge/reference:

Christian Rauch, Ran Long, Vladimir Ivan and Sethu Vijayakumar, Sparse-Dense Motion Modelling and Tracking for Manipulation without Prior Object Models, IEEE Robotics and Automation Letters (RAL), vol. xx(y), pp. zzz-zzz (2022) [preprint pdf]

The source code is available under the terms of the GPL and other third-party licences.


ROS Py-Bullet 

The ROS-PyBullet Interface is a framework that provides a bridge between the popular Robot Operating System (ROS) with a reliable impact/contact simulator PyBullet. This framework provides several interfaces that allow humans to interact with the simulator that facilitates Human-Robot Interaction in a virtual world.

Please acknowledge/reference:

Christopher Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, and Sethu Vijayakumar. ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction. In Conference on Robot Learning (CoRL), Auckland, New Zealand (2022). [pdf] [software webpage]

The source code is released under BSD 3-Clause license.