最优控制理论 一、变分法和泛函极值问题

变分法是最优控制问题的三大基石之一,下面讨论一些变分法的常用理论。

1. 性能指标泛函

无约束最优控制问题,若固定起止时间,两端状态固定,即
x ( 0 ) = x 0 , x ( t f ) = x f , t ∈ [ 0 , t f ] x(0)=x_0, x(t_f)=x_f, t\in[0,t_f] x(0)=x0,x(tf)=xf,t[0,tf]
需要求出最优路径path(轨迹trajectory、最优实现): x ∗ ( t ) x^*(t) x(t)。而这个最优性的定义,是按照泛函型性能指标来表达的
min ⁡ x ( t ) J ( x , t ) = ϕ ( x ( t f ) , t f ) + ∫ 0 t f L ( x , x ˙ , t ) d t (1) \min_{x(t)}J(x,t)=\phi(x(t_f),t_f)+\int_0^{t_f}L(x,\dot{x} ,t)\text d t \tag{1} x(t)minJ(x,t)=ϕ(x(tf),tf)+0tfL(x,x˙,t)dt(1)
由赋范线性空间 X \Chi X的某个子集映射到实数域 R \Reals R的映射称为泛函,即 T : X ↦ R T: \Chi\mapsto\Reals T:XR。在这里指的是从路径 x ( t ) ↦ J ∈ R x(t)\mapsto J\in\Reals x(t)JR的一个映射,即函数的函数。公式 ( 1 ) (1) (1)只有第一部分性能指标的最优控制问题称为Meyer型问题,仅有第二部分的称为Lagrange型问题,两种相加的称为Bolza问题。Bolza型问题可以转化成Lagrange型问题
J ( x , t ) = ∫ 0 t f d ϕ ( x , t ) d t + L ( x , x ˙ , t ) d t + ϕ ( x ( 0 ) , 0 ) J(x,t)=\int_0^{t_f}\frac{\text d\phi(x,t)}{\text d t}+L(x,\dot{x} ,t)\text d t+\phi(x(0),0) J(x,t)=0tfdtdϕ(x,t)+L(x,x˙,t)dt+ϕ(x(0),0)
所以一般我们都是从Lagrange型问题开始研究的。

2. 泛函极值必要条件

