<br><font size=2 face="sans-serif">About two years ago, we built an application
around the then-current release of Cbc. For the sake of discussion,
call this "Version A."</font>
<br>
<br><font size=2 face="sans-serif">Very recently, we downloaded a much
more recent release, and re-architected the application. This "Version
B" has exactly the same API as Version A, but the details of the systems
integration are different in a variety of ways. </font>
<br>
<br><font size=2 face="sans-serif">Version A was essentially a hack-job
on CbcMain's command-line interface: for example, it launched the Cbc solver
by faking a "branch" command. Version B, in contrast, was
written along the lines of some of the simpler examples in Cbc/examples,
and since it leaves out most of the machinery of the command-line interface,
it's about a factor of ten shorter.</font>
<br>
<br><font size=2 face="sans-serif">To my (perhaps naive) surprise, Version
B is far less efficient than Version A. On one small example problem,
Version A processed 24 nodes to solve the problem, while Version B processed
52 nodes, more than twice as many.</font>
<br>
<br><font size=2 face="sans-serif">It is obvious that we have made at least
one ill-advised change in cut, node, or branch selection, or in presolve/postsolve
processing. We have avoided customizations we did not understand,
and in most cases used the default choices that were implicit in the two
versions of Cbc.</font>
<br>
<br><font size=2 face="sans-serif">We have tried more-or-less blind flailing
in our attempts to regain the lost performance efficiency, exploring Version
A and experimenting with transplanting various customizations from there
to Version B, but nothing has had an effect of more than about 10%, compared
to the more than 2-to-1 discrepancy between the two versions.</font>
<br>
<br><font size=2 face="sans-serif">Obviously Cbc has not regressed; it
is our own ignorance of how to configure it that is at fault. But
we don't even know how to begin the analysis that would reveal fruitful
avenues to take. We would appreciate any advice. I haven't
provided much detail about our configuration, because I don't know what
aspects of it are important, but I'd be pleased to answer any questions
that would help someone give us some guidance.</font>
<br>
<br><font size=2 face="sans-serif">Thank you for your consideration, and
for the enormous amount of work that has clearly been put into making Cbc
a useful tool.</font>