A multiple-shooting differential dynamic programming algorithm. Part 1: Theory - Pellegrini, Etienne; Russell, Ryan P. (Acta astronautica, 2020)
Multiple-shooting benefits a wide variety of optimal control algorithms by alleviating large sensitivities present in highly nonlinear problems, improving robustness to initial guesses, and increasing the potential for parallel implementation. In this paper series, motivated by the challenges of optimizing highly sensitive spacecraft trajectories, the multiple-shooting approach is embedded for the first time in the formulation of a Differential Dynamic Programming algorithm. Contrary to traditional nonlinear programming methods which necessitate minimal modification of the formulation in order to incorporate multiple-shooting principles, DDP requires novel non-trivial derivations, in order to include the initial conditions of the multiple-shooting subintervals and track their sensitivities. The initial conditions are updated in a necessary additional algorithmic step. A null-space trust-region method is used for the solution of the quadratic subproblems, and equality and inequality path and terminal constraints are handled through a general augmented Lagrangian approach. The propagation of the trajectory and the optimization of its controls are decoupled through the use of State-Transition Matrices. Part 1 of the paper series provides the necessary theoretical developments and implementation details for the algorithm. Part 2 contains validation and application cases. •The multiple-shooting framework is applied to Differential Dynamic Programming.•The necessary quadratic expansions feedback control laws are developed.•An Augmented Lagrangian approach is applied for equality and inequality constraints.