Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2008-12-19, 10:22   #1
luolijia
初级会员
 
注册日期: 2008-12-08
年龄: 40
帖子: 1
声望力: 0
luolijia 正向着好的方向发展
默认 求助:算法实现

如下线性矩阵不等式:
setlmis([]);
%define Variables
%P,Q,Z are symmetric matrix,has a block size of 2 and this block is
%symmetric
P=lmivar(1,[2 1]);
R=lmivar(1,[2 1]);
Q1=lmivar(1,[2 1]);
Q2=lmivar(1,[2 1]);
Z1=lmivar(1,[2 1]);
Z2=lmivar(1,[2 1]);
Z3=lmivar(1,[2 1]);
S=lmivar(2,[2 2]);
V=lmivar(2,[1 2]);
g1=lmivar(1,[1 0]);
g2=lmivar(1,[1 0]);
%%LMI description
lmiterm([1 1 1 Q1],1,1);
lmiterm([1 1 1 Q2],1,1);
lmiterm([1 1 1 Z1],-1,1);
lmiterm([1 1 1 Z2],-1,1);
lmiterm([1 1 1 g1],D,D');
lmiterm([1 1 1 S],-A',t4,'s');

lmiterm([1 1 2 Z1],1,1);
lmiterm([1 1 2 -N4],-1,B);

lmiterm([1 1 3 Z2],1,1);
lmiterm([1 1 3 S],A,-t3)
lmiterm([1 1 3 V],B,-t3)
lmiterm([1 1 4 S],A,-t1)
lmiterm([1 1 4 -N4],-1,C);
lmiterm([1 1 4 V],B,-t1)
lmiterm([1 1 4 P],1,-C')
lmiterm([1 1 5 S],A,-t2)
lmiterm([1 1 5 V],B,-t2)
lmiterm([1 1 5 P],1,1)


lmiterm([1 2 2 Z1],-1,1);
lmiterm([1 2 2 Z3],-1,1);
lmiterm([1 2 2 Q1],-1,1);
lmiterm([1 2 2 g2],D,D');

lmiterm([1 2 3 Z3],1,1);
lmiterm([1 2 3 S],A1,-t3)

lmiterm([1 2 4 S],A1,-t1)

lmiterm([1 2 5 S],A1,-t2)


lmiterm([1 3 3 Q2],-1,1);
lmiterm([1 3 3 Z3],-1,1);
lmiterm([1 3 3 Z2],-1,1);

lmiterm([1 3 4 -S],-t3,C');
lmiterm([1 3 4 P],C,C')

lmiterm([1 3 5 -S],t3,1)
lmiterm([1 3 5 P],C',-1)

lmiterm([1 3 6 -S],t3,Ea);
lmiterm([1 3 7 -S],t3,Eb);

lmiterm([1 4 4 R],-1,1);
lmiterm([1 4 4 S],C,-1,'s');

lmiterm([1 4 5 -S],t1,1);
lmiterm([1 4 5 S],-C,t2);
lmiterm([1 4 6 -S],t1,Ea);
lmiterm([1 4 7 -S],t1,Eb);

lmiterm([1 5 5 R],1,1);
lmiterm([1 5 5 S],t2,1,'s');
lmiterm([1 5 5 Z1],h1,h1);
lmiterm([1 5 5 Z2],h2,h2);
lmiterm([1 5 5 Z3],h12,h12);

lmiterm([1 5 6 -S],t2,Ea);
lmiterm([1 5 7 -S],t2,Eb);

lmiterm([1 6 6 g1],-1,1);
lmiterm([1 7 7 g2],-1,1);

%%the otjers inenqualities
lmiterm([-2 1 1 P],1,1);
lmiterm([-3 1 1 Q1],1,1);
lmiterm([-4 1 1 Q2],1,1);
lmiterm([-5 1 1 Z1],1,1);
lmiterm([-6 1 1 Z2],1,1);
lmiterm([-7 1 1 Z3],1,1);
lmiterm([-8 1 1 R],1,1);
lmiterm([-9 1 1 g1],1,1);
lmiterm([-10 1 1 g2],1,1);
其中A,B,C,Ea,Eb,h2,h12已知,h1,,t1,t2,t3,t4未知
请问,如何确定最优的t1,t2,t3,,t4从而获得满足以上LMI的最大的h1值。
有的书上说是定义f(z),z=[t1 t2 t3 t4] 让以上的LMI<f(z)I ,通过MATLAB的优化工具箱的优化算法
如:fmincon,求的一组局部收敛解z, 如果f(z)小于0则找到了最优的t1,t2,t3,,t4。请问f(z)该如何定义呢?
luolijia 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码


相似的主题
主题 主题作者 版面 回复 最后发表
[资料]关于MATLAB优化工具箱的介绍,比较实用的。 binro MATLAB论坛 11 2012-02-20 23:20
[求助] 利用M中的MIDI工具箱生成音乐 laomaocong MATLAB论坛 0 2009-03-22 14:01
[求助]matrix must square schindler MATLAB论坛 1 2009-03-03 20:22
求汉明码的编码与解码MATLAB程序 rain1206 MATLAB论坛 2 2009-03-02 12:48
如何画三维隐函数的图 lv19860312 MATLAB论坛 0 2008-12-16 21:31


所有时间均为北京时间。现在的时间是 16:57


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.