Scippy

SCIP

Solving Constraint Integer Programs

interfaces.dxy
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* 2002-2014 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not email to scip@zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file interfaces.dxy
17  * @brief interface documentation page
18  * @author Stefan Heinz
19  */
20 
21 /*--+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
22 
23 /**@page INTERFACES Interfaces
24  *
25  * There are several ways of accessing the \SCIP Optimization Suite from other software packages or programming
26  * platforms.
27  *
28  *
29  * @section FILEFORMATS File formats
30  *
31  * The easiest way to load a problem into \SCIP is via an input file, given in a format that \SCIP can parse directly,
32  * see SHELL. \SCIP 3.0 is capable of reading more than ten different file formats, including formats for nonlinear
33  * problems and constraint programs. This gives researchers from different communities an easy, first access to the
34  * \SCIP Optimization Suite. See \ref AVAILABLEFORMATS "List of readable file formats".
35  *
36  *
37  * @section CPLUSPLUS C++ wrapper
38  *
39  * Since SCIP is written in C, its callable library can be directly accessed from C++. If a user wants to program own
40  * plugins in C++, there are wrapper classes for all different types of plugins available in the <code>src/objscip</code>
41  * directory of the \SCIP standard distribution. See also <a href=annotated.shtml>Wrapper Classes</a>.
42  *
43  *
44  * @section MODELLING Modeling languages and Matlab interface
45  *
46  * A natural way of formulating an optimization problem is to use a modeling language. Besides ZIMPL there are several
47  * other modeling tools with a direct interface to \SCIP. These include <a href="http://dynadec.com/">Comet</a>, a
48  * modeling language for constraint programming, <a href="http://www.ampl.com/">AMPL</a> and <a
49  * href="http://www.gams.com/">GAMS</a>, which are well-suited for modeling mixed-integer linear and nonlinear
50  * optimization problems, and <a href="https://projects.coin-or.org/Cmpl">CMPL</a> for mixed-integer linear problems.
51  * The AMPL, GAMS, and ZIMPL interfaces are included in the SCIP distribution, the GAMS interface originated <a
52  * href="https://projects.coin-or.org/GAMSlinks">here</a>.
53  *
54  * With \SCIP 3.0, a first beta version of a functional MATLAB interface has been released. It supports solving MIPs
55  * and LPs defined by Matlab's matrix and vector types. The <a href="http://www.i2c2.aut.ac.nz/Wiki/OPTI/index.php">OPTI
56  * project</a> by Jonathan Currie provides an external MATLAB interface for the \SCIP Optimization Suite. On top of this,
57  * <a href="http://users.isy.liu.se/johanl/yalmip/pmwiki.php?n=Main.HomePage">YALMIP</a> by Johan L&ouml;fberg provides a
58  * free modeling language.
59  *
60  * @section OTHER Python and Java interfaces
61  *
62  * With \SCIP 3.1, beta versions of a Java native interface and a Python interface have been released.
63  * There are also several third-party python interfaces to the \SCIP Optimization Suite, e.g., <a
64  * href="http://numberjack.ucc.ie/">NUMBERJACK</a> and <a
65  * href="http://code.google.com/p/python-zibopt/">python-zibopt</a>. <a href="http://numberjack.ucc.ie/">NUMBERJACK</a>
66  * is a constraint programming platform implemented in python. It supports a variety of different solvers, one of them
67  * being the \SCIP Optimization Suite. <a href="http://code.google.com/p/python-zibopt/">python-zibopt</a> is developed
68  * and maintained by Ryan J. O'Neil and is a python extension of the \SCIP Optimization Suite. <a
69  * href="http://picos.zib.de/">PICOS</a> is a python interface for conic optimization, provided by Guillaume Sagnol.
70  *
71  *
72  */
73 
74 
75