<div dir="ltr"><div>Hi,</div><div><br></div><div>I&#39;ve played alot with the CBC api via Java binding since the last time I post on the mailing list. I&#39;ve managed to accomplish most of what I need: model the problem and solve it.</div>
<div><br></div><div>To model the problem, I&#39;m creating a single instance of OsiClpSolverInterface then I make multiple calls to addRow() and addCol().</div><div><br></div><div>To solve the problem, I&#39;m making a call to CbcMain0() and CbcMain1(). While this methods are doing almost all the work, I&#39;m concerns about a change in implementation breaking my stuff. Also, this magic methods does much more than I want like. i.e.: printing stuff to console. Thus, I want to replace the call to CbcMain1() to the real thing being a call to OsiClpSolverInterface.initialSolve() and then to CbcModel.branchAndBound(). I&#39;ve made the change and I get a complete different result in term of performance.</div>
<div><br></div><div>This is the list of arguments I pass to CbcMain1()</div><div>&quot;-heuristicsOnOff&quot;, &quot;off&quot;, &quot;-feasibilityPump&quot;, &quot;on&quot;, &quot;-cuts&quot;, &quot;off&quot;, &quot;-logLevel&quot;, &quot;0&quot;, &quot;-slogLevel&quot;, &quot;0&quot;, &quot;-passF&quot;, &quot;5&quot;, &quot;-solve&quot;<br>
</div><div><br></div><div>I had a look at the method source code. OMG this is a monster of 7283 lines !! </div><div><br></div><div>1. Can someone describe me what CbcMain1() is doing more then a simple call to OsiClpSolverInterface.initialSolve() and CbcModel.branchAndBound() ? </div>
<div><br></div><div>2. Is their any other low level method to solve the problem ?</div><div><br></div><div>The ultimate solution is to read this monster method and keep what I need. Still, I have trouble to understand every line. Some are very cryptic and refer to magic number.</div>
<div><br></div><div><div><div><div dir="ltr"><div>--</div>Patrik Dufresne<div><br></div></div></div>
</div>
</div></div>