Initial point SDP

489 views
Skip to first unread message

Roberto

unread,
Jan 20, 2015, 11:08:06 AM1/20/15
to yal...@googlegroups.com
I want to solve a linear problem with LMI constraints. If I try to call optimize() specifying intial points for my variables I get the following error
Error using compileinterfacedata (line 948)
You have specified an initial point, but the selected solver does not support
warm-starts through YALMIP
I tryed with mosek, sedumi and sdpt3 and I always get the same error. I wonder why is it like that? I'd say that providing an intial guess reduces the time in finding a solution. Thanks in advance!
 

Johan Löfberg

unread,
Jan 20, 2015, 11:10:38 AM1/20/15
to yal...@googlegroups.com
Your intuition is wrong. Warm-starting an interior-point solver is very hard and still mostly unsolved. You have to have a good prima-dual-slack triple well positioned on the central path.

Roberto

unread,
Jan 20, 2015, 11:47:36 AM1/20/15
to yal...@googlegroups.com
I'm not an expert of interior-point algorithms so I don't completely understand your answer but thank you very much anyway.
Is there any other way to favor a solution that is close to certain values of the optimization variables? Perhaps such variables represent physical parameters of a system and I'd like to modify such parameters as little as possible to reduce costs $$$ :)

Johan Löfberg

unread,
Jan 20, 2015, 12:14:29 PM1/20/15
to yal...@googlegroups.com
An SDP solver doesn't just work in the space which you think of (your variables x) but in a space which also involve dual variables y. You might be able to make a good guess x*, but you don't have any way of supplying a suitable friend y*, which will work well for the solver

Sounds like you want to use a penalty, e.g.,

objective = whatever + (x-goodpoint)'*(x-goodpoint)*penaltyparameter

or
objective = whatever + norm(x-goodpoint)*penaltyparameter

or
...

Erling D. Andersen

unread,
Jan 21, 2015, 3:57:44 AM1/21/15
to yal...@googlegroups.com
The paper


presents an hotstart idea for SOCP. It can be generalized to SDP but to the best of knowledge this has not been done yet.
This paper also provides some insights into the complications of hotstart which is not that simple.

Currently, you cannot hotstart any interior-point optimizer to the best of knowledge.

Btw anonther way to get a speedup is try another SDP optimizer. For instance MOSEK is in many cases faster than SeDuMi.

Reply all
Reply to author
Forward
0 new messages