List of optimization software
Encyclopedia

Free and Open Source software

Name License Brief info
ALGENCAN GPL Fortran code for general nonlinear programming. Interfaces with AMPL, C/C++, CUTEr, Matlab, Python, Octave and R.
ASCEND
ASCEND
ASCEND is a free, open source, mathematical modelling system developed at Carnegie Mellon University since the late 1978. ASCEND is an acronym which stands for Advanced System for Computations in ENgineering Design. Its main uses have been in the field of chemical process modelling although its...

 
GPL mathematical modelling system
COIN-OR SYMPHONY  GPL integer programming
CUTEr
CUTEr
CUTEr is an open source testing environment for optimization and linear algebra solvers...

 
GPL testing environment for optimization and linear algebra solvers
IPOPT
IPOPT
IPOPT, short for "Interior Point OPTimizer, pronounced I-P-Opt", is a software library for large scale nonlinear optimization of continuous systems. It is written in Fortran and C and is released under the EPL . IPOPT implements a primal-dual interior point method, and uses line searches based on...

CPL
Common Public License
In computing, the CPL is a free software / open-source software license published by IBM. The Free Software Foundation and Open Source Initiative have approved the license terms of the CPL....

large scale nonlinear optimization for continuous system
L-BFGS
L-BFGS
The limited-memory BFGS algorithm is a member of the broad family of quasi-Newton optimization methods that uses a limited memory variation of the Broyden–Fletcher–Goldfarb–Shanno update to approximate the inverse Hessian matrix...

 
BSD limited-memory quasi-Newton
Newton's method in optimization
In mathematics, Newton's method is an iterative method for finding roots of equations. More generally, Newton's method is used to find critical points of differentiable functions, which are the zeros of the derivative function.-Method:...

 packages for large scale optimization
OpenOpt
OpenOpt
OpenOpt is an open-source framework for numerical optimization, nonlinear equations and systems of them. It is licensed under the BSD license, making it available to be used in both open- and closed-code software. The package already has some essential ....

BSD
BSD licenses
BSD licenses are a family of permissive free software licenses. The original license was used for the Berkeley Software Distribution , a Unix-like operating system after which it is named....

 
free numerical optimization framework for solving NLP, LP, MILP, QP, etc.
Can involve Automatic differentiation
Automatic differentiation
In mathematics and computer algebra, automatic differentiation , sometimes alternatively called algorithmic differentiation, is a set of techniques to numerically evaluate the derivative of a function specified by a computer program...

 via FuncDesigner.
GLPK GPL GNU Linear Programming Kit
NLopt MIT, LGPL single API for many local/global algorithms for nonlinear programming (interfaces for C/C++/Fortran/Matlab/Octave
GNU Octave
GNU Octave is a high-level language, primarily intended for numerical computations. It provides a convenient command-line interface for solving linear and nonlinear problems numerically, and for performing other numerical experiments using a language that is mostly compatible with MATLAB...

/Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

/Scheme
GNU Guile
GNU Guile is an interpreter/virtual machine for the Scheme programming language. It was first released in 1993. Guile includes modularized extensions for POSIX system calls, APL array functionality, and others packaged as an object library...

)
PaGMO/PyGMO GPL single API for many local/global algorithms for nonlinear programming (C++/Python
Python (programming language)
Python is a general-purpose, high-level programming language whose design philosophy emphasizes code readability. Python claims to "[combine] remarkable power with very clear syntax", and its standard library is large and comprehensive...

) and their coarse parallelization. It wraps some NLopt, GSL and SciPy algorithms too
PPL GPLv3 The Parma Polyhedra Library provides numerical abstractions especially targeted at analysis and verification of complex systems
NOMAD LGPL Black-Box optimization package


This article is about mathematical optimization problem
Optimization problem
In mathematics and computer science, an optimization problem is the problem of finding the best solution from all feasible solutions. Optimization problems can be divided into two categories depending on whether the variables are continuous or discrete. An optimization problem with discrete...

s. If you are looking for PC cleanup programs, go elsewhere.