对于上述问题,沿着最优路径 x ∗ ( t ) x^*(t) x(t)对性能指标做变分 δ J ( x ∗ ) \delta J(x^*) δJ(x),最优路径的必要条件是 δ J ( x ∗ ) = 0 \delta J(x^*)=0 δJ(x)=0.对Lagrange型性能指标展开,
δ J ( δ x ∗ ) = ∫ 0 t f ( ∂ L ∂ x δ x + ∂ L ∂ x ˙ δ x ˙ ) d t = 0 \delta J(\delta x^*) =\int_0^{t_f}({\frac {\partial L}{\partial x}\delta x}+ {\frac {\partial L}{\partial \dot x}\delta \dot x)\text d t}=0 δJ(δx)=0tf(xLδx+x˙Lδx˙)dt=0
并对第二项做分部积分 u v = ∫ d ( u v ) = u ∫ d v + v ∫ d u uv=\int \text d (uv)=u\int \text d v+v\int \text d u uv=d(uv)=udv+vdu,
∫ L x ˙ δ x ˙ d t = ∫ L x ˙ δ d x d t d t = ∫ L x ˙ δ d x = L x ˙ δ x − ∫ δ x d L x ˙ = L x ˙ δ x − ∫ δ x d L x ˙ d t d t \int L_{\dot{x}} \delta \dot x \text d t=\int L_{\dot{x}} \delta \frac{\text d x}{\text d t}\text d t=\int L_{\dot{x}} \delta \text d x=L_{\dot{x}}\delta x-\int{\delta x}\text d L_{\dot x}=L_{\dot{x}}\delta x-\int{\delta x}\frac{\text d L_{\dot x}}{\text d t}\text d t Lx˙δx˙dt=Lx˙δdtdxdt=Lx˙δdx=Lx˙δxδxdLx˙=Lx˙δxδxdtdLx˙dt
,得到
L x ˙ δ x ∣ 0 t f + ∫ 0 t f ( L x − d d t L x ˙ ) δ x d t = 0 (2) {\left. L_{\dot{x}}\delta x \right|}_0^{t_f}+\int_0^{t_f}(L_x-\frac{\text d}{\text d t}L_{\dot x}\text )\delta xd t=0\tag{2} Lx˙δx0tf+0tf(LxdtdLx˙)δxdt=0(2)
上式表示
L x ˙ ( x ( t f ) , x ˙ ( t f ) , t f ) ⋅ δ x ( t f ) − L x ˙ ( x 0 , x ˙ 0 , 0 ) ⋅ δ x 0 = 0 [ L x ( x ( t ) , x ˙ ( t ) , t ) − d d t L x ˙ ( x ( t ) , x ˙ ( t ) , t ) ] ⋅ δ x = 0 \begin{aligned} L_{\dot x}(x(t_f),\dot x(t_f),t_f)\cdot\delta x(t_f)-L_{\dot x}(x_0,\dot x_0,0)\cdot\delta x_0=0\\ [L_x(x(t),\dot x(t),t)-\frac{\text d}{\text d t}L_{\dot x}(x(t),\dot x (t),t)\text ]\cdot\delta x=0 \end{aligned} Lx˙(x(tf),x˙(tf),tf)δx(tf)Lx˙(x0,x˙0,0)δx0=0[Lx(x(t),x˙(t),t)dtdLx˙(x(t),x˙(t),t)]δx=0
由于变分 δ x ( t ) \delta x(t) δx(t)是任意的,且初始时刻状态固定,所以 δ x ( t 0 ) = 0 \delta x(t_0)=0 δx(t0)=0.于是得到泛函极值的必要条件,即大名鼎鼎的Euler-Lagrange方程
L x − d d t L x ˙ = 0 (3) L_x-\frac{\text d}{\text d t}L_{\dot x}=0\tag 3 LxdtdLx˙=0(3)这个式子的完整形式是,是和分析力学中的形式完全一样的,其中 x x x为自变量, L ( t , x , x ˙ ) L(t,x,\dot x) L(t,x,x˙)为Lagrange函数.
∂ L ∂ x − d d t ∂ L ∂ x ˙ = 0 \frac{\partial L}{\partial x}-\frac{\text d}{\text d t}\frac{\partial L}{\partial \dot x}=0 xLdtdx˙L=0另外,泛函极值的必要条件还包括横截条件。
L x ˙ ( x f ) = 0 L_{\dot{x}}(x_f)=0 Lx˙(xf)=0

t f t_f tf固定、终端状态 x ( t f ) x(t_f) x(tf)自由,即 x f ∈ X f ≠ ∅ x_f\in X_f\neq \emptyset xfXf=,则上式需要;否则不需要这个条件就可以求出最优路径 x ( t ) x(t) x(t)

3. 各种情况下的求解

3.1 t f t_f tf固定, x f x_f xf固定

边界条件 x ( 0 ) , t f , x ( t f ) x(0),t_f,x(t_f) x(0),tf,x(tf)都知道,极值必要条件为公式 ( 3 ) (3) (3),维数n*1。n个未知变量,两端状态已知,则构成两点边值问题。这个问题最典型的例子是百度百科-最速下降曲线问题,该问题为约翰伯努利提出,被欧拉解决。
例1.1 求无约束最优化问题的最优路径
J ( x ) = ∫ 0 π / 2 [ x ˙ 2 ( t ) − x 2 ( t ) ] d t x ( 0 ) = 0 , x ( π / 2 ) = 1 J(x)=\int_{0}^{\pi / 2}\left[\dot{x}^{2}(t)-x^{2}(t)\right] d t\\ x(0)=0,x(\pi/2)=1 J(x)=0π/2[x˙2(t)x2(t)]dtx(0)=0,x(π/2)=1

