最优控制问题:在满足系统方程的约束条件下,在容许控制域中确定一个最优控制律,使得系统状态从已知初态转移到要求的目标集,并使性能指标达到极值。

1)建立被控系统的状态方程
2)确定边界条件
3)选定性能指标
4)确定控制律的容许范围
5)按一定方法计算最优控制

庞特里亚金极小值原理、经典变分法

终端状态和终端时间分2×32 \times 32×3类:

  1. 终端时间固定,终端状态固定、自由、约束。
    tft_ftf给定,x(tf)\boldsymbol{x}(t_f)x(tf)固定,即x(tf)=xtf\boldsymbol{x}(t_f) = \boldsymbol{x}_{t_f}x(tf)=xtf
    tft_ftf给定,x(tf)\boldsymbol{x}(t_f)x(tf)自由,就是无约束
    tft_ftf给定,x(tf)\boldsymbol{x}(t_f)x(tf)受约束,即G[x(tf),tf]=0\boldsymbol{G} \left[ \boldsymbol{x}(t_f), t_f \right] = 0G[x(tf),tf]=0

  2. 终端时间自由,终端状态固定、自由、约束。
    tft_ftf自由,x(tf)\boldsymbol{x}(t_f)x(tf)固定,即x(tf)=xtf\boldsymbol{x}(t_f) = \boldsymbol{x}_{t_f}x(tf)=xtf
    tft_ftf自由,x(tf)\boldsymbol{x}(t_f)x(tf)自由,就是无约束
    tft_ftf自由,x(tf)\boldsymbol{x}(t_f)x(tf)受约束,即G[x(tf),tf]=0\boldsymbol{G} \left[ \boldsymbol{x}(t_f), t_f \right] = 0G[x(tf),tf]=0

性能指标分3类:

\quad – 波尔扎(Bolza)型(综合指标):J=ψ(x(tf),tf)+∫t0tfL[x(t),u(t),t]dtJ = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \int_{t_0}^{t_f} {L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] {\rm{d}} t}J=ψ(x(tf),tf)+t0tfL[x(t),u(t),t]dt

\quad – 迈耶尔(Mayer)型(终端指标):J=ψ(x(tf),tf)J = \psi \left( \boldsymbol{x}(t_f), t_f \right)J=ψ(x(tf),tf)

\quad – 拉格朗日(Lagrange)型(积分指标):J=∫t0tfL[x(t),u(t),t]dtJ = \int_{t_0}^{t_f} {L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] {\rm{d}} t}J=t0tfL[x(t),u(t),t]dt

经典变分法

考虑动态系统:
x˙=f[x(t),u(t),t](1) \dot{\boldsymbol{x}} = \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] \tag{1} x˙=f[x(t),u(t),t](1)

性能指标为:
J=ψ(x(tf),tf)+∫t0tfL[x(t),u(t),t]dt(2) J = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \int_{t_0}^{t_f} {L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] {\rm{d}} t} \tag{2} J=ψ(x(tf),tf)+t0tfL[x(t),u(t),t]dt(2)

求最优控制u∗(t)\boldsymbol{u}^*(t)u(t)和满足状态方程的极值轨线x∗(t)\boldsymbol{x}^*(t)x(t),使性能指标取极值。

1)终端时刻固定,终端状态自由(tft_ftf给定,x(tf)\boldsymbol{x}(t_f)x(tf)自由)

将状态方程写成等式约束方程的形式:
f[x(t),u(t),t]−x˙=0(3) \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] - \dot{\boldsymbol{x}} = 0 \tag{3} f[x(t),u(t),t]x˙=0(3)

引入拉格朗日乘子λ(t)\boldsymbol{\lambda}(t)λ(t),又称为伴随变量、协态或共轭状态,增广泛函为:
JE=ψ(x(tf),tf)+∫t0tf{L[x(t),u(t),t]+λT(t)[f[x(t),u(t),t]−x˙(t)]}dt(4) J_E = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \int_{t_0}^{t_f} { \left \{ L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] + \boldsymbol{\lambda}^T(t) \left[ \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] - \dot{\boldsymbol{x}}(t) \right] \right \} {\rm{d}} t} \tag{4} JE=ψ(x(tf),tf)+t0tf{L[x(t),u(t),t]+λT(t)[f[x(t),u(t),t]x˙(t)]}dt(4)

