GNU Linear Programming Kit

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.
Problems can be modeled in the language GNU MathProg (previously known as GMPL) which shares many parts of the syntax with AMPL and solved with standalone solver GLPSOL.
GLPK can also be used as a C library.
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.
GLPK is supported in the free edition of the OptimJ modeling system
An independent project provides a Java-based interface to GLPK (via JNI). This allows Java applications to call out to GLPK in a relatively transparent manner.
History.
GLPK was developed by Andrew O. Makhorin (Андрей Олегович Махорин) of the Moscow Aviation Institute. The first public release was in October 2000.