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

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

2.1 Hamilton函数的性质

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

证明:对Hamiltonian按照链式求导法则全导数:
d H d t = H T x x ˙ + H T λ λ ˙ + H T u U ˙ + H t \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}

考虑到最优轨线附近满足
H x = λ ˙ H u = 0 H λ = 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,则显然有
d H d t = H t = 0 \frac{\mathrm{d} H}{\mathrm{d} t}=\frac{\partial H}{\partial t}=0

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

5. 其他等式约束

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

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

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

5.1 积分方程约束

0 t f N ( x ( t ) , u ( t ) , t ) d t = β R q (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 ) R q y(t)\in\Reals^q 且它满足
y ˙ = N ( x , u , t ) y ( 0 ) = 0 , y ( t f ) = 0 t f N ( x ( t ) , u ( t ) , t ) d t β (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 + q n+q 维;并多了 q q 个Lagrange乘乘数,加上原来的 m m 个,共有 m + q m+q 个终端约束和 m + q m+q 个未知的Lagrange乘数。

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

设状态变量和等式约束具有以下形式:
N ( x ( t ) , u ( t ) , t ) = 0 , t 0 < t < t f (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 ) R q \mu(t)\in\Reals^q ,并且Hamilton函数变成:
H L + λ T f + μ T N H\triangleq L+\lambda^{\mathrm T}f+\mu^{\mathrm T}N 相应地,协态方程和控制方程都要变:
λ ˙ = H x = L x λ T f x μ T N x H u = L u + λ T f u + μ T N u = 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 补充

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

6. 角点条件

前面的假设是控制 u ( t ) u(t) 和状态变量 x ( t ) x(t) 都在 t 0 < t < t f t_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 ˙ t i = H ˉ X ˙ t i + H ˉ X ˙ T H ˉ X ˙ t i = H ˉ X ˙ T H ˉ X ˙ t i + \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函数 H L + λ T f H\triangleq L+\lambda^{\mathrm T}f ,以下条件等价
λ ( t i ) = λ ( t i + ) H t i = H t i + \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 ( t i ) = x ( t i + ) \mathbf x(t_i-)=\mathbf x(t_i+) ,但在某些点有内点条件(Interior-Point constraints),即
ψ ( i ) ( x ( t i ) , t i ) = 0 , ψ ( i ) R q i , t 0 < t i < t f , 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

此种情况下,在每一个角点处条件是:
λ ( t i ) = λ ( t i + ) + μ T ψ ( i ) x H ( t i ) = H ( t i + ) + μ 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}

其中 μ R q i \mu\in\Reals^{q_i} ,对应为该内点约束的Lagrange乘子。以上这个内点约束 ( 10 ) (10) 对于分段连续的状态方程也成立
x ˙ = { f ( 1 ) ( x ( t ) , u ( t ) , t ) t [ t 0 , t 1 ] f ( q ) ( x ( t ) , u ( t ) , t ) t ( t q 1 , t q ] x ( t i ) = x ( t i + ) , 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 ( t i ) x ( t i + ) \mathbf x(t_i-)\neq\mathbf x(t_i+) 。如果这样的系统在某些点有内点条件(Interior-Point constraints),问题描述如[2]中3.7节的截图:
状态变量分段不连续
此种情况下,如公式 ( ) (\ddag) 所定义的标量函数,
H ( i ) L ( i ) + λ T f ( i ) Φ ϕ + j = 0 N [ ν ( 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)}

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

costate discontinuities

控制变量由 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

猜你喜欢

转载自blog.csdn.net/NICAI001/article/details/107744271