[Coin-discuss] Strange termination
Ted Ralphs
tkralphs at lehigh.edu
Fri Jun 17 10:49:45 EDT 2005
Kasper Bonne Rasmussen wrote:
> Hello.
>
> I am solving some MIP problems using the OsiCpxSolverInterface. After each
> problem is solved I have an assert statement ensuring that it went
> according to plan.
>
> assert( si->isProvenOptimal() == 1 );
>
> The problem is that sometimes that assert statement fails. It is not
> proven optimal, and the return values from the functions:
>
> isAbandoned()
> isProvenOptimal()
> isProvenPrimalInfeasible()
> isProvenDualInfeasible()
> isPrimalObjectiveLimitReached()
> isDualObjectiveLimitReached()
> isIterationLimitReached()
>
> are all 0.
There is probably a problem status that is not being checked for. I
suggest printing out the problem status at the end of the
branchAndBound() method using
CPXgetstat( env_, getMutableLpPtr() );
and see what it is when this happens. Check the CPLEX header file to see
what the status means and then check the OSI status query methods to see
if any of them check for that particular status. If not, there's a
problem. This should narrow down the problem, so we can make the
appropriate change to the code.
Cheers,
Ted
--
Dr. Ted Ralphs
Assistant Professor
Industrial and Systems Engineering
Lehigh University
(610)758-4784
tkralphs at lehigh.edu
www.lehigh.edu/~tkr2
More information about the Coin-discuss
mailing list