优化方法理论合集(8)——庞特里亚金最大值原理

1. 问题描述

给出庞特里亚金最大值原理的几个必须条件:

  1. 数学模型(柯西形式):
    { x ˙ 1 = f 1 ( t , x ⃗ , u ⃗ ) x ˙ 2 = f 2 ( t , x ⃗ , u ⃗ ) ⋮ x ˙ n = f n ( t , x ⃗ , u ⃗ ) \begin{cases} \dot x_1 = f_1 \left( t, \vec x, \vec u \right) \\ \dot x_2 = f_2 \left( t, \vec x, \vec u \right) \\ \vdots \\ \dot x_n = f_n \left( t, \vec x, \vec u \right) \end{cases} x˙1=f1(t,x ,u )x˙2=f2(t,x ,u )x˙n=fn(t,x ,u )其中
    x ⃗ = [ x 1 x 2 ⋯ x n ] u ⃗ = [ u 1 u 2 ⋯ u m ] \vec x = \left[ \begin{matrix} x_1 & x_2 & \cdots & x_n \end{matrix} \right] \\ \vec u = \left[ \begin{matrix} u_1 & u_2 & \cdots & u_m \end{matrix} \right] x =[x1x2xn]u =[u1u2um]
  2. 时间区间 t ∈ [ t 0 , t k ] t \in \left[ t_0, t_k \right] t[t0,tk]
  3. 边界条件
    S t a r t = { x 1 ( t 0 ) = x 10 x 2 ( t 0 ) = x 20 ⋮ x n ( t 0 ) = x n 0 Start = \begin{cases} x_1 (t_0) = x_{10} \\ x_2 (t_0) = x_{20} \\ \vdots \\ x_n (t_0) = x_{n0} \end{cases} Start=x1(t0)=x10x2(t0)=x20xn(t0)=xn0 E n d = { x 1 ( t k ) = x 1 k x 2 ( t k ) = x 2 k ⋮ x n ( t k ) = x n k End = \begin{cases} x_1 (t_k) = x_{1k} \\ x_2 (t_k) = x_{2k} \\ \vdots \\ x_n (t_k) = x_{nk} \end{cases} End=x1(tk)=x1kx2(tk)=x2kxn(tk)=xnk 2 n 2n 2n个条件。
  4. 性能指标
    J = ∫ t 0 t k F ( x ⃗ , x ⃗ ˙ , u ⃗ ) d t → min ⁡ J = \int _{t_0} ^{t_k} F \left( \vec x, \dot {\vec x}, \vec u \right) dt \rightarrow \min J=t0tkF(x ,x ˙,u )dtmin可以看出, F F F不含有 t t t的显式
  5. 控制量的限制
    ∣ u ⃗ ( t ) ∣ ≤ U ⃗ max ⁡ \big\lvert \vec u (t) \big\rvert \leq \vec U _{\max} u (t)U max该条件是指,由于一些现实原因硬件性能原因,控制量信号 u ( t ) u(t) u(t)不可能取得很大的值,只能受限于某个上下限之间,因此 u ( t ) u(t) u(t)的取值不再是可导的甚至不再是连续的,出现了第一类间断点
    如下是两类比较简单的控制信号的限制区间。
    控制信号限制区间

2. 解题步骤

由于 u ( t ) u(t) u(t)不再可导,因此需要使用别的方法进行求解。这里引入新的概念——哈密尔顿函数,具有如下形式:
H ( t , x ⃗ , u ⃗ , ψ ⃗ ) = ∑ i = 0 n ψ i ( t ) ⋅ f i ( t , x ⃗ , u ⃗ ) (1) H \left( t, \vec x, \vec u , \vec \psi \right) = \sum _{i=0} ^n \psi _i (t) \cdot f_i \left( t, \vec x, \vec u \right) \tag{1} H(t,x ,u ,ψ )=i=0nψi(t)fi(t,x ,u )(1)应当注意,积分号下标 i = 0 i=0 i=0开始。当 i = 0 i=0 i=0时,
x ˙ 0 = F ( x ⃗ , x ⃗ ˙ , u ⃗ ) = f 0 \dot x_0 = F \left( \vec x, \dot {\vec x}, \vec u \right) = f_0 x˙0=F(x ,x ˙,u )=f0而(1)中 ψ i ( t ) \psi_i(t) ψi(t)耦合函数,要求 ψ i ( t ) ≠ 0 \psi_i (t) \neq 0 ψi(t)=0

为了求解问题,还需要引入附加条件
{ x ˙ i = ∂ H ∂ ψ i , i = 0 , 1 , ⋯   , n ψ ˙ i = − ∂ H ∂ x i , i = 0 , 1 , ⋯   , n (2) \begin{cases} \dot x_i = \frac{\partial H}{\partial \psi _i}, \quad i = 0, 1, \cdots, n \\ \dot \psi_i = - \frac{\partial H}{\partial x_i}, \quad i = 0, 1, \cdots, n \tag{2} \end{cases} { x˙i=ψiH,i=0,1,,nψ˙i=xiH,i=0,1,,n(2)需要注意,第二个式子中右侧要有负号
(2)又称为耦合微分方程组

此外,还有如下性质:
max ⁡ u H ( x ⃗ ∘ , u , ψ ⃗ ∘ ) = H ( x ⃗ ∘ , u ⃗ ∘ , ψ ∘ ) (3) \max_u H \left( \vec x ^{\circ}, u, \vec \psi ^{\circ} \right) = H \left( \vec x ^{\circ}, \vec u ^{\circ}, \psi ^{\circ} \right) \tag{3} umaxH(x ,u,ψ )=H(x ,u ,ψ)(3) H H H的最大值保证了 u u u的最大值 u ∘ u^{\circ} u,而 u ∘ u^{\circ} u确保了 H H H取最大值。
H ( x ⃗ ∘ ( t k ) , u ⃗ ∘ ( t k ) , ψ ⃗ ∘ ( t k ) ) ≡ 0 (4) H \left( \vec x ^{\circ} (t_k), \vec u ^{\circ} (t_k), \vec \psi ^{\circ} (t_k) \right) \equiv 0 \tag{4} H(x (tk),u (tk),ψ (tk))0(4) ψ 0 ( t k ) < 0 (5) \psi_0 (t_k) < 0 \tag{5} ψ0(tk)<0(5)从(3)中可以看出,最优的 u ∘ u^{\circ} u使得 H H H取到最大值,故称为庞特里亚金最大值原理

3. 原理解释

关于庞特里亚金最大值原理,有如下几条解释。假设 u ⃗ ∘ ( t ) , x ⃗ ∘ ( t ) \vec u^{\circ} (t), \vec x^{\circ}(t) u (t)x (t)已知,则存在连续函数 ψ ⃗ ∘ ( t ) \vec \psi ^{\circ} (t) ψ (t)满足如下条件:

  1. 在时间区间 t ∈ [ t 0 , t k ] t \in \left[ t_0, t_k \right] t[t0,tk] ψ ⃗ ( t ) ≠ 0 \vec \psi (t) \neq 0 ψ (t)=0
  2. 连续函数 ψ ⃗ ( t ) \vec \psi (t) ψ (t)耦合微分方程组(2)的解
  3. 在系统的最优状态下,最优控制 u ∘ ( t ) u ^{\circ} (t) u(t)保证了哈密尔顿函数取得最大值;

解题的关键式:
∂ H ∂ u k = 0 , k = 1 , 2 , ⋯   , m (6) \frac{\partial H}{\partial u_k} = 0, \qquad k = 1, 2, \cdots, m \tag{6} ukH=0,k=1,2,,m(6)

4. 必要条件

由于 H H H保证了 u ∘ ( t ) u^{\circ}(t) u(t)的极值,因此式(6)是保证极值存在的必要条件

在解题过程中, u u u的表达式往往是通过 x ⃗ , ψ ⃗ \vec x, \vec \psi x ,ψ 给出的,即
u k = φ k ( x ⃗ , ψ ⃗ ) u_k = \varphi _k \left( \vec x, \vec \psi \right) uk=φk(x ,ψ )受限于 u u u本身的取值范围,因此
u k ( t ) = { φ k ( x ⃗ , ψ ⃗ ) , 若 ∣ u k ( t ) ∣ ≤ U k max ⁡ ; + U max ⁡ , 若 u k ( t ) > U k max ⁡ − U max ⁡ , 若 u k ( t ) < − U k max ⁡ (7) u_k (t) = \begin{cases} \varphi _k \left( \vec x, \vec \psi \right), \quad 若 \big\lvert u_k (t) \big\rvert \leq U_k^{\max}; \\ +U ^{\max}, \quad 若u_k(t) > U_k^{\max} \\ -U ^{\max}, \quad 若u_k(t) < -U_k^{\max} \tag{7} \end{cases} uk(t)=φk(x ,ψ ),uk(t)Ukmax;+Umax,uk(t)>UkmaxUmax,uk(t)<Ukmax(7)
u_optimal示意图
图中黑线为(6)式计算出的 u u u,蓝线为收到限制后实际可用的 u u u

5. 方程可解性

耦合微分方程组(2)共 2 n + 2 2n+2 2n+2个式子,但只有 2 n 2n 2n个边界条件,因此还需2个方程进行求解。这2个方程中,有一个可以选择(4)式。同时考虑到,由于 x 0 x_0 x0不含于 H H H中,因此可以有(8)式
ψ ˙ 0 = − ∂ H ∂ x 0 = 0 (8) \dot \psi_0 = - \frac{\partial H}{\partial x_0} = 0 \tag{8} ψ˙0=x0H=0(8) ψ 0 \psi_0 ψ0为常数。

结合(5)式,不妨**直接令 ψ 0 = − 1 \bm{\psi_0 = -1} ψ0=1

6. 例题

给出如下例题
{ x ˙ 1 = x 2 x ˙ 2 = u t ∈ [ 0 , 1 ] S t a r t = { x 1 ( 0 ) = 5 x 2 ( 0 ) = 0 E n d = { x 1 ( 1 ) = 0 x 2 ( 1 ) = 0 J = ∫ 0 1 ( 4 x 1 2 + 5 x 2 2 + u 2 ) d t → min ⁡ ∣ u ( t ) ∣ ≤ U max ⁡ = 20 \begin{cases} \dot x_1 = x_2 \\ \dot x_2 = u \end{cases} \\ t \in \left[ 0, 1 \right] \\ Start = \begin{cases} x_1(0) = 5 \\ x_2(0) = 0 \end{cases} \\ End = \begin{cases} x_1(1) = 0 \\ x_2(1) = 0 \end{cases} \\ J = \int _0 ^1 \left( 4x_1^2 + 5x_2^2 + u^2 \right) dt \rightarrow \min \\ \big\lvert u(t) \big\rvert \leq U^{\max} = 20 { x˙1=x2x˙2=ut[0,1]Start={ x1(0)=5x2(0)=0End={ x1(1)=0x2(1)=0J=01(4x12+5x22+u2)dtminu(t)Umax=20

□ \square \quad 先写出哈密尔顿函数
H = ψ 0 ( 4 x 1 2 + 5 x 2 2 + u 2 ) + ψ 1 ( t ) ⋅ x 2 + ψ 2 ( t ) ⋅ u H = \psi_0 \left( 4x_1^2 + 5x_2^2 + u^2 \right) + \psi _1 (t) \cdot x_2 + \psi _2 (t) \cdot u H=ψ0(4x12+5x22+u2)+ψ1(t)x2+ψ2(t)u代入 ∂ H ∂ u = 0 \frac{\partial H}{\partial u} = 0 uH=0中有
∂ H ∂ u = 2 ψ 0 u + ψ 2 ( t ) = 0 \frac{\partial H}{\partial u} = 2 \psi_0 u + \psi_2 (t) = 0 uH=2ψ0u+ψ2(t)=0解得
u = − 1 2 ψ 0 ψ 2 ( t ) u = - \frac{1}{2 \psi_0} \psi_2 (t) u=2ψ01ψ2(t) u u u取决于 ψ 2 \psi_2 ψ2

之前谈过,可以直接取 ψ 0 = − 1 \psi_0 = -1 ψ0=1,因此
u = 1 2 ψ 2 ( t ) u = \frac{1}{2} \psi_2 (t) u=21ψ2(t)代入(7)
u ( t ) = { 1 2 ψ 2 ( t ) , 若 ∣ u ( t ) ∣ ≤ U max ⁡ = 20 ; + U max ⁡ = + 20 , 若 u ( t ) > U max ⁡ = 20 − U max ⁡ = − 20 , 若 u ( t ) < − U max ⁡ = 20 u (t) = \begin{cases} \frac{1}{2} \psi_2 (t) , \quad 若 \big\lvert u (t) \big\rvert \leq U^{\max} = 20; \\ +U ^{\max} = +20, \quad 若u(t) > U^{\max} = 20 \\ -U ^{\max} = -20, \quad 若u(t) < -U^{\max} = 20 \end{cases} u(t)=21ψ2(t),u(t)Umax=20;+Umax=+20,u(t)>Umax=20Umax=20,u(t)<Umax=20接下来解耦合微分方程组:
{ x ˙ 0 = ∂ H ∂ ψ 0 = 4 x 1 2 + 5 x 2 2 + u 2 x ˙ 1 = ∂ H ∂ ψ 1 = x 2 x ˙ 2 = ∂ H ∂ ψ 2 = u \begin{cases} \dot x_0 = \frac{\partial H}{\partial \psi_0} = 4x_1^2 + 5x_2^2 + u^2 \\ \dot x_1 = \frac{\partial H}{\partial \psi_1} = x_2 \\ \dot x_2 = \frac{\partial H}{\partial \psi_2} = u \end{cases} x˙0=ψ0H=4x12+5x22+u2x˙1=ψ1H=x2x˙2=ψ2H=u
{ ψ ˙ 0 = − ∂ H ∂ x 0 = 0 ( c o n s t . ) ψ ˙ 1 = − ∂ H ∂ x 1 = − 8 ψ 0 x 1 ψ ˙ 2 = − ∂ H ∂ x 2 = − 10 ψ 0 x 2 − ψ 1 ( t ) \begin{cases} \dot \psi_0 = -\frac{\partial H}{\partial x_0} = 0 \quad (const.) \\ \dot \psi_1 = -\frac{\partial H}{\partial x_1} = - 8 \psi_0 x_1 \\ \dot \psi_2 = -\frac{\partial H}{\partial x_2} = - 10 \psi_0 x_2 - \psi_1 (t) \end{cases} ψ˙0=x0H=0(const.)ψ˙1=x1H=8ψ0x1ψ˙2=x2H=10ψ0x2ψ1(t)代入 ψ 0 = − 1 \psi_0=-1 ψ0=1
{ ψ ˙ 0 = − ∂ H ∂ x 0 = 0 ( c o n s t . ) ψ ˙ 1 = − ∂ H ∂ x 1 = 8 x 1 ψ ˙ 2 = − ∂ H ∂ x 2 = 10 x 2 − ψ 1 ( t ) \begin{cases} \dot \psi_0 = -\frac{\partial H}{\partial x_0} = 0 \quad (const.) \\ \dot \psi_1 = -\frac{\partial H}{\partial x_1} = 8x_1 \\ \dot \psi_2 = -\frac{\partial H}{\partial x_2} = 10x_2 - \psi_1 (t) \end{cases} ψ˙0=x0H=0(const.)ψ˙1=x1H=8x1ψ˙2=x2H=10x2ψ1(t)再把 u = 1 2 ψ 2 ( t ) u = \frac{1}{2} \psi_2 (t) u=21ψ2(t)代入 x ˙ i \dot x_i x˙i公式组中,
{ x ˙ 0 = ∂ H ∂ ψ 0 = 4 x 1 2 + 5 x 2 2 + u 2 x ˙ 1 = ∂ H ∂ ψ 1 = x 2 x ˙ 2 = ∂ H ∂ ψ 2 = u = 1 2 ψ 2 ( t ) \begin{cases} \dot x_0 = \frac{\partial H}{\partial \psi_0} = 4x_1^2 + 5x_2^2 + u^2 \\ \dot x_1 = \frac{\partial H}{\partial \psi_1} = x_2 \\ \dot x_2 = \frac{\partial H}{\partial \psi_2} = u = \frac{1}{2} \psi_2 (t) \end{cases} x˙0=ψ0H=4x12+5x22+u2x˙1=ψ1H=x2x˙2=ψ2H=u=21ψ2(t)
联合求解即可解出 ψ 1 ( t ) , ψ 2 ( t ) , x ∘ ( t ) , u ∘ ( t ) \psi_1(t), \psi_2(t), x^{\circ}(t), u^{\circ}(t) ψ1(t),ψ2(t),x(t),u(t)

猜你喜欢

转载自blog.csdn.net/weixin_58399148/article/details/124367885