The high degree of nonlinearity and high dimension of the problem, along with all the constraints, make it unreasonable to assume that by specifying the state equations, boundary conditions, and inequality constraints together with a naive initial guess of the solution, the optimization procedure will immediately find an optimal solution. Various simpler problems were first solved such as that of standing in place and then moving only small distances. In fact, an iterated process was undertaken which gradually approximated the actual problem, whereby the solution of each generalization of the problem was made using the previous one as an initialization.
For most trial runs, we used 13 grid points in time, 8 in the first phase and 5 in the second phase. As the number of grid points has a large influence on the length of each optimization run, it is preferable to use a coarse grid, then to refine the grid if more exact solutions are needed. Run times depend on the starting values given to the problem and the problem to be solved.
DIRCOL transforms the complete problem to a nonlinear optimization problem with 197 variables, 131 nonlinear equality constraints, and 23 inequality constraints. The number of function calls during a sample optimization run are:
DIRCOL Version 1.2 2.0
Optimization Program NPSOL SNOPT
State equations 568635 230952
Implicit Boundary Const. 43430 8497
Nonlinear Ineq. Const. 249928 125099
Run Time 18 min. 12 min.
These runs were conducted on a Sparc Ultra 2 with a 166 MHz processor. The advantage of DIRCOL 2.0 over DIRCOL 1.2 in solving a particular problem was, in fact, much greater than the statistics above indicated. This is because several subproblems would often have to be solved with DIRCOL 1.2 before the complete problem could be solved. For example, a subproblem would be solved without enforcing positivity of the contact constraints, then the complete problem could be solved by initializing it on the solution of the subproblem. DIRCOL 2.0 would usually not require this 2-stage solution process as its domain of convergence is larger, thus saving much time.