GNU Linear Programming Kit

Software package


title: "GNU Linear Programming Kit" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["gnu-project-software", "mathematical-optimization-software", "free-mathematics-software", "free-software-programmed-in-c", "mathematics-software-for-linux"] description: "Software package" topic_path: "science/mathematics" source: "https://en.wikipedia.org/wiki/GNU_Linear_Programming_Kit" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Software package ::

::data[format=table title="Infobox software"]

FieldValue
nameGNU Linear Programming Kit
authorAndrew O. Makhorin
developerGNU Project
latest release version
latest release date
programming languageC
operating systemCross-platform
languageEnglish
licenseGPLv3
website
::

| name = GNU Linear Programming Kit | logo = | screenshot = | caption = | author = Andrew O. Makhorin | developer = GNU Project | released = | latest release version = | latest release date = | latest preview version = | latest preview date = | programming language = C | operating system = Cross-platform | language = English | genre = | license = GPLv3 | website =

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

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

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:

References

References

  1. (2023-01-16). "GLPK.jl". JuMP-dev.
  2. (2023-02-04). "jump-dev/JuMP.jl". JuMP-dev.
  3. "GLPK for Java – About".

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

gnu-project-softwaremathematical-optimization-softwarefree-mathematics-softwarefree-software-programmed-in-cmathematics-software-for-linux