SOSP估计ROA理论

学习完SOSTOOLS工具箱后,开始学习平方和规划(Sum-of-Square Programming,SOSP)理论估计非线性系统的吸引域(Region of Attraction, ROA)。因为,非线性系统的全局渐近稳定性很难得到验证,一般都是得到一个局部围绕平衡点的吸引域。

SOS的定义

对于有 n n n 个实变量的多元多项式 p ( x ) p(x) p(x),其中 x x x 是分量为 x 1 , . . . , x n x_1,...,x_n x1,...,xn 的向量。如果存在多项式 f i ( x ) f_i(x) fi(x) 使得: p ( x ) = ∑ i = 1 M f i 2 ( x ) (1) p(x)=\sum_{i=1}^Mf_i^2(x)\tag{1} p(x)=i=1Mfi2(x)(1)那么多元多项式 p ( x ) p(x) p(x) 就被称为 SOS。

SOS多项式的集合表示为 ∑ [ x ] \sum[x] [x],如果 p ( x ) p(x) p(x) 是SOS,那么它是半正定的(平方的和都是非负的)。

对于 p ( x ) p(x) p(x) 来说,它的阶数就是最高阶单项式的阶数,比如
p ( x ) = x 1 6 + x 2 3 x 3 4 p(x) = x_1^6+x_2^3x_3^4 p(x)=x16+x23x34阶数为 3 + 4 = 7 3+4=7 3+4=7

如果 p ( x ) p(x) p(x) 是SOS,可以写成:
p ( x ) = Z T ( x ) Q 0 Z ( x ) = Z T ( x ) ( Q 0 + ∑ i = 1 N λ i M i ) Z ( x ) (2) p(x)=Z^T(x)Q_0Z(x)=Z^T(x)(Q_0+\sum_{i=1}^N\lambda_iM_i)Z(x)\tag{2} p(x)=ZT(x)Q0Z(x)=ZT(x)(Q0+i=1NλiMi)Z(x)(2)
其中 Q 0 > 0 Q_0>0 Q0>0 是Gram矩阵。
因此,如果存在 λ i \lambda_i λi 使得
Q = Q 0 + ∑ i = 1 N λ i M i ≥ 0 (3) Q = Q_0+\sum_{i=1}^N\lambda_iM_i\geq0\tag{3} Q=Q0+i=1NλiMi0(3)
p ( x ) p(x) p(x) 是SOS,这是一个LMI的可行性问题。

综上,我们可以总结一下:并不是所有的非负的多项式都是SOS,但是所有的SOS都是非负的多项式,也就是SOS是非负多项式的充分不必要条件。但是检查SOS分解是否存在在计算上可以通过多项式的复杂性进行分解,通过此来寻找非线性系统的Lyapunov函数。

广义S-procedure

S-procedure的目的就是将一些不是凸约束的问题转化成LMI约束。
考虑 p 0 ( x ) p_0(x) p0(x) x ∈ D x \in D xD
p ( x ) ≥ 0 : R n ⟹ R p(x)\geq0: \mathbb{R}^n \Longrightarrow \mathbb{R} p(x)0:RnR为了限制 x x x的域,需要 p i ( x ) ≥ 0 , . . . , p m ( x ) ≥ 0 p_i(x)\geq0,...,p_m(x)\geq0 pi(x)0,...,pm(x)0
则有:
∩ i = 1 m { x ∈ R n ∣ p i ( x ) ≥ 0 } ⊆ { x ∈ R n ∣ p 0 ( x ) ≥ 0 } (4) \cap_{i=1}^m\{x\in\mathbb{R}^n|p_i{(x)}\geq0\}\subseteq\{x\in\mathbb{R}^n|p_0(x)\geq0\}\tag{4} i=1m{xRnpi(x)0}{xRnp0(x)0}(4)
存在半正定函数 q 1 ( x ) , . . . , q m ( x ) q_1(x),...,q_m(x) q1(x),...,qm(x)使得:
p 0 ( x ) − ∑ i = 1 m q i ( x ) p i ( x ) ≥ 0 (5) p_0(x)-\sum_{i=1}^mq_i(x)p_i(x)\geq0\tag{5} p0(x)i=1mqi(x)pi(x)0(5)
我的理解大概就是:先判断 p 0 ( x ) − ∑ i = 1 m q i ( x ) p i ( x ) ≥ 0 p_0(x)-\sum_{i=1}^mq_i(x)p_i(x)\geq0 p0(x)i=1mqi(x)pi(x)0成立,同时, p i ( x ) ≥ 0 , . . . , p m ( x ) ≥ 0 p_i(x)\geq0,...,p_m(x)\geq0 pi(x)0,...,pm(x)0,那么可以得到 p ( x ) ≥ 0 p(x)\geq0 p(x)0

