dsoa: Dynamic System Optimization

Download: dsoa.zip

Users guide (pdf)

Source code:
- include
- src

Test problems:
- Finite difference
- Automatic differentiation

dsoa is a  ANSI C/C++ computer program which implements an algorithm for the approximate solution of dynamics system optimization problems.  The algorithm is a direct method that can be applied to the optimization of dynamic systems described by index-1 differential-algebraic equations (DAEs).  The types of problems considered include optimal control problems and parameter identification problems.

The numerical techniques employed transform the dynamic system optimization problem into a parameter optimization problem by; (i) parameterizing the control input as piecewise constant on a fixed mesh, and (ii) approximating the DAEs using a linearly implicit Runge-Kutta method. The resultant nonlinear programming problem is solved via a sequential quadratic programming technique.