Main

!!!! Problem Statement

minimize tf

subject to

ds/dt = v

dv/dt = (u-0.2*v^2)/m

dm/dt = -0.01 * u^2

path constraints

0.0 <= v(t) <= 1.7

-1.1 <= u(t) <= 1.1

initial boundary conditions

s(0) = 0

v(0) = 0

m(0) = 1

final boundary conditions

s(tf) = 10.0

v(tf) = 0.0

!!!! Solution

(:html:)

<iframe width="560" height="315" src="https://www.youtube.com/embed/9qsiCGpvwKA" frameborder="0" allowfullscreen></iframe>

(:htmlend:)

## Rocket Launch: Classic Optimal Control

## Main.RocketOptimization History

Hide minor edits - Show changes to output

Added lines 6-29:

!!!! Problem Statement

minimize tf

subject to

ds/dt = v

dv/dt = (u-0.2*v^2)/m

dm/dt = -0.01 * u^2

path constraints

0.0 <= v(t) <= 1.7

-1.1 <= u(t) <= 1.1

initial boundary conditions

s(0) = 0

v(0) = 0

m(0) = 1

final boundary conditions

s(tf) = 10.0

v(tf) = 0.0

!!!! Solution

Changed line 7 from:

to:

Attach:download.png [[Attach:dynamic_rocket_launch.zip|Download Rocket Launch Planning Solution in MATLAB and Python]]

Changed line 1 from:

(:title Rocket Launch: Classic Optimal Control~~ Problem~~:)

to:

(:title Rocket Launch: Classic Optimal Control:)

Changed lines 5-6 from:

to:

A rocket burn trajectory is desired to minimize a travel time between a starting point and a final point, 10 units of distance away. The thrust can be between an upper limit of 1.1 and a lower limit of -1.1. The initial and final velocity must be zero and the maximum velocity can never exceed 1.7. It is also desirable to minimize the use of fuel to perform the maneuver. There is a drag resistance the is proportional to the square of the velocity and mass is lost as the fuel is burned during thrust operations.

Added lines 12-13:

Changed line 1 from:

(:title Rocket ~~Optimization~~:)

to:

(:title Rocket Launch: Classic Optimal Control Problem:)

Added lines 5-9:

(:html:)

<iframe width="560" height="315" src="https://www.youtube.com/embed/9qsiCGpvwKA" frameborder="0" allowfullscreen></iframe>

(:htmlend:)

Added lines 1-4:

(:title Rocket Optimization:)

(:keywords Python, MATLAB, nonlinear control, Rocket, Goddard, model predictive control, dynamic programming:)

(:description Minimize final time for rocket launch by manipulating the force exerted by the thruster. This is a classic dynamic optimization problem benchmark used in many research papers to test the application of new algorithms.:)

(:keywords Python, MATLAB, nonlinear control, Rocket, Goddard, model predictive control, dynamic programming:)

(:description Minimize final time for rocket launch by manipulating the force exerted by the thruster. This is a classic dynamic optimization problem benchmark used in many research papers to test the application of new algorithms.:)