最优控制理论 二+、哈密尔顿函数法的补充

前面我在第二章最优控制理论 二、哈密尔顿函数法给出了Hamilton函数法一些重要推导过程和一些常用公式。最近翻看,觉得写得太多了,于是把一部分不重要的贴到下面,另成一篇。

2.1 Hamilton函数的性质

沿最优轨线x(t)x^*(t),Hamilton函数对时间的全导数等于其对时间的偏导数,即
dHdt=Ht \frac{\mathrm{d} H}{\mathrm{d} t}=\frac{\partial H}{\partial t}

证明:对Hamiltonian按照链式求导法则全导数:
dHdt=HTxx˙+HTλλ˙+HTuU˙+Ht \frac{\mathrm{d} H}{\mathrm{d} t}=\frac{\partial H^{\mathrm{T}}}{\partial x} \dot{x}+\frac{\partial H^{\mathrm{T}}}{\partial \lambda} \dot{\lambda}+\frac{\partial H^{\mathrm{T}}}{\partial u} \dot{U}+\frac{\partial H}{\partial t}

考虑到最优轨线附近满足
Hx=λ˙Hu=0Hλ=f=x˙ \begin{aligned} -\frac{\partial H}{\partial x}&=\dot\lambda\\ \frac{\partial H}{\partial u}&=0\\ \frac{\partial H}{\partial \lambda}&=f=\dot x \end{aligned}

代入则公式(4)(4)可证。\square
此外,若Hamiltonian不显含时间t,则显然有
dHdt=Ht=0 \frac{\mathrm{d} H}{\mathrm{d} t}=\frac{\partial H}{\partial t}=0

于是可得H(x(t),u(t),λ(t),t)=ConstH(x^*(t),u^*(t),\lambda^*(t),t)=\text{Const},若进一步考虑边界条件,对于tft_f固定的,则H(,t)=H(0)H(*,t)=H(0); 对于tft_f*的问题,查表,有终端约束H(,tf)=0H(*,t_f)=0,则H(,t)=0H(*,t)=0

5. 其他等式约束

3部分我们只考虑了终端等式约束,但是实际的动力学和控制问题里常有其他类型的等式约束,如

  • 积分方程约束0tfN(x(t),u(t),t)dt=β\int_0^{t_f}N(x(t),u(t),t)\text d t=\beta
  • 控制输入的约束N(u(t),t)=0N(u(t),t)=0
  • 控制输入和状态变量的等式约束N(x(t),u(t),t)=0N(x(t),u(t),t)=0

下面可以证明,以上这些等式约束都可以用Hamilton函数法解决。

5.1 积分方程约束

0tfN(x(t),u(t),t)dt=βRq(integral Eq constraints)\int_0^{t_f}N(x(t),u(t),t)\text d t=\beta\in\Reals^q\tag{integral Eq constraints}引入扩充的状态变量y(t)Rqy(t)\in\Reals^q且它满足
y˙=N(x,u,t)y(0)=0,y(tf)=0tfN(x(t),u(t),t)dtβ(terminal Eq constraints)\dot y=N(x,u,t)\\ y(0)=0,y(t_f)=\int_0^{t_f}N(x(t),u(t),t)\text d t\beta\tag{terminal Eq constraints}

则把上面这个积分方程约束化为终端状态约束,两个方程等价。仍可套用终端状态约束的框架,需要注意由于状态扩充为n+qn+q维;并多了qq个Lagrange乘乘数,加上原来的mm个,共有m+qm+q个终端约束和m+qm+q个未知的Lagrange乘数。

5.2 控制变量和状态变量等式约束

设状态变量和等式约束具有以下形式:
N(x(t),u(t),t)=0,t0<t<tf(state+control Eq constraints)N(x(t),u(t),t)=0,t_0\lt t\lt t_f\tag{state+control Eq constraints}对这个q维的等式约束,引入Lagrange乘子μ(t)Rq\mu(t)\in\Reals^q,并且Hamilton函数变成:
HL+λTf+μTNH\triangleq L+\lambda^{\mathrm T}f+\mu^{\mathrm T}N相应地,协态方程和控制方程都要变:
λ˙=Hx=LxλTfxμTNxHu=Lu+λTfu+μTNu=0\dot\lambda=-\frac{\partial H}{\partial x}=-L_x-\lambda^{\mathrm T}f_x-\mu^{\mathrm T}N_x \\ \frac{\partial H}{\partial u}=L_u+\lambda^{\mathrm T}f_u+\mu^{\mathrm T}N_u =0

5.3 补充

纯控制变量约束N1(u(t),t)=0N_1(u(t),t)=0和状态变量等式约束N2(x(t),t)=0N_2(x(t),t)=0
都属于控制变量+状态变量等式约束的一种,可以直接套用它的方法。

6. 角点条件

前面的假设是控制u(t)u(t)和状态变量x(t)x(t)都在t0<t<tft_0\lt t\lt t_f区间段连续可导,但是由于种种限制,往往很难做到这一点。下面我们来考虑协态变量λ(t)\lambda(t)和Hamilton函数的连续性和可导性。