吸引域估计

考虑以下形式的自治非线性系统: x ˙ = f ( x ( t ) ) \dot x=f(x(t)) x˙=f(x(t)),假设 f ( 0 ) = 0 f(0)=0 f(0)=0。如果 ξ ( x 0 , t ) \xi(x_0,t) ξ(x0,t)是在 t t t时刻的解,初始条件是 ξ ( x 0 , 0 ) = x 0 \xi(x_0,0)=x_0 ξ(x0,0)=x0。吸引域是 { x 0 ∈ R n : l i m t → ∞ ξ ( x 0 , t ) = 0 } \{x_0\in\mathbb{R}^n: lim_{t\rightarrow\infty}\xi(x_0,t)=0\} {x0Rn:limtξ(x0,t)=0}。对于 t > 0 t>0 t>0 x 0 ∈ M x_0\in\mathcal{M} x0M意味着 ξ ( x 0 , t ) ∈ M \xi(x_0,t)\in\mathcal{M} ξ(x0,t)M,那么,集合 M \mathcal{M} M f ( x ( t ) ) f(x(t)) f(x(t))下是不变的。
Theorem 1(Lyapunov稳定性的充分条件) 考虑以下形式的自治非线性系统: x ˙ = f ( x ( t ) ) \dot x=f(x(t)) x˙=f(x(t)) x x x是状态向量, f f f 是局部 Lipschitz 函数,描述系统动力学。该系统局部稳定的条件是:存在连续可微函数 V V V,使得下面两个条件成立:
(1) 对于所有 x ≠ 0 x\neq 0 x=0,有 V ( x ) > 0 V(x)>0 V(x)>0,同时 V ( 0 ) = 0 V(0)=0 V(0)=0
(2) V ˙ ( x ) ≤ 0 \dot V(x)\leq0 V˙(x)0,即 ∇ x V ( x ) f ( x ) ≤ 0 \nabla xV(x)f(x)\leq0 xV(x)f(x)0
此外,如果 ∇ x V ( x ) f ( x ) < 0 \nabla xV(x)f(x)<0 xV(x)f(x)<0,平衡点是局部渐近稳定的。

具有多项式向量场的Lyapunov函数可以通过上述两个条件放宽到SOS约束来构造,假设 φ i \varphi_i φi 是正定多项式定义为:
φ i ( x ) = ∑ j = 1 n ϵ i j x j 2 (6 ) \varphi_i(x)=\sum_{j=1}^n \epsilon_{ij}x_j^2\tag{6 } φi(x)=j=1nϵijxj2() 其中, ϵ i j \epsilon_{ij} ϵij是比较小的正实数。可以使用SOSP在原点建立平衡的局部渐近稳定性

Program 1:给定具有多项式向量场的ODE系统,如果能找到 V ( x ) V(x) V(x),使得 V ( 0 ) = 0 V(0)=0 V(0)=0,并且 q ( x ) ∈ ∑ [ x ] q(x)\in\sum[x] q(x)[x]
V ( x ) − φ 1 ( x ) ∈ ∑ [ x ] (7) V(x)-\varphi_1(x)\in\sum[x]\tag{7} V(x)φ1(x)[x](7) − ∇ x V ( x ) f ( x ) − φ 2 ( x ) + q ( x ) g ( x ) ∈ ∑ [ x ] (8) -\nabla_xV(x)f(x)-\varphi_2(x)+q(x)g(x)\in\sum[x]\tag{8} xV(x)f(x)φ2(x)+q(x)g(x)[x](8)则可以检查原点平衡的局部渐近稳定性。
其中 ( 7 ) (7) (7) 是由 V ( x ) > 0 V(x)>0 V(x)>0 V ( 0 ) = 0 V(0)=0 V(0)=0 得到, ( 8 ) (8) (8) 是由 ∇ x V ( x ) f ( x ) ≤ 0 \nabla xV(x)f(x)\leq0 xV(x)f(x)0S-procedure得到。

