source: proiecte/pmake3d/make3d_original/Make3dSingleImageStanford_version0.1/third_party/opt/yalmip/htmldata/faq.htm @ 37

Last change on this file since 37 was 37, checked in by (none), 14 years ago

Added original make3d

File size: 58.6 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html>
3
4<head>
5<meta http-equiv="Content-Language" content="en-us">
6<title>YALMIP FAQ</title>
7<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
8<meta content="Microsoft FrontPage 6.0" name="GENERATOR">
9<meta name="ProgId" content="FrontPage.Editor.Document">
10<link href="yalmip.css" type="text/css" rel="stylesheet">
11<base target="_self">
12</head>
13
14<body leftMargin="0" topMargin="0">
15
16<div align="left">
17
18<table border="0" cellpadding="4" cellspacing="3" style="border-collapse: collapse" bordercolor="#000000" width="100%" align="left" height="100%">
19  <tr>
20    <td width="100%" align="left" height="100%" valign="top">
21    <h2 style="margin-top: 0; margin-bottom: 0">Frequently asked question</h2>
22    <hr noShade SIZE="1">       
23    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
24    <h3 style="margin-bottom: 0; margin-top:0">Installation</h3>
25    <ul>
26      <li>
27      <p style="margin-bottom: 0; margin-top:0"><a href="#nothing works">YALMIP
28      does not work.</a></p></li>
29                <li>
30      <p style="margin-bottom: 0; margin-top:0"><a href="#slow">
31                <font color="#FF0000">It is so slow!</font></a></p></li>
32    </ul>
33    <h3 style="margin-bottom: 0; margin-top:0">Solvers</h3>
34    <ul>
35      <li>
36      <p style="margin-bottom: 0; margin-top:0"><a href="#nosolver">YALMIP
37      cannot find any solver</a></p></li>
38      <li>
39      <p style="margin-bottom: 0; margin-top:0"><a href="#penbmi update">My version of
40      PENBMI does not work with
41    YALMIP anymore</a></p></li>
42      <li>
43      <p style="margin-bottom: 0; margin-top:0"><a href="#compile sdpt">My version of
44    SDPT3-3.02 does not work with
45    YALMIP anymore</a></p></li>
46      <li>
47      <p style="margin-bottom: 0; margin-top:0"><a href="#sedumisdpt3">SDPT3 (or
48    SeDuMi) does not work</a></p></li>
49      <li>
50      <p style="margin-bottom: 0; margin-top:0"><a href="#csdppath">CSDP does not work</a></p>
51      </li>
52      <li>
53      <p style="margin-bottom: 0; margin-top:0"><a href="#csdpcrash">CSDP
54        runs but crashes</a></p></li>
55      <li>
56      <p style="margin-bottom: 0; margin-top:0"><a href="#lmilabalready">I already have
57    LMILAB and LINPROG
58    installed, do I need any other solver?</a></p></li>
59      <li>
60      <p style="margin-bottom: 0; margin-top:0"><a href="#lmilabslow">LMILAB
61        is slower when I use it with YALMIP</a></p></li>
62      <li>
63      <p style="margin-bottom: 0; margin-top:0"><a href="#cddhangs">CDD hangs</a></p>
64      </li>
65      <li>
66      <p style="margin-bottom: 0; margin-top:0"><a href="#fminconcrashes">fmincon
67                crashes</a></p>
68      </li>
69                <li>
70      <p style="margin-bottom: 0; margin-top:0"><a href="#maxdetcrashes">MAXDET fails or crashes</a></p>
71      </li>
72      <li>
73                <p style="margin-bottom: 0; margin-top:0"><a href="#xpress">XPRESS
74      performs badly, claims infeasibility etc.</a></p></li>
75                <li>
76                <p style="margin-bottom: 0; margin-top:0"><a href="#selectsolver">There are so many solvers, which
77    one should I use?</a></p></li>
78                <li>
79                <p style="margin-bottom: 0; margin-top:0"><a href="#infeasible">The solution I get in an SDP is not
80    feasible but has eigenvalues around, say, -1e-6</a></p></li>
81                <li>
82                <p style="margin-bottom: 0; margin-top:0"><a href="#bmi">Can I solve BMIs without
83    PENBMI?</a></p></li>
84    </ul>
85    <h3 style="margin-bottom: 0; margin-top:0">YALMIP</h3>
86    <ul>
87     <li>
88      <p style="margin-bottom: 0; margin-top:0"><a href="#typical">My solution
89                is not what I expected.</a></p></li>
90      <li>
91      <p style="margin-bottom: 0; margin-top:0"><a href="#typeset">Typing <code>help set</code> gives
92    me no information on the YALMIP function <code>set</code>.</a></p></li>
93      <li>
94      <p style="margin-bottom: 0; margin-top:0"><a href="#setclass">Is there really a <code>set</code> class?</a></p>
95      </li>
96      <li>
97      <p style="margin-bottom: 0; margin-top:0"><a href="#normalset">Is <code>set</code> related to
98        the &quot;normal&quot; set command in MATLAB.</a></p></li>
99      <li>
100      <p style="margin-bottom: 0; margin-top:0"><a href="#lmielement">I define a
101      semidefinite constraint, but YALMIP declares it &quot;element-wise&quot;.</a></p></li>
102      <li>
103                <p style="margin-bottom: 0; margin-top:0"><a href="#reallystrict">Are  inequalities really
104    strict?</a></p></li>
105                <li>
106                <p style="margin-bottom: 0; margin-top:0"><a href="#gevp">How do I
107      solve generalized eigenvalue problems (like <code>gevp</code> in LMILAB)?</a></p>
108                </li>
109                <li>
110                <p style="margin-bottom: 0; margin-top:0"><a href="#removeequalities">I get strange
111                results when I use the option <code>'removeequalities'</code></a>.</p>
112                </li>
113                <li>
114                <p style="margin-bottom: 0; margin-top:0"><a href="#convexity ">YALMIP complains about failing in convexity propagation.</a></p>
115                </li>
116                <li>
117                <p style="margin-bottom: 0; margin-top:0"><a href="#gpconvex">I
118                have problems solving a geometric program.</a></p></li>
119    </ul>
120        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>   
121    <h3 style="margin-bottom: 0; margin-top:0">Known bugs</h3>
122    <ul>
123      <li>
124      <p style="margin-bottom: 0; margin-top:0"><a href="#subasgn">I can not write
125        <code>X =
126    eye(2); X(1,1)=sdpvar(1,1)</code></a></p></li>
127                <li>
128      <p style="margin-bottom: 0; margin-top:0"><a href="#vectorquadratic">
129                Vector-valued quadratic constraints</a></p></li>
130                <li>
131      <p style="margin-bottom: 0; margin-top:0"><a href="#implies">
132                Using <code>implies</code> on set objects</a></p></li>
133                <li>
134      <p style="margin-bottom: 0; margin-top:0"><a href="#constructbug">
135                Sometimes MATLAB fails to declare a SDPVAR object with the name i or j
136                inside a function</a></p></li>
137    </ul>
138    <p style="margin-bottom: 0; margin-top:0"></p>
139    <h3 style="margin-bottom: 0; margin-top:0">&nbsp;</h3>
140        <h3 style="margin-bottom: 0; margin-top:0">Other</h3>
141    <ul>
142      <li>
143      <p style="margin-bottom: 0; margin-top:0"><a href="#foundbug">I have found a bug. What to do?</a></p>
144      </li>
145      <li>
146      <p style="margin-bottom: 0; margin-top:0"><a href="#feature">I have an idea for a new feature.
147    What to do?</a></p></li>
148      <li>
149      <p style="margin-bottom: 0; margin-top:0"><a href="#yalmipmeans">What does YALMIP mean?</a></p>
150      </li>
151    </ul>
152    <hr noShade SIZE="1" color="#FF0000">       
153    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
154    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
155      <tr>
156        <td width="26" valign="top" class="AQ">
157        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
158        <a name="nothing works"></a>Q:</font></b></td>
159        <td>
160        <p style="margin-bottom: 0; margin-top:0"><b>I have been using a previous version
161    of YALMIP, but after installing the new version nothing works.</b></td>
162      </tr>
163      <tr>
164        <td width="26" valign="top" class="AQ">
165        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
166        <td>
167        <p style="margin-bottom: 0; margin-top:0">Restart MATLAB.</td>
168      </tr>
169    </table>
170    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
171    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
172      <tr>
173        <td width="26" valign="top">
174        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
175        <a name="remove old"></a>Q:</font></b></td>
176        <td>
177        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
178      </tr>
179      <tr>
180        <td width="26" valign="top">
181        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
182        <td>
183        <p style="margin-bottom: 0; margin-top:0">Remove any old version of
184        YALMIP before you install the new version. Do not just copy the new
185        version into the old YALMIP directory.</td>
186      </tr>
187    </table>
188    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
189    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
190      <tr>
191        <td width="26" valign="top">
192        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
193        <a name="add path"></a>Q:</font></b></td>
194        <td>
195        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
196      </tr>
197      <tr>
198        <td width="26" valign="top">
199        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
200        <td>
201        <p style="margin-bottom: 0; margin-top:0">Added all the paths? (<i>/yalmip</i>,
202    <i>/yalmip/extras, /yalmip/demos, /yalmip/solvers</i>)</td>
203      </tr>
204    </table>
205    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
206    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table13">
207      <tr>
208        <td width="26" valign="top">
209        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
210        <a name="add path2"></a>Q:</font></b></td>
211        <td>
212        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
213      </tr>
214      <tr>
215        <td width="26" valign="top">
216        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
217        <td>
218        <p style="margin-bottom: 0; margin-top:0">Did your unzip application
219                really decompress the files to the path structure, instead of placing
220                all files in one directory.</td>
221      </tr>
222    </table>
223    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
224    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
225      <tr>
226        <td width="26" valign="top">
227        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
228        <a name="add path0"></a>Q:</font></b></td>
229        <td>
230        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
231      </tr>
232      <tr>
233        <td width="26" valign="top">
234        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
235        <td>
236        <p style="margin-bottom: 0; margin-top:0">Are you sure you added all the paths! (<i>/yalmip</i>,
237    <i>/yalmip/extras, /yalmip/demos, /yalmip/solvers</i>)</td>
238      </tr>
239    </table>
240    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
241    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table3">
242      <tr>
243        <td width="26" valign="top">
244        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
245        <a name="add path1"></a>Q:</font></b></td>
246        <td>
247        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
248      </tr>
249      <tr>
250        <td width="26" valign="top">
251        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
252        <td>
253        <p style="margin-bottom: 0; margin-top:0">Could be related to toolbox
254                path caching (open menu File/Preferences/General and run &quot;Update Toolbox
255                Path Cache&quot;)</td>
256      </tr>
257    </table>
258    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
259    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
260      <tr>
261        <td width="26" valign="top">
262        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
263        <a name="remove path"></a>Q:</font></b></td>
264        <td>
265        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
266      </tr>
267      <tr>
268        <td width="26" valign="top">
269        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
270        <td>
271        <p style="margin-bottom: 0; margin-top:0">Removed your old YALMIP
272        version from the MATLAB path?</td>
273      </tr>
274    </table>
275    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
276    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
277      <tr>
278        <td width="26" valign="top">
279        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
280        <a name="added solver path"></a>Q:</font></b></td>
281        <td>
282        <p style="margin-bottom: 0; margin-top:0"><b>..still doesn't work!</b></td>
283      </tr>
284      <tr>
285        <td width="26" valign="top">
286        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
287        <td>
288        <p style="margin-bottom: 0; margin-top:0">Added all the paths to your solver?</td>
289      </tr>
290    </table>
291    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
292    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
293      <tr>
294        <td width="26" valign="top">
295        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
296        <a name="compile solver1"></a>Q:</font></b></td>
297        <td>
298        <p style="margin-bottom: 0; margin-top:0"><b>...still doesn't work!</b></td>
299      </tr>
300      <tr>
301        <td width="26" valign="top">
302        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
303        <td>
304        <p style="margin-bottom: 0; margin-top:0">Do you have any solver
305        installed?</p>
306        </td>
307      </tr>
308    </table>
309    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
310    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
311      <tr>
312        <td width="26" valign="top">
313        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
314        <a name="compile solver"></a>Q:</font></b></td>
315        <td>
316        <p style="margin-bottom: 0; margin-top:0"><b>...still doesn't work!</b></td>
317      </tr>
318      <tr>
319        <td width="26" valign="top">
320        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
321        <td>
322        <p style="margin-bottom: 0; margin-top:0">Compiled the solver (if needed)?
323        Compiled it for the correct MATLAB version?</p>
324        </td>
325      </tr>
326    </table>
327    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
328    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
329      <tr>
330        <td width="26" valign="top">
331        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
332        <a name="compile solver2"></a>Q:</font></b></td>
333        <td>
334        <p style="margin-bottom: 0; margin-top:0"><b>...still doesn't work!</b></td>
335      </tr>
336      <tr>
337        <td width="26" valign="top">
338        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
339        <td>
340        <p style="margin-bottom: 0; margin-top:0">Using MATLAB 5.3.1 or later?</p>
341        </td>
342      </tr>
343    </table>
344    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
345    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
346      <tr>
347        <td width="26" valign="top">
348        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
349        <a name="compile solver0"></a>Q:</font></b></td>
350        <td>
351        <p style="margin-bottom: 0; margin-top:0"><b>...still doesn't work!</b></td>
352      </tr>
353      <tr>
354        <td width="26" valign="top">
355        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
356        <td>
357        <p style="margin-bottom: 0; margin-top:0">Probably a PICNIC problem ;-P</p>
358        </td>
359      </tr>
360    </table>
361    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
362    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table1">
363      <tr>
364        <td width="26" valign="top">
365        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
366        <a name="slow"></a>Q:</font></b></td>
367        <td>
368        <p style="margin-bottom: 0; margin-top:0"><b>It is so slow!</b></td>
369      </tr>
370      <tr>
371        <td width="26" valign="top">
372        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
373        <td>
374    <p style="margin-bottom: 0; margin-top:0">As a rule of thumb, the time
375    reported as <code>'yalmiptime'</code> in the output diagnostic should be around fractions
376    of a second for small problems, and typically a fraction of the actual
377    solution time for larger problems. If this is not the case, you probably
378    have a problem with your installation.</p>
379        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
380        <p style="margin-bottom: 0; margin-top:0">As another rule of thumb, <code>yalmiptest(sdpsettings('verbose',0,'solver','sedumi'))</code> 
381        takes 2-5 seconds (including initial search for solvers) on my PC machines
382        (2GHz and 3GHz).</p>
383    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
384    <p style="margin-bottom: 0; margin-top:0">Do you have FEMLAB on your MATLAB
385    path? Removing FEMLAB from the path can improve performance significantly.
386    Another way to make YALMIP faster is to set the field <code>cachesolvers</code> 
387          in <a href="#sdpsettings">sdpsettings</a> to 1. (One reason for the
388    extremely poor performance of YALMIP in these cases is typically due to slow
389    network functionalities, making the command <code>exist</code> , which is
390    used in <a href="#solvesdp">solvesdp</a> when detecting solvers, very slow.</p>
391        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
392        <p style="margin-bottom: 0; margin-top:0">Are you running over a network?
393        This can be extremely detrimental for general performance in YALMIP. On some
394        networked Linux version, YALMIP runs 10-100 times slower!</p>
395        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
396        <p style="margin-bottom: 0; margin-top:0">Do you have a poor sparse matrix
397        library in your installation? Some distributions seem to have extremely poor
398        performance for sparse matrices (observed on Linux), which is used a lot in YALMIP.&nbsp; One
399        way to test this is to run the script below. If the displayed result is
400        substantially larger than 20, you have problems (and I have no idea how you
401        can resolve this...)</p>
402        <blockquote>
403                <blockquote>
404                        <pre>d = sprandn(1e5,1,0.5);
405tic;for i= 1:1000;d([2000:3000]);end;t1 = toc;
406d = d';
407tic;for i= 1:1000;d([2000:3000]);end;t2 = toc;t1/t2</pre>
408                </blockquote>
409        </blockquote>
410    <p style="margin-bottom: 0; margin-top:0">Do
411    you have&nbsp;<a href="solvers.htm#mosek">MOSEK</a> installed? This solver overloads
412    the function <code>optimset</code> in Mathworks optimization toolbox, but is much slower. <code>optimset</code> is called in <a href="#sdpsettings">sdpsettings</a> 
413    to initialize the option fields for <a href="solvers.htm#linprog">LINPROG</a> and
414    <a href="solvers.htm#quadprog">QUADPROG</a>. Note that
415    <a href="#sdpsettings">sdpsettings</a> is called in <a href="#solvesdp">solvesdp</a> 
416    if no options structure is passed in the call. Hence, for optimal speed,
417    define the options structure once, and always use three arguments when
418    calling <a href="#solvesdp">solvesdp</a>. This is recommended even if you do
419    not have <a href="solvers.htm#mosek">MOSEK</a>.</p>
420    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
421    <p style="margin-bottom: 0; margin-top:0">Are you working with nonlinear
422    expressions? In that case, clear the internals of YALMIP regularly using
423    <code>yalmip('clear')</code>.</p>
424        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
425    <p style="margin-bottom: 0; margin-top:0">Are you working with large
426        polynomial
427    expressions? Try to compile the file findhash.c (<code>mex findhash.c</code>)</p>
428        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
429        <p style="margin-bottom: 0; margin-top:0">Have you formulated a standard
430        primal SDP form problem and expected YALMIP to solve it that way? Make sure
431        to read the section on <a href="dual.htm#dualization">dualization</a>.</p>
432        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
433    <p style="margin-bottom: 0; margin-top:0">Finally, standard MATLAB coding
434    practice applies. This means that you should try to vectorize code, define
435    things once etc.</p>
436        </td>
437      </tr>
438    </table>
439    <hr noShade SIZE="1" color="#FF0000">       
440    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
441    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
442      <tr>
443        <td width="26" valign="top">
444        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
445        <a name="nosolver"></a>Q:</font></b></td>
446        <td>
447        <p style="margin-bottom: 0; margin-top:0"><b>YALMIP cannot find any
448        solver.</b></td>
449      </tr>
450      <tr>
451        <td width="26" valign="top">
452        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
453        <td>
454    <p style="margin-bottom: 0; margin-top:0">Do you have any solver? You typically
455    need to install a (or several) solver and update you path. See
456    <a target="topic" href="solvers.htm">interfaced solver</a>.</p>
457        </td>
458      </tr>
459    </table>
460    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
461    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
462      <tr>
463        <td width="26" valign="top">
464        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
465        <a name="penbmi update"></a>Q:</font></b></td>
466        <td>
467        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#penbmi">
468        PENBMI</a> does not work with
469    YALMIP anymore.</b></td>
470      </tr>
471      <tr>
472        <td width="26" valign="top">
473        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
474        <td>
475    <p style="margin-bottom: 0; margin-top:0">Version 1.1 and earlier will not
476    work directly anymore. However, this is easily fixed. Edit the file
477    callpenbmim.m (if you use the
478    <a target="_blank" href="http://www.penopt.com">PENOPT</a> version) or
479    callpenbmi.m (if you use the <a target="_blank" href="http://tomlab.biz">TOMLAB</a> 
480    version). Uncomment the code below the comment &quot;UNCOMMENT THIS&quot;.</p>
481        </td>
482      </tr>
483    </table>
484    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
485    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
486      <tr>
487        <td width="26" valign="top">
488        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
489        <a name="compile sdpt"></a>Q:</font></b></td>
490        <td>
491        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#sdpt3">SDPT3</a>-3.02 does not work with
492    YALMIP anymore.</b></td>
493      </tr>
494      <tr>
495        <td width="26" valign="top">
496        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
497        <td>
498    <p style="margin-bottom: 0; margin-top:0">Download <a href="solvers.htm#sdpt3">SDPT3</a>-3.02 and compile (code
499    updated without version increment)</p>
500        </td>
501      </tr>
502    </table>
503    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
504    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
505      <tr>
506        <td width="26" valign="top">
507        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
508        <a name="compile sdpt0"></a>Q:</font></b></td>
509        <td>
510        <p style="margin-bottom: 0; margin-top:0"><b>My version of
511    <a href="solvers.htm#sdpt3">SDPT3</a>-3.02 does not work and complains about
512        the file <code>svec</code>.</b></td>
513      </tr>
514      <tr>
515        <td width="26" valign="top">
516        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
517        <td>
518    <p style="margin-bottom: 0; margin-top:0">Do you have the solver SDPPACK
519    installed? Remove the path to this solver.</p>
520        </td>
521      </tr>
522    </table>
523    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
524    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
525      <tr>
526        <td width="26" valign="top">
527        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
528        <a name="sedumisdpt3"></a>Q:</font></b></td>
529        <td>
530        <p style="margin-bottom: 0; margin-top:0"> <b> <a href="solvers.htm#sdpt3">SDPT3</a> (or
531    <a href="solvers.htm#sedumi">SeDuMi</a>) does not work<font color="#0000FF">.</font></b></td>
532      </tr>
533      <tr>
534        <td width="26" valign="top">
535        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
536        <td>
537    <p style="margin-bottom: 0; margin-top:0">Make sure not to have both <a href="solvers.htm#sdpt3">SDPT3</a> 
538    (version 3.02) and
539    <a href="solvers.htm#sedumi">SeDuMi</a> on the MATLAB path. This problem is
540    resolved in <a href="solvers.htm#sdpt3">SDPT3</a> 3.1</p>
541        </td>
542      </tr>
543    </table>
544    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
545    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
546      <tr>
547        <td width="26" valign="top">
548        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
549        <a name="csdppath"></a>Q:</font></b></td>
550        <td>
551        <p style="margin-bottom: 0; margin-top:0"> <b> <a href="solvers.htm#csdp">CSDP</a> does not work<font color="#0000FF">.</font></b></td>
552      </tr>
553      <tr>
554        <td width="26" valign="top">
555        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
556        <td>
557    <p style="margin-bottom: 0; margin-top:0">Do you have <a href="solvers.htm#csdp">CSDP</a> in your <i>system</i> path?</p>
558        </td>
559      </tr>
560    </table>
561    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
562    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
563      <tr>
564        <td width="26" valign="top">
565        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
566        <a name="csdpcrash"></a>Q:</font></b></td>
567        <td>
568        <p style="margin-bottom: 0; margin-top:0"> <b> <a href="solvers.htm#csdp">CSDP</a> 
569        runs but crashes<font color="#0000FF">.</font></b></td>
570      </tr>
571      <tr>
572        <td width="26" valign="top">
573        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
574        <td>
575    <p style="margin-bottom: 0; margin-top:0">Running MATLAB 6.1 and <a href="solvers.htm#csdp">CSDP</a> 
576    4.6? In that case, edit readsol.m in the <a href="solvers.htm#csdp">CSDP</a> 
577    directory and replace all occurrences of &amp;&amp; with &amp;. Even better,
578    download the latest version of <a href="solvers.htm#csdp">CSDP</a>.</p>
579        </td>
580      </tr>
581    </table>
582    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
583    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
584      <tr>
585        <td width="26" valign="top">
586        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
587        <a name="lmilabalready"></a>Q:</font></b></td>
588        <td>
589        <p style="margin-bottom: 0; margin-top:0"><b>I already have
590    <a href="solvers.htm#lmilab">LMILAB</a> and <a href="solvers.htm#linprog">LINPROG</a> 
591    installed, do I need any other solver?</b></td>
592      </tr>
593      <tr>
594        <td width="26" valign="top">
595        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
596        <td>
597    <p style="margin-bottom: 0; margin-top:0">Yes, at-least if you intend to
598    solve anything but a few small problems.&nbsp; See next issue.</p>
599        </td>
600      </tr>
601    </table>
602    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
603    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
604      <tr>
605        <td width="26" valign="top">
606        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
607        <a name="lmilabslow"></a>Q:</font></b></td>
608        <td>
609        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#lmilab">LMILAB</a> 
610        is slower when I use it with YALMIP</b></td>
611      </tr>
612      <tr>
613        <td width="26" valign="top">
614        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
615        <td>
616    <p style="margin-bottom: 0; margin-top:0">Yes. YALMIP, and all other
617    supported solvers, works with a completely general SDP formulation in
618    contrast to <a href="solvers.htm#lmilab">LMILAB</a> that requires the
619    problem structure to be explicitely described by the user for speed (in
620    particular for control related problems). Rule of
621    thumb : <font color="#FF0000">Do not use LMILAB with YALMIP</font>. If you
622    have made the effort to download YALMIP, take 5 more minutes and install a
623    more efficient and general solver. Future versions of YALMIP may resolve
624        this issue. Constraints defined using the <a href="kyp.htm">KYP</a> operator
625        is efficiently handled in some cases already.</p>
626        </td>
627      </tr>
628    </table>
629    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
630    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
631      <tr>
632        <td width="26" valign="top">
633        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
634        <a name="cddhangs"></a>Q:</font></b></td>
635        <td>
636        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#penbmi">
637        CDD</a> hangs</b></td>
638      </tr>
639      <tr>
640        <td width="26" valign="top">
641        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
642        <td>
643    <p style="margin-bottom: 0; margin-top:0">Try
644    <code>sdpsettings('cdd.method','dual-simplex')</code></p>
645        </td>
646      </tr>
647    </table>
648    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
649    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table2">
650      <tr>
651        <td width="26" valign="top">
652        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
653        <a name="fminconcrashes"></a>Q:</font></b></td>
654        <td>
655        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#fmincon">
656        fmincon</a> crashes</b></td>
657      </tr>
658      <tr>
659        <td width="26" valign="top">
660        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
661        <td>
662    <p style="margin-bottom: 0; margin-top:0">Do you have <a href="solvers.htm#mosek">MOSEK</a> 
663        installed? This can cause problems due to an inconsistency between MATLABs
664        and <a href="solvers.htm#mosek">MOSEKs</a> implementation of the file
665        optimget.m. Remove <a href="solvers.htm#mosek">MOSEK</a> 
666        from your path.</p>
667        </td>
668      </tr>
669    </table>
670    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
671    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table4">
672      <tr>
673        <td width="26" valign="top">
674        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
675        <a name="maxdetcrashes"></a>Q:</font></b></td>
676        <td>
677        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#maxdet">
678        MAXDET</a> fails</b></td>
679      </tr>
680      <tr>
681        <td width="26" valign="top">
682        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
683        <td>
684    <p style="margin-bottom: 0; margin-top:0"><a href="solvers.htm#maxdet">
685        MAXDET</a> seems to be sensitive to unbounded feasible regions and
686        unconstrained variables. Try to add redundant bound constraints on all your
687        variables.</p>
688        </td>
689      </tr>
690    </table>
691    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
692    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
693      <tr>
694        <td width="26" valign="top">
695        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
696        <a name="xpress"></a>Q:</font></b></td>
697        <td>
698        <p style="margin-bottom: 0; margin-top:0"><b><a href="solvers.htm#xpress">
699        XPRESS</a> performs badly, claims infeasibility etc.</a></b></td>
700      </tr>
701      <tr>
702        <td width="26" valign="top">
703        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
704        <td>
705    <p style="margin-bottom: 0; margin-top:0">Adding bounds on the involved
706    variables solves this issue in many cases.</p>
707        </td>
708      </tr>
709    </table>
710    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
711    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
712      <tr>
713        <td width="26" valign="top">
714        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
715        <a name="selectsolver"></a>Q:</font></b></td>
716        <td>
717        <p style="margin-bottom: 0; margin-top:0"><b>There are so many solvers, which
718    one should I use?</b></td>
719      </tr>
720      <tr>
721        <td width="26" valign="top">
722        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
723        <td>
724        <p style="margin-bottom: 0; margin-top:0"> <a href="solvers.htm#sedumi">SeDuMi</a> 
725        and
726        <a href="solvers.htm#sdpt3">SDPT3</a> are good general purpose SDP
727    solvers (not necessarily the
728    best solvers though), efficient also on LP and SOCP problems and reasonably
729        efficient on small QP problems. Hans D. Mittelmanns
730        <a target="_blank" href="http://www.optimization-online.org/DB_HTML/2001/07/358.html">benchmark</a> might be helpful.
731        If you mainly solve LPs, make sure to try the free solvers
732        <a href="solvers.htm#glpk">GLPK</a>,
733        <a href="solvers.htm#qsopt">QSOPT</a>,
734        <a href="solvers.htm#clp">CLP</a> and
735        <a href="solvers.htm#cdd">CDD</a></td>
736      </tr>
737    </table>
738    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
739    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
740      <tr>
741        <td width="26" valign="top">
742        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
743        <a name="infeasible"></a>Q:</font></b></td>
744        <td>
745        <p style="margin-bottom: 0; margin-top:0"><b>The solution I get in an SDP is not
746    feasible but has eigenvalues around, say, -1e-6.</b></td>
747      </tr>
748      <tr>
749        <td width="26" valign="top">
750        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
751        <td>
752    <p style="margin-bottom: 0; margin-top:0">Most solvers actually use
753    infeasible/exterior algorithms, so slightly infeasible
754    solutions are common.</p>
755        </td>
756      </tr>
757    </table>
758    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
759    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
760      <tr>
761        <td width="26" valign="top">
762        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
763        <a name="bmi"></a>Q:</font></b></td>
764        <td>
765        <p style="margin-bottom: 0; margin-top:0"><b>Can I solve BMIs without
766    <a href="solvers.htm#penbmi">PENBMI</a>?</b></td>
767      </tr>
768      <tr>
769        <td width="26" valign="top">
770        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
771        <td>
772    <p style="margin-bottom: 0; margin-top:0">The BMI-examples in
773    <a href="reference.htm#yalmipdemo">yalmipdemo</a> show some alternative
774    ways to code your own solver rather easily, but for performance and
775    robustness,
776    <a href="solvers.htm#penbmi">PENBMI</a> is highly recommended.</p>
777        </td>
778      </tr>
779    </table>
780    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
781    <hr noShade SIZE="1" color="#FF0000">       
782    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
783    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
784      <tr>
785        <td width="26" valign="top">
786        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
787        <a name="typical"></a>Q:</font></b></td>
788        <td>
789        <p style="margin-bottom: 0; margin-top:0"><b>My solution is not what I
790                expected.</b></td>
791      </tr>
792      <tr>
793        <td width="26" valign="top">
794        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
795        <td>
796    <p style="margin-bottom: 0; margin-top:0">Is your problem what you expected?
797        Use the command checkset to see that you actually have the constraints that
798        you meant to declare (does it say matrix inequality or element-wise
799        inequality etc). </p>
800        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
801        <p style="margin-bottom: 0; margin-top:0">Are your variables really what you
802        meant to declare (display them to see if they are symmetric, Hermitian,
803        full, etc.). </p>
804        <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
805        <p style="margin-bottom: 0; margin-top:0">Most common error is that you have
806        declared a square matrix but accidentally forgotten to declare it as full
807        and obtained a symmetric matrix instead (square matrices are full by
808        default!)</p></td>
809      </tr>
810    </table>
811    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
812    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table15">
813      <tr>
814        <td width="26" valign="top">
815        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
816        <a name="typeset"></a>Q:</font></b></td>
817        <td>
818        <p style="margin-bottom: 0; margin-top:0"><b>Typing <code>help set</code> gives
819    me no information on the YALMIP function <code>set</code>.</b></td>
820      </tr>
821      <tr>
822        <td width="26" valign="top">
823        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
824        <td>
825    <p style="margin-bottom: 0; margin-top:0">Yep, a bit tricky since <code>set</code> also is a built-in
826    function. Type <code>help sdpvar/set</code> and you will find what you are
827    looking for.</p></td>
828      </tr>
829    </table>
830    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
831    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
832      <tr>
833        <td width="26" valign="top">
834        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
835        <a name="setclass"></a>Q:</font></b></td>
836        <td>
837        <p style="margin-bottom: 0; margin-top:0"><b>Is there really a <code>set</code> class?</b></td>
838      </tr>
839      <tr>
840        <td width="26" valign="top">
841        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
842        <td>
843        <p style="margin-bottom: 0; margin-top:0">No...<code>set</code> is only a wrapper to
844        call the old class <code>lmi</code>. To much work to re-write all code
845        just for a name change.</p>
846        </td>
847      </tr>
848    </table>
849    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
850    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
851      <tr>
852        <td width="26" valign="top">
853        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
854        <a name="normalset"></a>Q:</font></b></td>
855        <td>
856        <p style="margin-bottom: 0; margin-top:0"><b>Is <code>set</code> related to
857        the &quot;normal&quot; set command in MATLAB</b></td>
858      </tr>
859      <tr>
860        <td width="26" valign="top">
861        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
862        <td>
863        <p style="margin-bottom: 0; margin-top:0">No... The name <code>set</code> 
864        was selected since it is short. An alternative would be to define
865        constraints, or feasible sets, using a command named, e.g., <code>
866        constraint</code>. However, my keyboard typing speed is too slow to
867        allow for such a long command name. In my opinion, the name <code>set</code> 
868        is at-least better than the old name <code>lmi</code>.</p>
869        </td>
870      </tr>
871    </table>
872    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
873    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
874      <tr>
875        <td width="26" valign="top">
876        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
877        <a name="lmielement"></a>Q:</font></b></td>
878        <td>
879        <p style="margin-bottom: 0; margin-top:0"><b>I define a
880      semidefinite constraint, but YALMIP declares it &quot;element-wise&quot;.</b></td>
881      </tr>
882      <tr>
883        <td width="26" valign="top">
884        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
885        <td>
886        <p style="margin-bottom: 0; margin-top:0">YALMIP detects semidefinite
887        constraints by checking symmetry. In some cases (working with very
888        ill-conditioned data), numerical problems may lead to a small violation
889        of symmetry in MATLAB, and YALMIP will declare the constraint as
890        element-wise. To solve this problem, just symmetrize your variable
891        first.</p>
892        </td>
893      </tr>
894    </table>
895    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
896    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
897      <tr>
898        <td width="26" valign="top">
899        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
900        <a name="reallystrict"></a>Q:</font></b></td>
901        <td>
902        <p style="margin-bottom: 0; margin-top:0"><b>Are  inequalities really
903    strict?</b></td>
904      </tr>
905      <tr>
906        <td width="26" valign="top">
907        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
908        <td>
909        <p style="margin-bottom: 0; margin-top:0">By default, strict (&lt;,&gt;) and
910        non-strict (&lt;=,&gt;=) inequalities are treated in the same way in YALMIP,
911        and the result depends on the solver. However, by using the field <code>
912        shift</code> in <a href="reference.htm#sdpsettings">sdpsetttings</a>,
913        inequalities defined using &lt; and &gt; will be treated slightly different.
914        YALMIP will add a small perturbation to these inequalities to
915        increase the likelihood of a strictly feasible solution. Warning : If you
916                have an integer variable, and add a constraint <code>set(x<2)</code>, this will not be interpreted as <code>set(x<=1)</code> 
917                . To avoid confusion, use <code>set(x<=1)</code>. The same holds for rank constraints <code>set(rank(x)<2)<n)</code>.</code></td>
918      </tr>
919    </table>
920    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
921    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table5">
922      <tr>
923        <td width="26" valign="top">
924        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
925        <a name="gevp"></a>Q:</font></b></td>
926        <td>
927        <p style="margin-bottom: 0; margin-top:0"><b>How do I solve generalized
928        eigenvalue problems (like <code>gevp</code> in <a href="solvers.htm#lmilab">LMILAB</a>)?</b></td>
929      </tr>
930      <tr>
931        <td width="26" valign="top">
932        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
933        <td>
934    <p style="margin-bottom: 0; margin-top:0">Two options. The first one is to code your own
935    script based on a simple bisection. This is illustrated in
936    the example <code>decayex.m</code>. An alternative is to install the BMI solver
937    <a href="solvers.htm#penbmi">PENBMI</a>. This solver solves GEVP problems
938    globally.</p>
939        </td>
940      </tr>
941    </table>
942   
943   
944    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
945    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table6">
946      <tr>
947        <td width="26" valign="top">
948        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
949        <a name="gpconvex"></a>Q:</font></b></td>
950        <td>
951        <p style="margin-bottom: 0; margin-top:0"><b>I get strange
952                results when I use the option <code>'removeequalities'</code></b></td>
953      </tr>
954      <tr>
955        <td width="26" valign="top">
956        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
957        <td>
958    <p style="margin-bottom: 0; margin-top:0">When equality constraints are
959        removed by YALMIP by deriving a reduced basis (<code>'removeequalities'</code> set to <b>1</b> or <b>2</b>) dual variables will not be recovered. This may
960        lead to further complications in some cases. If you are solving a problem
961        that you have derived by using the function <a href="reference.htm#dualize">dualize</a>, you original variables
962        will not be computed, since they are computed from the missing duals.
963        Another case is when you solve a linearly parameterized sum of squares problem using
964        a kernel model (<code>'sos.model'</code> set to <b>0</b> or <b>1</b>). The
965        parameterization variables are computed from the dual variables, hence failure will
966        occur. To summarize, do not use the option <code>'removeequalities'</code> in sum-of-squares </b>
967        problems or dualized problems, unless you really now what you are doing.</p>
968        </td>
969      </tr>
970    </table>
971   
972   
973    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
974    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table7">
975      <tr>
976        <td width="26" valign="top">
977        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
978        <a name="convexity"></a>Q:</font></b></td>
979        <td>
980        <p style="margin-bottom: 0; margin-top:0"><b>YALMIP complains about
981                failing in convexity propagation</b></td>
982      </tr>
983      <tr>
984        <td width="26" valign="top">
985        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
986        <td>
987    <p style="margin-bottom: 0; margin-top:0">This means that you have used so
988        called <a href="extoperators.htm">nonlinear operators</a> to model your
989        problem, and most likely you have defined a problem which cannot be
990        represented using standard convex constraints. If you know that your model
991        is convex, try to model the nonlinear terms by hand to see if you actually are
992        correct (the convexity analysis is conservative, although in most cases
993        failure in the convexity propagation is due to actual nonconvexity.</p>
994        </td>
995      </tr>
996    </table>
997   
998   
999    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1000    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
1001      <tr>
1002        <td width="26" valign="top">
1003        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1004        <a name="removeequalities"></a>Q:</font></b></td>
1005        <td>
1006        <p style="margin-bottom: 0; margin-top:0"><b>I have problems solving a
1007                geometric program.</b></td>
1008      </tr>
1009      <tr>
1010        <td width="26" valign="top">
1011        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1012        <td>
1013    <p style="margin-bottom: 0; margin-top:0">To begin with, you need a solver
1014        that can solve geometric programs (YALMIP currently supports
1015        <a href="solvers.htm#gpposy">GPPOSY</a>,
1016        <a href="solvers.htm#mosek">Mosek</a> and <a href="solvers.htm#fmincon">
1017        fmincon</a>). If you still have problems, the reason may be that YALMIP
1018        converts convex quadratic constraints to seconds order constraints. This
1019        should not be done in geometric programs (it is a known bug). To avoid this,
1020        set the option <code>'convertconvexquad'</code> to
1021        0. Another reason is that runs into problem during the expansion of
1022        <a href="extoperators.htm">nonlinear operators</a>. To avoid this issue, explicitly
1023        tell YALMIP that the
1024        problem is a geometric problem by specifying the solver to <code>'gpposy'</code>, <code>'mosek-geometric'</code> 
1025        or <code>'fmincon-geometric'</code>.</p>
1026        </td>
1027      </tr>
1028    </table>
1029   
1030   
1031    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1032   
1033   
1034    <hr noShade SIZE="1" color="#FF0000">       
1035    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table11">
1036      <tr>
1037        <td width="26" valign="top">
1038        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1039        <a name="subasgn"></a>Q:</font></b></td>
1040        <td>
1041        <p style="margin-bottom: 0; margin-top:0"><b>I can not write <code>X =
1042    eye(2); X(1,1)=sdpvar(1,1)</code>!</b></td>
1043      </tr>
1044      <tr>
1045        <td width="26" valign="top">
1046        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1047        <td>
1048    <p style="margin-bottom: 0; margin-top:0">This is because of the way the
1049        object orientation works in MATLAB. There is currently no way to support
1050        this feature (without overloading the @double class, which can cause
1051        instability.)</p>
1052        </td>
1053      </tr>
1054    </table>
1055   
1056   
1057    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1058    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table10">
1059      <tr>
1060        <td width="26" valign="top">
1061        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1062        <a name="vectorquadratic"></a>Q:</font></b></td>
1063        <td>
1064        <p style="margin-bottom: 0; margin-top:0"><b>Vector-valued quadratic constraints</b></td>
1065      </tr>
1066      <tr>
1067        <td width="26" valign="top">
1068        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1069        <td>
1070        <p style="margin-bottom: 0; margin-top:0">If you have vector-valued
1071                quadratic constraints with mixed convexity and concavity, things may
1072                fail. To avoid problems, use the options <code>sdpsettings('convertconvexquad',0)</code>,
1073                or simply do not use a vectorized constraint. Turning off the automatic
1074                conversion of convex quadratic constraints to second order cones is
1075                typically recommended if you know that you will not solve the problem using a
1076                semidefinite solver.</td>
1077      </tr>
1078    </table>
1079    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1080    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table12">
1081      <tr>
1082        <td width="26" valign="top">
1083        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1084        <a name="implies"></a>Q:</font></b></td>
1085        <td>
1086        <p style="margin-bottom: 0; margin-top:0"><b>Using <code>implies</code> on set objects</b></td>
1087      </tr>
1088      <tr>
1089        <td width="26" valign="top">
1090        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1091        <td>
1092        <p style="margin-bottom: 0; margin-top:0">Using the logical constraint
1093                <code>implies</code> with the first argument being a constraint is currently causing problems in some cases,
1094                and should thus be avoided.</td>
1095      </tr>
1096    </table>
1097    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1098    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%" id="table14">
1099      <tr>
1100        <td width="26" valign="top">
1101        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1102        <a name="constructbug"></a>Q:</font></b></td>
1103        <td>
1104        <p style="margin-bottom: 0; margin-top:0"><b>Sometimes MATLAB fails to
1105                declare an SDPVAR object named i or j inside a function</b></td>
1106      </tr>
1107      <tr>
1108        <td width="26" valign="top">
1109        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1110        <td>
1111        <p style="margin-bottom: 0; margin-top:0">This is one of the weirdest
1112                bugs in MATLAB I have come across. If you define your own class (such as
1113                SDPVAR) and use the constructor inside of a function body and assign the
1114                name i or j to the object, MATLAB fails to perform the definition, and i
1115                or j remains to point to the imaginary number. The bug has been reported
1116                and been acknowledged by The Mathworks. If you stumble upon this problem
1117                (very rare), just change the variable name.</td>
1118      </tr>
1119    </table>
1120   
1121   
1122    <hr noShade SIZE="1" color="#FF0000">       
1123    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1124    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
1125      <tr>
1126        <td width="26" valign="top">
1127        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1128        <a name="foundbug"></a>Q:</font></b></td>
1129        <td>
1130        <p style="margin-bottom: 0; margin-top:0"><b>I have found a bug. What to do?</b></td>
1131      </tr>
1132      <tr>
1133        <td width="26" valign="top">
1134        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1135        <td>
1136    <p style="margin-bottom: 0; margin-top:0">Send a mail to <a href="mailto:loefberg@control.ee.ethz.ch">
1137    loefberg@control.ee.ethz.ch</a>. Type <code>ver</code> in MATLAB and include
1138    the result in the mail. If possible, include the code (as simple as
1139    possible) that generated the fault, otherwise, include at-least the error
1140    message etc. The more information the better.</p>
1141        </td>
1142      </tr>
1143    </table>
1144    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
1145    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
1146      <tr>
1147        <td width="26" valign="top">
1148        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1149        <a name="feature"></a>Q:</font></b></td>
1150        <td>
1151        <p style="margin-bottom: 0; margin-top:0"><b>I have an idea for a new feature.
1152    What to do?</b></td>
1153      </tr>
1154      <tr>
1155        <td width="26" valign="top">
1156        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1157        <td>
1158        <p style="margin-bottom: 0; margin-top:0">Send a mail to <a href="mailto:loefberg@control.ee.ethz.ch">
1159    loefberg@control.ee.ethz.ch</a>. However, I only add new features when I
1160    need them my self, but if your idea is good enough, I might realize that I
1161    need it!</td>
1162      </tr>
1163    </table>
1164    <p style="margin-bottom: 0; margin-top:0">&nbsp;</p>
1165    <table border="0" cellpadding="0" style="border-collapse: collapse" width="100%">
1166      <tr>
1167        <td width="26" valign="top">
1168        <p style="margin-bottom: 0; margin-top:0"><b><font color="#0000FF">
1169        <a name="yalmipmeans"></a>Q:</font></b></td>
1170        <td>
1171        <p style="margin-bottom: 0; margin-top:0"><b>What does YALMIP mean?</b></td>
1172      </tr>
1173      <tr>
1174        <td width="26" valign="top">
1175        <p style="margin-bottom: 0; margin-top:0"><font color="#0000FF"><b>A</b></font><b><font color="#0000FF">:</font></b></td>
1176        <td>
1177        <p style="margin-bottom: 0; margin-top:0">Used to be short for Yet
1178        Another LMI Parser. However, since YALMIP is much more than a LMI parser
1179        now, it does not mean anything.
1180        </td>
1181      </tr>
1182    </table>
1183    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1184    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1185    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1186    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1187    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1188    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1189    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1190    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1191    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1192    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1193    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1194    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1195    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1196    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1197    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1198    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1199    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1200    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1201    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1202    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1203    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1204    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1205    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1206    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1207    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1208    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1209    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1210    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1211    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1212    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1213    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1214    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1215    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1216    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1217    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1218    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1219    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1220    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1221    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1222    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1223    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1224    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1225    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1226    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1227    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1228    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1229    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1230    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1231    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1232    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1233    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</p>
1234    <p style="margin-top: 0; margin-bottom: 0">&nbsp;</td>
1235  </tr>
1236</table>
1237
1238</div>
1239
1240</body>
1241
1242</html>
Note: See TracBrowser for help on using the repository browser.