<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.3059" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>./cbc -cpp 1 -solve</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><SPAN 
class=659030019-16032007><FONT face="Courier New" 
size=2></FONT></SPAN></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><SPAN 
class=659030019-16032007><FONT face="Courier New" size=2>&nbsp;cat "void 
branchAndBound() {"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
&gt;&gt; CbcModel.hpp</FONT></SPAN></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>&nbsp;cat "void CbcModel::branchAndBound() {" &gt;&gt; 
CbcModel.cpp</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>&nbsp;cat 
user_driver.cpp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&gt; 
CbcModel.cpp</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>&nbsp;cat " } 
"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&gt;&gt;&nbsp;CbcModel.cpp</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>So, would something like this work?&nbsp; :)</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2></FONT></SPAN>&nbsp;</DIV>
<DIV dir=ltr align=left><SPAN class=659030019-16032007><FONT face="Courier New" 
size=2>Matt</FONT></SPAN></DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial color=#0000ff size=2></FONT>&nbsp;</DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B> coin-discuss-bounces@list.coin-or.org 
[mailto:coin-discuss-bounces@list.coin-or.org] <B>On Behalf Of </B>John J 
Forrest<BR><B>Sent:</B> Friday, March 16, 2007 2:10 PM<BR><B>To:</B> Discussions 
about open source software for Operations Research<BR><B>Subject:</B> Re: 
[Coin-discuss] Cbc branchAndBound<BR></FONT><BR></DIV>
<DIV></DIV>
<P>Of course there is also this <BR><BR>cbc -cpp 1 -solve<BR><BR>this generates 
user_driver.cpp which does pretty well everything (not sure if RINS got in 
yet).<BR><BR>John Forrest<BR><IMG height=16 
alt="Inactive hide details for Esben Mose Hansen <esben@ange.dk>" 
src="cid:659030019@16032007-1840" width=16 border=0>Esben Mose Hansen 
&lt;esben@ange.dk&gt;<BR><BR><BR>
<TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
  <TBODY>
  <TR vAlign=top>
    <TD 
    style="BACKGROUND-IMAGE: url(cid:2__=0ABBF833DFF0217C8f9e8a93df938@us.ibm.com); BACKGROUND-REPEAT: no-repeat" 
    width="40%">
      <UL>
        <UL>
          <UL>
            <UL><B><FONT size=2>Esben Mose Hansen 
              &lt;esben@ange.dk&gt;</FONT></B><FONT size=2> </FONT><BR><FONT 
              size=2>Sent by: coin-discuss-bounces@list.coin-or.org</FONT> 
              <P><FONT size=2>03/16/07 01:15 PM</FONT> 
              <TABLE border=1>
                <TBODY>
                <TR vAlign=top>
                  <TD width=168 bgColor=#ffffff>
                    <DIV align=center><FONT size=2>Please respond 
                    to<BR>Discussions about open source software for Operations 
                    Research 
                  &lt;coin-discuss@list.coin-or.org&gt;</FONT></DIV></TD></TR></TBODY></TABLE></P></UL></UL></UL></UL></TD>
    <TD width="60%">
      <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
        <TBODY>
        <TR vAlign=top>
          <TD width="1%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=58 border=0><BR>
            <DIV align=right><FONT size=2>To</FONT></DIV></TD>
          <TD width="100%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=1 border=0><BR><FONT 
            size=2>Discussions about open source software for Operations 
            Research &lt;coin-discuss@list.coin-or.org&gt;</FONT></TD></TR>
        <TR vAlign=top>
          <TD width="1%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=58 border=0><BR>
            <DIV align=right><FONT size=2>cc</FONT></DIV></TD>
          <TD width="100%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=1 border=0><BR></TD></TR>
        <TR vAlign=top>
          <TD width="1%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=58 border=0><BR>
            <DIV align=right><FONT size=2>Subject</FONT></DIV></TD>
          <TD width="100%"><IMG height=1 alt="" 
            src="cid:659030019@16032007-1847" width=1 border=0><BR><FONT 
            size=2>Re: [Coin-discuss] Cbc 
      branchAndBound</FONT></TD></TR></TBODY></TABLE>
      <TABLE cellSpacing=0 cellPadding=0 border=0>
        <TBODY>
        <TR vAlign=top>
          <TD width=58><IMG height=1 alt="" src="cid:659030019@16032007-1847" 
            width=1 border=0></TD>
          <TD width=336><IMG height=1 alt="" src="cid:659030019@16032007-1847" 
            width=1 border=0></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><BR><TT>On 
Thursday 15 March 2007 14:53:32 Matthew Galati wrote:<BR>&gt; Hi -- lots of 
related discussion on other threads. Solutions all seem to<BR>&gt; involve a 
re-design or new version of OSI.<BR>&gt;<BR>&gt; Can someone just answer this 
simple question?<BR>&gt; &nbsp; CbcModel cbc(*si);<BR>&gt; &nbsp; 
CbcStrategyDefault cbcStrategyDefault;<BR>&gt; &nbsp; 
cbc.setStrategy(cbcStrategyDefault);<BR>&gt; &nbsp; 
cbc.branchAndBound();<BR>&gt;<BR>&gt; Is this approximately equivalent to what 
is in CoinSolve.cpp? From<BR>&gt; experimentation, just running 
cbc.branchAndBound() without setting the<BR>&gt; strategy is a bad 
idea.<BR><BR>As John wrote, not really. What I did was look in the source code 
for cbc <BR>(especially cbcsolve()) and lift anything that looked 
useful.<BR><BR>No idea what that analyse() function is supposed to do. I have 
yet to find a <BR>problem for which it returns anything useful, though, so you 
can probably <BR>just skip that. Then skip anything about option handling and 
cut out look at <BR>the bit concerning branch and bound, and you will get down 
to the 100 lines <BR>or so that will get you a solver that works "like cbc". Of 
course, that code <BR>doesn't use stuff like the strategy, but I have no 
experience using that.<BR><BR>Essentially, you want to do 3 things:<BR>1. 
preprocess<BR>2. add cutgenerators<BR>3. add heuristics.<BR><BR>It is not too 
hard to see which one Cbc uses per default (which are most).<BR><BR>-- <BR>kind 
regards, 
Esben<BR>_______________________________________________<BR>Coin-discuss mailing 
list<BR>Coin-discuss@list.coin-or.org<BR></TT><TT><A 
href="http://list.coin-or.org/mailman/listinfo/coin-discuss">http://list.coin-or.org/mailman/listinfo/coin-discuss</A></TT><TT><BR></TT><BR></P></BODY></HTML>