对于具有有理形式的系统
x ˙ = n ( x ) d ( x ) , d ( x ) > 0 \dot x=\frac{n(x)}{d(x)},d(x)>0 x˙=d(x)n(x),d(x)>0
将约束 ( 8 ) (8) (8)乘以 d ( x ) d(x) d(x)得到了可以使用SOS分解的形式,那么就可以使用 Program 1 来检查原点的稳定性,可以得到:
Program 2
V ( x ) − φ 1 ( x ) ∈ ∑ [ x ] (9) V(x)-\varphi_1(x)\in\sum[x]\tag{9} V(x)φ1(x)[x](9) − ∇ x V ( x ) n ( x ) − φ 2 ( x ) d ( x ) + q ( x ) g ( x ) d ( x ) ∈ ∑ [ x ] (10) -\nabla_xV(x)n(x)-\varphi_2(x)d(x)+q(x)g(x)d(x)\in\sum[x]\tag{10} xV(x)n(x)φ2(x)d(x)+q(x)g(x)d(x)[x](10)那么在建立平衡点的稳定性之后,就可以尝试去估计ROA了。
Lemma 1 假设 γ > 0 \gamma>0 γ>0 , 并存在连续可微函数 V : R n → R V: \mathbb{R}^n\rightarrow\mathbb{R} V:RnR 使得:
(1) V ( 0 ) = 0 V(0)=0 V(0)=0, 且对所有非零 x ∈ R n x\in\mathbb{R}^n xRn V ( x ) > 0 V(x)>0 V(x)>0
(2) M V , γ = { x ∈ R n : V ( x ) ≤ γ } \mathcal{M}_{V,\gamma}=\{x\in\mathbb{R}^n:V(x)\leq\gamma\} MV,γ={xRn:V(x)γ}是有界的
(3) M V , γ \ { 0 } ⊂ { x ∈ R n : ∇ x V ( x ) f ( x ) ≤ 0 } \mathcal{M}_{V,\gamma} \backslash \{0\}\subset\{x\in\mathbb{R}^n: \nabla xV(x)f(x)\leq0\} MV,γ\{0}{xRn:xV(x)f(x)0}
那么,对于所有的 x 0 ∈ M V , γ x_0\in\mathcal{M}_{V,\gamma} x0MV,γ,非线性系统的解 ξ ( x 0 , t ) \xi(x_0,t) ξ(x0,t) 存在于 [ 0 , ∞ ] [0,\infty] [0,] 上,且对于 t ≥ 0 t\geq0 t0 l i m t → ∞ ξ ( x 0 , t ) = 0 lim_{t\rightarrow\infty}\xi(x_0,t)=0 limtξ(x0,t)=0
如果 Lemma 1 满足,则 M V , γ \mathcal{M}_{V,\gamma} MV,γ 是平衡点处的 ROA 不变子集。对于在 M V , γ \mathcal{M}_{V,\gamma} MV,γ 内的任何初始条件 x 0 x_0 x0,非线性系统的开环解都收敛于原点。
( 3 ) (3) (3)中两个集合均由不等式描述,通过 S-procedure 来建立包含关系。如果 φ ( x ) \varphi(x) φ(x)是正定的, q ( x ) q(x) q(x) 是半正定的,同时 q ( x ) ( V ( x ) − γ ) ≥ ( φ ( x ) + ∇ x V f ( x ) ) q(x)(V(x)-\gamma)\geq(\varphi(x)+\nabla _xVf(x)) q(x)(V(x)γ)(φ(x)+xVf(x))那么 ( 3 ) (3) (3) 成立。

所以,要寻找满足 Lemma 1 非负条件的 Lyapunov函数的问题可以使用 SOS 松弛方法,将其转化为 SDP 问题。通过找到使得稳定性条件成立的 Lyapunov 函数的最大水平集 γ \gamma γ 来估计吸引域的大小。

