LMI线性矩阵不等式

合集下载

《鲁棒控制》-6-线性矩阵不等式

《鲁棒控制》-6-线性矩阵不等式

(≤ 0)
为线性矩阵不等式(LMI)。
当存在实向量 x ,使得 F ( x) < 0(≤ 0) ,则称 LMI F ( x) < 0(≤ 0) 可行或存在可
行解。
LMI 的可行解全体构成一凸集。
令 X 是一实对称矩阵,对于任意给定实数矩阵 A 和实对称矩阵 Q ,则矩阵
不等式
AT X + XA + Q < 0
⎢ ⎣
0
⎡I ⎢⎣0
−S12 I
S −1 22
⎤ ⎥ ⎦
⎡ ⎢⎣
S11 S21
S12 S22
⎤ ⎥⎦
⎡I ⎢⎣0
−S12 I
S −1 22
⎤T ⎥ ⎦
0

S22

S21S1−11S12
⎥ ⎦
=
⎡ ⎢
S11


S12
S −1 22
S21
S21
0 ⎤⎡ I
S22
⎥ ⎦
⎢⎣−
S −1 22
S
21
0⎤
I
⎥ ⎦
x (t ) = Ax (t ) + Bu (t ) y (t ) = Cx (t ) + Du (t )
假设 D + DT > 0 。 令
H (s) = C (sI − )A −1 B + D
系统无源(passive): 当 x (0) = 0 时,
∫T 0
uT
(t
)y
(t
)
dt

0
● 系统无源 iff
ALQ
⎤ ⎥

0 ⎥<0
#
⎥ ⎥

线性矩阵不等式

线性矩阵不等式

则应用引理 2.1.2,可以将矩阵不等式(2.1.6)的可行性问题转化成一个等价的矩阵不等 式
AT P PA Q PB
BT P
R0
(2.1.7)
的可行性问题,而后者是一个关于矩阵变量P的线性矩阵不等式。
2.3一些标准的线性矩阵不等式问题
例2.1.1 稳定性问题 考虑线性自治系统
x(t) Ax(t)
setlmis([]) X=lmivar(1,[61]) S=lmivar(1,[20;21]) ﹪lst LMI lmiterm([111x],1,A,’s’) lmiterm([111s],c’,c) lmiterm([112x],1,B) lmiterm([122s],-1,1) ﹪2nd LMI lmiterm([-211X],1,1) ﹪3rd LMI lmiterm([-311s],1,1) lmiterm([3110],1) lmisys=getlmis
m 是一组给定的实对称矩阵,(2.1.1)中的不等号“<”指的是矩阵 F(x)是负定的,即对所有
非零的向量 v Rm , vT F (x)v0 或者 F(x)的最大特征值小于零。
在许多系统与控制问题问题中,问题的变量是以矩阵的形式出现的。例如 Lyapunov 矩阵 不等式:
F ( X ) AT X XA Q0
lmivar 函数lmivar用来描述出现在线性矩阵不等式系
统中的矩阵变量,每一次只能描述一个矩阵变 量。矩阵变量的描述包括该矩阵变量的结构。 该函数的一般表达是:
X=lmivar(type,struct) 这一函数定义了一个新的矩阵变量X。函数中
的第一个输入量type确定了矩阵变量X的类型, 第二个输入量struct进一步根据变量X的类型给 出该变量的结构。变量的类型分成三类:

Matlab工具箱解LMI 线性矩阵不等式详解

Matlab工具箱解LMI 线性矩阵不等式详解
• 第一个参数是所在不等式名,第二个参数是返回的可行解 (包含很多变量),第三个参数是指定变量。
• mincx求解器
• 第一步:建立矩阵不等式,变量命名为X,不 等式组命名为LMIs。
• 第二步:将目标函数Trace(X)写成cTX形式。用 函数mat2dec建立c。
• Mat2dec的调用格式:定义与X同阶的矩阵W, mat2dec(LMIs, W)返回的是W与X对应元素乘 积的和。(延申,257页,defcx等)
提取结果和验证结果:evallmi和 showlmi
• 用法: • EVALSYS = evallmi(LMISYS,DECVARS):计算出矩阵
不等式中所有决策变量项的值(矩阵形式?); • [LHS,RHS]=showlmi(LMISYS,N):给出第N个线性矩
阵不等式的左边和右边的矩阵值。
• lmiterm([-1 1 1 0],0); • lmiterm([-1 2 1 0],B'*P1); • lmiterm([-1 2 2 0],P3*B+B'*P2);
• lmis=getlmis;
• 四、观察所建立的矩阵不等式的信息
• 使用函数lmiinfo(lmisys),lmibr(lmisys), matnbr(lmisys)可以提取所建立的不等式 lmisys的信息。
其它命令
• 1、用于求个数的命令: • lminbr(lmisys):给出系统中线性矩阵不等式的个数;
matnbr(lmisys):给出系统中矩阵变量的个数; decnbr(lmisys):给出系统中决策变量的个数。 • 2、用于查看相关信息的命令: • lmiinfo(LMISYS):给出线性矩阵不等式系统的信息; DECX = decinfo(LMISYS,XID) :给出决策变量和矩阵变 量之间关系的一些详细信息。

