理论部分
程序解决如下形式的最优控制问题
该程序既可以对无状态约束的最优控制问题求解,也可以对有
约束的最优控制问题求解,也就是求解以下两类最优控制问题
无状态约束
*
0
min ( , )
n Nh
x u dt=
ò
J L
. ( , )s t x u=x f
&
0
(0) x=x
umin( ) ( ) umax( )t t t£ £u
有逐点状态约束,其中 c(x,u)可以是多个状态约束
*
0
min ( , )
n Nh
x u dt=
ò
J L
. ( , )s t x u=x f
&
0
(0) x=x
umin( ) ( ) umax( )t t t£ £u
0(x,u) £c
使用的算法
通过有限元方法对常微分方程进行离散
通过灵敏度方法计算梯度
优化过程借用matlab自带的fmincon函数