[Coin-discuss] How to cut off "optimal" solution in CBC
John J Forrest
jjforre at us.ibm.com
Wed Aug 24 06:29:10 EDT 2005
Jim,
Good point. setBestSolution cleans up and checks solution so I think it
should run before cut generators which are going to use the solution. I
expect the generators to generate cuts which may cut off this solution -
but in your case you also want to reject that solution.
What I could do is save old solution and cutoff and then if any cut
generator returns a cut which is "infeasible" (as defined in OsiCut.hpp
then that says restore old solution (and the infeasible cut is obviously
discarded). At the same time you could generate the global cut you wanted
and that would be added.
Or some variant e.g. use "effectiveness".
Shall I implement and what method of flagging this situation do you think
is best?
John Forrest
So what if I saved old solution
"Jim Hurd" <jimh at datagrove.com>
Sent by: coin-discuss-bounces at list.coin-or.org
08/23/2005 01:47 PM
Please respond to
Discussions about open source software for Operations Research
To
<coin-discuss at list.coin-or.org>
cc
Subject
[Coin-discuss] How to cut off "optimal" solution in CBC
I have a cut generator that may cut off a found integer/optimal solution
when it runs. I have it set to run atSolution, which works, but looking at
the code for CbcModel::setBestSolution it seems that the solution is
installed prior to running the cuts. When I run my Cbc based solver
branchAndBound terminates with a solution that should be cut off. How do I
get Cbc to respect these global cuts? There are too many to just put them
all in the model at the beginning.
Thanks,
Jim Hurd
_______________________________________________
Coin-discuss mailing list
Coin-discuss at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/coin-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/coin-discuss/attachments/20050824/52bd102d/attachment.html>
More information about the Coin-discuss
mailing list