Gauss Pseudospectral Optimization Program

In recent years, pseudospectral methods (also known as orthogonal collocation methods) have become increasingly popular in solving nonlinear optimal control problems. In particular, three variations of the pseudospectral method have risen to prominence in the past decade: the Legendre pseudospectral method (LPM), the Radau pseudospectral method (RPM), and the Gauss pseudospectral method (GPM). Furthermore, in order to realize these methods in the solution of practical problems, researchers have developed supporting software tools. The Gauss Pseudospectral Optimization Program (GPOP) is one such tool that has been recently developed. In particular, GPOP is a MATLAB implementation of the GPM that for solving multiple-phase optimal control problems. GPOP is designed in a modular way using cell arrays in MATLAB. The design of GPOP enables the user to design each phase of the optimal control problem separately and then connect the phases by linkage conditions. An important aspect of GPOP is that the phases can be linked in any order desired, thus making it possible to solve complex optimal control problems that arise in launch vehicle dynamics and branching trajectory flight. Equally important, the Gauss pseudospectral method used in GPOP has been documented extensively in the open literature and has the useful feature that the costates of the optimal control problem can be obtained in an algebraically straightforward manner from the KKT multipliers of the nonlinear program. In addition, the GPM has been utilized on many challenging problems including those arising in spacecraft formation flying.

As stated above, GPOP is distinguished from other optimal control software programs in that GPOP is designed using a compact interface that relies heavily on cell arrays in MATLAB. In partcular, cell arrays are used throughout the user-interface to specify the problem being solved and are used in the inputs and outputs of functions. Using cell arrays, it is possible to input the problem in an extremely compact manner that requires less coding than may be required using other approaches (e.g., namelist inputs in FORTRAN). Other well-known optimal control solvers are either written in languages such as FORTRAN (e.g., SOCS) and have a steep learning curve or use somewhat cumbersome programming elements such as structures and arrays of structures. In addition to their compactness, cell arrays have been found experimentally to improve computational efficiency in MATLAB.

Objectives of GPOP

The objectives of GPOP are threefold. First, GPOP is intended to enable researchers to utilize the Gauss pseudospectral method without requiring extensive knowledge of the method itself. Second, GPOP was written to provide instructors with a tool for classroom teaching to supplement theory that may be taught in a graduate course on optimal control. To ensure that it is usable, GPOP has been tested on a variety of classical optimal control problems (ranging from simple to fairly complex) and has been found to produce highly accurate solutions that can be verified using standard optimal control theory (i.e., optimality conditions from the calculus of variations such as Pontryagin's minimum principle) and has recently been compared against other software for trajectory optimization. GPOP will be an ongoing development and will continue to be tested on new and innovative applications in optimal control.
 
< Prev   Next >