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

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
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),例如最小化cx,在限制条件A(x)??B(x)下。? gevp:解决广义特征值最小化问题。例如:最小化lambda,在0B(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就叫做矩阵?变量。? 项(Terms):项是常量或者变量(Terms?are?either?constant?or?variable)。?常项(Constant?Terms)是确定的矩阵。可变项(Variable?Terms)是哪些含有矩阵变?量的项,例如:X*A,?X*C。如果是X*A?+?X*C,那么记得要把它当成两项来处理。?好了废话不说了,让我们来看个例子吧(下面是一线性时滞系统)。?500)this.width=500;?border=0? ?? 针对这个式子,如果存在满足如下LMI的正矩阵(positive-define)的Q,S1,S2和矩阵M,那么我们就称作??? 该系统为H-inf渐进稳定的,并且gammar是上限。?500)this.width=500;?border=0???算例为:? 500)this.width=500;?border=0??? 我们要实现的就利用LMI进行求解,验证论文结果。??? 首先我们要用setlmis([])命令初始化一个LMI系统。??? 接下来,我们就要设定矩阵变量了。采用函数为lmivar??? 语法:X?=?lmivar(type,struct)?? type=1:?定义块对角的对称矩阵。?每一个对角块或者是全矩阵任意对称矩阵,标量单位矩阵的乘积,或者是零阵。? 如果X有R个对角块,那么后面这个struct就应该是一个Rx2阶的的矩阵,在此矩阵中,struct(r,1)表示第r个块的大小,struct(r,2)?表示第r个块的类型1--全矩阵,0--标量,-1--零阵)。? 比如一个矩阵有两个对角块,其中一个是2x2的全对称矩阵,第二个是1x1的一个标量,那么该矩阵变量应该表示为X?=?lmivar(1,?[2?1;?1?0])?。?type=2:?mxn阶的矩阵,只需要写作struct?=?[m,n]即可。? type=3:?其它类型。针对类型3,X的每一个条目(each?entry?of?X)被定义为0或者是+(-)xn,此处xn代表了第n个决策变量。? 那么针对我们的例子,我们如此定义变量:? %?Q?is?a?symmetric?matrix,?has?a?block?size?of?2?and?this?block?is?symmetric? Q?=?lmivar(1,?[2?1]);? %?S1?a?symmeric?matrix,?size?2??S1?=?lmivar(1,?[2?1]);?%?S2?is?1?by?1?matrix?S2?=?lmivar(1,?[1?0]);?%?Type?of?2,?size?1?by?2??M?=?lmivar(2,?[1?2]);? 定义完成变量之后,我们就该用lmiterm来描述LMI

文档评论(0)

wnqwwy20 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档