Getting highly elevated output as solution of LMIs

13 views
Skip to first unread message

MOD

unread,
Feb 15, 2017, 4:53:40 AM2/15/17
to YALMIP
I am suppose to get output as
required output
L1 =[2.09 ;4.38];L2 =[2.41 ;5.78];

but getting L1 and L2 in E+8

Here is my code with 4 LMI and 7 var.




clc
clear 
n= 2;
A1=[-1,-0.2;0.2,-1]; A2= [-1,0.2 ;-0.2,0.3];
dA=A1-A2;
B=[1;0];
H=[1;0];C=[0 1];
%A = [-1 2 0;-3 -4 1;0 0 -2];
X1 = sdpvar(2,2);
X2 = sdpvar(1,2);
X3 = sdpvar(1,2);
X4 = sdpvar(1,1);
X5 = sdpvar(1,1);
X6 = sdpvar(1,1);
X7 = sdpvar(1,1);


B1=A1'*X1+X1*A1-(C'*X2+X2'*C);
B2=A2'*X1+X1*A2-(C'*X3+X3'*C);

B3=[A2'*X1+X1*A2-(C'*X3+X3'*C)+X6*eye(2),X1*dA+X4*H*H'/2;dA'*X1+X4*H*H'/2,-X4*H*H'-X6*0.01*eye(2)];

B4=[A1'*X1+X1*A1-(C'*X2+X2'*C)+X7*eye(2),-X1*dA+X5*H*H'/2;-dA'*X1+X5*H*H'/2,-X5*H*H'-X7*0.01*eye(2)];

F = [X1 >= 0, B1 <= 0, B2 <= 0, B2 <= 0, B2 <= 0];

F = [F, trace(X1) == 1];
optimize(F);
Pfeasible = value(X1);
L1=(value(X2)/value(X1))'
L2=(value(X3)/value(X1))'

Johan Löfberg

unread,
Feb 15, 2017, 4:57:03 AM2/15/17
to YALMIP
Crappy solver?


MOD

unread,
Feb 15, 2017, 5:01:17 AM2/15/17
to YALMIP
Can you please explain my mistakes

Johan Löfberg

unread,
Feb 15, 2017, 5:26:42 AM2/15/17
to YALMIP
My guess is you haven't installed an SDP solver, so you are using LMILAB, which you simply shouldn't as it sucks
Reply all
Reply to author
Forward
0 new messages