John W. Chinneck
Systems and Computer Engineering
Carleton University
Ottawa, Canada
NEOS: The Network-Enabled Optimization System. An on-line system for submitting and solving various kinds of optimization problems, including LP, MIP, NLP, etc.
Wikipedia list of optimization software, some of which are free.
Optimization as an Internet Resource: paper in pdf format that includes numerous useful links to web resources for optimization.
AMPL online : Create AMPL files off-line, then up-load and solve them at this site. A variety of solvers can be selected, including MINOS, SNOPT, Lancelot and others. Limited to 300 variables and 300 constraints and 30 seconds of execution time.
AMPL: Student editions of the AMPL modelling system for various platforms. Demo-size editions of various commercial solvers are included in the download.
LINDO: Student editions of LP, NLP, and MILP solvers, plus the LINGO modelling language. Limited to 150 constraints and 300 variables. Windowed interface. The classic LINDO is easy to use and suitable for homework assignments. Look for it on the downloads page: a manual is also available there. Classic LINDO is not available for the Macintosh; Mac users should download LINGO, a system that includes a modelling language and associated solvers.
Maximal: Student edition of the Maximal Software modelling system (MPL) coupled with a student edition of the CPLEX LP/MILP solver. Windowed interface. Limited to 300 variables and 300 constraints.
COIN-OR: http://www.coin-or.org/projects/ has links to the CLP solver as well as many others for several classes of optimization problems.
QSOPT: http://www.isye.gatech.edu/~wcook/qsopt/
SOPLEX: http://soplex.zib.de/
GLPK: http://www.gnu.org/software/glpk/. GLPK is also available embedded in Octave, a free and open source MATLAB clone, at http://www.gnu.org/software/octave/.
CBC: http://www.coin-or.org/projects/. CBC is a MIP framework that works with the CLP LP solver.
GLPK: http://www.gnu.org/software/glpk/glpk.html. MIP capability is built into GLPK. GLPK is also available embedded in Octave, a free and open source MATLAB clone, at http://www.gnu.org/software/octave/.
LP_SOLVE: http://lpsolve.sourceforge.net/. MIP capability is built into the LP_SOLVE.
MINTO: http://coral.ie.lehigh.edu/~minto/. MINTO is a MIP framework which requires that a separate LP solver be attached.
SCIP: http://scip.zib.de/. SCIP is a MIP framework which requires that a separate LP solver be attached. SCIP also incorporates many concepts from constraint programming.
SYMPHONY: http://www.coin-or.org/projects/SYMPHONY.xml. SYMPHONY is a MIP framework that works with the CLP LP solver.
See Hans Mittelmann's benchmarks comparing commercial and non-commercial solvers in many categories to find the one that will work best for you.
Practical Optimization: A Gentle Introduction: Draft chapters from textbook. Covers linear programming and a bit of networks.
Advice on formulating linear programs by using building blocks called formulettes.
The linear programming FAQ page. Includes pointers to software, test models, etc.
The nonlinear programming FAQ page. Includes pointers to software, test models, etc.
The glossary of mathematical programming terms, many not found in standard dictionaries of mathematics.
Spreadsheet Optimization: By Frontline Systems, which markets add-in solvers for Microsoft Excel.
Optimization Modelling: By Maximal Software, which markets the MPL language and attached solvers.
JE Beasley's Tutorial questions and solutions. See also Beasley's past exams without solutions.
Bob Vanderbei's online LP book and exercises.
Carnegie-Mellon course notes and problem sets.
MINOS(IIS): A modified version of MINOS which can solve LPs, and which includes special routines for analyzing infeasible LPs. Limited to 300 constraints and 300 variables. MPS file input only, which is not as convenient as a modelling language.
MProbe: for analyzing nonlinear functions of high dimension, e.g. for convexity and concavity, range of function values, constraint effectiveness, etc.
Last revised: September 14, 2016.