[Coin-discuss] Strange termination
Jean-Sebastien Roy
js at jeannot.org
Fri Jun 17 14:26:29 EDT 2005
Ted Ralphs wrote:
> That's what I was going to guess...in the LP case, we explicitly check
> for this return status and turn off the presolve before resolving the
> problem in this case. This might not be prudent in the MIP case. Take a
> look at the code in initialSolve(). Something similar could be done in
> the MIP case.
Mr Rasmussen, could you try with the presolve disabled and see if the
status returned is correct ?
If it does, does the following patch fixes the status in all cases ?
Regards,
js
diff -u -r1.31 OsiCpxSolverInterface.cpp
--- OsiCpxSolverInterface.cpp 14 Jun 2005 19:22:10 -0000 1.31
+++ OsiCpxSolverInterface.cpp 17 Jun 2005 18:11:46 -0000
@@ -337,6 +337,15 @@
CPXsetintparam( env_, CPX_PARAM_SIMDISPLAY, 2 );
CPXmipopt( env_, lp );
+
+#if CPX_VERSION >= 800
+ int stat = CPXgetstat( env_, getMutableLpPtr() );
+ if (stat == CPX_MIP_INForUNBD){
+ CPXsetintparam( env_, CPX_PARAM_PREIND, CPX_OFF );
+ CPXmipopt( env_, lp );
+ CPXsetintparam( env_, CPX_PARAM_PREIND, CPX_ON );
+ }
+#endif
}
//#############################################################################
More information about the Coin-discuss
mailing list