这样就将有约束的泛函JJJ极值问题转换为无约束的增广泛函JEJ_EJE极值问题。

引入哈密顿(Hamilton)函数:
H(x(t),u(t),λ(t),t)=L[x(t),u(t),t]+λT(t)f[x(t),u(t),t](5) H(\boldsymbol{x}(t), \boldsymbol{u}(t), \boldsymbol{\lambda}(t), t) = L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] + \boldsymbol{\lambda}^T(t) \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] \tag{5} H(x(t),u(t),λ(t),t)=L[x(t),u(t),t]+λT(t)f[x(t),u(t),t](5)

那么式(4)(4)(4)可以表示为:
JE=ψ(x(tf),tf)+∫t0tf[H(x(t),u(t),λ(t),t)−λT(t)x˙(t)]dt(6) J_E = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \int_{t_0}^{t_f} { \left[ H(\boldsymbol{x}(t), \boldsymbol{u}(t), \boldsymbol{\lambda}(t), t) - \boldsymbol{\lambda}^T(t) \dot{\boldsymbol{x}}(t) \right] {\rm{d}} t} \tag{6} JE=ψ(x(tf),tf)+t0tf[H(x(t),u(t),λ(t),t)λT(t)x˙(t)]dt(6)

注释1:没有给出各向量变量的维度,性能指标泛函是标量。

对式(6)(6)(6)积分括号里的第二项λT(t)x˙(t)\boldsymbol{\lambda}^T(t) \dot{\boldsymbol{x}}(t)λT(t)x˙(t)做分部积分,可得:
JE=ψ(x(tf),tf)−λT(tf)x(tf)+λT(t0)x(t0)+∫t0tf[H(x(t),u(t),λ(t),t)−λ˙T(t)x(t)]dt(7) \begin{aligned} J_E &= \psi \left( \boldsymbol{x}(t_f), t_f \right) - \boldsymbol{\lambda}^T(t_f) \boldsymbol{x}(t_f) + \boldsymbol{\lambda}^T(t_0) \boldsymbol{x}(t_0) \\ &+ \int_{t_0}^{t_f} { \left[ H(\boldsymbol{x}(t), \boldsymbol{u}(t), \boldsymbol{\lambda}(t), t) - \dot{\boldsymbol{\lambda}}^T(t) \boldsymbol{x}(t) \right] {\rm{d}} t} \end{aligned} \tag{7} JE=ψ(x(tf),tf)λT(tf)x(tf)+λT(t0)x(t0)+t0tf[H(x(t),u(t),λ(t),t)λ˙T(t)x(t)]dt(7)

x(t),u(t)\boldsymbol{x}(t), \boldsymbol{u}(t)x(t),u(t)相对于最优值x∗(t),u∗(t)\boldsymbol{x}^*(t), \boldsymbol{u}^*(t)x(t),u(t)的变分分别为δx(t),δu(t)\delta \boldsymbol{x}(t), \delta \boldsymbol{u}(t)δx(t),δu(t),由于终端状态自由,还要考虑变分δx(tf)\delta \boldsymbol{x}(t_f)δx(tf),则由这些变分引起的泛函变分为:
δJE=δxT(tf)∂ψ∂x(tf)−δxT(tf)λ(tf)+∫t0tf[δxT(∂H∂x+λ˙)+δuT∂H∂u]dt(8) \begin{aligned} \delta{J_E} &= \delta \boldsymbol{x}^T (t_f) \frac{\partial{\psi}}{\partial{\boldsymbol{x}(t_f)}} - \delta \boldsymbol{x}^T(t_f) \boldsymbol{\lambda}(t_f) + \int_{t_0}^{t_f} { \left[ \delta \boldsymbol{x}^T \left( \frac{\partial{H}}{\partial{\boldsymbol{x}}} + \dot{\boldsymbol{\lambda}} \right) + \delta \boldsymbol{u}^T \frac{\partial{H}}{\partial{\boldsymbol{u}}} \right] {\rm{d}} t} \end{aligned} \tag{8} δJE=δxT(tf)x(tf)ψδxT(tf)λ(tf)+t0tf[δxT(xH+λ˙)+δuTuH]dt(8)