首先列出Euler方程
0 = ∂ L ∂ x ( x ∗ ( t ) , x ˙ ∗ ( t ) , t ) − d d t [ ∂ L ∂ x ˙ ( x ∗ ( t ) , x ˙ ∗ ( t ) , t ) ] = − 2 x ∗ ( t ) − d d t [ 2 x ˙ ∗ ( t ) ] \begin{aligned} 0 &=\frac{\partial L}{\partial x}\left(x^{*}(t), \dot{x}^{*}(t), t\right)-\frac{d}{d t}\left[\frac{\partial L}{\partial \dot{x}}\left(x^{*}(t), \dot{x}^{*}(t), t\right)\right] \\ &=-2 x^{*}(t)-\frac{d}{d t}\left[2 \dot{x}^{*}(t)\right]\\ \end{aligned} 0=xL(x(t),x˙(t),t)dtd[x˙L(x(t),x˙(t),t)]=2x(t)dtd[2x˙(t)]

x ( t ) + x ′ ′ ( t ) = 0 x(t)+x''(t)=0 x(t)+x′′(t)=0

x ( t ) = a e ı ( t + ϕ ) , ( ı 2 = − 1 ) x(t)=ae^{\imath (t+\phi)},(\imath^2=-1) x(t)=ae(t+ϕ),(2=1),考虑边界条件即可得到 a = 1 , ϕ = − π / 2 ; & a = − 1 , ϕ = π / 2 a=1,\phi=-\pi/2;\& a=-1,\phi=\pi/2 a=1,ϕ=π/2;&a=1,ϕ=π/2,在实数域的解为 x ( t ) = s i n ( t ) x(t)=sin(t) x(t)=sin(t)

3.2 t f t_f tf固定, x f x_f xf自由

必要条件为Euler方程——公式 ( 3 ) (3) (3),边界条件多了
L x ˙ ( x f ) = 0 L_{\dot{x}}(x_f)=0 Lx˙(xf)=0

3.3 t f t_f tf自由, x f x_f xf自由,两者无关。

t f t_f tf自由, x f x_f xf自由,没有直接的代数关系。Euler方程和公式 ( 3 ) (3) (3)一样,边界条件多了
L x ˙ ( x f ) = 0 L ( x , x ˙ , t f ) = 0 (4) \begin{aligned} L_{\dot{x}}(x_f)=0\\ L(x,\dot x ,t_f)=0\tag{4} \end{aligned} Lx˙(xf)=0L(x,x˙,tf)=0(4)

3.4 t f t_f tf自由, x f x_f xf自由,之间有代数约束。

两者之间的关系为
ψ i ( x f , t f ) = 0 , i = 1 , 2 , . . . m , ( m < n ) \psi_i(x_f,t_f)=0,i=1,2,...m, (mψi(xf,tf)=0i=1,2,...m,(m<n)
有m个终端约束,数目小于状态向量 x x x的维数n。此时,按照Lagrange乘数法,设一个常数向量 μ ∈ R m × 1 \mu\in\Reals^{m\times1} μRm×1,构造新的性能指标
J ( x , t ) = μ T ψ + ∫ 0 t f L d t = ∫ 0 t f L + μ T d ψ d t d t J(x,t)=\mu^T\psi+\int_0^{t_f}L\text d t=\int_0^{t_f}L+\mu^T\frac{\text d \psi}{\text d t}\text d t J(x,t)=μTψ+0tfLdt=0tfL+μTdtdψdt
定义被积函数为Hamilton函数,即
H ( x , μ ) = L + μ T d ψ d t (5) H(x,\mu)=L+\mu^T\frac{\text d \psi}{\text d t}\tag{5} H(x,μ)=L+μTdtdψ(5)
则化为标准的Lagrange性无约束问题。对它仍有Euler方程,
H x − d d t H x ˙ = 0 (6) H_x-\frac{\text d}{\text d t}H_{\dot x}=0\tag 6 HxdtdHx˙=0(6)
参考公式 ( 4 ) (4) (4),有以下两个边界条件
H x ˙ ( x f ) = 0 H ( x , x ˙ , t f ) = 0 (7) \begin{aligned} H_{\dot{x}}(x_f)=0\\ H(x,\dot x ,t_f)=0\tag 7 \end{aligned} Hx˙(xf)=0H(x,x˙,tf)=0(7)
展开,得到横截条件
L x ˙ + μ T ∂ ψ ∂ x T = 0 L + μ T d ψ d t = 0 (8) \begin{aligned} L_{\dot{x}}+\mu^T\frac{\partial \psi}{\partial x^T}=0\\ L+\mu^T\frac{\text d \psi}{\text d t}=0 \tag{8} \end{aligned} Lx˙+μTxTψ=0L+μTdtdψ=0(8)
公式 ( 8 ) (8) (8)在终端时刻和终端状态成立 ( x f , t f ) (x_f ,t_f) (xf,tf).一共有n+1个条件。如果终端约束是显函数,则可以消去Largange乘数 μ \mu μ.

例1.2 求椭圆外一点 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)到椭圆 x 2 8 + y 2 4 = 1 \frac{x^2} 8+\frac {y^2} 4=1 8x2+4y2=1上距离最近的曲线的表达式 y ( x ) y(x) y(x)
最优控制理论 一、变分法和泛函极值问题_第1张图片

