|
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@gmail.com> wrote in message <h6mscc$pgc$1@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)
|