JEJ_EJE为极值的必要条件是:对任意的δx,δu,δx(tf)\delta{\boldsymbol{x}}, \delta{\boldsymbol{u}}, \delta{\boldsymbol{x}(t_f)}δx,δu,δx(tf),变分δJE=0\delta{J_E} = 0δJE=0

综述所述,可得:

状态方程:x˙=∂H∂λ=f[x(t),u(t),t]\dot{\boldsymbol{x}} = \frac{\partial{H}}{\partial{\boldsymbol{\lambda}}} = \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right]x˙=λH=f[x(t),u(t),t]

协态方程:λ˙=−∂H∂x\dot{\boldsymbol{\lambda}} = - \frac{\partial{H}}{\partial{\boldsymbol{x}}}λ˙=xH

控制方程:∂H∂u=0\frac{\partial{H}}{\partial{\boldsymbol{u}}} = 0uH=0

横截条件:λ(tf)=∂ψ∂x(tf)\boldsymbol{\lambda}(t_f) = \frac{\partial{\psi}}{\partial{\boldsymbol{x}(t_f)}}λ(tf)=x(tf)ψ

横截条件表示协态终端所需满足的条件。当终端状态固定时,δx(tf)=0\delta{\boldsymbol{x}(t_f)} = 0δx(tf)=0,就不需要横截条件了。

注释2:状态方程+协态方程=正则方程

只知道初值x(t0)\boldsymbol{x}(t_0)x(t0)和由横截条件确定的协态终端值λ(tf)\boldsymbol{\lambda}(t_f)λ(tf),即两点边值问题,一般很难求解。这是因为λ(t0)\boldsymbol{\lambda}(t_0)λ(t0)未知,如果假定一个λ(t0)\boldsymbol{\lambda}(t_0)λ(t0),正向积分方程组,则在t=tft = t_ft=tf时的λ\boldsymbol{\lambda}λ一般与给定的λ(tf)\boldsymbol{\lambda}(t_f)λ(tf)不同,可反复修改λ(t0)\boldsymbol{\lambda}(t_0)λ(t0)的值,直至λ(tf)\boldsymbol{\lambda}(t_f)λ(tf)与给定值的差可以忽略不计为止。

2)终端时刻自由,终端状态受约束(tft_ftf自由,x(tf)\boldsymbol{x}(t_f)x(tf)属于一个约束集)

设终端状态满足约束方程:
G[x(tf),tf]=0(9) \boldsymbol{G} \left[ \boldsymbol{x}(t_f), t_f \right] = 0 \tag{9} G[x(tf),tf]=0(9)

其中,G[x(tf),tf]=[G1(x(tf),tf),⋯ ,Gq(x(tf),tf)]T\boldsymbol{G} \left[ \boldsymbol{x}(t_f), t_f \right] = \left[ G_1 \left( \boldsymbol{x}(t_f), t_f \right), \cdots , G_q \left( \boldsymbol{x}(t_f), t_f \right) \right]^TG[x(tf),tf]=[G1(x(tf),tf),,Gq(x(tf),tf)]T

性能指标为:
J=ψ(x(tf),tf)+∫t0tfL[x(t),u(t),t]dt J = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \int_{t_0}^{t_f} {L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] {\rm{d}} t} J=ψ(x(tf),tf)+t0tfL[x(t),u(t),t]dt

