source: trunk/README.md @ 2425

Last change on this file since 2425 was 2425, checked in by stefan, 4 months ago

remove misplaced link to coin-or.org

  • Property svn:eol-style set to native
File size: 3.4 KB
Line 
1# CLP
2
3Clp (*C*oin-or *l*inear *p*rogramming) is an open-source linear programming solver.
4It is primarily meant to be used as a callable library, but a basic, stand-alone executable version is also available.
5It is designed to find solutions of mathematical optimization problems of the form
6
7minimize   c'x
8such that  lhs ≤ Ax ≤ rhs
9and        lb ≤ x ≤ ub
10
11
12CLP includes primal and dual Simplex solvers.
13Both dual and primal algorithms can use matrix storage methods provided by the user (0-1 and network matrices are already supported in addition to the default sparse matrix).
14The dual algorithm has Dantzig and Steepest edge row pivot choices; new ones may be provided by the user.
15The same is true for the column pivot choice of the primal algorithm.
16The primal can also use a non linear cost which should work for piecewise linear convex functions.
17CLP also includes a barrier method for solving LPs.
18
19
20Clp is written in C++ and is released as open source code under the [Eclipse Public License (EPL)](http://www.opensource.org/licenses/eclipse-1.0).
21It is available from the [COIN-OR initiative](http://www.coin-or.org/).
22The code is written primarily by John J. Forrest, now retired from IBM Research.
23The project is currently managed by John Forrest, Lou Hafer, [Julian Hall](https://www.maths.ed.ac.uk/hall/), and Matthew Saltzman.
24
25The Clp website is https://github.com/coin-or/Clp.
26
27Clp is available in [Debian](http://packages.debian.org/search?searchon=sourcenames&keywords=clp) and [Ubuntu](https://launchpad.net/ubuntu/+source/clp).
28
29
30## Getting Started using CoinBrew
31
32To build Clp from source, obtain the `coinbrew` script from
33https://coin-or.github.io/coinbrew/
34and run
35
36
37    /path/to/coinbrew fetch --mainProj=Clp
38    /path/to/coinbrew build --mainProj=Clp --test
39    /path/to/coinbrew install --mainProj=Clp
40
41
42The `coinbrew` script will fetch [these](Dependencies) additional projects.
43
44
45## Getting Started without CoinBrew (Expert users)
46
47 0. Install [these Dependencies](Dependencies)
48 1. Obtain the source code, e.g., from https://github.com/coin-or/Clp
49 2. Run `./configure -C` to generate makefiles
50 3. Run `make` to build the CoinUtils library
51 4. Run `make test` to build and run the CoinUtils unit test program
52 5. Run `make install` to install library and header files.
53
54
55## Doxygen Documentation
56
57If you have `Doxygen` available, you can build a HTML documentation by typing
58
59 `make doxydoc`
60
61in the build directory.
62If Clp was build via `coinbrew`, then the build directory is `./build/Clp`.
63The doxygen documentation main file is found at `./doxydoc/html/index.html` in the build directory.
64
65If `Doxygen` is not available, you can use also use [this link](http://www.coin-or.org/Doxygen/Clp).
66
67## Project Links
68
69Help:
70 * [mailing list](http://list.coin-or.org/mailman/listinfo/clp)
71 * [Report a bug](https://github.com/coin-or/Clp/issues/new)
72 
73Documentation:
74 * [Doxygen-generated html documentation](http://www.coin-or.org/Doxygen/Clp)
75 * Source code [examples](Clp/examples)
76 * [User's Guide](https://coin-or.github.io/Clp) (from 2004)
77
78Interfaces:
79 * [Matlab Interface + Windows x86 & x64 Interface Binaries (OPTI Toolbox)](https://www.inverseproblem.co.nz/OPTI/)
80 * [Julia interface](https://github.com/JuliaOpt/Clp.jl)
81 * [R and CLP - a quick start](https://cran.r-project.org/web/packages/clpAPI/vignettes/clpAPI.pdf)
82 * [Java and CLP - performs well](http://orinanobworld.blogspot.co.uk/2016/06/using-clp-with-java.html)
Note: See TracBrowser for help on using the repository browser.