Scippy

ZIMPL

Zuse Institut Mathematical Programming Language

About

Zimpl is a little language to translate the mathematical model of a problem into a linear or nonlinear (mixed-) integer mathematical program expressed in .lp or .mps file format which can be read and (hopefully) solved by a LP or MIP solver.

News

Sep/2024 Version 3.6.2 is released as a part of the SCIP Optimization Suite 9.1.1.
Jun/2024 Version 3.6.1 is released as a part of the SCIP Optimization Suite 9.1.0.
May/2024 Version 3.6.0 is released as a part of the SCIP Optimization Suite 9.0.1.
6/Oct/2022 Version 3.5.3 is released as a part of the SCIP Optimization Suite 8.0.2.
Jun/2022 Version 3.5.2 is released as a part of the SCIP Optimization Suite 8.0.1.
28/Jan/2022 Version 3.5.1 is released as a part of the SCIP Optimization Suite 8.0.0.
15/Dec/2020 Beta Version 3.5.0 is released
23/Jun/2020 Version 3.4.0 is released as a part of the SCIP Optimization Suite 7.0.1.
30/Mar/2020 Version 3.3.9 is released as a part of the SCIP Optimization Suite 7.0.0.
10/Jul/2019 Version 3.3.8 is released as a part of the SCIP Optimization Suite 6.0.2.
28/Jun/2019 Beta of Version 3.3.8 is released
10/Jan/2019 Version 3.3.7 is released as a part of the SCIP Optimization Suite 6.0.1.
02/Jul/2018 Version 3.3.6 is released as a part of the SCIP Optimization Suite 6.0.0.
21/Dec/2017 Version 3.3.5 is released as a part of the SCIP Optimization Suite 5.0.0.
09/Mar/2017 Version 3.3.4 released. Release Notes
01/Jul/2015 Version 3.3.3 released. Release Notes
27/Feb/2014 Version 3.3.2 released. Release Notes
25/Feb/2014 Website relaunched.

License

ZIMPL is distributed under the GNU LGPL License. For more information see here.

Any publication for which ZIMPL is used must include an acknowledgment and a reference to the article:

Thorsten Koch,
Rapid Mathematical Programming,
Berlin 2004.

Here is the corresponding bibtex entry.

Platforms

Zimpl is a command line program written in plain C and released under GNU LGPL. It has been tested to compile under Linux/Intel, Solaris, Tru64, HPUX, IRIX, AIX and MacOS-X. Probably it will compile and run wherever GMP is available. Zimpl has even been successfully compiled for Windows using MinGW and the GCC as a cross compiler and also directly using VisualStudio 2010.

Contact

For questions or reporting bugs (even better: a working fix with a runnable example .zpl file), please write to Thorsten Koch.

Download

The latest version of ZIMPL is included in the SCIP Optimization Suite. Download earlier versions of ZIMPL here. Differences to the older versions are described in the Changelog.
Thanks to Mathias Kinder and Thomas Sejr Jensen there is Zimpl syntax highlighting for Emacs and Kate available.
Thanks to Hendrik Lüthen there is also Zimpl syntax highlighting for GtkSourceView (gEdit, medit, etc.).
Thanks to Parham Alvani and Bahador Bakhshi, there is Zimpl syntax highlighting for vim available from Parham's GitHub repository.

If you use conda, you can install zimpl using the conda packages.

If you find Zimpl useful for your academic work, please cite my PhD thesis.
Here is the corresponding BibTeX entry. Thanks.

Solver

You need a solver for the problems generated by Zimpl.

SCIP is a solver for mixed integer programs which can be linked directly with Zimpl.
lp_solve is another solver which has an experimental integration of Zimpl.
SoPlex is a good simplex solver for pure linear programs (LP).

For other available solvers, see the Decision Tree for Optimization Software / LP-Software.

Links

Zimpl related:

TU Berlin, Lecture on Linear Optimization
TU Darmstadt, Lecture on Discrete Optimization
University Bayreuth, Lecture on Linear Optimization
Matheon, Combinatorial Optimization at Work

The commercial ones:

AIMMS, AMPL, FICO XPRESS, GAMS, Gurobi, IBM ILOG CPLEX, LINDO, MOSEK

Interesting sites:

Decision Tree for Optimization Software
Mathematical Programming Glossary©
NEOS Server for Optimization
INFORMS OR/MS Resource Collection

Imprint and privacy statement

© 2024 by Zuse Institute Berlin (ZIB). For the imprint and privacy statement we refer to the Imprint of ZIB.