与上面例子类似,引入n维拉格朗日乘子向量λ\boldsymbol{\lambda}λ和q维拉格朗日乘子向量v\boldsymbol{v}v,做增广泛函:
JE=ψ(x(tf),tf)+vTG(x(tf),tf)+∫t0tf{L[x(t),u(t),t]+λT(t)[f[x(t),u(t),t]−x˙(t)]}dt(10) J_E = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \boldsymbol{v}^T \boldsymbol{G} \left( \boldsymbol{x}(t_f), t_f \right) \\ +\int_{t_0}^{t_f} { \left \{ L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] + \boldsymbol{\lambda}^T(t) \left[ \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] - \dot{\boldsymbol{x}}(t) \right] \right \} {\rm{d}} t} \tag{10} JE=ψ(x(tf),tf)+vTG(x(tf),tf)+t0tf{L[x(t),u(t),t]+λT(t)[f[x(t),u(t),t]x˙(t)]}dt(10)

引入哈密顿函数:
H(x(t),u(t),λ(t),t)=L[x(t),u(t),t]+λT(t)f[x(t),u(t),t](11) H(\boldsymbol{x}(t), \boldsymbol{u}(t), \boldsymbol{\lambda}(t), t) = L \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] + \boldsymbol{\lambda}^T(t) \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right] \tag{11} H(x(t),u(t),λ(t),t)=L[x(t),u(t),t]+λT(t)f[x(t),u(t),t](11)


Θ(x(tf),tf)=ψ(x(tf),tf)+vTG(x(tf),tf)(12) \boldsymbol{\Theta} (\boldsymbol{x}(t_f), t_f) = \psi \left( \boldsymbol{x}(t_f), t_f \right) + \boldsymbol{v}^T \boldsymbol{G} \left( \boldsymbol{x}(t_f), t_f \right) \tag{12} Θ(x(tf),tf)=ψ(x(tf),tf)+vTG(x(tf),tf)(12)

(10)(10)(10)可以表示为:
JE=Θ(x(tf),tf)+∫t0tf[H(x(t),u(t),λ(t),t)−λT(t)x˙(t)]dt(13) J_E = \boldsymbol{\Theta} (\boldsymbol{x}(t_f), t_f) + \int_{t_0}^{t_f} { \left[ H(\boldsymbol{x}(t), \boldsymbol{u}(t), \boldsymbol{\lambda}(t), t) - \boldsymbol{\lambda}^T(t) \dot{\boldsymbol{x}}(t) \right] {\rm{d}} t} \tag{13} JE=Θ(x(tf),tf)+t0tf[H(x(t),u(t),λ(t),t)λT(t)x˙(t)]dt(13)

tft_ftf固定时不同的地方在于,现在δJE\delta J_EδJEδx(t),δu(t),δx(tf),δtf\delta \boldsymbol{x}(t), \delta \boldsymbol{u}(t), \delta \boldsymbol{x}(t_f), \delta{t_f}δx(t),δu(t),δx(tf),δtf所引起。这里,δtf\delta{t_f}δtf不再为0,并且:
tf=tf∗+δtfδx(tf)=x(tf)−x∗(tf∗)=δx(tf∗)+[x(tf∗+δtf)−x(tf∗)]≈δx(tf∗)+x˙(tf∗)δtf \begin{aligned} t_f &= t_f^* + \delta{t_f} \\ \delta \boldsymbol{x} (t_f) &= \boldsymbol{x} (t_f) - \boldsymbol{x}^* (t_f^*) = \delta \boldsymbol{x} (t_f^*) + \left[ \boldsymbol{x} (t_f^* + \delta t_f) - \boldsymbol{x} (t_f^*) \right] \\ &\approx \delta \boldsymbol{x} (t_f^*) + \dot{\boldsymbol{x}} (t_f^*) \delta t_f \end{aligned} tfδx(tf)=tf+δtf=x(tf)x(tf)=δx(tf)+[x(tf+δtf)x(tf)]δx(tf)+x˙(tf)δtf

