1. matlab LMI工具箱 gevp
後者是 Robust Control Toolbox 中的 YaLMIP 是基於 MATLAB 的建模語言
2. matlab中SeDuMi和YaLMIP,以及LMI工具箱有什麼區別和聯系
SeDuMi 和來 LMI 都是求解器,前者是第三方的,後自者是 Robust Control Toolbox 中的
YaLMIP 是基於 MATLAB 的建模語言,它的作用是為不同的求解器提供一致的調用介面,目前支持這些求解器:
YALMIP Wiki | Solvers / Solvers
簡單來說,YaLMIP 用於描述問題,SeDuMi 和 LMI 以及其他求解器用來解決問題
3. 如何用matlab的LMI工具箱或yalmip工具箱求解下面矩陣不等式:
P = double (P)即可求出
4. MATLABLMI工具箱使用方法
所謂「工具箱」只是說提供了一組函數,這些函數跟matlab自帶的其他函數本質上沒有任回何區別,因此答編程方法上也沒有什麼特別的技巧。
先寫m文件,在裡面的代碼里調用LMI工具箱的函數,然後運行就可以了。附件里是一個示例m文件,可以直接在matlab里運行了。matlab2013b運行通過。
5. matlab中的LMI工具箱
拜託,是Lmiterm,不是Imiterm!
6. 關於LMI工具箱編程的參考書有哪些
SeDuMi 和 LMI 都是求解器,前者是第三方的,後者是 Robust Control Toolbox 中的
YaLMIP 是基於 MATLAB 的建模語言,它的回作用是為不同答的求解器提供一致的調用介面,目前支持這些求解器:
YALMIP Wiki | Solvers / Solvers
簡單來說,YaLMIP 用於描述問題,SeDuMi 和 LMI 以及其他求解器用來解決問題
7. 求助 matlab中LMI工具箱gevp的詳細用法,最好舉個程序例子,萬分感激
Solving gevp Problem in Matlab
30/10/10 13:51 Filed in: Matlab Code
http://arashfotouhi.com/files/-0.html
In order to solve the following optimization problem:
minimize a
subject to
[A』+PA+C-aP,(BP+CQ)』;
BP+CQ,-I] < 0
&
P=P』>0
in Matlab use the code below:
%Solving a generalized eigenvalue problem in Matlab
%Date: October 30, 2010
%Author: Arash Fotouhi
setlmis([]);
p=lmivar(1,[n 1]);
q=lmivar(2,[m m]);
y=lmivar(1,[n 1]);
lmiterm([1 1 1 0],0);
lmiterm([-1 1 1 p],1,1);
lmiterm([2 1 1 p],1,A,'s');
lmiterm([2 1 1 0],C);
lmiterm([2 2 1 p],B,1);
lmiterm([2 2 1 q],1,C);
lmiterm([2 2 2 0],-eye(m));
lmiterm([-2 1 1 y],1,1);
lmiterm([-2 2 1 0],0);
lmiterm([-2 2 2 0],0);
lmiterm([3 1 1 y],1,1);
lmiterm([-3 1 1 p],1,1);
lmis=getlmis;
[lambda,decvars]=gevp(lmis,1);
Popt = dec2mat(lmis,decvars,p);
Qopt = dec2mat(lmis,decvars,q);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
8. 如何用lmi工具箱產生2階正定矩陣變數
等式系統; z 求解三個一般的線性矩陣不等式問題; z 驗證結果。 本附錄將回詳細介紹 LMI 工具箱提供的用於解決答以上各個問題的相關函數和命令。 A.1 線性矩陣不等式及相關術語 一個線性矩陣不等式就是具有以下一般形式的一個矩陣不等式: L( x ) = L0 + x1 L1 + " + x N LN < 0 (1) 其中: L0 , L1 , " , L N 是給定的對稱常數矩陣, x1 , ", x N 是未知變數,稱為決策變數, x = [ x1 , " , x N ] T ∈ R N 是由決策變數
9. LMI工具箱中如何用mincx求解器求解H無窮控制問題
A=[0 1;-2 -3];B=[0;1];[V,Q]=eig(A);
E=inv(V)*B;
X1=-inv(Q);X2=inv(Q)*expm(Q*0.01);
B0=V*diag([X1(1,1) X1(2,2)],0)*inv(V)*B;
B1=V*diag([X2(1,1) X2(2,2)],0)*inv(V)*B;
D=V*diag([-1 -3.6945],0);
Ad=expm(A*0.01);
H0=[0.1 0;0.1 0.1];
H1=[-2 -1];
H2=[-1 -2];
C1=[0.2 0];
C2=[0.01 0];
H0=[0.1 0;0.1 0.1];
H1=[-2 -1];
H2=[-1 -2];
C1=[0.2 0];
C2=[0.1 0];
Ac=[ -1 0;0 -1]
Bc=[-1;0]
Cc=[-1 0]
Dc=0.25
setlmis([]);
P=lmivar(1,[2 1]);
Q=lmivar(1,[2 1]);
R=lmivar(1,[2 1]);
S=lmivar(1,[2 1]);
T=lmivar(1,[2 1]);
r=lmivar(1,[1 1]);
p=lmivar(1,[1 1]);
a=lmivar(1,[1 1]);
%Ac=lmivar(2,[2 2]);
%Bc=lmivar(2,[2 1]);
%Cc=lmivar(2,[1 2]);
%Dc=lmivar(1,[1 1]);
lmiterm([1 1 1 P],1,-1);
lmiterm([1 1 1 R],1,1);
lmiterm([1 1 1 0],-C2'*C2);
lmiterm([1 2 2 Q],1,-1);
lmiterm([1 2 2 S],1,1);
lmiterm([1 3 1 0],H2'*C2);
lmiterm([1 3 3 r],1,-1);
lmiterm([1 3 3 T],1,1);
lmiterm([1 3 3 0],H2'*H2);
lmiterm([1 4 4 R],1,-1);
lmiterm([1 5 5 S],1,-1);
lmiterm([1 6 6 T],1,-1);
lmiterm([1 7 1 P],1,Ad);
lmiterm([1 7 3 P],1,H0);
lmiterm([1 7 7 P],1,-1);
lmiterm([1 8 1 0],E*Dc*C1);
lmiterm([1 8 2 0],E*Cc);
lmiterm([1 8 3 0],E*Dc*H1);
lmiterm([1 8 4 0],-E*Dc*C1);
lmiterm([1 8 5 0],-E*Cc);
lmiterm([1 8 6 0],-E*Dc*H1);
lmiterm([1 8 8 p],1,-1);
lmiterm([1 9 1 0],B0*Dc*C1);
lmiterm([1 9 2 0],B0*Cc);
lmiterm([1 9 3 0],B0*Dc*H1);
lmiterm([1 9 4 0],B1*Dc*C1);
lmiterm([1 9 5 0],B1*Cc);
lmiterm([1 9 6 0],B1*Dc*H1);
lmiterm([1 9 9 0],-1);
lmiterm([1 10 7 P],1,1);
lmiterm([1 10 10 0],-1);
lmiterm([1 11 7 -P],D',1);
lmiterm([1 11 11 a],1,-1);
lmiterm([1 12 1 0],Bc*C1);
lmiterm([1 12 2 0],Ac);
lmiterm([1 12 3 0],Bc*H1);
lmiterm([1 12 12 Q],1,-1);
lmiterm([-2 1 1 P],1,1);
lmiterm([-3 1 1 Q],1,1);
lmiterm([-4 1 1 R],1,1);
lmiterm([-5 1 1 S],1,1);
lmiterm([-6 1 1 T],1,1);
lmiterm([-7 1 1 r],1,1);
lmiterm([-8 1 1 p],1,1);
lmiterm([-9 1 1 a],1,1);
shi=getlmis;
c=[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0];
[copt xopt]=mincx(shi,c)
目標函數為: r
將Cc當變數放入時,得到解copt=13.2309,Cc=0
直接取Cc=[-1 0]時,再求得到更優的解copt=13.2242
10. 求高手用matlab的LMI工具箱 或者 YALMIP工具包 求下列矩陣不等式中η的最優解(最大值)。
和可惜不會啊