Top Banner
A Multiple-Shooting Differential Dynamic Programming Algorithm Etienne Pellegrini Ryan P. Russell 27 th Spaceflight Mechanics Meeting, San Antonio, TX 02/06/2017
35

A Multiple-Shooting Differential Dynamic Programming Algorithm

Jan 29, 2018

Download

Engineering

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: A Multiple-Shooting Differential Dynamic Programming Algorithm

A Multiple-Shooting Differential Dynamic Programming Algorithm

Etienne PellegriniRyan P. Russell

27th Spaceflight Mechanics Meeting, San Antonio, TX02/06/2017

Page 2: A Multiple-Shooting Differential Dynamic Programming Algorithm

Summary

• Introduction and Background

• Multiple-Shooting Problem Formulation

• Solving the multiple-shooting problem- Augmented Lagrangian methods- Single-leg expansions- Multi-leg expansions

• Numerical results- Validation of the quadratic expansions and updates- Van Der Pol Oscillator- 2D Spacecraft Orbit Transfer

• Conclusions and future work

2

Page 3: A Multiple-Shooting Differential Dynamic Programming Algorithm

Introduction and Background

• Modern spacecraft trajectories are increasingly complex (flight times, multiple fly-bys, tour design)

• Need high-fidelity solvers (combined to global search tools for preliminary design)

• Goals:- Improve robustness- Improve computational efficiency

GTOC 1 trajectory, www.esa.int

3

Page 4: A Multiple-Shooting Differential Dynamic Programming Algorithm

Motivations

• Multi-phase capabilities: - Separation at flybys, interception, rendez-vous, etc… - Each phase can have different dynamics, constraints, etc…

• Multi-shooting framework:- Allows for the decoupling of the legs and phases- Reduces sensitivities and improves robustness- Parallel implementation (solving each leg independently).

4

Page 5: A Multiple-Shooting Differential Dynamic Programming Algorithm

Hybrid Differential Dynamic Programming

Classic NLP Solvers DDP Methods

5

Page 6: A Multiple-Shooting Differential Dynamic Programming Algorithm

Summary

• Introduction and Background

• Multiple-Shooting Problem Formulation

• Solving the multiple-shooting problem- Augmented Lagrangian methods- Single-leg expansions- Multi-leg expansions

• Numerical results- Validation of the quadratic expansions and updates- Van Der Pol Oscillator- 2D Spacecraft Orbit Transfer

• Conclusions and future work

6

Page 7: A Multiple-Shooting Differential Dynamic Programming Algorithm

Problem Statement

7

Page 8: A Multiple-Shooting Differential Dynamic Programming Algorithm

The Multi-Shooting Subinterval: the Legs

8

Page 9: A Multiple-Shooting Differential Dynamic Programming Algorithm

Discretization

9

Page 10: A Multiple-Shooting Differential Dynamic Programming Algorithm

Multi-Shooting Problem Statement

10

Page 11: A Multiple-Shooting Differential Dynamic Programming Algorithm

Summary

• Introduction and Background

• Multiple-Shooting Problem Formulation

• Solving the multiple-shooting problem- Augmented Lagrangian methods- Single-leg expansions- Multi-leg expansions

• Numerical results- Validation of the quadratic expansions and updates- Van Der Pol Oscillator- 2D Spacecraft Orbit Transfer

• Conclusions and future work

11

Page 12: A Multiple-Shooting Differential Dynamic Programming Algorithm

• Mixed approach:- Box constraints on the state or controls- “Hard’’ constraints, can not be violated to first order by the

update laws- Accounted for using constrained quadratic programming- In MDDP as it is, using a null-space method in the TR algorithm

- Terminal constraints (intra- and inter-phase) and path constraints

- Accounted for using an augmented Lagrangian technique

Handling the constraints

12

Page 13: A Multiple-Shooting Differential Dynamic Programming Algorithm

The Augmented Lagrangian Algorithm

• Penalization method for constrained optimization• Transforms a constrained problem into an unconstrained

one by adding a penalty and Lagrange multipliers to the cost function:

13

Page 14: A Multiple-Shooting Differential Dynamic Programming Algorithm

Single-Leg Problem

14

Page 15: A Multiple-Shooting Differential Dynamic Programming Algorithm

Single-Leg Quadratic Expansions

15

Page 16: A Multiple-Shooting Differential Dynamic Programming Algorithm

Multi-leg Quadratic Expansion

16

Page 17: A Multiple-Shooting Differential Dynamic Programming Algorithm

Multi-Leg Quadratic Expansion

17

Page 18: A Multiple-Shooting Differential Dynamic Programming Algorithm

Inner Loop of the MS Algorithm

18

Page 19: A Multiple-Shooting Differential Dynamic Programming Algorithm

Lagrange Multipliers Update

19

Page 20: A Multiple-Shooting Differential Dynamic Programming Algorithm

The MDDP Algorithm with AL

20

Page 21: A Multiple-Shooting Differential Dynamic Programming Algorithm

Summary

• Introduction and Background

