[Csdp] Couldn't get feasible solution for a moderately large SDP problem

Feng Nan fnan at bu.edu
Mon Jan 27 18:25:03 EST 2014


Hi Brian,
Thanks for the quick response. I actually generated the problem file in a C
code using CSDP routine write_prob().
When I called SDPT3 from MATLAB to solve this test problem I got
 gap := trace(XZ)       = 3.08e-07
 relative gap           = 6.86e-11
 actual relative gap    = 4.47e-11

You are right that Sedumi seems to run into numerical problem too. But the
returned value agrees with the optimal solution given by SDPT3 so I
consider it solved successfully.
FYI, Here are the commands I used for SDPT3:
startup
[blk,At,C,b] = read_sdpa(’./sdplib/mcp250-1.dat-s’);
[obj,X,y,Z,info] = sqlp(blk,At,C,b);
x1=X{1};
x1(1:35)-x1(36:70)

Here are the commands I used for Sedumi:
[At,b,c,K]=readsdpa('arch0.dat-s');
[x,y,info] = sedumi(At,b,c,K);
x(1:35)-x(36:70)


x(1:35)-x(36:70) is the return result of interest. The CSDP solution is far
from those obtained from SDPT3 and Sedumi and I found that it is actually
not feasible.





On Mon, Jan 27, 2014 at 12:59 AM, Brian Borchers <borchers at nmt.edu> wrote:

> When I ran your test case through SeDuMi (with pars.errors=1 to get the
> DIMACS error measures), I got:
>
>  47 :   2.24E+03 9.80E-12 0.000 0.3687 0.9000 0.9000   0.93  6  6  2.7E-06
>  48 :   2.24E+03 6.68E-12 0.000 0.6815 0.9000 0.9000   0.98 11 10  1.9E-06
> Run into numerical problems.
>
> iter seconds digits       c*x               b*y
>  48      2.3   6.5  2.2390568439e+03  2.2390575678e+03
> |Ax-b| =   3.1e-04, [Ay-c]_+ =   1.7E-09, |x|=  1.8e+04, |y|=  4.3e+04
>
> Detailed timing (sec)
>    Pre          IPM          Post
> 3.022E-02    2.354E+00    3.420E-03
> Max-norms: ||b||=1.800647e+01, ||c|| = 1,
> Cholesky |add|=4, |skip| = 0, ||L.L|| = 516.211.
>
> DIMACS error measures
>   PInf     PConInf     DInf    DConInf    RelGap    RelComp
> 3.92E-08  0.00E+00  0.00E+00  2.83E-12  -1.62E-07  1.06E-04
>
> SeDuMi wasn't able to get the relative complentarity gap below 1.0e-4, so
> it clearly had difficulty with this problem.
>
> Looking at your data file, it appears that the coefficients were rounded
> to single precision before being written out.  This is a bad idea in this
> case since the problem is badly conditioned.
>
> In your testing with SeDuMi, did you start with your problem in MATLAB,
> write it out in sparse SDPA format, and then read it back in before solving
> the problem, or did you solve it directly with SeDuMi without going through
> the data file?
>
>
>
> On Sun, Jan 26, 2014 at 7:35 PM, Feng Nan <fnan at bu.edu> wrote:
>
>> Hi CSDP users/developers,
>> I am trying to solve a SDP problem inside a code in C. The structure of
>> the SDP formulation I have is such that I can always guarantee a feasible
>> solution no matter how big sample size is. CSDP successfully solves the
>> problem with small sample sizes; but when the sample size grows it keeps
>> giving up saying lack of progress or stuck on the edge of primal
>> feasibility.
>>
>> I generated such a moderately large problem in SDPA sparse format
>> (attached here, it has 661 constraints, 2 blocks in the X,Z matrices with
>> sizes 12 -671) and fed it into MATLAB solvers such as SDPT3 and Sedumi and
>> both of them gave the correct solution. Using the same input file I just
>> couldn't get even a feasible solution from CSDP.
>>
>> I've also played with the parameters to no avail...
>> Do you have any suggestions? Is there a setting to make it behave the
>> same as those MATLAB solvers?
>> Thank you very much!
>> Feng
>>
>>
>>
>> _______________________________________________
>> Csdp mailing list
>> Csdp at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/csdp
>>
>>
>
>
> --
> Brian Borchers                          borchers at nmt.edu
> Department of Mathematics      http://www.nmt.edu/~borchers/
> New Mexico Tech                       Phone: (575) 322-2592
> Socorro, NM 87801                   FAX: (575) 835-5366
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/csdp/attachments/20140127/97399065/attachment.html>


More information about the Csdp mailing list