Changeset 1691 for stable/2.7/Cbc


Ignore:
Timestamp:
Jul 18, 2011 10:57:04 PM (8 years ago)
Author:
tkr
Message:

Mergin r1690 from trunk

Location:
stable/2.7
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • stable/2.7

    • Property svn:mergeinfo changed
      /trunkmerged: 1690
  • stable/2.7/Cbc

  • stable/2.7/Cbc/README

    r353 r1691  
    1 NOTE: The information in this file might not yet include the changes introduced with the switch to the autotools.
     1CBC README
     2==========
    23
    3 To build Cbc see INSTALL file
     4Welcome to the README for the COIN Branch and Cut Solver (CBC). CBC is
     5distributed under the Eclipse Public License and is freely redistributable.
     6All source code and documentation is Copyright IBM and others. This README may
     7be redistributed freely.
    48
    5 To use Cbc you need the Cbc, Cgl, Coin and Osi libraries.  You
    6 will probably need Clp as well.
     9DOCUMENTATION
     10=============
    711
    8 If you are using Clp as your solver then you can make the unitTest and standalone executable by doing
     12For a quick start guide, please see the INSTALL file in this distribution. A (somehwat outdated) user's manual is available here:
    913
    10 make solve in this directory.  This creates an executable solve.
     14http://www.coin-or.org/Cbc
    1115
    12 solve takes various options - try solve and then ? to get some idea of what you can do.
    13 solve file will do branch and bound if file is integer mps file and will do dual if non-integer mps file
    14 options start with - (although the code will also try without -) e.g.
     16More up-to-date automatically generated documentation of the source code can
     17be found here:
    1518
    16 solve file -cuts root -solve will import file and do branch and bound with cuts only at root
     19http://www.coin-or.org/Doxygen/Cbc/
    1720
    18 - by itself goes to interactive mode.
     21Further information can be found here:
    1922
    20 If you wish to use the Cbc solver from AMPL there is a bit of work involved.  You
    21 will need to uncomment COIN_ampl in Makefiles/makefile.location - and also
    22 download the ampl glue code - see Makefiles/Makefile.location for http.  Then solve
    23 will assume it is being called from AMPL if the first two arguments are xxx.nl -AMPL.
    24 Of course "solve" is not a good name (cbc is much better but already used) so copy
    25 "solve" to "cbc" in ampl accessible path.
    26 Options may be set by e.g. option cbc_options "cuts=off log=0"
    27 No keywords are recognized by ampl parsing so above format should be used.
    28 All options are as found by "cbc(solve) " and then ?
    29 Current ugliness is that ampl glue code assumes "=" (on undefined keywords) so to maximize you
    30 would have to say "maximize=".  I will add to AMPL keywords if this interface gets much use.
     23http://projects.coin-or.org/Cbc
    3124
    32 If you are not using Clp then fewer options are available -
    33 make the unitTest and standalone executable by doing
     25WHAT'S NEW
     26==========
    3427
    35 make unitTest in this directory.  This creates an executable cbc.
     28Release 2.7.0:
    3629
    37 Running cbc gives you some hints.  Just do
     301. License has been changed to the EPL.
    3831
    39 cbc -
    40  
    41 and then try ? or setting various stuff.
     322. Support for MSVC++ version 10 added.
    4233
    43 On Linux cbc can do file completion and line editing. 
     343. Support for BuildTools version 0.7 to incorporate recent enhancements,
     35including proper library versioning in Linux, prohibiting installation of
     36private headers, etc.
    4437
    45 There are samples in ./Samples.  Use make DRIVER=xxxxxx where xxxxxx.cpp is driver file to
    46 create an executable - testit.
     384. Updated externals to new stable versions of dependent projects.
    4739
    48 The two simplest samples are:
     405. Improvements to heuristics.
    4941
    50 sample.cpp  This is a simple program to read an mps file.and solve the
    51                 integer problem.
     426. New options for cut generation.
    5243
    53 sample2.cpp.  This is the benchmark driver for the competition.  It overrides
    54                 the default branching methods and adds a (mildly useless)
    55                 heuristic.  It is intended to show you how to add your
    56                 own methods.  See CbcCompareUser.hpp for how to modify
    57                 choice of node from tree.  See CbcBranchUser.?pp for
    58                 how to modify which variable is chosen at a node.  For
    59                 more complex stuff such as new types of branches see
    60                 CbcBranchBase and CbcBranchActual in directory Cbc.
    61                 To see how to add heuristics see CbcHeuristicUser.?pp.
     447. Improved reporting of results.
    6245
    63                 To add cut generators - define them as in Cgl and then just
    64                 add them as in sample2.cpp
     468. Improvements to documentation.
    6547
    66                 The script "runtimes" in Samples directory will
    67                 run some or all of test set.  The version checked in
    68                 does some - just take off # to run.  An optional time
    69                 in minutes can be passed.
    70 
    71 
    72 
     489. Minor bug fixes.
Note: See TracChangeset for help on using the changeset viewer.