Hang Glider
| Hang Glider | |
|---|---|
| State dimension: | 1 |
| Differential states: | 4 |
| Discrete control functions: | 2 |
The Hang Glider problem is a classical benchmark in optimal control. This description is taken from [1].
It consists of steering a hang glider from an initial horizontal position and altitude to a target altitude while maximising the horizontal distance travelled. The glider dynamics incorporate lift, drag, gravity, and the effect of a thermal updraft. The control variable is the lift coefficient , which modulates the aerodynamic lift and influences the trajectory through the thermal region.
Mathematical formulation
with the auxiliary equations: Failed to parse (syntax error): {\displaystyle v = \sqrt{v_x^2 + w^2}, \quad \\ w = v_y - U_\text{updraft}(x), \\ L = \frac{1}{2} \rho S c_L v^2, \\ D = \frac{1}{2} \rho S (c_0 + c_1 c_L^2) v^2, \\ U_\text{updraft}(x) = u_c\, (1 - r) e^{-r}, \\ r = \left( \frac{x}{r_0} - 2.5 \right)^2, }
Parameters
These fixed values are used within the model:
| Symbol | Value | Description |
|---|---|---|
| 3 | Weight on state | |
| 0 | Weight on squared state | |
| 0.5 | Weight on squared control | |
| 10 | Final time |
Reference Solutions
Here is one local solution to the above control problem.
- Reference solution plots
-
States and discretized control for a local optimum.
Miscellaneous and Further Reading
This formulation and a detailed description can be found in [1].
References
[1] Caillau, J.-B., Cots, O., Gergaud, J., & Martinon, P. OptimalControlProblems.jl: a collection of optimal control problems with ODE's in Julia. https://github.com/control-toolbox/OptimalControlProblems.jl/blob/main/ext/Descriptions/robbins.md