[Coin-lpsolver] determining infeasibility in ClpInterior

John J Forrest jjforre at us.ibm.com
Fri Nov 17 04:40:17 EST 2006


It is a known defect that the Clp barrier does not detect infeasibility or
unboundedness correctly.  It is on my list of the 100 things most wanted
:-)

On getting solutions use dualRowSolution() and/or primalColumnSolution()
and check feasibility (either by hand or by checkSolution();

messages should be out by default on trunk and branches/devel

John Forrest


                                                                           
             Kish Shen                                                     
             <kish.shen at crossc                                             
             oreop.com>                                                 To 
             Sent by:                  coin-lpsolver at list.coin-or.org      
             coin-lpsolver-bou                                          cc 
             nces at list.coin-or                                             
             .org                                                  Subject 
                                       [Coin-lpsolver] determining         
                                       infeasibility in ClpInterior        
             11/16/06 07:49 PM                                             
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




Hi,

I have been testing out ClpInterior with some test cases, and for the
following simple problem:

objective: min(X)

subject to:

X + Y >= 3
X + Y <= 2
X - Y  =   0

which is obviously infeasible, and when I solve the problem with Clp's
Simplex, this is indeed
what I get. However, when I solve the problem with ClpInterior, I get a
solution (with X and
Y = 1).

Looking at the code:

             lpd->lp->interiormodel->setCholesky(cholesky);
             lpd->lp->interiormodel->primalDual();
             // Barrier done

             if (lpd->lp->interiormodel->isProvenOptimal())
             {
                 // Do crossover if optimal...
          .....
             }

where lpd->lp->interiormodel is a ClpInterior *, the isProvenOptimal()
method returns true.
I assume it should not?

--Kish Shen

_______________________________________________
Coin-lpsolver mailing list
Coin-lpsolver at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/coin-lpsolver





More information about the Clp mailing list