evallmi
给定特定的决策变量实例,对线性矩阵管理系统中的所有变量项进行评估
语法
Evalsys = evallmi(lmisys,decvars)
描述
evallmi
为特定实例计算所有LMI约束decvars
决策变量向量的。回想一下,decvars
完全确定矩阵变量的值X1……XK.“评估”包括替换所有涉及的术语X1……XK通过它们的矩阵值。输出evalsys
是一个只包含常数项的LMI系统。
这个函数evallmi
对于验证LMI求解器的输出是有用的。这些解算器返回的向量可以直接提供给evallmi
求所有变量项的值。然后返回每个LMI的左右两侧的矩阵值showlmi
.
观察
evallmi
是用来操作LMI解算器的输出。为矩阵变量的特定实例计算所有lmiX1……XK,首先形成相应的决策向量x与mat2dec
然后调用evallmi
与x作为输入。
例子
考虑寻找的可行性问题X这样那样的
一个TXA- - - - - -X+我< 0
在哪里
LMI系统的定义如下:
setlmis([]) X = lmivar(1,[2 1]) % full symmetric X lmiterm([1 1 1 X],A',A) % LMI #1: A'*X*A lmiterm([1 1 1 X],-1,1) % LMI #1: -X lmiterm([1 1 1 0],1) % LMI #1: I lmiterm([-2 1 1 X],1,1) % LMI #2: X lmis = getlmis
计算解xfeas
,叫feasp
通过
[tmin,xfeas] = feasp(lmis)
结果是
Tmin = -4.7117e+00 xfeas' = 1.1029e+02 -1.1519e+01 1.1942e+02
LMI约束因此是可行的,因为tmin
< 0。解决方案X对应于可行决策向量xfeas
将由X = dec2mat(lmis,xfeas,X)
.
验证一下xfeas
是否确实可行,通过输入评估所有LMI约束
evallmi(lmis,xfeas)
然后给出第一和第二个lmi的左右边
[lhs1, hs1] = showlmi(evals,1) [lhs2, hs2] = showlmi(evals,2)
这个测试
Eig (lhs1-rhs1) ans = -8.2229e+01 -5.8163e+01
确定了满足第一个LMI约束的条件xfeas
.
版本历史
R2006a之前介绍过