GNU Linear Programming Kit
| GNU Linear Programming Kit | |
|---|---|
| Original author | Andrew O. Makhorin |
| Developer | GNU Project |
| Repository |
|
| Written in | C |
| Engine | |
| Operating system | Cross-platform |
| Available in | English |
| License | GPLv3 |
| Website | www |
The GNU Linear Programming Kit (GLPK) is a software package intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems. It is a set of routines written in ANSI C and organized in the form of a callable library. The package is part of the GNU Project and is released under the GNU General Public License.
GLPK uses the revised simplex method and the primal-dual interior point method for non-integer problems and the branch-and-bound algorithm together with Gomory's mixed integer cuts for (mixed) integer problems.
History
[edit | edit source]GLPK was developed by Andrew O. Makhorin (Андрей Олегович Махорин) of the Moscow Aviation Institute. The first public release was in October 2000.
- Version 1.1.1 contained a library for a revised primal and dual simplex algorithm.
- Version 2.0 introduced an implementation of the primal-dual interior point method.
- Version 2.2 added branch and bound solving of mixed integer problems.
- Version 2.4 added a first implementation of the GLPK/L modeling language.
- Version 4.0 replaced GLPK/L by the GNU MathProg modeling language, which is a subset of the AMPL modeling language.
Interfaces and wrappers
[edit | edit source]Since version 4.0, GLPK problems can be modeled using GNU MathProg (GMPL), a subset of the AMPL modeling language used only by GLPK. However, GLPK is most commonly called from other programming languages. Wrappers exist for:
Further reading
[edit | edit source]- Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value). The book uses GLPK exclusively and contains numerous examples.
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
External links
[edit | edit source]Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').