主要内容

evallmi

给定特定的决策变量实例,对线性矩阵管理系统中的所有变量项进行评估

语法

Evalsys = evallmi(lmisys,decvars)

描述

evallmi为特定实例计算所有LMI约束decvars决策变量向量的。回想一下,decvars完全确定矩阵变量的值X1……XK.“评估”包括替换所有涉及的术语X1……XK通过它们的矩阵值。输出evalsys是一个只包含常数项的LMI系统。

这个函数evallmi对于验证LMI求解器的输出是有用的。这些解算器返回的向量可以直接提供给evallmi求所有变量项的值。然后返回每个LMI的左右两侧的矩阵值showlmi

观察

evallmi是用来操作LMI解算器的输出。为矩阵变量的特定实例计算所有lmiX1……XK,首先形成相应的决策向量xmat2dec然后调用evallmix作为输入。

例子

考虑寻找的可行性问题X这样那样的

一个TXA- - - - - -X+< 0

在哪里

一个 0.5 0.2 0.1 0.7

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之前介绍过