Jump to content

Goddart's rocket problem: Difference between revisions

From mintOC
Created page with "In Goddart's rocket problem we model the ascent (vertical; restricted to 1 dimension) of a rocket. The aim is to reach a certain altitude with minimal fuel consumption. It is..."
 
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Dimensions
|nd        = 1
|nx        = 3
|nu        = 1
|nc        = 1
|nre      = 4
}}
In Goddart's rocket problem we model the ascent (vertical; restricted to 1 dimension) of a rocket. The aim is to reach a certain altitude with minimal fuel consumption. It is equivalent to maximize the mass at the final altitude.
In Goddart's rocket problem we model the ascent (vertical; restricted to 1 dimension) of a rocket. The aim is to reach a certain altitude with minimal fuel consumption. It is equivalent to maximize the mass at the final altitude.
[[Category:MIOCP]]
 
== Variables ==
== Variables ==
The state variables <math>r,v,m</math> describe the altitude, speed and mass.
The state variables <math>r,v,m</math> describe the altitude(radius), speed and mass respectively.
   
   
The drag is given by  
The drag is given by  
<dd>
<dd>
<math>
<math>
D(r,v):= Av^2 \rho(r)\text{, with }\rho(r):= exp(-k\cdot (r-r_0)).
D(r,v):= Av^2 \rho(r)\text{, with }\rho(r):= \exp(-k\cdot (r-r_0)).
</math>
</math>
</dd>
</dd>
Line 17: Line 25:
<math>
<math>
\begin{array}{llcll}
\begin{array}{llcll}
  \displaystyle \max_{m,r,v,u,T} &  m(T)\\[1.5ex]
  \displaystyle \min_{m,r,v,u,T} &  -m(T)\\[1.5ex]
  \mbox{s.t.} & \dot{r} & = & v, \\
  \mbox{s.t.} & \dot{r} & = & v, \\
  & \dot{v} & = & -\frac{1}{r^2} + \frac{1}{m} (T_{max}u-D(r,v)) \\[1.5ex]
  & \dot{v} & = & -\frac{1}{r^2} + \frac{1}{m} (T_{\mathrm{max}}u-D(r,v)) \\[1.5ex]
& \dot{m} & = & -b T_{max} u, \\
& \dot{m} & = & -b u, \\
& u(\cdot) &\in& [0,1] \\
& u(t) &\in& [0,1] \\
  & r(0) &=& r_0, \\
  & r(0) &=& r_0, \\
  & v(0) &=& v_0, \\
  & v(0) &=& v_0, \\
  & m(0) &=& m_0, \\
  & m(0) &=& m_0, \\
  & r(T) &=& r_T, \\
  & r(T) &=& r_T, \\
  & D(r(\cdot),v(\cdot))&\le& C \\
  & D(r,v)&\le& C \\
& T free
& T \quad \text{free}
\end{array}  
\end{array}  
</math>
</math>
Line 42: Line 50:
r_T &=& 1.01 \\
r_T &=& 1.01 \\
b &=& 7 \\
b &=& 7 \\
T_{max} &=& 3.5 \\
T_{\mathrm{max}} &=& 3.5 \\
A &=& 310 \\
A &=& 310 \\
k &=& 500 \\
k &=& 500 \\
C &=& 0.6
\end{array}
\end{array}
</math>
</math>
</dd>
</dd>
== Reference Solution ==
The following reference solution was generated using BOCOP. The optimal value of the objective function is -0.63389.
<gallery caption="Reference solution plots" widths="180px" heights="140px" perrow="2">
Image:Goddartacc.png| Control u over time.
Image:Goddartpos.png| Position r over time.
Image:Goddartspeed.png| Speed v over time.
Image:Goddartmass.png| Mass m over time.
</gallery>
== Source Code ==
Model descriptions are available in:
* [[:Category: Bocop | Bocop code]] at [[Goddart's rocket problem (Bocop)]]
* [[:Category: AMPL/TACO | AMPL/TACO code]] at [[Goddart's rocket problem (TACO)]]
== References ==
The Problem can be found  in the  [http://bocop.org/ BOCOP User Guide].
[[Category:MIOCP]]
[[Category:Aeronautics]]
[[Category:Minimum energy]]
[[Category:ODE model]]
[[Category:Path-constrained arcs]]
[[Category:Sensitivity-seeking arcs]]

Latest revision as of 12:45, 10 October 2025

Goddart's rocket problem
State dimension: 1
Differential states: 3
Continuous control functions: 1
Path constraints: 1
Interior point equalities: 4


In Goddart's rocket problem we model the ascent (vertical; restricted to 1 dimension) of a rocket. The aim is to reach a certain altitude with minimal fuel consumption. It is equivalent to maximize the mass at the final altitude.

Variables

The state variables r,v,m describe the altitude(radius), speed and mass respectively.

The drag is given by

D(r,v):=Av2ρ(r), with ρ(r):=exp(k(rr0)).

All units are renormalized.

Mathematical formulation

minm,r,v,u,Tm(T)s.t.r˙=v,v˙=1r2+1m(TmaxuD(r,v))m˙=bu,u(t)[0,1]r(0)=r0,v(0)=v0,m(0)=m0,r(T)=rT,D(r,v)CTfree

Parameters

r0=1v0=0m0=1rT=1.01b=7Tmax=3.5A=310k=500C=0.6

Reference Solution

The following reference solution was generated using BOCOP. The optimal value of the objective function is -0.63389.


Source Code

Model descriptions are available in:

References

The Problem can be found in the BOCOP User Guide.