6.1 u(t)\mathbf u(t)分段连续时的角点条件

控制u(t)\mathbf u(t)分段连续时,控制方程对它分段成立,但是对公式()(\dag)定义的Hamilton函数的原始形式
Hˉ(x,x˙,λ,t)=L(x,x˙,t)λT(f(x,x˙,t)x˙)\bar H(x,\dot x,\lambda,t)=L(x,\dot x,t)-\lambda^{\mathrm T}(f(x,\dot x,t)-\dot x)%

由角点处的Weierstrass-Erdmann条件,有
HˉX˙ti=HˉX˙ti+HˉX˙THˉX˙ti=HˉX˙THˉX˙ti+\begin{aligned} \left.\bar{H}_{\dot{X}}\right|_{t_i-} &=\left.\bar{H}_{\dot{X}}\right|_{t_i+} \\ \bar{H}-\left.\dot{X}^{\mathrm{T}} \bar{H}_{\dot{X}}\right|_{t_i-} &=\bar{H}-\left.\dot{X}^{\mathrm{T}} \bar{H}_{\dot{X}}\right|_{t_i+} \end{aligned}

对标准形式的Hamilton函数HL+λTfH\triangleq L+\lambda^{\mathrm T}f,以下条件等价
λ(ti)=λ(ti+)Hti=Hti+\begin{aligned} \lambda({t_i-})&=\lambda({t_i+})\\ \left.H\right|_{{t_i-}} &=\left.{H}\right|_{t_i-+} \\ \end{aligned}

即Hamilton函数连续,且协态变量连续。

6.2 x(t)\mathbf x(t)分段连续时的内点约束

若状态变量x(t)x(t)分段连续x(ti)=x(ti+)\mathbf x(t_i-)=\mathbf x(t_i+),但在某些点有内点条件(Interior-Point constraints),即
ψ(i)(x(ti),ti)=0,ψ(i)Rqi,t0<ti<tf,i=1,2,,N\psi^{(i)}(\mathbf x(t_i),t_i)=0,\quad\psi^{(i)}\in\Reals^{q_i}, t_0\lt t_i\lt t_f,i=1,2,\cdots,N

此种情况下,在每一个角点处条件是:
λ(ti)=λ(ti+)+μTψ(i)xH(ti)=H(ti+)+μTψ(i)t(10)\lambda(t_i-)=\lambda(t_i+)+\mathbf\mu^{\mathrm T}\frac{\partial \psi^{(i)}}{\partial\mathbf x}\\ H(t_i-)=H(t_i+)+\mathbf\mu^{\mathrm T}\frac{\partial\psi^{(i)}}{\partial t}\tag {10}

其中μRqi\mu\in\Reals^{q_i},对应为该内点约束的Lagrange乘子。以上这个内点约束(10)(10)对于分段连续的状态方程也成立
x˙={f(1)(x(t),u(t),t)t[t0,t1]f(q)(x(t),u(t),t)t(tq1,tq]x(ti)=x(ti+),i=1,2,,N\begin{aligned}\dot\mathbf x&=\left\{\begin{matrix}f^{(1)}(\mathbf x(t),u(t),t)&t\in[t_0,t_1]\\ \cdots\\ f^{(q)}(\mathbf x(t),u(t),t)&t\in(t_{q-1},t_q]\\ \end{matrix}\right.\\ &\mathbf x(t_i-)=\mathbf x(t_i+),i=1,2,\cdots,N \end{aligned}

简单来说就是,Hamiltonian和协态变量λ(t)\lambda(t)在每一个内点约束附近发生间断。

6.3 x(t)\mathbf x(t)分段不连续时的内点约束

若状态变量x(t)x(t)是分段函数,在每一段连续可导,而每一段不连续x(ti)x(ti+)\mathbf x(t_i-)\neq\mathbf x(t_i+)。如果这样的系统在某些点有内点条件(Interior-Point constraints),问题描述如[2]中3.7节的截图:
最优控制理论 二+、哈密尔顿函数法的补充
此种情况下,如公式()(\ddag)所定义的标量函数,
H(i)L(i)+λTf(i)Φϕ+j=0N[ν(i)]Tψ(i)H^{(i)}\triangleq L^{(i)}+\lambda^{\mathrm T}f^{(i)}\\ \Phi\triangleq \phi+\sum_{j=0}^{N}[\nu^{(i)}]^{\mathrm T}\psi^{(i)}

间断点处的状态变量不连续,但遵循约束条件;协态变量有;

最优控制理论 二+、哈密尔顿函数法的补充

控制变量由x(t)x(t)λ(t)\lambda(t)推导得到。

参考文献

[1] 邢继祥. 最优控制应用基础[M]. 科学出版社, 2003.
[2] Bryson A E , Ho Y C ,Applied optimal control : optimization, estimation, and control[J]. IEEE Transactions on Systems Man & Cybernetics, 1975