GNU Linear Programming Kit
# GNU Linear Programming Kit

El Kit de Programación Lineal GNU (GLPK) es un paquete de software destinado para resolver a gran escala problemas de programación lineal (LP) , programación de enteros mixtos (MIP), y otros problemas relacionados. Es un conjunto de rutinas escritas en ANSI C y organizada en forma de un biblioteca, a la cual se le puede hacer referencia. El paquete forma parte del GNU Proyecto y se publica bajo la GNU Licencia Pública General.

Los problemas se pueden modelar en el lenguaje GNU MathProg (anteriormente conocido como GMPL) que comparte muchas partes de la sintaxis con AMPL y se resuelve con el solver independiente GLPSOL.

GLPK también puede utilizarse como una biblioteca C.

GLPK utiliza el método simplex revisado y el método de punto interior primal-dual para problemas no enteros y el algoritmo de ramificación y acotación junto con los cortes enteros mixtos de Gomory para problemas enteros (mixtos).

GLPK es compatible con la edición gratuita del sistema de modelación OptimJ.

Un proyecto independiente proporciona una interfaz basada en Java a GLPK (a través de JNI). Esto permite que las aplicaciones Java llamen a GLPK de una manera relativamente transparente.

## Historia

GLPK fue desarrollado por Andrew O. Makhorin (Андрей Олегович Махорин) del Instituto de Aviación del Moscú. La primera primera publicación fue en octubre del 2000.

* Versión 1.1.1 Contenía una biblioteca para un algoritmo simplex revisado y primal.
* Versión 2.0 Introdujo una implementación del método del punto interior primal-dual.
* Versión 2.2 Añadió el algoritmo de acotación y ramificación para resolver problemas de enteros mixtos.
* Versión 2.4 Añadió una primera implementación del lenguaje de modelación GLPK/L.
* Versión 4.0 Reemplazó GLPK/L por el lenguaje de modelación GNU MathProg , el cual es un subconjunto del lenguaje de modelación AMPL.