Proprietary software

  • AIMMS
    AIMMS
    AIMMS is a software system designed for modeling and solving large-scale optimization and scheduling-type problems....

     — optimization modeling system, including GUI building facilities
  • AMPL
    AMPL
    AMPL, an acronym for "A Mathematical Programming Language", is an algebraic modeling language for describing and solving high-complexity problems for large-scale mathematical computation AMPL, an acronym for "A Mathematical Programming Language", is an algebraic modeling language for describing and...

     — modelling language for large-scale linear, mixed integer and nonlinear optimization
  • Analytica — optimization modeling software that incorporates state-of-the-art algorithms for linear and nonlinear optimization. Supports LP, NLP, QP, continuous and integer optimization.
  • APMonitor
    APMonitor
    APMonitor, or "Advanced Process Monitor", is a modeling language for differential and algebraic equations. It is used for describing and solving representations of physical systems in the form of implicit DAE models. APMonitor is suited for large-scale problems and allows solutions of dynamic...

     — for large-scale, nonlinear, differential and algebraic optimization
  • ASTOS
    Astos
    ASTOS is a Trajectory optimization and simulation tool for launch and re-entry missions, orbit transfers, design optimization and for re-entry safety assessments. It solves Aerospace problems with a data driven interface and automatic initial guesses...

     — AeroSpace Trajectory Optimization Software for launcher, re-entry and generic aerospace problems
  • BARON
    BARON
    BARON is a computational system for solving nonconvex optimization problems to global optimality. Purely continuous, purely integer, and mixed-integer nonlinear problems can be solved with the software. BARON is available under the AIMMS and GAMS modeling languages on a variety of platforms...

     — for global optimization of algebraic nonlinear and mixed-integer nonlinear problems
  • CPLEX
    CPLEX
    IBM ILOG CPLEX Optimization Studio is an optimization software package. In 2004, the work on CPLEX earned the first ....

     — integer, linear and quadratic programming
  • FinMath — contains primal-dual interior-point
    Interior point method
    Interior point methods are a certain class of algorithms to solve linear and nonlinear convex optimization problems.The interior point method was invented by John von Neumann...

     solvers for linear and convex quadratic programming problems, quasi-Newton
    Quasi-Newton method
    In optimization, quasi-Newton methods are algorithms for finding local maxima and minima of functions. Quasi-Newton methods are based on...

     with BFGS
    BFGS method
    In numerical optimization, the Broyden–Fletcher–Goldfarb–Shanno method is a method for solving nonlinear optimization problems ....

     update formula.
  • FortMP
    FortMP
    FortMP is a software package for solving large-scale optimization problems. It solves linear programming problems, quadratic programming problems and mixed integer programming problems...

     — integer, linear and quadratic programming
  • FortSP
    FortSP
    FortSP is a software package for solving stochastic programming problems. It solves scenario-based SP problems with recourse as well as problems with chance constraints and integrated chance constraints...

     — stochastic programming
  • General Algebraic Modeling System
    General Algebraic Modeling System
    The General Algebraic Modeling System is a high-level modeling system for mathematical optimization. GAMS is designed for modeling and solving linear, nonlinear, and mixed-integer optimization problems. The system is tailored for complex, large-scale modeling applications and allows the user to...

  • GESOP — Graphical Environment for Simulation and Optimization
  • Gurobi
    Gurobi
    Gurobi is a commercial software package for solving large-scale linear optimization, quadratic optimization, and mixed-integer optimization problems...

     — integer, linear and quadratic programming
  • HEEDS MDO — multidisciplinary design optimization using SHERPA, a hybrid, adaptive optimization algorithm.
  • Inverse (program)
    Inverse (program)
    Inverse is a general purpose computer program for solving inverse and optimization problems.The program has been designed in particular for solving problems where complex numerical simulations Inverse is a general purpose computer program for solving inverse and optimization problems.The program...

     — inverse and optimization problems
  • LINGO — very intuitive for small-scale problems. Can do linear, nonlinear, quadratic, stochastic, and integer optimization
  • modeFRONTIER
    ModeFRONTIER
    modeFRONTIER is a multi-objective optimization and design environment, written to couple CAD/computer aided engineering tools, finite element structural analysis and computational fluid dynamics software. It is developed by ESTECO Srl and provides an environment for product engineers and designers...

     — multidisciplinary design optimization, for computer-aided engineering
  • Maple (software)
    Maple (software)
    Maple is a general-purpose commercial computer algebra system. It was first developed in 1980 by the Symbolic Computation Group at the University of Waterloo in Waterloo, Ontario, Canada....

     — Linear, quadratic, and nonlinear, continuous and integer optimization. Constrained and unconstrained. Global optimization with add-on toolbox.
  • Mathematica
    Mathematica
    Mathematica is a computational software program used in scientific, engineering, and mathematical fields and other areas of technical computing...

     — large-scale multivariate constrained and unconstrained, linear and nonlinear, continuous and integer optimization.
  • MIDACO-Solver — Black-Box optimization software for (constrained) mixed integer, combinatorial and continuous problems. Available for Matlab, C/C++, Fortran and MS-Excel.
  • MOSEK
    MOSEK
    MOSEK is a software package for the solution of linear, mixed-integer linear, quadratic, mixed-integer quadratic, quadratically constraint, conic and convex nonlinear mathematical optimization problems. The emphasize in MOSEK is on solving large scale sparse problems. Particularly the...

     — linear, quadratic, conic and convex nonlinear, continuous and integer optimization.
  • Nexus
    Nexus (Process integration and optimization)
    Nexus is software for process integration. It is designed to solve multi-disciplinary and multi-objective optimization problems via a flowchart representation validated on the fly. Nexus is developed by iChrome Ltd., a British engineering and software company that specializes mainly in mathematical...

     — multidisciplinary optimization and design process integration
  • NMath
    NMath
    NMath is a numerical package for the Microsoft .NET Framework. It is developed by CenterSpace Software. Version 1.0 was released in March, 2003 as NMath Core...

     — linear, quadratic and nonlinear programming
  • IOSO
    IOSO
    IOSO is a multiobjective, multidimensional nonlinear optimization technology.-IOSO approach:IOSO Technology is based on the response surface methodology approach....

     — multidisciplinary design optimization, for computer-aided engineering
  • OptimJ
    OptimJ
    OptimJ is an extension of the Java with language support for writing optimization models and abstractions for bulk data processing. OptimJ aims at providing a clear and concise algebraic notation for optimization modeling, removing compatibility barriers between optimization modeling and...

     — Java based modeling language. Premium Edition includes support for Gurobi, Mosek and CPLEX solvers
  • PottersWheel
    PottersWheel
    PottersWheel is a MATLAB toolbox for mathematical modeling of time-dependent dynamical systems that can be expressed as chemical reaction networks or ordinary differential equations . It allows the automatic calibration of model parameters by fitting the model to experimental measurements...

     — Parameter estimation in ordinary differential equations (Matlab toolbox, free for academic use).
  • S+NuOptS-PLUS
    S-PLUS
    S-PLUS is a commercial implementation of the S programming language sold by TIBCO Software Inc..It features object-oriented programming capabilities and advanced analytical algorithms.-Historical timeline:...

    -based solver used for a wide range of applications.
  • SNOPT
    SNOPT
    SNOPT is a software package for solving large-scale optimization problems written by Philip Gill, Walter Murray and Michael Saunders....

     — large-scale optimization problems.
  • Unscrambler Optimizer
    The Unscrambler
    The Unscrambler is a commercial software product for multivariate data analysis, used primarily for calibration in the application of near infrared spectroscopy and development of predictive models for use in real-time spectroscopic analysis of materials. The software was originally developed in...

     product formulation and process optimization software
  • TOMLAB
    TOMLAB
    The TOMLAB Optimization Environment is a modeling platform for solving applied optimization problems in MATLAB.-Description:TOMLAB is a general purpose development and modeling environment in MATLAB for research, teaching and practical solution of optimization problems...

     — TOMLAB supports global optimization, integer programming, all types of least sqaures, linear, quadratic and unconstrained programming for MATLAB
    MATLAB
    MATLAB is a numerical computing environment and fourth-generation programming language. Developed by MathWorks, MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages,...

    . TOMLAB supports solvers like Gurobi
    Gurobi
    Gurobi is a commercial software package for solving large-scale linear optimization, quadratic optimization, and mixed-integer optimization problems...

    , CPLEX
    CPLEX
    IBM ILOG CPLEX Optimization Studio is an optimization software package. In 2004, the work on CPLEX earned the first ....

    , SNOPT
    SNOPT
    SNOPT is a software package for solving large-scale optimization problems written by Philip Gill, Walter Murray and Michael Saunders....

     and KNITRO
    KNITRO
    KNITRO is a software package for solving large scale mathematical optimization problems. KNITRO is specialized for nonlinear optimization, but also solves linear programming problems, quadratic programming problems, and systems of nonlinear equations. The unknowns in these problems must be...

    .
  • VisSim
    VisSim
    VisSim is a visual block diagram language for simulation of dynamical systems and model based design of embedded systems. It is developed by Visual Solutions of Westford, Massachusetts....

     — a visual block diagram
    Block diagram
    Block diagram is a diagram of a system, in which the principal parts or functions are represented by blocks connected by lines, that show the relationships of the blocks....

     language for simulation and optimization of dynamical system
    Dynamical system
    A dynamical system is a concept in mathematics where a fixed rule describes the time dependence of a point in a geometrical space. Examples include the mathematical models that describe the swinging of a clock pendulum, the flow of water in a pipe, and the number of fish each springtime in a...

    s.
  • WORHP
    WORHP
    WORHP, pronounced like the English word "warp", also referred to as eNLP by ESA, is a mathematical software library for solving continuous large scale nonlinear optimization problems numerically. The acronym WORHP is sometimes spelled out as "We Optimize Really Huge Problems", its primary intended...

     — a large-scale sparse solver for continuous nonlinear optimization.
  • Xpress-Mosel by FICO — "ultra-large-scale" optimization with 64-bit support.
  • Xtreme — Fast nonlinear optimization based on genetic algorithms and neural networks (free version available).

