Premium
dsoa : The implementation of a dynamic system optimization algorithm
Author(s) -
Fabien Brian C.
Publication year - 2009
Publication title -
optimal control applications and methods
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.458
H-Index - 44
eISSN - 1099-1514
pISSN - 0143-2087
DOI - 10.1002/oca.898
Subject(s) - piecewise , computer science , nonlinear programming , optimization problem , mathematical optimization , dynamic programming , algorithm , optimal control , quadratic programming , nonlinear system , algebraic number , mathematics , mathematical analysis , physics , quantum mechanics
This paper describes the ANSI C/C++ computer program dsoa , 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 are employed to 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 (NLP) problem is solved via a sequential quadratic programming technique. The program dsoa is evaluated using 83 nontrivial optimal control problems that have appeared in the literature. Here we compare the performance of the algorithm using two different NLP problem solvers, and two techniques for computing the derivatives of the functions that define the problem. Copyright © 2009 John Wiley & Sons, Ltd.