Prev: Bug, Toolbar Editor cannot operate more than 24 Push or Toggle tools
Next: How to Solve This Code ???
From: jing on 24 May 2010 04:33 For the equality constrains in LMI, do you find a way to define it? thanks "Varsha Bhambhani" <bhambhani.v(a)gmail.com> wrote in message <h7kfgd$g9f$1(a)fred.mathworks.com>... > > I improved on my code (Implementing eq 9 and 10 in park & park paper "An optimization approach to design of cellular neural networks"International Journal of Systems Science, 2000, volume 31, number 12, pages 1585- 1591) > > Although I am working in LMI tool and I tested the feasibility of the problem using "feasp", it happens to be marginally feasible. > > However, when i use "gevp", it results in feasibility. > > Prior to this I wrote to you to kindly give me some insight on structure of my LMIs, I have improved on to the structure of my LMIs. > > Still I have the problem of infeasibility. > > I would really appreciate your guidance on same. > > Here is the new code......I have tried same in lmiedit, the equations are feasible when i check with "feasp" but it results in infeasibility with "gevp" > > > clear all; > clc; > > % % four memory vector given in the paper > % A1=[1 1 1 1 0 0 1 0 0 1 1 1]'; > % A2=[1 0 1 1 1 1 1 0 1 1 0 1]'; > % A3=[1 1 1 1 0 1 1 1 1 1 0 0]'; > % A4=[0 1 0 0 1 0 0 1 0 0 1 0]'; > > % % four memory vector given in the paper > A1=[1 1 1 1 -1 -1 1 -1 -1 1 1 1]'; > A2=[1 -1 1 1 1 1 1 -1 1 1 -1 1]'; > A3=[1 1 1 1 -1 1 1 1 1 1 -1 -1]'; > A4=[-1 1 -1 -1 1 -1 -1 1 -1 -1 1 -1]'; > > > % Index matrix S given in the paper > S= [1 1 0 1 1 0 0 0 0 0 0 0; 1 1 1 1 1 1 0 0 0 0 0 0; 0 1 1 0 1 1 0 0 0 0 0 0; 1 1 0 1 1 0 1 1 0 0 0 0; 1 1 1 1 1 1 1 1 1 0 0 0; 0 1 1 0 1 1 0 1 1 0 0 0; 0 0 0 1 1 0 1 1 0 1 1 0; 0 0 0 1 1 1 1 1 1 1 1 1; 0 0 0 0 1 1 0 1 1 0 1 1; 0 0 0 0 0 0 1 1 0 1 1 0; 0 0 0 0 0 0 1 1 1 1 1 1; 0 0 0 0 0 0 0 1 1 0 1 1]; > > % upper and lower bounds on qi > L=1; > U=10; > > % constant matrix for writing LMI in matrix notation > I= eye(12); > W=ones(12,12); > > % constructing LMI equations > setlmis([]) > T = lmivar(1,[12 1]); > B = lmivar(2,[12 1]); > P = lmivar(1,[12 0]); > Q = lmivar(1,[12 0]); > > > > % LMI for memory vector ...TAA'I+BA'I-P>0 > % > > > % %LMI L<qi > lmiterm([-1 1 1 Q],1,1); > lmiterm([1 1 1 0],L*I); > > %LMI qi<U > lmiterm([-2 1 1 0],U*I); > lmiterm([2 1 1 Q],1,I); > > %LMI qi-T>0 > lmiterm([-3 1 1 Q],1,W); > lmiterm([-3 1 1 T],1,-1); > > %LMI qi+T>0 > lmiterm([-4 1 1 Q],1,W); > lmiterm([-4 1 1 T],1,1); > > % %LMI 2(-delta)qi>-pi > % lmiterm([5 1 1 Q],2,1); > % lmiterm([-5 1 1 P],-1,1); > % > % lmiterm([-10 1 1 -T],1/2,-1,'s'); > % lmiterm([-10 1 1 T],1,1); > % > % lmiterm([11 1 1 -T],1/2,-1,'s'); > % lmiterm([11 1 1 T],1,1); > [m,n]=size(S); > > %maximum row norm diagonal matrix > N=diag((max(abs(T')))'); > > > lmiterm([-5 1 1 T],1,A1*A1'*I); > lmiterm([-5 1 1 B],1,A1'*I); > lmiterm([-5 1 1 P],-1,1); > > lmiterm([-6 1 1 T],1,A2*A2'*I); > lmiterm([-6 1 1 B],1,A2'*I); > lmiterm([-6 1 1 P],-1,1); > > lmiterm([-7 1 1 T],1,A3*A3'*I); > lmiterm([-7 1 1 B],1,A3'*I); > lmiterm([-7 1 1 P],-1,1); > > lmiterm([-8 1 1 T],1,A4*A4'*I); > lmiterm([-8 1 1 B],1,A4'*I); > lmiterm([-8 1 1 P],-1,1); > % > %LMI 2(-delta)qi>-pi > lmiterm([-9 1 1 Q],2,1); > lmiterm([9 1 1 P],-1,1); > > > test_LMIs = getlmis; > [tmin,xfeas]=feasp(test_LMIs); > [lopt,xopt] = gevp(test_LMIs,1) > % > % T_result= dec2mat(test_LMIs, xopt, T); > % B_result= dec2mat(test_LMIs, xopt, B); > % > % [m,n]=size(S); > % > % for i=1:m > % for j =1:n > % if S(i,j)==1 > % T_result(i,j)=T_result(i,j); > % else > % T_result(i,j)=0; > % end > % if (i==j) > % T_result(i,j)=0; > % else > % T_result(i,j)=T_result(i,j); > % end > % end > % end > > "Varsha Bhambhani" <bhambhani.v(a)gmail.com> wrote in message <h6mscc$pgc$1(a)fred.mathworks.com>... > > Uses LMI toolbox in matlab to implement problem defined by Park & Park (paper attached).however problem results in infeasibility.... > > > > Implementing eq 9 and 10 in park & park paper "An optimization approach to design of cellular neural networks"International Journal of Systems Science, 2000, volume 31, number 12, pages 1585 ? 1591 > > > > two problems encountered... > > 1) y is the problem infeasible in my code whereas feasible results are obtained in aprk & park using GEVP > > > > 2) where to use equality constraints to define Tii=0 and T=T'=T|S elementwise as in park & park > > > > I think the structure of my LMI equations using lmivar and lmiterm is correct > > > > The code is as such.... > > > > > > > > clear all; > > clc; > > A1=[1 1 1 1 -1 -1 1 -1 -1 1 1 1]'; > > A2=[1 -1 1 1 1 1 1 -1 1 1 -1 1]'; > > A3=[1 1 1 1 -1 1 1 1 1 1 -1 -1]'; > > A4=[-1 1 -1 -1 1 -1 -1 1 -1 -1 1 -1]'; > > S= [1 1 0 1 1 0 0 0 0 0 0 0; 1 1 1 1 1 1 0 0 0 0 0 0; 0 1 1 0 1 1 0 0 0 0 0 0; 1 1 0 1 1 0 1 1 0 0 0 0; 1 1 1 1 1 1 1 1 1 0 0 0; 0 1 1 0 1 1 0 1 1 0 0 0; 0 0 0 1 1 0 1 1 0 1 1 0; 0 0 0 1 1 1 1 1 1 1 1 1; 0 0 0 0 1 1 0 1 1 0 1 1; 0 0 0 0 0 0 1 1 0 1 1 0; 0 0 0 0 0 0 1 1 1 1 1 1; 0 0 0 0 0 0 0 1 1 0 1 1]; > > L=1; > > U=10; > > I= eye(12); > > W=ones(12,12); > > setlmis([]) > > T = lmivar(1,[12 1]); > > B = lmivar(2,[12 1]); > > P = lmivar(1,[12 0]); > > Q = lmivar(1,[12 0]); > > > > > > > > > > lmiterm([-1 1 1 T],1,A1*A1'*I); > > lmiterm([-1 1 1 B],1,A1'*I); > > lmiterm([-1 1 1 P],-1,1); > > > > lmiterm([-2 1 1 T],1,A2*A2'*I); > > lmiterm([-2 1 1 B],1,A2'*I); > > lmiterm([-2 1 1 P],-1,1); > > > > lmiterm([-3 1 1 T],1,A3*A3'*I); > > lmiterm([-3 1 1 B],1,A3'*I); > > lmiterm([-3 1 1 P],-1,1); > > > > lmiterm([-4 1 1 T],1,A4*A4'*I); > > lmiterm([-4 1 1 B],1,A4'*I); > > lmiterm([-4 1 1 P],-1,1); > > > > > > lmiterm([-5 1 1 Q],1,W); > > lmiterm([-5 1 1 T],1,-1); > > > > lmiterm([-6 1 1 Q],1,W); > > lmiterm([-6 1 1 T],1,1); > > > > lmiterm([-7 1 1 Q],1,1); > > lmiterm([7 1 1 0],L*I); > > > > lmiterm([-8 1 1 0],U*I); > > lmiterm([8 1 1 Q],1,I); > > > > lmiterm([-9 1 1 Q],2,1); > > lmiterm([9 1 1 P],-1,1); > > > > % lmiterm([-10 1 1 -T],1/2,-1,'s'); > > % lmiterm([-10 1 1 T],1,1); > > % > > % lmiterm([11 1 1 -T],1/2,-1,'s'); > > % lmiterm([11 1 1 T],1,1); > > % [m,n]=size(S); > > % for i=1:m > > % for j =1:n > > % if S(i,j)==1 > > % T(i,j)=T(i,j); > > % else > > % T(i,j)=0; > > % end > > % if (i==j) > > % T(i,j)=0; > > % else > > % T(i,j)=T(i,j); > > % end > > % end > > % end > > test_LMIs = getlmis; > > [alpha,Qopt]=gevp(test_LMIs,9) |