Freeware

  • AIMMS
    AIMMS
    AIMMS is a software system designed for modeling and solving large-scale optimization and scheduling-type problems....

     — free for academic use.
  • AMPL
    AMPL
    AMPL, an acronym for "A Mathematical Programming Language", is an algebraic modeling language for describing and solving high-complexity problems for large-scale mathematical computation AMPL, an acronym for "A Mathematical Programming Language", is an algebraic modeling language for describing and...

     — free student license.
  • APMonitor — free online interface.
  • ASTOS
    Astos
    ASTOS is a Trajectory optimization and simulation tool for launch and re-entry missions, orbit transfers, design optimization and for re-entry safety assessments. It solves Aerospace problems with a data driven interface and automatic initial guesses...

     — free for academic use.
  • Galahad library
    Galahad library
    The Galahad library is a thread-safe library of packages for the solution of optimization—or mathematical programming—problems. The areas covered by the library are unconstrained and bound-constrained optimization, quadratic programming, nonlinear programming, systems of nonlinear equations and...

     — free for academic use.
  • GESOP — free for academic use.
  • KNITRO
    KNITRO
    KNITRO is a software package for solving large scale mathematical optimization problems. KNITRO is specialized for nonlinear optimization, but also solves linear programming problems, quadratic programming problems, and systems of nonlinear equations. The unknowns in these problems must be...

     — large-scale mathematical optimization problems. Freeware for non-commercial uses.
  • MIDACO-Solver — Free test version for up to 4 variables. (Matlab, C/C++ ,Fortran, MS-Excel)
  • MINTO
    MINTO
    MINTO is an integer programming solver which uses branch and bound algorithm. It stands for Mixed Integer Optimizer.MINTO is a software system that solves mixed integer programming problem by a branch and bound algorithm with linear programming relaxations. It also provides automatic constraint...

     — integer programming solver using branch and bound algorithm. Freeware for personal use.
  • PGSL — A global search program using probabilistic sampling.
  • OptimJ
    OptimJ
    OptimJ is an extension of the Java with language support for writing optimization models and abstractions for bulk data processing. OptimJ aims at providing a clear and concise algebraic notation for optimization modeling, removing compatibility barriers between optimization modeling and...

     — Java based modeling language. Free Edition includes support for lp_solve, GLPK and LP or MPS file formats
  • PottersWheel
    PottersWheel
    PottersWheel is a MATLAB toolbox for mathematical modeling of time-dependent dynamical systems that can be expressed as chemical reaction networks or ordinary differential equations . It allows the automatic calibration of model parameters by fitting the model to experimental measurements...

     — Parameter estimation in ordinary differential equations (Free Matlab toolbox for academic use).
  • WORHP
    WORHP
    WORHP, pronounced like the English word "warp", also referred to as eNLP by ESA, is a mathematical software library for solving continuous large scale nonlinear optimization problems numerically. The acronym WORHP is sometimes spelled out as "We Optimize Really Huge Problems", its primary intended...

    — free of charge for academic use.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK