[Coin-discuss] bestPossibleObjective for Cbc
Kish Shen
kish.shen at crosscoreop.com
Mon Jul 10 22:24:23 EDT 2006
Hi,
I am interested in obtaining the best possible bound on the objective value
from a MIP solve. This value is stored in bestPossibleObjective in the
CbcModel, but it seems that if the MIP search is exited without searching the
whole tree, because of setting of the allowable MIP gap (e,g, as specified by
CbcAllowableFractionGap), bestPossibleObjective is set to bestObjective at
the end of the search.
For example, in the following MIP solve of the bell3a problem:
Cbc0012I Integer solution of 878430 found by heuristic after 150 iterations
and 2 nodes (1.46 seconds)
Cbc0010I After 500 nodes, 156 on tree, 878430 best solution, best possible
876741 (8.18 seconds)
Cbc0011I Exiting as integer gap of 1689.38 less than 1e-10 or 0.3%
Cbc0001I Search completed - best objective 878430, took 5109 iterations and
501 nodes (8.19 seconds)
the search is exited early, with
bestPossibleObjective = 876741
bestObjective = 878430
but by the time I call getBestPossibleObjValue() immediately after the
branchAndBound() call, it is already set to 878430. [I think this is done
around line 1700 of my copy of CbcModel.cpp]
Is there any way I can get the original bestPossibleObjective before it was
set to bestObjective?
Thanks and cheers,
Kish
More information about the Coin-discuss
mailing list