The latest version (September 2011) of the iLQG/DDP trajectory optimizer. Includes a C-mex file for the backward pass and an example of an embedded-MATLAB-compiled forward-pass. In May 2011, support for first-exit problems was added.
CapSim - the MATLAB physics engine
- Simple yet full featured, pure Matlab code for readability and modifiability, perfect for research.
- Planar capsules (a capsule is a segment with a radius) can be connected in arbitrary topologies, free floating or anchored.
- All computation are done in a minimal coordinate system, i.e. angles and centers-of-mass, no "constraint stabillization".
- Computation of centripetal and coriolis Jacobians allows us to use semi-implicit Euler integration, which is just as cheap as Euler, yet considerably more accurate.
- Collision detection for capsule-wall and capsule-capsule collisions.
- Full support for contact and friction impulses using two different contact solvers.
- Support for several LCP solvers, including the PATH solver and the semi-smooth algorithm.
Efficient MATLAB LCP Solver
This file is an efficient implementation of the semi-smooth algorithm for solving Linear Complementarity Problems. On most problems it will beat MATLAB-based pivoting methods (e.g. Lemke) by orders of magnitude, since they use tight loops, while this solver needs only several backslashes involved in the Levenberg-Marquardt minimization. If given a good starting guess (as when simulating smooth dynamics), it can converge in 2-3 iterations.
mmx is a utility mex-file for Matlab. It treats an N-D matrix of double precision values as pages of 2D matrices, and performs various matrix operations on those pages. mmx uses multithreading over the higher dimensions to achieve good performance. Singleton expansion is available for most operations. This code was written with Kendall Lowery.
Documentation, examples, benchmarks: