LMI(线性矩阵不等式)、schur补 学习笔记

这篇具有很好参考价值的文章主要介绍了LMI(线性矩阵不等式)、schur补 学习笔记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.掌握求解LMI的目的(以及整套流程)

   掌握matlab中LMI工具箱的函数使用

2.掌握schurs补

--------------------------------------------------

你的点赞是我更新的动力!

--------------------------------------------------

一.掌握求解LMI的目的(以及整套流程)

    掌握matlab中LMI工具箱的函数使用

1.首先初始化

setlmis([])      %注意这只是定义了一个矩阵不等式系统,并没有定义矩阵

2.定义矩阵变量

limvar(在LMI问题中指定矩阵变量)函数,函数格式
X = lmivar(type,struct)

type为矩阵格式

type = 1 对角块对称矩阵格式,每个对角块都是全矩阵(任意对称矩阵),标量(单位矩阵的倍数)或相同的零。

type = 2m*n任意矩阵格 struct =[m n]


struct定义对角块矩阵的格式,

如有r个对角块,struct就是r x 2为的矩阵。
eg:X0 = limvar(1,[2 1;1 0]) ,[2 1]表示2x2的满阵,[1 0]表示1x1的标量


参考:https://blog.csdn.net/weixin_44051006/article/details/99754816

3.定义矩阵不等式

lmiterm([第几个不等式矩阵 行坐标 列坐标 要求的未知矩阵] , 左乘矩阵,右乘矩阵,'s'是否对称转置);

注意:

所有的工具箱中始终以‘<’   小于号来计算lmiterm项(不是用‘>’ 大于号来计算)

小于号左边标记为正号,小于号右边为负号

eg1.1.

S>I   在工具箱中的表示代码为:

(要将大于号换成小于号,即表示为I<S)

lmiterm([3,1,1,0],1)%为正3

lmiterm([-3,1,1,S],1,1)%为负3

eg1.2.

线性矩阵不等式,学习专栏,matlab

4.实战写代码

eg.1:

出个题,按照下面给出的参数,在matlab中用工具箱搭建出相对应的代码

(先自己思考,再看答案掌握更加深刻)

线性矩阵不等式,学习专栏,matlab

其中:alpha=0.2;

beta=sqrt(alpha*(1-delta));

线性矩阵不等式,学习专栏,matlab

 答案:(下面附上本例子的代码。)

function [Q1,K]=LMI_learning0()
clc;
close all;
clear all;
%{
程序功能:求解LMI可行解
2022.2.17
%}

%% 参数初始化
rho=0.9;
delta=0.0526;
alpha=0.2;
beta=sqrt(alpha*(1-delta));
A=[-1 3.5;-0.8 -0.5];
B=[-1 1;2 -1];
C=[1 -1;1 -1];
D=[-0.12 0.2;0.1 -0.1];
E=[-0.21 2.5;0.2 -0.3];
t=1;
Ft=diag([sin(t),cos(t)]);%对角矩阵

M1=D*Ft*E;
M2=B-D*Ft*E

u=alpha*(1-delta)
v=-beta*(1-beta)
w=(1-alpha)*(1-delta)
%% 描述矩阵不等式
%初始化LMI
setlmis([]);

%定义变量
n=2;
Q1=lmivar(1,[n,1]);%1表示为对角矩阵  [2,1]表示二阶满块矩阵
K=lmivar(1,[n,1]);

%逐个描述矩阵中每一个单元
lmiterm([1,1,1,Q1],-1,1)
%第(一行二列)的0矩阵不需要写就是0矩阵
lmiterm([1,1,3,0],A')%第(一行三列)的加法要分开算
%0表示外部变量
lmiterm([1,1,3,-K],u,M1')%-K表示转置
lmiterm([1,1,4,-K],v,M1')
lmiterm([1,2,2,0],-1)%表示单位矩阵I
lmiterm([1,2,3,-K],w,M2')
lmiterm([1,2,4,-K],-v,M2')
lmiterm([1,3,3,inv(Q1)],-1,1)
lmiterm([1,4,4,inv(Q1)],-1,1)

%另外两个矩阵表示Q1>0,K>0,(即为正定矩阵)
%也即0<Q1 , 0<K
lmiterm([-2,1,1,Q1],1,1)
lmiterm([-3,1,1,K],1,1)

lmisys=getlmis;%获取LMI信息

%% 求解LMI
[tmin,xfeas]=feasp(lmisys);%用feasp求解器求解

if(tmin<0)%小于0才有解
    disp('feasible!!!!!!!!!!!!!');
    Q1=dec2mat(lmisys,xfeas,Q1);%将Q1转换成可以识别的mat类型
    
    K=dec2mat(lmisys,xfeas,K);
else
    Q1=nan;
    K=nan;
end

end

参考:鲁棒控制理论(一)LMI矩阵不等式 - 知乎

          鲁棒控制理论(二)LMI矩阵不等式工具箱 - 知乎

          Matlab和控制理论(八)线性矩阵不等式LMI工具箱的使用_哔哩哔哩_bilibili

eg2.

主要看代码中的注释即可

Je=0.9145;
Jp=0.0364;
Kf=0.1188;
La=0.66;
Lh=0.178;

A=[0 0 1 0;
   0 0 0 1; 
   0 0 0 0;
   0 0 0 0];

B=[0 0;
    0 0; 
   (Kf*La)/Je (Kf*La)/Je;
   (Kf*Lh)/Jp -(Kf*Lh)/Jp];

C=[1 0 0 0;0 1 0 0];

N=[C;C*A];
M=[B A*B];

n=rank(N)
m=rank(M)

alpha=-10;
r=5;

setlmis([])
P=lmivar(1,[4 1]);%P为4*4
W=lmivar(2,[4 2]);%W为4*2
%% 
lmiterm( [1 1 1 P],1,A,'s');%PA+A.T*P
lmiterm( [1 1 1 W],-1,C,'s');%-WC-C.T*W.T
%{
矩阵为
[
    PA+A.T*P-WC-C.T*W.T<0
]
%}

lmiterm([ 2 1 1 P] , -1, 1);%-P
lmiterm([ 2 1 2 P] , 1, A);%PA
lmiterm([ 2 1 2 W] , -1, C);%-WC
lmiterm([ 2 1 2 P] , -alpha, 1);%-alpha*P
lmiterm([ 2 2 2 P] , -r^2, 1);%-r^2*P

%{
矩阵为
[
    -P , PA-WC--alpha*P;       <0
    0  , -r^2*P
]
%}
%%
lmisys=getlmis;

[tmin,xfeas]=feasp(lmisys);
P=dec2mat(lmisys,xfeas,P);
W=dec2mat(lmisys,xfeas,W);
L=pinv(P)*W

二.掌握schurs补

1.先讲一下下面的方法容易记住

线性矩阵不等式,学习专栏,matlab

2.再讲schur补的详细数学证明:(参考《鲁棒控制》——俞立  著)

线性矩阵不等式,学习专栏,matlab线性矩阵不等式,学习专栏,matlab

3.举个例子

eg.如果想要下列不等式转换为线性矩阵不等式怎么办?(先自己思考,再看答案掌握更加深刻)

线性矩阵不等式,学习专栏,matlab

其中

思路:在matlab的LMI工具箱只能解”矩阵不等式“,所以要将上述不等式转化为”矩阵不等式“才可以用工具箱求解,用一个谚语来形容更好理解——换汤不换药(同样的不等式,只不过换成了矩阵形式)

解:(我自己写了一下,打字太麻烦,字丑见谅)

线性矩阵不等式,学习专栏,matlab

参考:2021-05-19 Schur补引理及证明_你这瓜保熟吗-CSDN博客_schur补引理

           舒尔补/schur补_颹蕭蕭-CSDN博客_舒尔补引理矩阵小于0

           matlab里LMI工具问题,如何根据schur补性质等价成矩阵不等式 – MATLAB中文论坛

           Matlab中的LMI工具箱的研究与使用

(1161条消息) 矩阵的舒尔补(Schur complement)_百把人的博客-CSDN博客_舒尔补 文章来源地址https://www.toymoban.com/news/detail-810252.html

到了这里,关于LMI(线性矩阵不等式)、schur补 学习笔记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 《鲁棒控制——线性矩阵不等式处理方法》(俞立)第二、三、四章学习笔记

     :非零向量,  或者的最大特征值小于0. 是凸集。(设V是数域P上的线性空间,W是V的一个非空子集,如果对W中任意两个向量a,b以及任意0=c=1,都有ca+(1-c)b  W,则W是凸集)。 ,其中是r*r维的非奇异矩阵,则称为在中的Schur补。 对给定的对称矩阵,其中是r*r维的非奇异矩阵,

    2023年04月08日
    浏览(35)
  • 四边形不等式学习笔记

    四边形不等式是一种 dp 优化策略。多用于 2D DP。 对于区间 ([l,r]) 带来的贡献 (w(l,r)) ,如果其满足: 对于 (Lleq lleq r leq R) , (w(L,r)+w(l,R)leq w(L,R)+w(l,r)) 则称 (w) 满足 四边形不等式 。特别地,如果上式符号取等,则称其满足 四边形恒等式 。 注:上面的不等式可以记

    2023年04月10日
    浏览(47)
  • ADMM算法系列1:线性等式或不等式约束下可分离凸优化问题的ADMM扩展

    1 研究背景       交替方向乘数法(ADMM)最初由Glowinski和Marrocco提出,用于解决非线性椭圆问题,它已成为解决各种凸优化问题的基准算法。在方法上,可以认为ADMM算法是在经典增广拉格朗日方法(ALM)的分裂版本。它已经在非常广泛的领域找到了应用,特别是在与数据科学

    2024年02月03日
    浏览(43)
  • 马尔可夫不等式、切比雪夫不等式

    在概率论中,马尔可夫不等式给出了随机变量的非负函数大于或等于某个正常数 ϵ epsilon ϵ 的概率的上限 下图来自:Markov inequality 下图为任一分布的概率密度函数图像 图片来自:Mathematical Foundations of Computer Networking: Probability a a a 越大,阴影部分的面积越小,即概率越小 使

    2024年02月04日
    浏览(35)
  • 马尔科夫不等式和坎泰利不等式的证明

    马尔科夫不等式(Markov’s inequality) 对于随机变量 X X X ,有 P ( ∣ X ∣ ⩾ ε ) ⩽ E ∣ X ∣ k ε k , ε 0 , k ∞ Pleft( left| X right|geqslant varepsilon right) leqslant frac{Eleft| X right|^k}{varepsilon ^k},varepsilon 0,kinfty P ( ∣ X ∣ ⩾ ε ) ⩽ ε k E ∣ X ∣ k ​ , ε 0 , k ∞ 证明: P ( ∣ X ∣ ⩾ ε

    2024年02月08日
    浏览(39)
  • 优化问题----等式约束与不等式约束问题求解

    目录 先总结一波: 1. 等式约束问题求解 (1)一阶必要条件 (2)二阶充分条件 2.不等式约束问题求解 2.1 可行下降方向 2.2 KTT条件(Kuhn-Tucker条件) (1)Gordan定理 (2)Fritz John定理 (3)KTT条件  (4)KTT的一个应用实例 对于无约束极值问题,可以采用解析方法和直接方法两

    2024年02月05日
    浏览(49)
  • Hoeffing不等式

    设 X 1 , X 2 , . . . , X N X_1,X_2,...,X_N X 1 ​ , X 2 ​ , ... , X N ​ 是独立随机变量,且 X i ∈ [ a i , b i ] , i = 1 , 2 , . . . , N ; S N = ∑ i = 1 N X i X_iin[a_i,b_i],i=1,2,...,N;S_N=sum_{i=1}^NX_i X i ​ ∈ [ a i ​ , b i ​ ] , i = 1 , 2 , ... , N ; S N ​ = ∑ i = 1 N ​ X i ​ ,则对任意t0,以下不等式成立:

    2024年02月07日
    浏览(39)
  • 不等式证明(三)

    设 p , q p ,q p , q 是大于1的常数,并且 1 p + 1 q = 1 frac{1}{p}+frac{1}{q}=1 p 1 ​ + q 1 ​ = 1 .证明:对于任意的 x 0 x0 x 0 ,有 1 p x p + 1 q ≥ x frac{1}{p}x^p+frac{1}{q}geq x p 1 ​ x p + q 1 ​ ≥ x . 证明 : 设 f ( x ) = 1 p x p + 1 q − x (1) f(x)=frac{1}{p}x^p+frac{1}{q}- xtag{1} f ( x ) = p 1 ​ x p + q 1 ​

    2024年01月21日
    浏览(46)
  • 各种数学不等式

    以丹麦技术大学数学家约翰·延森(John Jensen)命名。它给出积分的凸函数值和凸函数的积分值间的关系。 是数学家柯西(Cauchy)在研究数学分析中的“流数”问题时得到的。 是柯西不等式的推广. 赫尔德不等式是数学分析的一条不等式,取名自奥图·赫尔德(Otto Hölder) 是德国

    2024年02月14日
    浏览(40)
  • 放缩不等式推导

    放缩不等式推导 1 )   a x x + 1 ( 1 a ≤ e , x 0 ; a ≥ e , x 0 ) ; 1) a^xx+1left(1aleq e,x0;ageq e,x0right); 1 )   a x x + 1 ( 1 a ≤ e , x 0 ; a ≥ e , x 0 ) ; p r o o f : proof: p roo f : f 01 ( x ) = a x − ( x + 1 ) ⇒ f 01 ′ ( x ) = a x ln ⁡ a − 1 f_{01}left(xright)=a^{x}-left(x+1right)Rightarrow f_{01}^{\\\'}left(xright) =

    2023年04月22日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包