Changes between Version 42 and Version 43 of WikiStart


Ignore:
Timestamp:
Mar 15, 2015 11:25:20 AM (4 years ago)
Author:
tkr
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v42 v43  
    1 = COIN Binary Distribution Project =
     1= The COIN-OR Optimization Suite =
    22
    33== Overview ==
    44
    5 The goal of this project is to provide sets of libraries and executables precompiled and tested on the most popular platforms for those users who do not need to look at or modify the source code of the COIN projects themselves. Currently supported platforms are
    6  * Microsoft Windows with the Visual C++ compiler, versions 8-11 (see the [https://projects.coin-or.org/MSVisualStudio MSVisualStudio wiki] for more details)
     5The goal of this project is to provide support for build, test, and installation of a coherent suite of interoperable solvers and libraries on the most popular computing platforms. We aim to provide methods for users to easily install pre-built and well-tested binaries on all platforms. Currently supported platforms are
     6 * Microsoft Windows with the Visual C++ compiler, versions 9-13 (see the [https://projects.coin-or.org/MSVisualStudio MSVisualStudio wiki] for more details)
    77   * MSVC++ IDE
    88   * The {{{cl}}} compiler from CYGWIN/MinGW (with the autotools)
    99 * Microsoft Windows with the g++ 4 compiler (CYGWIN/MinGW)
    10  * Linux with the g++ 4 compiler on ix86 architectures. Tarballs, [http://packages.debian.org/search?suite=default&section=all&arch=any&searchon=sourcenames&keywords=coinor .deb] and [BuildingCoinRpms .rpm] packages and [CoinYum a Yum repository] are available.
    11  * Mac OS X with either the g++ 4 compiler or the clang compiler.
    12 The binaries are built using the automatic build and test scripts of the [http://www.coin-or.org/projects/TestTools.xml COIN TestTools] project.
     10 * Linux with the g++ 4 compiler on ix86 architectures.
     11 * Mac OS X with either the g++ 4 compiler (installed with [http://brew.sh Homebrew]) or the clang compiler.
     12At the present time, the entire suite builds out of the box on all of these platforms. The current stable version of the suite is 1.8. A short course on building and using the suite is available [http://coral.ie.lehigh.edu/~ted/teaching/coin-or here].
     13
     14== Projects ==
     15
     16Projects currently included in The COIN-OR Optimization Suite are
     17 * [http://www.coin-or.org/projects/CoinUtils.xml CoinUtils] (COIN Utilities)
     18 * [http://www.coin-or.org/projects/Osi.xml Osi] (Open Solver Interface) with interfaces to
     19   * [http://www.coin-or.org/projects/Clp.xml Clp]
     20   * [http://www.coin-or.org/projects/Cbc.xml Cbc]
     21   * [http://www.coin-or.org/projects/SYMPHONY.xml SYMPHONY]
     22   * [http://www.coin-or.org/projects/Vol.xml Vol]
     23 * [http://www.coin-or.org/projects/Clp.xml Clp] (COIN LP Solver)
     24 * [http://www.coin-or.org/projects/DyLP.xml DyLP]
     25 * [http://www.coin-or.org/projects/FlopC++.xml FlopC++]
     26 * [http://www.coin-or.org/projects/Vol.xml Vol] (Volume Algorithm)
     27 * [http://www.coin-or.org/projects/Cgl.xml Cgl] (Cut Generation Library)
     28 * [http://www.coin-or.org/projects/Cbc.xml Cbc] (COIN Branch and Cut)
     29 * [http://www.coin-or.org/projects/SYMPHONY.xml SYMPHONY] (MILP Solver Framework)
     30 * [http://www.coin-or.org/projects/Smi.xml Smi] (Stochastic Modeling Interface)
     31 * [http://www.coin-or.org/projects/CoinMP.xml CoinMP]
     32 * [http://www.coin-or.org/projects/Bcp.xml Bcp] (Branch, Cut, and Price Framework)
     33 * [http://www.coin-or.org/projects/CHiPPS.xml CHiPPS] (COIN High Performance Parallel Search Framework: Alps/BiCePS/Blis)
     34 * [http://www.coin-or.org/projects/Dip.xml DIP] (Framework for Decomposition in Integer Programming)
     35 * [http://www.coin-or.org/projects/Ipopt.xml Ipopt]
     36 * [http://www.coin-or.org/projects/Bonmin.xml Bonmin]
     37 * [http://www.coin-or.org/projects/Couenne.xml Couenne]
     38 * [http://www.coin-or.org/projects/CppAD.xml CppAD]
     39 * [http://www.coin-or.org/projects/OS.xml OS] (Optimization Services)
    1340
    1441== Downloading ==
    1542
    16 To download binaries, see [http://www.coin-or.org/download/binary/]
     43To install binaries
     44  * For Windows users, get the installer for the latest version [http://www.coin-or.org/download/binary/OptimizationSuite here].
     45  * For Linux users, most solvers can be installed using the standard package manager on both [https://packages.debian.org/search?suite=default&section=all&arch=any&searchon=names&keywords=coinor Debian] and [https://apps.fedoraproject.org/packages/s/coin-or Fedora/Redhat].
     46  * For Linux, there are also completely static binaries that should work on most Linux distributions [http://www.coin-or.org/download/binary/OptimizationSuite here].
     47  * For OS X, we are working on developing [https://brew.sh Homebrew] recipes for all projects, but for now, it is best to build yourself, although you can try the binaries [http://www.coin-or.org/download/binary/OptimizationSuite here]. It is not possible to build completely statically on OS X, so they may not work.
    1748
    18 For help on the naming convention of binary archives, see ArchiveNamingConventions.
     49== Building from Source ==
    1950
    20 For installation help, see InstallationInstructions.
    21 
    22 For a strawman proposal for submitting a project to be part of this binary distribution project, see BinaryDistributionRequirements.
    23 
    24 For the current package management process for COIN projects, see BuildingCoinRpms and CoinDeb.
    25 
    26 == The !CoinAll Distribution ==
    27 
    28 This part of the !CoinBinary project is an effort to develop a distribution consisting of a set of consistent, interoperable binaries built from the source code of as large a subset of COIN-OR projects as possible. The idea is to allow a user who wants binaries for a large number of COIN projects and wants to ensure that they will all interoperate to be able to download them all at once in a single distribution. Projects currently included in !CoinAll are
    29  * [http://www.coin-or.org/projects/Bcp.xml Branch, Cut, and Price Framework]
    30  * [http://www.coin-or.org/projects/BuildTools.xml COIN Build Tools]
    31  * [http://www.coin-or.org/projects/CHiPPS.xml COIN High Performance Parallel Search Framework] (Alps/BiCePS/Blis)
    32  * [http://www.coin-or.org/projects/Cbc.xml COIN Branch and Cut]
    33  * [http://www.coin-or.org/projects/Cgl.xml Cut Generation Library]
    34  * [http://www.coin-or.org/projects/Clp.xml COIN LP Solver]
    35  * [http://www.coin-or.org/projects/CoinUtils.xml COIN Utilities]
    36  * [http://www.coin-or.org/projects/DyLP.xml DyLP]
    37  * [http://www.coin-or.org/projects/FlopC++.xml FlopC++]
    38  * [http://www.coin-or.org/projects/Ipopt.xml Ipopt]
    39  * [http://www.coin-or.org/projects/Osi.xml Open Solver Interface] with interfaces to
    40    * [http://www.coin-or.org/projects/Clp.xml Clp]
    41    * [http://www.coin-or.org/projects/Cbc.xml Cbc]
    42    * [http://www.coin-or.org/projects/SYMPHONY.xml SYMPHONY] MILP Solver Framework
    43    * [http://www.coin-or.org/projects/Vol.xml Volume Algorithm]
    44  * [http://www.coin-or.org/projects/OS.xml Optimization Services]
    45  * [http://www.coin-or.org/projects/Smi.xml Stochastic Modeling Interface]
    46  * [http://www.coin-or.org/projects/SYMPHONY.xml SYMPHONY] MILP Solver Framework
    47  * [http://www.coin-or.org/projects/Vol.xml Volume Algorithm]
    48 Anyone can download and build the !CoinAll distribution for themselves on any platform. The repository svn address is https://projects.coin-or.org/svn/CoinBinary/CoinAll/ and it is organized like the repositories of most COIN projects. There are {{{trunk/}}}, {{{stable/}}}, and {{{releases/}}} directories (please see the [https://projects.coin-or.org/BuildTools BuildTools wiki] for more information on the directory structure of COIN projects). Each directory contains configuration scripts for downloading and building the set of COIN projects listed above. For example, to build the latest release of the !CoinAll project consisting of release versions of all the above in a Unix-like environment, once would execute
     51It should be straightforward build the COIN-OR Optimization Suite on any platform. You can check out the code with subversion or obtain source tarballs of previous releases [http://www.coin-or.org/download/source here]. To build in a Unix-like environment, execute
    4952{{{
    50 svn checkout https://projects.coin-or.org/svn/CoinBinary/CoinAll/releases/1.1.0 CoinAll-1.1.0
    51 cd CoinAll-1.1.0
     53svn checkout https://projects.coin-or.org/svn/CoinBinary/OptimizationSuite/stable/1.8 COIN-1.8
     54cd COIN-1.8
    5255./configure
    5356make
    5457make install
    5558}}}
    56 The current stable version of !CoinAll is [https://projects.coin-or.org/CoinBinary/browser/CoinAll/stable/1.1 1.1] and the current release is [https://projects.coin-or.org/CoinBinary/CoinAll/releases/1.1.0 1.1.0].
    5759
    58 == Using the !CoinAll Binaries ==
     60== Using the Optimization Suite ==
    5961
    60 It is possible to use this distribution "out-of-the-box" to solve linear and integer programs. Nothing needs to be compiled or linked. In this distribution there is a bin directory that contains the executable clp (or clp.exe for Windows) that can be used to solve linear and integer programs. Here is a simple example of this program:
     62A full short course on using the suite is available [http://coral.ie.lehigh.edu/~ted/teaching/coin-or here] and is the best place to start. Templates for building applications and other small examples are available [https://projects.coin-or.org/CoinBazaar/wiki/Projects/ApplicationTemplates here]. The [https://projects.coin-or.org/CoinEasy CoinEasy] projects is a nascent effort to provide a basic introduction to the suite. Additional help on understanding the source and building
    6163
    62 '''clp /path_to_test_problem/test_problem.mps -primalsimplex'''
     64== Documentation and Support ==
    6365
    64 In order to get more detail on inputs to clp, execute clp and then type in ?.
    65 
    66 This distribution also contains key COIN libraries and it is possible to write a main method that links with the libraries. A very simple example of how to use the libraries is in the attached file '''examples.zip'''  posted below.  When uncompressed you will find four files in an examples directory. They are '''Makefile.Osiexample,'''  '''NMakefile.Osiexample,''' '''Osiexample.cpp,''' and '''p0033.mps.''' The file Osiexample.cpp contains the main method. This main method is very trivial and creates an Osi Solver Interface (in this case clp), reads a linear programming instance in MPS format from the command line and solves the linear program. The result is written to standard out. Although simple, it is a good illustration of using COIN libraries.
    67 
    68 In order to build this executable, called Osiexample, use one of the two makefiles. The makefile Makefile.Osiexample is for Linux or Mac OS X users. It will work with GNU Make. Simply type in
    69 
    70 make -f Makefile.Osiexample
    71 
    72 It is assumed that your environment variable LD_LIBRARY_PATH (or DYLD_LIBRARY_PATH for Mac OS X) points to the Coin libraries contained in this distribution. Also, you should put the Examples directory in the root directory of the distribution.
    73 
    74 '''Windows Users:''' if you are in a Windows environment use the makefile NMakefile.Osiexample. This makefile will work with the nmake utility that is distributed with Microsoft Visual Studio. Type in at the command line
    75 
    76 nmake -f NMakefile.Osiexample.
    77 
    78 This makefile will also work with MINGW. If you have MINGW use the GNU make utility that comes with MINGW. No changes are needed for NMakefile. It will work with both nmake and make in MINGW.
    79 
    80 For all users, Linux, Windows, Mac OS X, the appropriate makefile will create an executable Osiexample (or Osiexample.exe for Windows) in the examples. In order to test the executable write
    81 
    82 Osiexample p0033.mps
    83 
    84 == Installers ==
    85 
    86 We are working on making installers available for the supported platforms. For more about this effort, please visit the CoinInstallers page.
    87 
    88 Happy computing from the COIN Binary Distribution Project team.
    89 
    90 JP Fasano
    91 
    92 Kipp Martin
    93 
    94 Ted Ralphs
    95 
    96 Leo Lopes
    97 
    98 Aramian Wasialek
    99 
     66 * Doxygen documentation for the suite is [http://www.coin-or.org/Doxygen/OptimizationSuite here] (please let us know if this link is broken).
     67 * Additional help and support may be available through the support mechanisms individual projects that make up the suite (see links above).
     68 * If you are not sure where to run, feel free to post a [https://projects.coin-or.org/CoinBinary/newticket ticket] here or send a message to the [http://list.coin-or.org/mailman/listinfo/coin-discuss coin-discuss] mailing list.