动态规划
说明:
将前述内容进一步扩展,尝试推广到动态规划问题。
6.0.1 求解最优控制的方法:
1)经典最优控制方法
经典变分法、庞特里亚金极值原理、动态规划方法、微分博弈;
2)智能控制方法
模型预测控制、自适应动态规划、数据驱动控制、平行控制。
6.0.2 最优控制的离散化
1)时间
对时间 t ∈ [ t 0 , t f ] t\in[t_0,t_f] t∈[t0,tf]而言,其离散化为:
Δ t = ( t f − t 0 ) N \Delta t = \frac{(t_f-t_0)}{N} Δt=N(tf−t0)
t k ∈ [ t 0 + k Δ t , t 0 + ( k + 1 ) Δ t ] t^k\in[t_0+k\Delta t,t_0+(k+1)\Delta t] tk∈[t0+kΔt,t0+(k+1)Δt]
2)状态
对状态 x ˙ = f ( x ( t ) , u ( t ) , t ) , x ( t 0 ) = x 0 \dot x=f(x(t),u(t),t),\quad x(t_0)=x_0 x˙=f(x(t),u(t),t),x(t0)=x0而言,其离散化为:
x ( k Δ t + Δ t ) ≈ x ( k Δ t ) + f ( x ( k Δ t ) , u ( k Δ t ) , k Δ t ) Δ t x(k\Delta t+\Delta t)≈x(k\Delta t)+f(x(k\Delta t),u(k\Delta t),k\Delta t)\Delta t x(kΔt+Δt)≈x(kΔt)+f(x(kΔt),u(kΔt),kΔt)Δt
记作: x ( k + 1 ) = f D ( x ( k ) , u ( k ) , k ) x(k+1)= f_D(x(k),u(k),k) x(k+1)=fD(x(k),u(k),k)
3)性能指标
对性能指标 J = h ( x ( t f ) , t f ) + ∫ t 0 t f g ( x ( t ) , u ( t ) , t ) d t J=h(x(t_f),t_f)+\int_{t_0}^{t_f}g(x(t),u(t),t)dt J=h(x(tf),tf)+∫t0tfg(x(t),u(t),t)dt,其离散化为:
记作:
J = h D ( x ( N ) , N ) + Σ k = 0 N − 1 g D ( x ( k ) , u ( k ) , k ) J=h_D(x(N),N)+\Sigma_{k=0}^{N-1}g_D(x(k),u(k),k) J=hD(x(N),N)+Σk=0N−1gD(x(k),u(k),k)
6.1 Bellman最优性原理
6.1.1 定义
动态规划基于Bellman最优性原理,其表述为多级决策过程的最优策略具有如下性质:任意后部子策略都是最优策略,即无论以前状态决策如何,从当前直到最后的每个决策必构成最优子策略。

数学表述:
对于性能指标:
J ( u , x 0 , k 0 ) = h D ( x ( N ) , N ) + Σ k = k 0 N − 1 g D ( x ( k ) , u ( k ) , k ) J(u,x_0,k_0)=h_D(x(N),N)+\Sigma_{k=k_0}^{N-1}g_D(x(k),u(k),k) J(u,x0,k0)=hD(x(N),N)+Σk=k0N−1gD(x(k),u(k),k)
将其最优控制下的性能指标称为“值函数”,记为:
V ( x 0 , k 0 ) = m i n u ∈ U J ( u , x 0 , k 0 ) V(x_0,k_0)=min_{u\in U}J(u,x_0,k_0) V(x0,k0)=minu∈UJ(u,x0,k0)
根据最优性原理,如下Bellman方程是最优控制的充要条件:

说明:
→动态规划的最优控制策略需要从最后阶段向前推(这是关键),属于多阶段决策,整体最优一定是局部最优。
→最优控制问题本质上是时间滞后问题。
6.1.2-例子(路径规划问题)
推算过程省略


可以对比:
①从后向前推:确保每一步往后都是最优的,即符合Bellman最优性原理;
②从前向后推:若每一步都取最小的,容易使决策出现问题
这说明:Bellman最优性原理通过限制必须做出的决策数量,减少了计算的数量。
说明:
整个算法是遍历的,所有点只进入一次,每个点只记录最优值即最优值代表的下一步怎么走(只下一个,而不是之后的所有)→多级决策过程
6.2 离散系统的动态规划
6.2.1 思路
根据Bellman最优性原理,系统的性能指标由以下两部分组成:

对应的,其分别代表优化目标 L L L(如从当前点到下一点的最短距离)和总体消耗 J k + 1 J_{k+1} Jk+1(如该步之后总体的最小消耗)。
因此,从第 k k k步开始的最优损耗可以写作:

该式即动态规划的函数方程,满足离散系统的最优性原理。
6.2.2-例子(离散系统LQR问题的动态规划求解)
问题描述:
仍考虑系统:

其性能指标:

期望在 [ i , N ] [i,N] [i,N]时间上,找到令 J i J_i Ji最小的最优控制 u k ∗ u_k^* uk∗,其中,初始状态 x i x_i xi给定,终端状态 x N x_N xN不确定。
解决:
从后向前递推的思路很像前述“离散系统最优控制不定终值”情况下的求解,首先从最末端, k = N k=N k=N时:

则有:

这里 L k ( x k , u k ) = 1 2 x N − 1 T Q x N − 1 + 1 2 u N − 1 T R u N − 1 L^k(x_k,u_k)=\frac{1}{2}x_{N-1}^\mathrm{T}Qx_{N-1}+\frac{1}{2}u_{N-1}^\mathrm{T}Ru_{N-1} Lk(xk,uk)=21xN−1TQxN−1+21uN−1TRuN−1,根据最优性原理,需要找到 u N − 1 ∗ u_{N-1}^* uN−1∗使之最小。
将式(1)代入(4)可得:

因为没有约束,所以最小值点通过“导数=0”的点确定:

即:

类似地,这里可以定义Kalman增益:

进而,将控制量简写成: u N − 1 ∗ = − K N − 1 x N − 1 u_{N-1}^*=-K_{N-1}x_{N-1} uN−1∗=−KN−1xN−1,代入式(5)得性能指标最小为:

从上式易知,如果假设 S N − 1 S_{N-1} SN−1为:

则性能指标 J k J_k Jk的表达式便可以统一,类似于前述终端状态不定时LQR问题的求解,类似地,各参量都可以写作:

其中,式(16)被称为the Joseph stabilized Riccati equation。
6.2.3 直接迭代求解法:

P a g e 33 − P a g e 38 Page_{33}-Page_{38} Page33−Page38
6.2.4 查表法:

P a g e 43 − P a g e 48 Page_{43}-Page_{48} Page43−Page48

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/52218.html