PSOPT optimal control software
PSOPT is an open-source optimal control software package that uses direct collocation methods, including pseudospectral and local discretizations. As PSOPT is implemented in C++ using state-of-the-art numerical and symbolic libraries, and therefore it is very fast.
Pseudospectral methods solve optimal control problems by approximating the time-dependent variables using global polynomials, such as Legendre or Chebyshev functions.
Local discretization methods approximate the time-dependent functions using local splines, and can be seen as implementations of implicit Runge-Kutta integrators.
With both global and local methods, differential equations, continuous constraints, and integrals associated with the problem are discretized over a grid of nodes. Sparse nonlinear programming is then used to find local optimal solutions.