计算JEJ_EJE的变分(只计算至一阶小量):
ΔJE=Θ∗(x(tf)+δx(tf),tf+δtf)+∫t0tf∗+δtf[H(x+δx,u+δu,λ,t)−λT(x˙+δx˙)]∗dt−Θ(x(tf),tf)∗−∫t0tf∗[H(x,u,λ,t)−λTx˙]∗dt \Delta J_E = \boldsymbol{\Theta}^* (\boldsymbol{x}(t_f) + \delta \boldsymbol{x}(t_f), t_f + \delta t_f) + \int_{t_0}^{t_f^* + \delta t_f} { \left[ H(\boldsymbol{x} + \delta \boldsymbol{x}, \boldsymbol{u} + \delta \boldsymbol{u}, \boldsymbol{\lambda}, t) - \boldsymbol{\lambda}^T(\dot{\boldsymbol{x}} + \delta \dot{\boldsymbol{x}}) \right]^* {\rm{d}} t} \\ - \boldsymbol{\Theta} \left( \boldsymbol{x}(t_f), t_f \right)^* - \int_{t_0}^{t_f^*} { \left[ H(\boldsymbol{x}, \boldsymbol{u}, \boldsymbol{\lambda}, t) - \boldsymbol{\lambda}^T \dot{\boldsymbol{x}} \right]^* {\rm{d}} t} ΔJE=Θ(x(tf)+δx(tf),tf+δtf)+t0tf+δtf[H(x+δx,u+δu,λ,t)λT(x˙+δx˙)]dtΘ(x(tf),tf)t0tf[H(x,u,λ,t)λTx˙]dt

将上式线性化:
δJE=[∂Θ∂x(tf)]∗δx(tf)+[∂Θ∂tf]∗δtf+∫t0tf∗[(∂H∂u)Tδx+(∂H∂u)Tδu−λTδx˙]∗dt+∫tf∗tf∗+δtf[H(x+δx,u+δu,λ,t)−λT(x˙+δx˙)]∗dt(14) \delta J_E = \left[ \frac{\partial{\boldsymbol{\Theta}}}{\partial{\boldsymbol{x}}(t_f)} \right]^* \delta \boldsymbol{x}(t_f) + \left[ \frac{\partial{\boldsymbol{\Theta}}}{\partial{t_f}} \right]^* \delta t_f + \int_{t_0}^{t_f^*} \left[ \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} - \boldsymbol{\lambda}^T \delta \dot{\boldsymbol{x}} \right]^* \text{d} t \\ +\int_{t_f^*}^{t_f^* + \delta t_f} { \left[ H(\boldsymbol{x} + \delta \boldsymbol{x}, \boldsymbol{u} + \delta \boldsymbol{u}, \boldsymbol{\lambda}, t) - \boldsymbol{\lambda}^T(\dot{\boldsymbol{x}} + \delta \dot{\boldsymbol{x}}) \right]^* {\rm{d}} t} \tag{14} δJE=[x(tf)Θ]δx(tf)+[tfΘ]δtf+t0tf[(uH)Tδx+(uH)TδuλTδx˙]dt+tftf+δtf[H(x+δx,u+δu,λ,t)λT(x˙+δx˙)]dt(14)

