Termination Code

265 views
Skip to first unread message

mohammadreza chamanbaz

unread,
Jan 8, 2013, 4:01:04 AM1/8/13
to yal...@googlegroups.com
Hi

I am trying to solve a H_inf problem for a servo system using Yalmip. When I try to solve LMIs using the command "solvesdp", I get the termination code which is either 5 or 8 but not zero. The solver that I am using is "SDPT3".
The question is how i can modify the code to get zero as termination code?
I have attached the problem data and the code is copied here.

ops = sdpsettings('solver','sdpt3','sdpt3.maxit',5e2);
[n,n]=size(A);
In = eye(n,n);
Inw = eye(1,1);
Ine = eye(2,2);
X = sdpvar(n);
Y = sdpvar(n);
Ah = sdpvar(n,n,'full');
Bh= sdpvar(n,1);
Ch= sdpvar(1,n);
eta =sdpvar(1);
F1 = [X, In;
In, Y] >=0];
F2 = [(A*X + Bu*Ch + X*A' + Ch'*Bu'), (A+Ah'), Bw, (X*Ce' + Ch'*Deu');
(A'+Ah), (Y*A + A'*Y + Bh*Cy + Cy'*Bh'), (Y*Bw + Bh*Dyw), Ce';
Bw', Bw'*Y + Dyw'*Bh', -eta*Inw, Dew';
(Ce*X + Deu*Ch), Ce, Dew, -eta*Ine] <=0];

F=F1+F2;
solvesdp(F,eta,ops);
checkset(F) 
parameters.zip

Johan Löfberg

unread,
Jan 8, 2013, 4:15:23 AM1/8/13
to yal...@googlegroups.com
The problem is simply badly conditioned from a numerical point of view. Using both SDPT3 and SeDuMi indicates that the solvers have problems in the final iterations. The solution is feasible though as you might have noticed. However, if you look at the optimal X and Y, they seem to tend to infinity. Same thing with Ah, Bh and Ch. This will upset any numerical solver.

Your problem is not how to tweak the solver options, but how to obtain a numerically better conditioned problem formulation.

mohammadreza chamanbaz

unread,
Jan 8, 2013, 4:41:05 AM1/8/13
to yal...@googlegroups.com
The problem data is from a hard disk drive model. From numerical point of view I have tried to realize the model so that numbers in state space matrices are close to each other and they don't go to extremes to prevent having an ill conditioned data. But I dob't know what else I can do to improve data numerically.

Is there any suggestions how to obtain a numerically better conditioned problem formulation?

Johan Löfberg

unread,
Jan 8, 2013, 5:09:54 AM1/8/13
to yal...@googlegroups.com
Balanced realizations etc might work sometimes, but it could simply be that the problem is ill-posed in the sense that the optima occurs at infinity.


Reply all
Reply to author
Forward
0 new messages