Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Linear programming
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Solvers and scripting (programming) languages == '''[[Permissive free software licence|Permissive]] licenses:''' {| class="wikitable" |- !Name !License !Brief info |- | [[Gekko (optimization software)|Gekko]]||[[MIT License]]||Open-source library for solving large-scale LP, [[Quadratic programming|QP]], [[Quadratically constrained quadratic program|QCQP]], [[Nonlinear programming|NLP]], and [[Mixed integer programming|MIP]] optimization |- | [[GLOP]]||[[Apache License|Apache v2]]||Google's open-source linear programming solver |- | [[JuMP]]||[[MPL License]]||Open-source modeling language with solvers for large-scale LP, [[Quadratic programming|QP]], [[Quadratically constrained quadratic program|QCQP]], [[Semidefinite programming|SDP]], [[Second-order cone programming|SOCP]], [[Nonlinear programming|NLP]], and [[Mixed integer programming|MIP]] optimization |- | [[Pyomo]]||[[BSD licenses|BSD]]||An open-source modeling language for large-scale linear, mixed integer and nonlinear optimization |- | [[SCIP (optimization software)|SCIP]]||[[Apache License|Apache v2]]||A general-purpose constraint integer programming solver with an emphasis on MIP. Compatible with Zimpl modelling language. |- | [[SuanShu numerical library|SuanShu]]||[[Apache License|Apache v2]]||An open-source suite of optimization algorithms to solve LP, [[Quadratic programming|QP]], [[SOCP]], [[Semidefinite programming|SDP]], [[Sequential quadratic programming|SQP]] in Java |} '''[[Copyleft|Copyleft (reciprocal)]] licenses:''' {| class="wikitable" |- !Name !License !Brief info |- |[[ALGLIB]]||GPL 2+||An LP solver from ALGLIB project (C++, C#, Python) |- |[[Cassowary constraint solver]]||LGPL||An incremental constraint solving toolkit that efficiently solves systems of linear equalities and inequalities |- |[[COIN-OR CLP|CLP]]||CPL||An LP solver from COIN-OR |- |[[GNU Linear Programming Kit|glpk]]||GPL|| GNU Linear Programming Kit, an LP/MILP solver with a native C [[API]] and numerous (15) third-party wrappers for other languages. Specialist support for [[flow network]]s. Bundles the [[AMPL]]-like [[GNU MathProg]] modelling language and translator. |- |[[lp solve]]||LGPL v2.1||An LP and [[Mixed-integer programming|MIP]] solver featuring support for the [[MPS (format)|MPS format]] and its own "lp" format, as well as custom formats through its "eXternal Language Interface" (XLI).<ref>{{cite web|url=https://web.mit.edu/lpsolve/doc/index.htm|title=lp_solve reference guide (5.5.2.5)|work=mit.edu|access-date=2023-08-10}}</ref><ref>{{cite web |url=http://lpsolve.sourceforge.net/5.5/XLI.htm |access-date=3 December 2021|title=External Language Interfaces}}</ref> Translating between model formats is also possible.<ref>{{cite web |url=http://lpsolve.sourceforge.net/5.5/lp_solve.htm |access-date=3 December 2021|title=lp_solve command}}</ref> |- |[[Qoca]]||GPL||A library for incrementally solving systems of linear equations with various goal functions |- |[[R-Project]]||GPL||A programming language and software environment for statistical computing and graphics |} [[MINTO]] (Mixed Integer Optimizer, an [[integer programming]] solver which uses branch and bound algorithm) has publicly available source code<ref>{{cite web|url=http://coral.ie.lehigh.edu/~minto/download.html|title=COR@L – Computational Optimization Research At Lehigh|work=lehigh.edu}}</ref> but is not open source. '''[[Proprietary software|Proprietary]] licenses:''' {| class="wikitable" |- !Name !Brief info |- |[[AIMMS]]|| A modeling language that allows to model linear, mixed integer, and nonlinear optimization models. It also offers a tool for constraint programming. Algorithm, in the forms of heuristics or exact methods, such as Branch-and-Cut or Column Generation, can also be implemented. The tool calls an appropriate solver such as CPLEX or similar, to solve the optimization problem at hand. Academic licenses are free of charge. |- |[[ALGLIB]]|| A commercial edition of the copyleft licensed library. C++, C#, Python. |- |[[AMPL]]|| A popular modeling language for large-scale linear, mixed integer and nonlinear optimisation with a free student limited version available (500 variables and 500 constraints). |- |[[Analytica (software)|Analytica]]|| A general modeling language and interactive development environment. Its influence diagrams enable users to formulate problems as graphs with nodes for decision variables, objectives, and constraints. Analytica Optimizer Edition includes linear, mixed integer, and nonlinear solvers and selects the solver to match the problem. It also accepts other engines as plug-ins, including [[XPRESS]], Gurobi, [[Artelys Knitro]], and [[MOSEK]]. |- |[[APMonitor]]|| API to MATLAB and Python. Solve example Linear Programming (LP) problems through MATLAB, Python, or a web-interface. |- |[[CPLEX]]|| Popular solver with an API for several programming languages, and also has a modelling language and works with AIMMS, AMPL, [[General Algebraic Modeling System|GAMS]], MPL, OpenOpt, OPL Development Studio, and [[TOMLAB]]. Free for academic use. |- |[[Microsoft Excel|Excel]] Solver Function|| A nonlinear solver adjusted to spreadsheets in which function evaluations are based on the recalculating cells. Basic version available as a standard add-on for Excel. |- |[[FortMP]]|| |- |[[General Algebraic Modeling System|GAMS]]|| |- |[[Gurobi Optimizer]]|| |- |[[IMSL Numerical Libraries]]|| Collections of math and statistical algorithms available in C/C++, Fortran, Java and C#/.NET. Optimization routines in the IMSL Libraries include unconstrained, linearly and nonlinearly constrained minimizations, and linear programming algorithms. |- |[[LINDO]]|| Solver with an API for large scale optimization of linear, integer, quadratic, conic and general nonlinear programs with stochastic programming extensions. It offers a global optimization procedure for finding guaranteed globally optimal solution to general nonlinear programs with continuous and discrete variables. It also has a statistical sampling API to integrate Monte-Carlo simulations into an optimization framework. It has an algebraic modeling language ([[Lingo (programming language)|LINGO]]) and allows modeling within a spreadsheet ([[What'sBest]]). |- |[[Maple (software)|Maple]]|| A general-purpose programming-language for symbolic and numerical computing. |- |[[MATLAB]]|| A general-purpose and matrix-oriented programming-language for numerical computing. Linear programming in MATLAB requires the [[Optimization Toolbox]] in addition to the base MATLAB product; available routines include INTLINPROG and LINPROG |- |[[Mathcad]]|| A WYSIWYG math editor. It has functions for solving both linear and nonlinear optimization problems. |- |[[Mathematica]]|| A general-purpose programming-language for mathematics, including symbolic and numerical capabilities. |- |[[MOSEK]]|| A solver for large scale optimization with API for several languages (C++, java, .net, Matlab and python). |- |[[NAG Numerical Library]]|| A collection of mathematical and statistical routines developed by the [[Numerical Algorithms Group]] for multiple programming languages (C, C++, Fortran, Visual Basic, Java and C#) and packages (MATLAB, Excel, R, LabVIEW). The Optimization chapter of the NAG Library includes routines for linear programming problems with both sparse and non-sparse linear constraint matrices, together with routines for the optimization of quadratic, nonlinear, sums of squares of linear or nonlinear functions with nonlinear, bounded or no constraints. The NAG Library has routines for both local and global optimization, and for continuous or integer problems. |- |[[OptimJ]]|| A Java-based modeling language for optimization with a free version available.<ref>http://www.in-ter-trans.eu/resources/Zesch_Hellingrath_2010_Integrated+Production-Distribution+Planning.pdf OptimJ used in an optimization model for mixed-model assembly lines, University of Münster</ref><ref>http://www.aaai.org/ocs/index.php/AAAI/AAAI10/paper/viewFile/1769/2076 {{Webarchive|url=https://web.archive.org/web/20110629022829/http://www.aaai.org/ocs/index.php/AAAI/AAAI10/paper/viewFile/1769/2076 |date=2011-06-29 }} OptimJ used in an Approximate Subgame-Perfect Equilibrium Computation Technique for Repeated Games</ref> |- |[[SAS System|SAS]]/OR|| A suite of solvers for Linear, Integer, Nonlinear, Derivative-Free, Network, Combinatorial and Constraint Optimization; the [[Algebraic modeling language]] OPTMODEL; and a variety of vertical solutions aimed at specific problems/markets, all of which are fully integrated with the [[SAS System]]. |- |[[FICO Xpress|XPRESS]]||Solver for large-scale linear programs, quadratic programs, general nonlinear and mixed-integer programs. Has API for several programming languages, also has a modelling language Mosel and works with AMPL, [[General Algebraic Modeling System|GAMS]]. Free for academic use. |- |[[VisSim]]|| A visual [[block diagram]] language for simulation of [[dynamical system]]s. |}
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)