LMI(线性矩阵不等式)工具箱介绍学习

LMI(线性矩阵不等式)工具箱介绍学习

LMI:Linear Matrix Inequality,就是线性矩阵不等式。

在Matlab当中,我们可以采用图形界面的lmiedit命令,来调用GUI接口,但是我认为采用程序的方式更方便(也因为我不懂这个lmiedit的GUI)。

对于LMI Lab,其中有三种求解器(solver): feasp,mincx和gevp。

每个求解器针对不同的问题:feasp:解决可行性问题(feasibility problem),例如:A(x)<B(x)。

mincx:在线性矩阵不等式的限制下解决最小化问题(Minimization of a linear objective under LMI constraints),例如最小化c'x,在限制条件A(x) < B(x)下。

gevp:解决广义特征值最小化问题。

例如:最小化lambda,在0<B(x),A(x)<lamba*B(x)限制条件下。

要解决一个LMI问题,首要的就是要把线性矩阵不等式表示出来。

对于以下类型的任意的LMI问题N' * L(X1, . . . , XK) * N < M' * R(X1, . . . , XK) * M其中X1, . . . , XK是结构已经事先确定的矩阵变量。

左侧和右侧的外部因子(outer factors)N和M是给定的具有相同维数的矩阵。

左侧和右侧的内部因子(inner factors)L(.)和R(.)是具有相同结构的对称块矩阵。

每一个块由X1, . . . , XK以及它们的转置组合而成形成的。

解决LMI问题的步骤有两个:1、定义维数以及每一个矩阵的结构,也就是定义X1, . . . , XK。

2、描述每一个LMI的每一项内容(Describe the term content of each LMI)此处介绍两个术语:矩阵变量(Matrix Variables):例如你要求解X满足A(x)<B(x),那么X就叫做矩阵变量。

线性矩阵不等式

线性矩阵不等式

7.4.2线性矩阵不等式的确定


LMI工具箱可以处理具有以下一般形式的线性 矩阵不等式。 NTL(X1,…,Xk)N<MTR(X1,…,XK)M 其中:X1…,XK是具有一定结构的矩阵变量, 左、右外因子N和M是具有相同维数的给定矩 阵,左、右内因子L(﹒)和R(﹒)是具有相 同块结构的对称块矩阵。 注意,在线性矩阵不等式的描述中,左边总是 指不等式较小的一边,例如对线性矩阵不等式 X>0,X称为是不等式的右边,0称为是不等式 的左边,常表示成0< X。
I F T ( x) F ( x) F ( x) I 0 0 F ( x) I
T 2
因此,可以通过求解:
min x,

(7.3.2)
I F T ( x) s.t 0 F ( x) I
来得到所求问题的解。显然,问题(7.3.2)是一个具有线性矩阵不等式约束的线性目标函数 的最优化问题。
定的常数矩阵。由于
DED 1 1 D T E T D T DED 1 1
E T DT DE DT D
ET XE X 0
1 T 其中 X D D0 。因此,使得 DED 1 成立的对角矩阵 D 的存在性问题等价
于线性矩阵不等式 E XE X 0 的可行性问题。


要确定一个线性矩阵不等式系统,需要做以下两步: 给出每个矩阵变量X1,…,XK的维数和结构; 描述每一个线性矩阵不等式中各个项的内容。 这个过程产生所描述线性矩阵不等式系统的一个内部 表示,它以一个单一向量的形式储存在计算机内,通 常用一个名字,例如lmisys来表示。该内部表示lmisys 可以在后面处理这个线性矩阵不等式时调用。 下面将通过LMI工具箱中的一个例子来说明线性矩阵不 等式系统的确定。运行lmidem可以看到这个例子的完 整描述。

LMI线性矩阵不等式

LMI线性矩阵不等式
航空航天飞行器控制、制导与导 航
线性矩阵不等式
Linear matrix inequality(LMI): 矩阵变量集合中线性(或仿
射)的矩阵不等式.
1.1: LMI的 基 本 性 质
1
Q正定:如果 xT Qx > 0, ∀x ̸= 0 Q半正定:如果 xT Qx ≥ 0, ∀x ̸= 0 P 负定(半负定):如果Q = −P 正定(半正定)。
9
%可行 ( 是稳定的A) tmin
当且仅当 tmin <0
运行结果:
Lyap =
1
S o l v e r f o r LMI f e a s i b i l i t y problems L ( x ) < R( x )
10
T h i s s o l v e r minimizes
t
subject to
只需要写出对角线上面,或下面的项。
% AP+PA’ <0 % 0 % P>0
l m i t e r m ( [ Lyap 1 1 P ] , 1 , A , ’ s ’ ) ; l m i t e r m ( [ Lyap 1 2 0 ] , 0 ) ; l m i t e r m ( [ Lyap 2 2 P] ,1 , − 1) ; LMIsys= g e t l m i s ; [ tmin , x f e a s ] = feasp ( LMIsys ) ;
L ( x ) < R( x ) + t ∗ I
The b e s t v a l u e o f t should be n e g a t i v e f o r f e a s i b i l i t y