这里考虑到还没有引入状态过程约束,所以不假设最短路径是直线PQ,而是广义的形式 y ( x ) y(x) y(x)。构建性能指标,任意小弧段长度
d s = d x 2 + d y 2 = 1 + y ′ 2 d x \text d s=\sqrt{\text d x^2+\text d y^2}=\sqrt{1+y\prime^2}\text d x ds=dx2+dy2 =1+y2 dx
曲线 y ( x ) y(x) y(x)的长度
J ( y ( x ) , x ) = ∫ x 0 x f 1 + y ′ 2 d x J(y(x),x)=\int_{x_0}^{x_f}\sqrt{1+y\prime^2}\text d x J(y(x),x)=x0xf1+y2 dx
已知条件 y ( x 0 ) = y 0 y(x_0)=y_0 y(x0)=y0,终点Q自变量 x f x_f xf自由,状态变量 y ( x f ) y(x_f) y(xf)自由,终端约束方程
ψ ( y ( x f ) , x f ) = x 2 + 2 y 2 − 8 = 0 \psi(y(x_f),x_f)=x^2+2y^2-8=0 ψ(y(xf),xf)=x2+2y28=0
以下按照公式 ( 5 ) − ( 8 ) (5)-(8) (5)(8)的流程进行计算。构建Hamilton函数
H ( y ( x ) , x ) = L + μ d ψ d x = 1 + y ′ 2 + μ ( 2 x + 4 y y ′ ) H(y(x),x)=L+\mu\frac{\text d\psi}{\text d x}=\sqrt{1+y\prime^2}+\mu(2x+4y y^\prime) H(y(x),x)=L+μdxdψ=1+y2 +μ(2x+4yy)
Euler方程
H y − d d x H y ˙ = 4 μ y ′ − d d x ( y ′ 1 + y ′ 2 + 4 μ y ) = − y ′ ′ ( 1 + y ′ 2 ) 3 / 2 = 0 H_y-\frac{\text d}{\text d x}H_{\dot y}=4\mu y^\prime-\frac{\text d}{\text d x}(\frac{y'}{\sqrt{1+y\prime^2}}+4\mu y)=-\frac {y''}{(1+y'^2)^{3/2}}=0 HydxdHy˙=4μydxd(1+y2 y+4μy)=(1+y′2)3/2y′′=0
y ′ = a y'=a y=a,表明曲线 y ( x ) y(x) y(x)是直线。下面考虑边界条件,
y 0 = a x 0 + b y f = a x f + b x f 2 + 2 y f 2 − 8 = 0 1 + a 2 + μ ( 2 x f + 4 y f a ) = 0 a 1 + a 2 + 4 μ y f = 0 \begin{aligned} y_0=a x_0+b\\ y_f=a x_f+b\\ x_f^2+2y_f^2-8=0\\ \sqrt{1+a^2}+\mu(2 x_f+4y_f a)=0\\ \frac a{\sqrt{1+a^2}}+4\mu y_f=0 \end{aligned} y0=ax0+byf=axf+bxf2+2yf28=01+a2 +μ(2xf+4yfa)=01+a2 a+4μyf=0
5个方程,5个未知数,代数方程可以求解。例如,若 ( x 0 , y 0 ) = ( 2 , 0 ) = F 2 (x_0,y_0)=(2,0)=F_2 (x0,y0)=(2,0)=F2,则有唯一解 a = b = 0 , y f = 0 , x f = 2 2 , μ = 1 / ( 8 − 12 2 ) a=b=0,y_f=0,x_f=2\sqrt 2,\mu=1/(8-12\sqrt 2) a=b=0,yf=0,xf=22 ,μ=1/(8122 ).