Program 3 有理系统 x ˙ = n ( x ) d ( x ) , d ( x ) > 0 \dot x=\frac{n(x)}{d(x)},d(x)>0 x˙=d(x)n(x),d(x)>0 平衡点周围的吸引域可以通过找到使得 β \beta β 最大化的 V V V, q 1 ∈ ∑ [ x ] q_1\in\sum[x] q1[x], q 2 ∈ ∑ [ x ] q_2\in \sum[x] q2[x] 来估计,这样:
m a x     β max~~~ \beta max   β V ( x ) − φ 1 ( x ) ∈ ∑ [ x ] (11) V(x)-\varphi_1(x)\in\sum[x]\tag{11} V(x)φ1(x)[x](11) q 1 ( x ) ( s ( x ) − β ) − ( V ( x ) − γ ) ∈ ∑ [ x ] (12) q_1(x)(s(x)-\beta)-(V(x)-\gamma)\in\sum[x]\tag{12} q1(x)(s(x)β)(V(x)γ)[x](12) − ∇ x V ( x ) n ( x ) − φ 2 ( x ) d ( x ) + q 2 ( x ) d ( x ) ( V ( x ) − γ ) ∈ ∑ [ x ] (13) -\nabla_xV(x)n(x)-\varphi_2(x)d(x)+q_2(x)d(x)(V(x)-\gamma)\in\sum[x]\tag{13} xV(x)n(x)φ2(x)d(x)+q2(x)d(x)(V(x)γ)[x](13)

条件 ( 11 ) (11) (11) 确保 Lemma 1.1 满足,保证 V ( x ) V(x) V(x)的正定性
条件 ( 12 ) (12) (12) 确保 M s , β = { s ( x ) ≤ β } ⊂ M V , γ = { V ( x ) ≤ γ } \mathcal{M}_{s,\beta}=\{s(x)\leq\beta\}\subset\mathcal{M}_{V,\gamma}=\{V(x)\leq\gamma\} Ms,β={s(x)β}MV,γ={V(x)γ},其中, s ( x ) s(x) s(x) 是给定的形状函数
条件 ( 13 ) (13) (13) 确保 Lemma 1.3 满足,强迫 V ˙ ( x ) \dot V(x) V˙(x) 为负值。
因此要使得 β \beta β 最大,来使得 ROA 的面积最大

算法Program 3 可以通过重复以下步骤来迭代求解,直到 β \beta β 不再改进。
(1) γ \gamma γ step:初始化 V V V,通过找到 q 2 ( x ) q_2(x) q2(x) 使得 (13) 成立来最大化 γ \gamma γ
(2) β \beta β step:保持 V V V γ \gamma γ q 2 ( x ) q_2(x) q2(x) 固定,并通过找到 q 1 ( x ) q_1(x) q1(x)使得 (12) 成立来最大化 β \beta β
(3) V V V step:保持 γ \gamma γ β \beta β q 1 ( x ) q_1(x) q1(x) q 2 ( x ) q_2(x) q2(x) 固定,并找到 V V V 使得 (11)-(13) 成立

γ \gamma γ:通过 γ \gamma γ 的二分法来求解约束(13),直到 γ \gamma γ的下估计值和上估计值之间的差异达到某个指定阈值。
β \beta β:通过 β \beta β 的二分法来求解约束(12),直到 β \beta β的下估计值和上估计值之间的差异达到某个指定阈值。
V V V q 1 ( x ) q_1(x) q1(x) q 2 ( x ) q_2(x) q2(x) 不需要包含常数项。

论文中建议的多项式阶数如下:
d e g ( V ) ≥ d e g ( φ 1 ) deg(V)\geq deg(\varphi_1) deg(V)deg(φ1) d e g ( q 1 ) + d e g ( s ) ≥ d e g ( V ) deg(q_1)+deg(s)\geq deg(V) deg(q1)+deg(s)deg(V) d e g ( q 2 ) + d e g ( d ) ≥ d e g ( n ) − 1 deg(q_2)+deg(d)\geq deg(n)-1 deg(q2)+deg(d)deg(n)1

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值