what are 'Infeasible problem (SeDuMi-1.3)' usual causes?

304 views
Skip to first unread message

Rayane BENYOUCEF

unread,
Feb 14, 2018, 7:02:42 AM2/14/18
to YALMIP
Hello Everyone,
I've been struggling with this code month ago, and still i have no idea what could be the problem. Here it is the code:

C=[1 0 0; 0 1 0];

A1=[0 0 1; 0  0 1; 0 0 0.5];
A2=[0 0 1; 0  0 1; 0 0 -0.5];
A3=[0 0 1; 0  0 -1; 0 0 0.5];
A4=[0 0 1; 0  0 -1; 0 0 -0.5];
A5=[0 0 -1; 0  0 1; 0 0 0.5];
A6=[0 0 -1; 0  0 1; 0 0 -0.5];
A7=[0 0 -1; 0  0 -1; 0 0 0.5];
A8=[0 0 -1; 0  0 -1; 0 0 -0.5];

A0=1/8*(A1+A2+A3+A4+A5+A6+A7+A8);

A=cell(8,1);
A{1,1}=A1;
A{2,1}=A2;
A{3,1}=A3;
A{4,1}=A4;
A{5,1}=A5;
A{6,1}=A6;
A{7,1}=A7;
A{8,1}=A8;
AA=[A1,A2,A3,A4,A5,A6,A7,A8];
Ea=[eye(3),eye(3),eye(3),eye(3),eye(3),eye(3),eye(3),eye(3)]';

P1= sdpvar(3,3);
lam2 = sdpvar(1,1);
gamma = sdpvar(1,1);
R1 = sdpvar(3,2,'full');
R2 = sdpvar(3,2,'full');
R3 = sdpvar(3,2,'full');
R4 = sdpvar(3,2,'full');
R5 = sdpvar(3,2,'full');
R6 = sdpvar(3,2,'full');
R7 = sdpvar(3,2,'full');
R8 = sdpvar(3,2,'full');

M1=[A1'*P1+P1*A1-C'*R1'-R1*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M2=[A2'*P1+P1*A2-C'*R2'-R2*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M3=[A3'*P1+P1*A3-C'*R3'-R3*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M4=[A4'*P1+P1*A4-C'*R4'-R4*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M5=[A5'*P1+P1*A5-C'*R5'-R5*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M6=[A6'*P1+P1*A6-C'*R6'-R6*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M7=[A7'*P1+P1*A7-C'*R7'-R7*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];
M8=[A8'*P1+P1*A8-C'*R8'-R8*C+eye(3), zeros(3,3),  P1*AA; zeros(3,3), -gamma*eye(3)+lam2*Ea'*Ea, zeros(3,24); AA'*P1  ,zeros(24,3) ,-lam2*eye(24) ];


constraints= [M1<0 , M2<0 , M3<0, M4<0, M5<0, M6<0, M7<0, M8<0, -lam2<0, -P1<0, -gamma <0 ];
solvesdp(constraints)

P1=double(P1);

R1=double(R1); R2=double(R2); R3=double(R3); R4=double(R4); R5=double(R5); R6=double(R6); R7=double(R7); R8=double(R8);

L1gain=double(inv(P1)*R1);
L2gain=double(inv(P1)*R2);
L3gain=double(inv(P1)*R3);
L4gain=double(inv(P1)*R4);
L5gain=double(inv(P1)*R5);
L6gain=double(inv(P1)*R6);
L7gain=double(inv(P1)*R7);
L8gain=double(inv(P1)*R8);


when i run it i get this:
SeDuMi 1.3 by AdvOL, 2005-2008 and Jos F. Sturm, 1998-2003.
Alg = 2: xz-corrector, theta = 0.250, beta = 0.500
eqs m = 56, order n = 246, dim = 7212, blocks = 10
nnz(A) = 944 + 0, nnz(ADA) = 1120, nnz(L) = 588
 it :     b*y       gap    delta  rate   t/tP*  t/tD*   feas cg cg  prec
  0 :            5.71E+00 0.000
  1 :   0.00E+00 2.30E+00 0.000 0.4026 0.9000 0.9000  -3.00  1  1  2.1E+02
  2 :   0.00E+00 1.35E-01 0.000 0.0588 0.9900 0.9900  -2.12  1  1  3.5E+01
  3 :   0.00E+00 3.10E-03 0.000 0.0229 0.9900 0.9900  -1.07  1  1  4.3E+01
  4 :   0.00E+00 3.17E-04 0.000 0.1023 0.9450 0.9450  -0.96  1  1  4.0E+01
  5 :   0.00E+00 6.33E-06 0.000 0.0200 0.9900 0.9900  -0.95  1  1  4.7E+01
  6 :   0.00E+00 3.38E-07 0.000 0.0533 0.9900 0.9900  -0.88  1  1  1.4E+02
  7 :   0.00E+00 9.44E-09 0.267 0.0279 0.9900 0.9900  -0.89  2  2  6.4E+01
  8 :   0.00E+00 1.15E-09 0.000 0.1221 0.9450 0.9450  -0.48  1  2  4.7E+01
  9 :   0.00E+00 4.60E-11 0.091 0.0399 0.9900 0.9900  -0.77  3  3  2.8E+01

Dual infeasible, primal improving direction found.
iter seconds  |Ax|    [Ay]_+     |x|       |y|
  9      0.6   6.4e-11   2.2e-12   4.1e-01   1.8e+01

Detailed timing (sec)
   Pre          IPM          Post
6.099E-02    3.310E-01    1.500E-02    
Max-norms: ||b||=0, ||c|| = 1,
Cholesky |add|=1, |skip| = 8, ||L.L|| = 1.28082.

ans = 

  struct with fields:

    yalmiptime: 0.5580
    solvertime: 0.4320
          info: 'Infeasible problem (SeDuMi-1.3)'
       problem: 1

Please can anyone tell me what could be the problem. Attached is the matlab code to get a closer look
ObsL23.m

Johan Löfberg

unread,
Feb 14, 2018, 8:31:02 AM2/14/18
to YALMIP
The problem is simply infeasible

Already the first 5 constraints constitutes an infeasible set

optimize(constraints(1:5))

While the first 4 are still feasible

optimize(constraints(1:4))

In other words, a simple joint Lyapunov function is not strong enough to prove stability for all your systems

BTW, solvesdp is obsolete, and strict inequalities are not supported (as YALMIP is telling you very loudly)



Reply all
Reply to author
Forward
Message has been deleted
0 new messages