[Osi-tickets] [COIN-OR Open Solver Interface] #13: extension to
warm start API --- sync OSI warm start with solver
COIN-OR Open Solver Interface
coin-trac at coin-or.org
Tue Nov 21 15:35:28 EST 2006
#13: extension to warm start API --- sync OSI warm start with solver
----------------------------+-----------------------------------------------
Reporter: lou | Owner: mjs
Type: defect | Status: new
Priority: major | Milestone:
Component: Osi Base Class | Version: 0.95.0
Keywords: |
----------------------------+-----------------------------------------------
For the warm start methods, there's an issue that's come up with respect
to cbc. Right now, there are three calls:
* {{{getEmptyWarmStart}}} (returns an empty basis; a sort of specialised
clone)
* {{{getWarmStart}}} (return current warm start object)
* {{{setWarmStart}}} (set a warm start in the OSI)
What's needed is a way to distinguish the actions 'remove warm start info
from the OSI' and 'request the OSI to synchronise its warm start
information with the solver'.
The direct impetus comes because John and I have chosen conflicting
overloads for {{{setWarmStart(0)}}}. I've chosen this for 'remove warm
start info', John uses it for 'sync with solver'.
My suggestion would be that {{{setWarmStart(0)}}} is naturally interpreted
as 'remove warm start info' and we need a new call for 'sync with solver'.
The form of the solution isn't critical, but we need some way to
distinguish the two.
Depending on choices, we may need to revisit the default actions for
{{{getWarmStart}}}. Right now, it returns an empty warm start if there's
no valid information. Depending on the OSI implementation, this could
violate the const'ness of the call.
--
Ticket URL: <https://projects.coin-or.org/Osi/ticket/13>
COIN-OR Open Solver Interface <http://projects.coin-or.org/Osi>
An API for a variety of LP and MIP solvers (and more).
More information about the Osi-tickets
mailing list