Convergence Theory and Efficient Implementation of
Numerical Algorithms Based on Runge-Kutta Integration
for the Solution of
Nonlinear Optimal Control Problems
General optimal control problems for nonlinear dynamical systems do not have analytical solutions. Instead, they require numerical solution by a computer. Furthermore, both the constraints and the control are typically functions rather than finite dimensional vectors. Because of this, a discretization strategy must be employed to solve a sequence of finite-dimensional problems which approximate the original problem. These finite-dimensional problems must satisfy certain consistency condition to ensure convergence to the optimal control. Beyond this, there is a great deal of flexibility in choosing both the discretization strategy and the nonlinear programming methods used to solve the approximate problems. Intelligent utilization of this flexibility is important because the approximate problems result in difficult large-scale optimization problems. Finally, the nonlinear programming methods used to solve the finite-dimensional problems must utilize the inherent structure of underlying dynamical system to work efficiently.
Our research addresses these issues. Additionally, we are designing a toolbox-style software library of optimal control routines. This software will enable the quick construction of optimization algorithms and the efficient solution of optimal control problems. There is also a uniform interface for the user's problem description. Currently, our software can solve a very large class of moderate-sized problems: nonlinear minimax optimal control problems with control constraints, endpoint constraints and trajectory constraints. Simple control bounds are handled using projection for the sake of efficiency. For problems without trajectory constraints, this projection approach allows the software to solve very large problems.
In the future, we will take advantage of the structure of the Hessian of the Lagrangian for the discretized problem to enable our software to solve large problems. Other features we hope to incorporate will be a graphical user interface which will allow monitoring of useful information and modification of internal parameters to improve the optimization efficiency and an intelligent discretization (diagonalization) strategy which will control the discretization level, integration order, and control representation order to minimize the amount of work needed to achieve a specified solution accuracy.