Selected free and opensource optimization softwares
OpenOpt Framework
 providing connections to lots of solvers, e.g. IPOPT, cplex, algencan, glpk, lpsolve, CVXOPT, PSwarm, nlopt, BOBYQA, lbfgsb (some are C or Fortranwritten) with easy and unified syntax
 trying to enhance algorithms for numerical optimization invented by Ukrainian academicians Boris Pshenichniy and Naum Z. Shor
 nonlinear/nonsmooth solvers ralg, gsubg, amsg2p
 global nonlinear solver de (differential evolution)
 global nonlinear solver with specifiable accuracy: interalg
 some other linear and quadratic solvers code is included
NLopt
 Callable from C, C++, Fortran, Matlab or GNU Octave, Python, GNU Guile, and GNU R.
 A common interface for many different algorithms—try a different algorithm just by changing one parameter.
 Support for largescale optimization (some algorithms scalable to millions of parameters and thousands of constraints).
 Both global and local optimization algorithms.
 Algorithms using function values only (derivativefree) and also algorithms exploiting usersupplied gradients.
 Algorithms for unconstrained optimization, boundconstrained optimization, and general nonlinear inequality/equality constraints.
 Free/opensource software under the GNU LGPL (and looser licenses for some portions of NLopt).
PSwarm Solver
The algorithm combines pattern search and particle swarm. Basically, it applies a directional direct search in the poll step (coordinate search in the pure simple bounds case) and particle swarm in the search step.
PSwarm makes no use of derivative information of the objective function. It has been shown to be efficient and robust for smooth and nonsmooth problems, both in serial and in parallel.
The code is written in both MATLAB and C. It provides an interface with AMPL, Python and R. The C code includes a parallel version using MPI. PSwarm can also be run through the NEOS server (under the Global Optimization category). You can use PSwarm with Python problems using the OpenOpt framework.
Commercial optimization environments
LINGO from the LINDO Systems Inc.
GAMS
Table 1. Solvers that Work with GAMS
AMPL
Table 2. Solvers that Work with AMPL
Solver 
Algorithm Types 
Vendor or 
Driver Code 
Documentation 
ACRS 
Nonlinear global 



ALGENCAN 
Nonlinear 
See the TANGO site 


BLMVM 
Nonlinear 
Download from the Toolkit for Advanced Optimization 


Bonmin 
Integer nonlinear 
See the Bonmin homepage and 


BPMPD 
Linear (interior) 
Download from netlib/opt 

CBC 
Linear (simplex) 
See the CBC homepage 


CONDOR 
Nonlinear 



Nonlinear 
Buy
directly from AMPL. 



Linear (simplex) 
Buy
directly from AMPL. 
README.1stREADME.cplex 

DONLP2 
Nonlinear 


FilMINT 
Integer nonlinear 
Contact authors of FilMINT slides and paper 

Slides andPaper 
FILTER / 
Nonlinear 


FortMP 
Linear (simplex) 


FSQP 
Nonlinear 

Linear (simplex) 
Buy directly from AMPL. 

IPOPT 
Nonlinear 
See the IPOPT homepage 


Nonlinear 
Buy
directly from AMPL. 


LANCELOT 
Nonlinear 
Download from the LANCELOT site 

LBFGSB 
Nonlinear 
See the LBFGSB page 


LGO 
Nonlinear global 
Contact Pintér Consulting Services 


LOQO 
Linear (interior) 
See the LOQO site for downloads and availability. 


LP_SOLVE 
Linear (simplex) 
See the lpsolve homepage 
lpsolve files@SourceForge 

MINLP 
Integer nonlinear 
see entry for FILTER/MINLP 


Linear (simplex) 
Buy
binaries directly from AMPL. 

MINTO 


MOSEK 
Linear (simplex) 
See the MOSEK homepage 


NPSOL 
Nonlinear 
Source code from Stanford Business Software 

NSIPS 
See the NSIPS homepage 


OOQP 
Linear 
See the OOQP homepage 


PATH 
Complementarity 
CPNET, Computer Sciences Dept, Univ of Wisconsin 

PCx 
Linear (interior) 
NEOS Tools, Argonne National Laboratory 


PENNON 
Nonlinear 
See the PENNON homepage 

User's Guide(version 1.3) 
Nonlinear 
Buy
binaries directly from AMPL. 

SOPT 



TRON 
Nonlinear 
See the TRON homepage 


WSAT(OIP) 
Integer linear constraints 



XA 
Linear (simplex) 



XLSOL 
Linear (simplex) 



XpressMP 


NEOS Solvers for global optimization Optimization Environments on the NEOS Server
 ASA [AMPL Input]
 BARON [GAMS Input]
 icos [AMPL Input]
 LINDOGlobal [GAMS Input]
 PGAPack [AMPL Input]
 PSwarm [AMPL Input]