Jump to content

Cart Pendulum

From mintOC
Cart Pendulum
State dimension: 1
Differential states: 3
Discrete control functions: 2


The Cart Pendulum problem concerns a pendulum hinged to a mobile cart. The control objective is to transition the pendulum from a downward position to a stabilized, inverted state above the cart. In this formulation, the objective function is defined by a composite of least-squares terms that penalize the required horizontal motion, the distance of the pendulum's angle from the upward position, and the required control.

The implementation here is taken from [1]. Its dynamics are given by a four-dimensional ODE model.

Mathematical formulation

minu0tfαx(t)2+β(θ(t)π)2+γu(t)2dtsubject tox˙(t)=x˙(t),θ˙(t)=θ˙(t),x¨(t)=u+mgsin(θ)cos(θ)+mθ˙2sin(θ)M+m(1cos(θ)2),θ¨(t)=gsin(θ)u+mgsin(θ)cos(θ)+mθ¨2sin(θ)M+m(1cos(θ)2)cos(θ),x(0)=0,θ(0)=0,x˙(0)=0,θ˙(0)=0,x(t)[2,2] t[0,tf],u(t)[30,30] t[0,tf],

Parameters

These fixed values are used within the model:

Symbol Value Description
α 10 Objective coefficient for x
β 50 Objective coefficient for θ
γ 0.5 Objective coefficient for u
tf 4 Horizon of the control problem
M 1 Weight of the cart
m 0.1 Weight of the pendulum
g 9.81 Gravitational acceleration

Reference Solutions

Here is one local solution to the above control problem.

Miscellaneous and Further Reading

This formulation and a detailed description can be found in [1].

References

[1] Multidisciplinary Optimal Control Library: https://openmdao.org/dymos/docs/latest/examples/cart_pole/cart_pole.html
[2] OptimalControlProblems.jl: https://github.com/control-toolbox/OptimalControlProblems.jl/blob/main/ext/Descriptions/moonlander.md