Matlab工具箱解LMI-线性矩阵不等式详解

Matlab工具箱解LMI-线性矩阵不等式详解

8
• 例如
2021/4/8
9
将下面描述的线性矩阵不等式还原
• setlmis([]); • X=lmivar(2,[2,3]); • lmiterm([1 1 1 X],P2,eye(3),'s'); • lmiterm([1 1 1 0],-eye(3)); • lmiterm([1 2 1 X],P4,1); • lmiterm([1 2 2 0],-1);
• lmiterm([-1 1 1 0],0); • lmiterm([-1 2 1 0],B'*P1); • lmiterm([-1 2 2 0],P3*B+B'*P2);
• lmis=getlmis;
2021/4/8
10
• 四、观察所建立的矩阵不等式的信息
• 使用函数lmiinfo(lmisys),lmibr(lmisys), matnbr(lmisys)可以提取所建立的不等式 lmisys的信息。
2021/4/8
13
2021/4/8
14
2021/4/8
15
• Dec2mat可以把指定LMI不等式组的可行解中的指定变量转 化成矩阵格式。调用格式:
• 第一个参数是所在不等式名,第二个参数是返回的可行解 (包含很多变量),第三个参数是指定变量。
2021/4/8
16
• mincx求解器
2021/4/8
• [LHS,RHS]=showlmi(LMISYS,N):给出第N个线性矩 阵不等式的左边和右边的矩阵值。
2021/4/8
24
其它命令
• 1、用于求个数的命令: • lminbr(lmisys):给出系统中线性矩阵不等式的个数;

线性矩阵不等式的LMI工具箱求解

线性矩阵不等式的LMI工具箱求解

一、线性矩阵不等式的LMI 工具箱求解 (一)可行性问题(LMIP )1、可行性问题描述系统状态方程:[]1122331000210-414x x x x u x x ⎡⎤⎡⎤⎡⎤⎡⎤⎢⎥⎢⎥⎢⎥⎢⎥=-+⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦⎣⎦⎣⎦在判断系统的稳定性时,根据线性定常系统的李雅普诺夫稳定性判据,需要判断是否存在实对称矩阵P ,使得:TA P +P A =Q -成立,其中Q 为正定矩阵。

那么判断系统稳定性的问题,可以转化为下面不等式是否存在解的问题:TA P +P A <0这种不等式解是否存在的问题可以用MATLAB 的LMI 工具箱进行判断。

2、仿真所需要用到的命令setlmis([]) :开始一个线性矩阵不等式系统的描述; X= lmivar(TYPE,STRUCT):定义一个新的矩阵变量;lmiterm(TERMID,A,B,FLAG):确定线性矩阵不等式的一个项的内容; LMISYS = getlmis :结束一个线性矩阵不等式系统的描述,返回这个现行矩阵不等式系统的内部表示向量LMISYS ;X = dec2mat(LMISYS,DECV ARS,XID):由给定的决策变量得到相应的矩阵变量值。

[tmin,xfeas]=feasp(lmisys):可行性问题的求解器函数,tmin 大于0时,表明LMI 系统不可行,P 阵无解,系统不稳定,tmin 小于0时,便可以用dec2mat 函数求解出P矩阵。

3、仿真结果可以看到,仿真结果tmin<0,因此P阵存在,系统是稳定的。

进一步用dec2mat函数求解出P矩阵。

得:(二)特征值问题(EVP)1、EVP 问题描述该问题对应矩阵工具箱中的LMI 约束的线性目标函数最小化优化问题。

一般采用mincx 求解器求解。

考虑这样一个优化问题:m in ().. 0TTT ra c e X s t A X X A X B B X Q +++<其中:5342154067; 3; 562.78314228A B Q -⎛⎫⎛⎫⎛⎫⎪ ⎪ ⎪===-- ⎪ ⎪⎪ ⎪ ⎪ ⎪---⎝⎭⎝⎭⎝⎭2、仿真用到的命令DECV ARS = mat2dec(LMISYS,X1,X2,X3,...) :由给定的矩阵变量得到相应的决策变量值;[copt,xopt]=mincx(LMIs,c,options):用于给定的特征值问题求解,copt 返回全局最优的决策变量,xopt 返回决策变量的最优解。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档