针对式(14)(14)(14),对于∫t0tf∗[(∂H∂u)Tδx+(∂H∂u)Tδu−λTδx˙]∗dt\int_{t_0}^{t_f^*} \left[ \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} - \boldsymbol{\lambda}^T \delta \dot{\boldsymbol{x}} \right]^* \text{d} tt0tf[(uH)Tδx+(uH)TδuλTδx˙]dt这一项,采用分部积分法,可化为:
∫t0tf∗[(∂H∂u)Tδx+(∂H∂u)Tδu−λTδx˙]∗dt⇓∫t0tf∗[(∂H∂u+λ˙)Tδx+(∂H∂u)Tδu]∗dt−λT(tf∗)δx(tf∗) \int_{t_0}^{t_f^*} \left[ \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} - \boldsymbol{\lambda}^T \delta \dot{\boldsymbol{x}} \right]^* \text{d} t \\ \Downarrow \\ \int_{t_0}^{t_f^*} \left[ \left( \frac{\partial H}{\partial \boldsymbol{u}} + \dot{\boldsymbol{\lambda}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} \right]^* \text{d} t - \boldsymbol{\lambda}^T (t_f^*) \delta \boldsymbol{x} (t_f^*) t0tf[(uH)Tδx+(uH)TδuλTδx˙]dtt0tf[(uH+λ˙)Tδx+(uH)Tδu]dtλT(tf)δx(tf)

对于∫tf∗tf∗+δtf[H(x+δx,u+δu,λ,t)−λT(x˙+δx˙)]∗dt\int_{t_f^*}^{t_f^* + \delta t_f} { \left[ H(\boldsymbol{x} + \delta \boldsymbol{x}, \boldsymbol{u} + \delta \boldsymbol{u}, \boldsymbol{\lambda}, t) - \boldsymbol{\lambda}^T(\dot{\boldsymbol{x}} + \delta \dot{\boldsymbol{x}}) \right]^* {\rm{d}} t}tftf+δtf[H(x+δx,u+δu,λ,t)λT(x˙+δx˙)]dt这一项,忽略二阶小量,可化为:
∫tf∗tf∗+δtf[H(x+δx,u+δu,λ,t)−λT(x˙+δx˙)]∗dt⇓一阶展开≈∫tf∗tf∗+δtf[H(x,u,λ,t)+(∂H∂x)Tδx+(∂H∂u)Tδu−λTx˙−λTδx˙]∗dt⇓忽略小量≈H∗(x,u,λ,t)δtf−λT(tf∗)x˙(tf∗)δtf⇓合并整理=H∗δtf−λT(tf∗)[δx(tf)−δx(tf∗)] \int_{t_f^*}^{t_f^* + \delta t_f} { \left[ H(\boldsymbol{x} + \delta \boldsymbol{x}, \boldsymbol{u} + \delta \boldsymbol{u}, \boldsymbol{\lambda}, t) - \boldsymbol{\lambda}^T(\dot{\boldsymbol{x}} + \delta \dot{\boldsymbol{x}}) \right]^* {\rm{d}} t} \\ \Downarrow \text{一阶展开} \\ \approx \int_{t_f^*}^{t_f^* + \delta t_f} { \left[ H(\boldsymbol{x}, \boldsymbol{u}, \boldsymbol{\lambda}, t) + \left( \frac{\partial H}{\partial \boldsymbol{x}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} - \boldsymbol{\lambda}^T \dot{\boldsymbol{x}} - \boldsymbol{\lambda}^T \delta \dot{\boldsymbol{x}} \right]^* {\rm{d}} t} \\ \Downarrow \text{忽略小量} \\ \approx H^* (\boldsymbol{x}, \boldsymbol{u},\boldsymbol{\lambda}, t) \delta t_f - \boldsymbol{\lambda}^T (t_f^*) \dot{\boldsymbol{x}}(t_f^*) \delta t_f \\ \Downarrow \text{合并整理} \\ = H^* \delta t_f - \boldsymbol{\lambda}^T (t_f^*) \left[ \delta \boldsymbol{x}(t_f) - \delta \boldsymbol{x}(t_f^*) \right] tftf+δtf[H(x+δx,u+δu,λ,t)λT(x˙+δx˙)]dt一阶展开tftf+δtf[H(x,u,λ,t)+(xH)Tδx+(uH)TδuλTx˙λTδx˙]dt忽略小量H(x,u,λ,t)δtfλT(tf)x˙(tf)δtf合并整理=HδtfλT(tf)[δx(tf)δx(tf)]

因此,式(14)(14)(14)可以化为:
δJE=[∂Θ∂x(tf)]∗δx(tf)−λT(tf∗)δx(tf)+[∂Θ∂tf]∗δtf+H∗δtf+∫t0tf∗[(∂H∂x+λ˙)Tδx+(∂H∂u)Tδu]∗dt(15) \delta J_E = \left[ \frac{\partial{\boldsymbol{\Theta}}}{\partial{\boldsymbol{x}}(t_f)} \right]^* \delta \boldsymbol{x}(t_f) - \boldsymbol{\lambda}^T (t_f^*) \delta \boldsymbol{x} (t_f) + \left[ \frac{\partial{\boldsymbol{\Theta}}}{\partial{t_f}} \right]^* \delta t_f + H^* \delta t_f \\ + \int_{t_0}^{t_f^*} \left[ \left( \frac{\partial H}{\partial \boldsymbol{x}} + \dot{\boldsymbol{\lambda}} \right)^T \delta \boldsymbol{x} + \left( \frac{\partial H}{\partial \boldsymbol{u}} \right)^T \delta \boldsymbol{u} \right]^* \text{d} t \tag{15} δJE=[x(tf)Θ]δx(tf)λT(tf)δx(tf)+[tfΘ]δtf+Hδtf+t0tf[(xH+λ˙)Tδx+(uH)Tδu]dt(15)

JEJ_EJE取极值的必要条件是:对任意的δx,δu,δx(tf),δtf\delta{\boldsymbol{x}}, \delta{\boldsymbol{u}}, \delta{\boldsymbol{x}(t_f)}, \delta t_fδx,δu,δx(tf),δtf,变分δJE=0\delta{J_E} = 0δJE=0,也就是说:

状态方程: x˙=∂H∂λ=f[x(t),u(t),t]\dot{\boldsymbol{x}} = \frac{\partial{H}}{\partial{\boldsymbol{\lambda}}} = \boldsymbol{f} \left[ \boldsymbol{x}(t), \boldsymbol{u}(t), t \right]x˙=λH=f[x(t),u(t),t]

协态方程: λ˙=−∂H∂x\dot{\boldsymbol{\lambda}} = - \frac{\partial{H}}{\partial{\boldsymbol{x}}}λ˙=xH

控制方程: ∂H∂u=0\frac{\partial{H}}{\partial{\boldsymbol{u}}} = 0uH=0

横截条件: {λ(tf)=∂Θ∂x(tf)=∂ψ∂x(tf)+∂GT∂x(tf)vH(tf)=−∂Θ∂tf=−∂ψ∂tf−∂GT∂tfv\left \{ \begin{aligned} \boldsymbol{\lambda}(t_f) &= \frac{\partial \boldsymbol{\Theta}}{\partial{\boldsymbol{x}(t_f)}} = \frac{\partial{\psi}}{\partial{\boldsymbol{x}(t_f)}} + \frac{\partial \boldsymbol{G}^T}{\partial{\boldsymbol{x}(t_f)}} \boldsymbol{v} \\ H(t_f) &= - \frac{\partial \boldsymbol{\Theta}}{\partial{t_f}} = - \frac{\partial{\psi}}{\partial{t_f}} - \frac{\partial \boldsymbol{G}^T}{\partial{t_f}} \boldsymbol{v} \end{aligned} \right.λ(tf)H(tf)=x(tf)Θ=x(tf)ψ+x(tf)GTv=tfΘ=tfψtfGTv

终端时刻自由时,多了一个方程H(tf)=−∂Θ∂tf=−∂ψ∂tf−∂GT∂tfvH(t_f) = - \frac{\partial \boldsymbol{\Theta}}{\partial{t_f}} = - \frac{\partial{\psi}}{\partial{t_f}} - \frac{\partial \boldsymbol{G}^T}{\partial{t_f}} \boldsymbol{v}H(tf)=tfΘ=tfψtfGTv,用于求出最优终端时间。

注释3:哈密顿函数和拉格朗日函数的区别在于,拉格朗日函数多了一项x˙\dot{\boldsymbol{x}}x˙,暂时可以这么理解。

3)终端时间自由/固定,终端状态自由/固定

。。。。。。见下,自行推导。

不同边界情况下的横截条件
变分法求最优解的必要条件

参考文献

  1. 罗亚中, 张进, 杨震. 航天系统优化方法自编讲义-第四章.
  2. 最优控制原理课件.
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