Thread Subject: Equality constraints in LMI..elementwise implementation....reproduction of neural network in Park& Park paper

Subject: Equality constraints in LMI..elementwise implementation....reproduction of neural network in Park& Park paper

From: Varsha Bhambhani

Date: 21 Aug, 2009 19:26:04

Message: 1 of 3

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)

Subject: Equality constraints in LMI..elementwise implementation....reproduction of neural network in Park& Park paper

From: Johan L?fberg

Date: 25 Aug, 2009 16:56:03

Message: 2 of 3

To begin with, the equations don't make sense, the left multiplication using alpha_i^k should be transposed.

Assuming that is the case, I don't see why LMIs and SDP should be involved here. There are no semidefinite stuff involved in the original equation (7). (unless there is an implicit SDP constraint on T that I am missing)

The problem is trivial to implement in, e.g., the MATLAB toolbox YALMIP, solvable using bisection on an LP, or by simply using the global solver in YALMIP. email me if you need help.


"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)

Subject: Equality constraints in LMI..elementwise implementation....reproduction of neural network in Park& Park paper

From: Varsha Bhambhani

Date: 2 Sep, 2009 00:50:21

Message: 3 of 3


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)

Tags for this Thread

Everyone's Tags:

Add a New Tag:

Separated by commas
Ex.: root locus, bode

What are tags?

A tag is like a keyword or category label associated with each thread. Tags make it easier for you to find threads of interest.

Anyone can tag a thread. Tags are public and visible to everyone.

Tag Activity for This Thread
Tag Applied By Date/Time
lmi Varsha Bhambhani 21 Aug, 2009 15:29:04
neural network Varsha Bhambhani 21 Aug, 2009 15:29:04
park park paper Varsha Bhambhani 21 Aug, 2009 15:29:04
connection matrix Varsha Bhambhani 21 Aug, 2009 15:29:04
memory vectors Varsha Bhambhani 21 Aug, 2009 15:29:04
bias Varsha Bhambhani 21 Aug, 2009 15:29:04
rssFeed for this Thread
 

MATLAB Central Terms of Use

NOTICE: Any content you submit to MATLAB Central, including personal information, is not subject to the protections which may be afforded information collected under other sections of The MathWorks, Inc. Web site. You are entirely responsible for all content that you upload, post, e-mail, transmit or otherwise make available via MATLAB Central. The MathWorks does not control the content posted by visitors to MATLAB Central and, does not guarantee the accuracy, integrity, or quality of such content. Under no circumstances will The MathWorks be liable in any way for any content not authored by The MathWorks, or any loss or damage of any kind incurred as a result of the use of any content posted, e-mailed, transmitted or otherwise made available via MATLAB Central. Read the complete Terms prior to use.

Contact us at files@mathworks.com