[Coin-lpsolver] Re: COIN and CLP concern

John J Forrest jjforre at us.ibm.com
Mon Nov 19 13:04:37 EST 2007


Larry,

Your problem as defined by the mps file you sent is infeasible.  The
trouble with infeasible problems is that they can have local optima! i.e.
if you get just the right basis you may be able to get enough variables to
come in just under the feasibility tolerance.  Also different codes have
different tolerances.

If I grep for R71 on your file I get -

 E  R71
    C2144     R71       1.             R72       4691.9899002
    C2145     R71        -1.           R72        -4691.9899
    C2146     R71        -1.           R72        -4691.9899
    C2147     R71        -1.           R72        -4691.9899
    C2148     R71        -1.           R72        -4691.9899
    C2149     R71        -1.           R72        -4691.9899
    C2150     R71        -1.           R72        -4691.9899
    C2151     R71        -1.           R72        -4691.9899

R72 is also an E row with zero rhs

So as long as any of C2144-C2151 are nonzero then this problem is infeasible.

John Forrest


                                                                           
             "Larry A. Taylor"                                             
             <ltaylor at seas.ucl                                             
             a.edu>                                                     To 
                                       John J Forrest/Watson/IBM at IBMUS     
             11/16/2007 06:37                                           cc 
             PM                                                            
                                                                   Subject 
                                       COIN and CLP concern                
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




I have successfully created a project that wraps and calls COIN-MP.dll,
both the downloaded binary, and now the V8 version which I have
compiled locally on Windows. The wrapper allows me to call it from
'managed code' including Visual Basic 2005, etc.

I have a particular problem that gets sent to CLP, and should find the
optimal solution. Instead, it stops and calls the problem infeasible.
The downloaded binary version of coinmp.dll solves this problem, but
occasionally generates exceptions on other problems.

Anyway, I can't send you my VB code, but COINMP is writing out
the MPS file. If you can use this to debug CLP, I will send it to
you, or check it in somehow.

The problem is marked as infeasible in ClpSimplexDual.cpp
near the statements in various versions:

               // be careful
               if (numberIterations_) {
                if (computeInternalObjectiveValue()>limit) {
                   problemStatus_=1;
                   secondaryStatus_ = 1; // and say was on cutoff
                }

At this point, it appears the dual infeasibilities are zero, but
the primal infeasibilities are not. I know the proble is feasible,
because it is solved in previous versions of coinmp.dll, and
I can solve it with MINOSS (in dll form).

I can set the solverMethod to different values, but it seems to
always wind up in ClpSimplexDual.

Say the word, and I will send you the MPS file (zipped, I guess).

LAT




More information about the Clp mailing list