• Multiple-Shooting Problem Formulation

• Solving the multiple-shooting problem- Augmented Lagrangian methods- Single-leg expansions- Multi-leg expansions

• Numerical results- Validation of the quadratic expansions and updates- Van Der Pol Oscillator- 2D Spacecraft Orbit Transfer

• Conclusions and future work

21

Page 22: A Multiple-Shooting Differential Dynamic Programming Algorithm

Validation and Numerical Results

• Validation of the quadratic expansions and updates is done using a quadratic problem with linear constraints:

22

Page 23: A Multiple-Shooting Differential Dynamic Programming Algorithm

Linear Quadratic Problem

Initial States Final States

Controls

23

Page 24: A Multiple-Shooting Differential Dynamic Programming Algorithm

Van Der Pol Oscillator

24

Page 25: A Multiple-Shooting Differential Dynamic Programming Algorithm

Classical VDP

Final State Controls

25

Page 26: A Multiple-Shooting Differential Dynamic Programming Algorithm

Minimum-Time VDP

Final State Controls

26

Page 27: A Multiple-Shooting Differential Dynamic Programming Algorithm

20-Leg Solution of Min-Time VDP

27

Page 28: A Multiple-Shooting Differential Dynamic Programming Algorithm

2D Spacecraft Orbit Transfer

28

Page 29: A Multiple-Shooting Differential Dynamic Programming Algorithm

2DSpacecraft SolutionInitial State

Final State

Controls

29

Page 30: A Multiple-Shooting Differential Dynamic Programming Algorithm

Single Shooting

30

Page 31: A Multiple-Shooting Differential Dynamic Programming Algorithm

Multiple-Shooting

31

Page 32: A Multiple-Shooting Differential Dynamic Programming Algorithm

Conclusions & Future work

• The theoretical developments necessary to the formulation of a multiple-shooting differential dynamic programming algorithm are presented for the first time.

• An algorithm based on augmented Lagrangian methods and multiple-shooting DDP is described and tested, allowing to confirm:- The validity of the quadratic expansions and update equations- The applicability of the multiple-shooting principles to DDP- The resulting reduction in sensitivity for the subproblems

• Future work:- Parallel implementation- Robustness and performance analysis on more complex test problems

32

Page 33: A Multiple-Shooting Differential Dynamic Programming Algorithm
Page 34: A Multiple-Shooting Differential Dynamic Programming Algorithm

References (I)• D. Rufer, “Trajectory Optimization by Making Use of the Closed Solution of Constant Thrust-

Acceleration Motion,” Celestial Mechanics, Vol. 14, No. 1, 1976, pp. 91–103.• C. H. Yam, D. Izzo, and F. Biscani, “Towards a High Fidelity Direct Transcription Method for

Optimisation of Low-Thrust Trajectories,” 4th International Conference on Astrodynamics Tools and Techniques, 2010, pp. 1–7.

• G. Lantoine and R. P. Russell, “Complete closed-form solutions of the Stark problem,” Celestial Mechanics and Dynamical Astronomy, Vol. 109, Feb. 2011, pp. 333–366, 10.1007/s10569-010-9331-1.

• R. R. Bate, D. D. Mueller, and J. E. White, Fundamentals of Astrodynamics. New-York, NY. Dover Publications, 1971.

• Lyness, J. N. and Moler, C. B., “Numerical Dierentiation of Analytic Functions," SIAM Journal on Numerical Analysis, Vol. 4, No. 2, 1967, pp. 202-210.

• Squire, W. and Trapp, G., “Using Complex Variables to Estimate Derivatives of Real Functions,” SIAM Review, Vol. 40, No. 1, Jan 1998, pp. 110-112.

• Martins, J. R. R. A., Sturdza, P., and Alonso, J. J., “The Connection Between the Complex-Step Derivative Approximation and Algorithmic Differentiation,” Proceedings of the 39th Aerospace Sciences Meeting and Exhibit, AIAA, Reno, NV, jan 2001.

34

Page 35: A Multiple-Shooting Differential Dynamic Programming Algorithm

References (II)• Lantoine, G., Russell, R. P., and Dargent, T., “Using Multicomplex Variables for Automatic

Computation of High-Order Derivatives,” ACM Transactions on Mathematical Software, Vol. 38, No. 3, apr 2012, pp. 16:1-16:21.

• G. Lantoine and R. P. Russell, “A Hybrid Differential Dynamic Programming Algorithm for Constrained Optimal Control Problems. Part 1: Theory,” Journal of Optimization Theory and Applications, Vol. 154, apr 2012, doi:10.1007/s10957-012-0039-0.

• Conn, A.R., Gould, N.I.M., Toint, P.L., Trust-Region Methods. MPS - SIAM, Philadelphia, 2000.• Bellman, R., Dynamic Programming, Princeton University Press, Princeton, New Jersey, 1957.• Davidon, W.C., “Variable Metric Method for Minimization”, SIAM Journal on Optimization, Vol. 1,

Issue 1, 1991, pp. 1 - 17.

35