4. Lagrange乘子法

上面对待终端约束,我们应用了Lagrange乘数 μ \mu μ;在例1.1中我们处理的,虽然知道是直线但还是用了曲线假设;为了处理最优路径问题中的约束,我们引入Lagrange乘子 λ \lambda λ。由于它是一个变量,和状态变量相对应地,我们也称它为协态变量。
以下考虑两种常见的等式形式的路径约束,不论是什么类型,都用Lagrange乘子法。

4.1 代数方程约束

也称为几何约束
g i ( x ( t ) , t ) = 0 , i = 1 , 2 , . . . m , ( m ≤ n ) g_i(x(t),t)=0,i=1,2,...m,(m\le n) gi(x(t),t)=0,i=1,2,...m,(mn)
引入Lagrange乘子 λ ( t ) ∈ R m × 1 \lambda(t)\in\Reals^{m\times1} λ(t)Rm×1,使性能指标变为
J ( x , λ , t ) = ∫ 0 t f L + λ T g d t = ∫ 0 t f H ( x , λ , t ) d t (9) J(x,\lambda,t)=\int_0^{t_f}L+\lambda^Tg \text d t=\int_0^{t_f}H(x,\lambda,t)\text d t\tag 9 J(x,λ,t)=0tfL+λTgdt=0tfH(x,λ,t)dt(9)
该系统仍可套用Euler方程(n维),此外方程自始至终满足几何约束的(m)个约束,则可解。

4.2 动力学方程约束

这里考虑一阶常微分方程形式的动态约束:
f ( x ( t ) , x ˙ ( t ) , t ) = 0 f(x(t),\dot x(t),t)=0 f(x(t),x˙(t),t)=0
终端时刻 t f t_f tf固定,终端状态 x f x_f xf自由。对这个问题引入Lagrange乘子 λ ( t ) ∈ R m × 1 \lambda(t)\in\Reals^{m\times1} λ(t)Rm×1,使性能指标变为
J ( x , x ˙ , λ , t ) = ∫ 0 t f L + λ T f d t = ∫ 0 t f H ( x , x ˙ , λ , t ) d t (10) J(x,\dot x,\lambda,t)=\int_0^{t_f}L+\lambda^Tf \text d t=\int_0^{t_f}H(x,\dot x,\lambda,t)\text d t\tag {10} J(x,x˙,λ,t)=0tfL+λTfdt=0tfH(x,x˙,λ,t)dt(10)
可见公式 ( 10 ) (10) (10)与公式 ( 9 ) (9) (9)形式一样。对上式仍然采用变分法,此处注意状态变量 δ x ( t ) ˙ \delta \dot {x(t)} δx(t)˙ δ x ( t ) \delta x(t) δx(t)通过分部积分法可以联系起来,而乘子 δ λ ( t ) \delta \lambda(t) δλ(t)是独立的,所以对性能指标的变分包括2部分
δ J ( δ x ∗ , δ λ ∗ ) = ∫ t 0 t f { [ L x + λ T f x ] δ x ( t ) + [ L x ˙ + λ T f x ] δ x ˙ ( t ) + δ λ T ( t ) f } d t = ∫ 0 t f [ ( H x − d d t H x ˙ ) δ x + f T δ λ ( t ) ] d t \delta J(\delta x^*,\delta \lambda^*) =\int_{t_{0}}^{t_{f}}\left\{\left[L_{\mathbf{x}}+\mathbf{\lambda}^{T} \mathbf{f}_{\mathbf{x}}\right] \delta \mathbf{x}(t)+\left[L_{\dot{\mathbf{x}}}+\mathbf{\lambda}^{T} \mathbf{f}_{\mathbf{x}}\right] \delta \dot{\mathbf{x}}(t)+\delta \lambda^T(t) f \right\} \text d t \\ =\int_0^{t_f}\big [(H_x-\frac{\text d}{\text d t}H_{\dot x})\delta \mathbf{x}+ \mathbf{f}^{T} \delta \mathbf{\lambda}(t)\big]\text dt δJ(δx,δλ)=t0tf{[Lx+λTfx]δx(t)+[Lx˙+λTfx]δx˙(t)+δλT(t)f}dt=0tf[(HxdtdHx˙)δx+fTδλ(t)]dt
考虑到变分的随意性,则有
H x − d d t H x ˙ = 0 f ( x ( t ) , x ˙ ( t ) , t ) = 0 (11) \begin{aligned}H_x-\frac{\text d}{\text d t}H_{\dot x}=0\\ \mathbf f(\mathbf x(t),\dot {\mathbf x}(t),t)=0\tag{11} \end{aligned} HxdtdHx˙=0f(x(t),x˙(t),t)=0(11)
该式可考虑其他边界条件,按第二部分所述。

