[Coin-discuss] CbcModel::initialSolve() loses message

Darla and Philip Walton hpwalton at comcast.net
Sat Jun 3 19:45:12 EDT 2006


Ok.  So really there's no secret tricks...it could possibly be better 
organized if someone got a bee in their bonnet and took it on.
Hmmm....got it.

Actually, I'm not using the hint.  I've hunted those down and killed them. 
I'm trying to use the "level" parameter...

I think it could be one of 2 things:
1- The output message handler is actually created in MSFT "managed" code. 
What that means is that the "unmanaged" code can't really mess with it.  I 
think there may be a point where the code is a little cavalier about 
assigning it around.....
or possibly the lp solver gets replaced somewhere and loses the pointer to 
the message handler...not 100% sure.  Haven't stepped through code to find 
it.  It definitnely occurs without my intervention in a call to 
CbcMode::initialSolve();
I'm basically using something very close to the test driver I sent.

Thanks for looking into it.  I did find that doing the initial solve does 
speed it up a bit....so I hate to avoid it.  However, I must get some 
output.  I think my fallback will be to do the initial solve, then re-set-up 
the message handling.  This, however, will be difficult as it is buried in 
my modified version of flopc++.

Phliip
[snip]
> I know that because COIN is a loose collection of libraries message
> handling is a pain.  I started doing something but ...
>
> You are probably using setupForRepeatedUse to try and speed up
> OsiClpSolverInterface and also setHint(OsiDoreducePrint,).
>
[snip] 





More information about the Coin-discuss mailing list