[Cbc] Cbc Digest, Vol 55, Issue 3

John Perry john.perry at usm.edu
Tue Dec 13 16:24:56 EST 2011


Hi again

Thanks to everyone for the help. Some follow-up:

Giacomo Nannicini wrote,

> I may be wrong but in my experience OsiCbcSolverInterface has several
> problems and should not be used. If your problem is a linear program,
> you should use OsiClpSolverInterface instead. Once you load the
> problem in an object of class OsiClpSolverInterface, you can use
> theclone() method to obtain copies.

Thanks, that does seem to work. However, we did want integer solutions, which 
takes me to Lou Hafer's email.

> 	Several comments and observations (since I'm not sure just what you're
> trying to accomplish).

To be specific: I am implementing an algorithm, part of which needs to solve 
an sequence of expanding systems of linear inequalities. As the algorithm 
progresses, I have different choices for which direction to take, so I have to 
expand the system tentatively with a set of inequalities, see if that works, & 
if not, try another one. &c.

For example, suppose I have the system L={x-y>0,3x-y>0}. First I make sure L 
has a solution. It does, so then I have to choose between the union of L and 
{x-z>0}, and the union of L and {z-x>0}. This requires me to copy L to two 
different systems, add the constraints, see if I can solve the new systems, 
choose the more preferable system if they both have solutions, etc.

>   * Deleting a solver interface should free all resources that it
>     acquired. That doesn't seem to happen, so there's probably a
>     bug in OsiCbc.

Okay.

>   * OsiCbc is regarded as a mistake by most of the developers, myself
>     included (hence the general lack of response  :-)

Ah. :-)

>     No one who likes
>     to use it is willing to maintain it. If you need to solve MIPs, use
>     Cbc directly. If you just want to solve continuous LPs, use some
>     other OsiXXX. OsiClp, for example.

For various reasons, I would prefer integer solutions.

>   * You say you want to copy a linear program. Do you want copies of the
>     model, or copies of the model embedded in a solver interface?

I'm not sure. I'd guess that, since I want to modify the constraints and 
extract the solutions, I want more than just the model.

regards
john perry
-- 
John Perry
Associate Professor
Department of Mathematics, Box 5045
University of Southern Mississippi
Hattiesburg MS 39406
john.perry at usm.edu


More information about the Cbc mailing list