5. 其他重要的内容

5.1 泛函极值的充分条件

函数L(x)取极值的必要条件是 ∂ L ∂ x = 0 \frac{\partial L}{\partial x}=0 xL=0,这样的点成为驻点(Stationary point)。满足一阶必要条件并不能使函数取最小值,例如下面的二次型函数
L ( x 1 , x 2 ) = − x 1 2 + 3 x 2 2 + 2 x 1 x 2 = x T A x = [ x 1 , x 2 ] [ − 1 , 1 1 , 3 ] [ x 1 x 2 ] L(x_1,x_2)=-x_1^2+3x_2^2+2x_1x_2\\= \mathbf x^\mathrm TA\mathbf x=[ x_1,x_2]\left[\begin{array}{c} -1,1 \\1,3 \end{array}\right] \left[\begin{array}{c} x_1\\x_2 \end{array}\right] L(x1,x2)=x12+3x22+2x1x2=xTAx=[x1,x2][1,11,3][x1x2]

原点处 ∂ L ∂ x = A x = [ − 1 , 1 1 , 3 ] [ 0 0 ] = [ 0 0 ] \frac{\partial L}{\partial x}=A\mathbf x=\begin{bmatrix}-1,1\\1,3 \end{bmatrix} \begin{bmatrix}0\\0 \end{bmatrix} =\begin{bmatrix}0\\0 \end{bmatrix} xL=Ax=[1,11,3][00]=[00],但显然 x 1 < 0 , x 2 = 0 x_1<0,x_2=0 x1<0,x2=0时仍有更小的值。这样的点称为鞍点,等势面如下图
最优控制理论 一、变分法和泛函极值问题_第2张图片
多元函数的极值点使函数取最小值的充分条件是Hessian矩阵正定,即
∂ 2 L ∂ u 2 ≻ 0 \frac{\partial^{2} L}{\partial u^{2}}\succ0 u22L0

如果Hessian矩阵在驻点处为0,则仍然不能保证在此处取极小值,此时需要考察高阶导的情况。
对于泛函极值问题,若有以下性能指标
min ⁡ x ( t ) J ( x , t ) = ∫ 0 t f L ( x , x ˙ , t ) d t \min_{x(t)}J(x,t)=\int_0^{t_f}L(x,\dot{x} ,t)\text d t x(t)minJ(x,t)=0tfL(x,x˙,t)dt

则Euler方程 ( 3 ) (3) (3)是最优路径的必要条件,这样的解是驻值曲线。驻值曲线处性能指标取极小值的充分条件为
∂ 2 L ∂ x ˙ 2 ⋟ 0 (12) \frac{\partial^{2} L}{\partial \dot x^{2}}\curlyeqsucc0\tag{12} x˙22L0(12)

参考书

[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

你可能感兴趣的:(最优控制,数学建模)