The Constrained NLO Problem

The Problem:
min f(x) subject to h(x)=0, g(x)>=0,
n=dim(x), m=dim(g), p=dim(h). The picture shows feasible domain and level sets for

f(x)=x1^2+x2^2,
g(x)=(x1^2-x2,x2^2-x1) .

Infeasible points are shown in dark brown and the levels of f are shown in the feasible domain.

You'll find several sections:

The LP-problem: f, g, h linear in x

The LP-problem is often very high-dimensional. Several tools are necessary to deal with such problems. Some are listed here:

 plam A free MILP modeling environment using lp_solve as MILP solver and SWI-Prolog MPS The description of the most widely used LP input format MPSreader An MPS reader for Windows QSreader a utility to convert this LP format to (and from) MPS; Windows/Unix executables lp2mps a utility (extracted from lp_solve) to convert the simple LP format to (and from) MPS ABACUS A general branch&cut library with mixed integer capability (C++)

The following simplex-based solvers allow some or all of the variables to be constrained to attain integer values; all allow input in MPS format:

 SCIP Framework for Constraint Integer Programming, links to CPLEX, SOPLEX, or CLP as LP solver (C) MIPCL MIP solver including modeling tools (C++, simplified version in Python) lp_solve C source, various binaries, and interfaces Pascal-MILP-solver Borland-Pascal sources, DOS/WIN binaries PICO (part of ACRO) B&C, using CPLEX, GLPK, or SOPLEX; AMPL interface MOSEK Simplex/IPM, Matlab, AMPL, GAMS interfaces, student license GLPK GNU LP library, B&B, dual/revised simplex, interior point, C, Windows-executables, Matlab interface, Java interface. R interface, Python interface CBC Simple branch&cut solver, part of COIN-OR (C++) SYMPHONY callable library for solving mixed-integer linear programs, uses Clp as default LP solver (C) MATLOG (MATLAB) The milp.m solver (needs lp.m from Matlab optimization toolbox) SCIL Symbolic Constraints in Integer Linear programming (C++) FEASPUMP The Feasibility Pump for finding a feasible solution; needs CPLEX (C++) MIPTS Tabu search heuristic for MIP; MPS, AMPL, CPLEX-LP input (C)

PURE LP SOLVERS: most allow input in MPS format:

 CLP the COIN LP code, simplex (C++) PyCOIN Python interface to CLP (maybe more COIN solvers) QSopt Simplex based; executables, library for Windows/Unix, free for research&education, Concorde interface SOPLEX Simplex based, C++ BPMPD interior point method, Win32-version, Unix-binaries (version 2.21), Unix-libraries (version 2.21), BPMPD_MEX, netlib-source (version 2.11, f77), C-version (version 2.11, f2c), AMPL interface HOPDM local version of code (interior point method using predictor-corrector-steps of higher order), HOPDM_C (f2c-converted version, includes f2c-library) PCx interior point method, f77/C, binaries for major platforms LOQO interior point method, C, student binaries, executables for major platforms, work for two months w/o license, AMPL interface, Matlab interface COPL-LP interior point method, includes crossover, DOS executable, HP binary, Linux binary LIPSOL interior point method, also MAT or LPP formats (Matlab) IPO/SIMPO interior and simplex LP-solver published in conjunction with Vanderbei's book, C PCLP predictor-corrector interior point code, SciLab or Matlab SPHSLFBF homogeneous self-dual interior point code, Matlab MINOS the long standing simplex based REFERENCE-implementation reducedLP Constraint reduction for linear programs with many inequality constraints; paper and Matlab file rMPC Matlab interior point code specifically for LPs with many inequality constraints such as from a fine discretization of a semi-infinite LP

Polyhedral Codes

 CDD Polyhedral codes in C/C++ CDDMEX Matlab interface to CDD LRS Polyhedral codes in C More polyhedral codes Avis's list Polyhedral FAQ Komei Fukuda's explanations

Exact LP Solvers

 Soplex Simplex solver using exact rational LU factorization and continued fraction approximations (C++) QSopt-Exact Rational (exact) primal/dual simplex solver; libraries, executables (C)

Stochastic LP Solvers

Most accept input in SMPS format

 SD Stochastic decomposition for two-stage stochastic LPs with recourse (C) det2sto Downloadable Perl script to generate deterministic equivalent in AMPL format; websubmission BNBS for multi-stage problems, uses CPLEX, SOPLEX, or GLPK as LP solver (C/C++) SLP-IOR based on GAMS, large solver library, free for academic use

Stochastic MILP Solvers

 DDSIP Dual decomposition in two-stage stochastic mixed-integer programming, needs CPLEX lib (GPL, C) DSP Dual and Benders decomposition, uses Julia, MPI parallel

The QP problem: f quadratic, (non)convex, g, h linear

Only bound constraints:

 MINQ General definite and bound constrained indefinite quadratic programming (in Matlab)

Only equality constraints ( m = 0):

 toms/559 also for nonconvex f, provided the projected Hessian is positive definite

n not too large, strictly convex

 FORCES-pro a code generation tool for embedded convex QP (C, MATLAB, Simulink and Python interfaces available), free academic license qpOASES online active set solver, works well for model predictive control (C++, Matlab/R/SciLab interfaces) HPMPC Library for High-Performance implementation of solvers for MPC, highly optimized for common architectures; C, Octave interface quadprog Python code for Goldfarb-Idnani dual QP QuadProg++ C++ code for Goldfarb-Idnani dual QP QP_solver exact QP solver, part of CGAL (C++)

n not too large, not necessarily convex

 NewtonKKTqp indefinite QP solver, interior point (Matlab) IQP indefinite QP package (in Port lib) SPSOLQP indefinite QP solver, interior point (Matlab) QuadProgBB indefinite QP solver, Matlab/MEX

n large

 QPS (ext. MPS format) from BPMPD OSQP Operator splitting ADMM-based first-order convex QP solver (C, C++, Python, Julia, Matlab interfaces) CONV_QP various methods for sparse convex QP (f77) MSS Matlab software for large-scale trust-region subproblems LSTRS Matlab software for large-scale trust-region subproblems and regularization COPL_QP interior point, convex problems, C, ext. MPS input, user's guide BPMPD convex problems, ext. MPS input, Win-95 version, BPMPD_MEX, Unix-libraries, Unix-binaries MOSEK interior point, Win, Linux binaries, ext. MPS input including quadratic constraints or through Matlab, student license OOQP object oriented C++ package, interior point, convex problems, needs MA27/57 from HSL archive GALAHAD QPA/QPB active set and IPM solvers, AMPL and ext. MPS(SIF) input HOPDM extension of LP-code, convex problems, ext. MPS input LOQO interior point method, C, executables for major platforms, work for several months w/o license, AMPL interface, Matlab interface RAL-QP more QP codes (from the NA group at Rutherford Appleton Labs)

Software for specific quadratic programming problems:

 GPDT Parallel Gradient Projection-based Decomposition Technique for SVM, also serial, Linux binary & C++ source OptiML f77 and C++ software for 2-norm soft margin SVM plus C++ code for the sparse inverse covariance problem OOQP C++ package includes solver for SVM and Huber regression problems

Mixed integer quadratic programming:

 MIQPBB branch&bound code PICOS Python Interface for Conic Optimization Solvers YALMIP Matlab toolbox for rapid prototyping of optimization problems, supports many solvers; B&B for mixed integer problems MIQP 0-1 only, needs LP/QP solver, e.g. linprog/quadprog, part of MPT (Matlab) MIOSCP MIQP solver based on OSCP (Python) MOSEK ext. MPS input, Win, Linux, Solaris binaries, Matlab, quadratic constraints, student license

SDP&SOCP (semidefinite and second-order cone programming)

Cone World initiative by GAMS

Linear semidefinite programming (SDP) solvers

 SparseCoLo Matlab package for exploiting sparsity in linear and nonlinear matrix inequalities via positive semidefinite matrix completion SMCP Python Extension for Sparse Matrix Cone Programs ConicBundle A bundle method for minimizing the sum of convex functions given by oracles or from Lagrangian relaxation (C++, GPL) SDPHA A Matlab package for a homogeneous primal-dual method CSDP A library for semidefinite programming, predictor-corrector version of algorithm by Helmberg, Rendl, Vanderbei, and Wolkowicz (C) DSDP Dual-scaling algorithm (C, Matlab interface, parallel version),python interface, Julia wrapper SDPA Solves semidefinite programs utilizing a Mehrotra-type predictor-corrector step, uses sparse matrix structure, includes documentation (C++), Matlab and MPI parallel versions SDPNAL+ MATLAB software for semidefinite programming with bound constraints PENSDP Penalty/barrier method for linear semidefinite programming, SDPA format input, SDPLR solves large-scale, low-rank SDP problems (C) MPRW Boundary Point Method, Random SDP generators (Matlab) VSDP Matlab package for verified SDP. Needs INTLAB and SDPT3 or SDPA. MAXDET Software for Determinant Maximization Problems (C; Matlab interface) rmd Rigorous MAXDET; wrapper for above code (C++) CUTSDP A Toolbox for a Cutting-Plane Approach Based on Semidefinite Programming (C)

Nonlinear semidefinite programming (SDP) solvers

 PENLAB Open source version of PENNON, also for NLP (Matlab) PENBMI Program for problems with quadratic objective and bilinear matrix inequality constraints (C)

SOCP solvers (second order cone problems, not SDP)

 ECOS Embedded Conic Solver (Ansi-C, interfaces to Matlab, CVX, Python, library-free) SOCP software for second order cone programming (C and Matlab) LOQO interior point method, C, student binaries, executables for major platforms, work for two months w/o license, AMPL interface, Matlab interface

SQL solvers (semidefinite, quadratic, linear problems, includes SDP, SOCP)

 DDS Domain-Driven Solver, Matlab package for solving convex optimization problems, LP, SOCP, SDP etc SeDuMi Matlab toolbox for solving optimization problems over symmetric cones SDPT3-4.0 Matlab implementation of infeasible path-following algorithms with Mehrotra type predictor-corrector and two types of search directions. MOSEK Interior point code for LP, QP, and conic programming. Extended MPS or Matlab input, student license CVX Matlab package for disciplined convex optimization CVXOPT Python Software for Convex Optimization PICOS Python Interface to Conic Optimization Solvers SDPpack Primal-dual Mehrotra type predictor-corrector scheme, test for degeneracy and other additions, of historical interest

SDP solvers for discrete optimization problems

 BBCPOP Sparse Doubly Nonnegative Relaxation of Polynomial Optimization Problems with Binary, Box, and Complementarity Constraints (Matlab) BiqCrunch A semidefinite branch-and-bound method for solving binary quadratic problems (C) SCIP-SDP An SDP Plugin for SCIP; solves MISDP (C) COPL_SDP solves various cut problems, uses dual scaling method(C) COPL_DSDP mixed integer linear semidefinite problems, enhanced COPL_SDP, MPS-like input (C) Max-AO solves SDP relaxations of maximum stable set and maximum clique problems, graph input (C) KYPD solves special KYP SDP problems, needs Yalmip and SeDuMi (Matlab)

Applications of SDP/SQL/SOCP

 TFOCS Templates for first order conic solvers (Matlab) MVU Maximum Variance Unfolding and other machine learning codes (Matlab) SFSDP MATLAB software for sparse sensor network localization (needs SeDuMi) SNLSDP MATLAB software for sensor network localization Sensor Location M and P files for relaxed and full SDP approaches to network sensor location (needs SeDuMi), Matlab DSPCA Matlab package for sparse principal component analysis PICOS Python Interface for Conic Optimization Solvers YALMIP Matlab toolbox for rapid prototyping of optimization problems, supports many solvers; B&B for mixed integer problems xLMI freely available Matlab LMI solver LMITOOL LMI parser, part of Scilab LMIRANK Matlab toolbox for solving rank-constrained LMI problems Matrix completions Using SDP to solve the PSD and the Euclidean distance matrix completion problems (Matlab) FIR toolbox Matlab toolbox to optimize FIR filters and similar structures; needs SeDuMi or LOQO or other SparsePOP Sparse SDP Relaxation of Polynomial Optimization Problems (Matlab) GloptiPoly Polynomial objective and constraints, integer variables, needs SeDuMi (Matlab, GPL) SOSTOOLS Matlab toolbox to solve sum of squares polynomial problems; needs SeDuMi and Matlab's symbolic toolbox (GPL) Ncpol2sdpa Sparse Semidefinite Programming Relaxations for Polynomial Optimization Problems of Noncommuting Variables, needs SDP solvers, Python paper

Geometric programming

 GGPLAB Interior point method for GP and generalized GP (Matlab) MOSEK Interior point method, AMPL, GAMS, Matlab, student license COPL_GP / binaries Primal-dual interior point method, includes user's guide

Robust Optimization

 ROME Robust Optimization Made Easy, modeling language and solver, needs CPLEX, or MOSEK, or SDPT3 (Matlab) YALMIP Extensive tutorial with sample scripts; LP, SDP, SOCP, SoS etc (Matlab)

The general nonlinear Problem

Using function values only

The functions f, g, h are not necessarily smooth. Only function values required.

i
 DirectSearch for local/global minimization, multi-objective optimization, nonlinear systems, data fitting (Maple) LINCOAC# version Powell's f77 code for problems with linear inequality constraints (moderate number of variables) GRANSO for nonsmooth, nonconvex optimization subject to nonsmooth, nonconvex constraints, based on a BFGS-SQP method (Matlab) CONDOR parallel, constrained version of Powell's UOBYQA; SIF, AMPL, XML interfaces (C++) CONDOR at Github serial, unconstrained version of CONDOR (C++) COBYLA2 (f77, dble prec)COBYLA2_f90 COBYLA2_C# COBYLA2_C The functions depend on few variables (some hundred at most). An SLP method with estimation of gradients by linear interpolation of the individual functions on moving simplices, l_infinity exact penalty function as merit function. Inequality constraints only. M. Powell's paper on Direct Search Methods DFO derivative free method of Conn, Scheinberg, and Toint NOMAD LGPL-licensed code to do generalized pattern search for nonlinear and mixed variable optimization (C++) NOMADm research version of NOMAD (Matlab, part of OPTI Toolbox) EI-AL hybrid EI-AL method part of the laGP package (R) GANSO several methods for global&nonsmooth problems (C/C++) min_fc single file derivative-free Matlab/Octave code

In the following it is assumed that f, g, h, are differentiable.

f general, bound constraints only

 BOBYQAC# version Powell's bound-constrained optimization by quadratic approximation (f77) SDBOX derivative-free method (f90 and C) fminsearchbnd bound-constrained version of fminsearch (Matlab) ASA_CG bound-constrained version of CG_DESCENT (f77/C) tn, C-version use tnbc from this package, truncated Newton method using the Lanczos-process, n should be not too large since identification of binding constraints works inefficiently (classical active set method) ve08 for separable convex f , structured quasi Newton method (Toint-Griewank) LBFGS-B, f90, Java, Matlab a limited memory quasi Newton (BFGS) method combined with gradient projection for bound constrained problems; directory contains software, drivers and a user's manual TRON trust region Newton, preconditioned cg, projected search f90-version LBFGS, LM Routines for LBFGS and Levenberg-Marquardt in 6 languages LimMem Several limited memory f77-routines; also for least squares Matlab codes Several codes (BFGS, CG), also nonnegativity constraints, applications

General linear constraints

 COPL_LC f convex, interior point method, needs Hessian PDCO f separable convex, primal-dual interior point method (Matlab) BlockIP optimization package for large convex block-angular problems (C++)

Most methods for general constraints use an exact nondifferentiable penalty function like the L1-penalty function. The following picture shows this function with weight 1 for h and weights 2 for g1 and g2 with f(x)=x1+x2, h(x)=x1^2+x2^2-1, g1(x)=x1, g2(x)=x2. It shows some of the intricacies involved in using these functions: not only the nondifferentiability, but also the possible occurrence of infeasible local minimizers. The problem has the two solutions (1,0) with multipliers (0.5,0,1) and (0,1) with multipliers (0.5,1,0). Hence the weights are large enough to make these strict local minima of the penalty function. But three more infeasible minima with the same function value 1 occur at (0,0), (-1,0) and (0,-1). General nonlinear constraints, convex problems

 JOptimizer Java code for convex optimization CVX Matlab package for disciplined convex optimization CVXOPT Python Software for Convex Optimization SPG Spectral Projected Gradient method, interfaces to AMPL, C/C++, Matlab, Python, Octave, R MOSEK solves convex, twice differentiable problems, GAMS, Matlab, and AMPL interface, student license

General nonlinear constraints, dense linear algebra

 LIONsolver reactive search, free for research SDPEN derivative free sequential penalty method for inequality constrained problems (f90) SOLNP Matlab-SQP solver, IP solver for QP's, includes manual pyFSQP python version of old code FSQP CONMAX uses ODE's to generate search direction followed by Newton to correct back to feasible region, authors claim it is very robust but somewhat slow. CONMIN old code by Vanderplaats (f90)

General nonlinear constraints, sparse linear algebra for high dimensional problems

Several codes have a CUTEst/SIF interface.

 PENLAB Open source version of PENNON (Matlab) LANCELOT-A transforms a general problem into one with nonlinear equality constraints and bound constraints on (some) variables and solves this using a modification of the Hestenes-Powell multiplier method (book: Conn&Gould&Toint: LANCELOT . Springer Series in Comp. Math. 17) AMPL interface LANCELOT-B part of GALAHAD, updated version, f2003 WORHP SQP solver for very large problems, IP at QP level, exact or approximate second derivatives, various linear algebra options, varius interfaces HQP/OMUSES motivated by discrete-time optimal control problems, solves general NLP using Powell's or Schittkowski's SQP with Newton-type barrier QP solver, needs Tcl; C++, SIF, or ASCEND input SNOPT solves large-scale linear and nonlinear problems; especially recommended if some of the constraints are highly nonlinear, or constraints respectively their gradients are costly to evaluate and second derivative information is unavailable or hard to obtain; assumes that the number of "free" variables is modest. AMPL&Matlab interfaces MINOS also capable of solving nonlinear problems, but not to be recommended for strong nonlinearities, AMPL interface KNITRO trust region interior point method, efficient for NLPs of all sizes, various interfaces IPOPT interior point method for large NLP, AMPL&Matlab&Python interfaces (C++) IPFILTER primal-dual interior point filter method for large NLP, AMPL&SIF&Fortran interfaces (f95) LOQO interior point method, C, executables for major platforms, work for several months w/o license, AMPL interface, Matlab interface PENNON Penalty-barrier code for large general NLPs, AMPL interface nlpy Python package for LP/NLP utilizing Fortran sources and external software ALGENCAN Augmented Lagrangian type method, interfaces to AMPL, C/C++, Matlab, Python, Octave, R SQPlab Matlab package for general NLP; needs optimization toolbox or MOSEK

Mathematical Problems with Equilibrium Constraints (MPECs)

 IPOPT interior point method for large NLP, AMPL interface (C++) KNITRO trust region interior point method, efficient for NLP's of all sizes, various interfaces LOQO interior point method, C, student binaries, executables for major platforms, work for two months w/o license, AMPL interface, Matlab interface

Minimization of Nonsmooth Functions

 SLQP-GS Sequential Linear or Quadratic Programming with Gradient Sampling (Matlab) OBOE Oracle-Based Optimization Engine for convex problems, uses Proximal-ACCPM interior point method, C++ SolvOpt Solves nonsmooth unconstrained and constrained problems of moderate dimensions (python). NDA Four different routines for Lipschitz continuous functions subject to linear constraints and for (small) minimax problems

Semi-infinite Programming

 NSIPS Three different methods (discretization, interior point, SQP dual), uses author's special AMPL interface (C source and Win-binaries) CSIP Matlab code for convex semi-infinite programming; AMPL interface

Mixed Integer Nonlinear Programming

 DFL derivative-free codes for bound and inequality constrained problems (f90) Cyber-Infrastructure for MINLP Meta site for MINLP BonMin hybrid code from COIN-OR, local solver SHOT Supporting Hyperplane Optimization Toolkit for Convex MINLP Couenne Global solver for nonconvex problems, from COIN-OR Alpine Global solver for nonconvex problems, JuMP-based in Julia SCIP Global solver for nonconvex problems KNITRO Local solver based on general NLP code MIDACO Mixed Integer Distributed Ant Colony Optimization (Matlab, C/C++, Fortran) MILANO Matlab-based mixed-integer linear and nonlinear solver MINLP_BB branch&bound and QP/SQP Minotaur source and Linux/Mac binaries LaGO B&C, Linux binary, binary variables only, GAMS interface BARON Global Branch And Reduce Optimization Navigator (avail. from AIMMS, GAMS) BNB B&B, Matlab, needs optimization toolbox FMINCONSET B&B, variables may be restricted to discrete sets, Matlab, needs optimization toolbox MibS Mixed integer bilevel linear program code MINLP Matlab code for small number of integer variables OPBDPbinaries 0-1 variables, objective and constraints polynomial (C++) A Davis-Putnam Based Enumeration Algorithm for Linear Pseudo-Boolean Optimization

Network Optimization

Linear objective function

 MCF C, network simplex method Net_simplex network simplex method, no source (binaries) GOBLIN Tcl/Tk based for graph and network problems (LGPL, C++ source, binaries) PDNET interior point method, f77&C IPM interior point method, f77&C MCFClass abstract C++ class for single commodity MCF problems incl 5 solvers: RelaxIV, MCFZIB, CS2, MCFCplex, SPTree RelaxIV MCF solver by Bertsekas&Tseng plus other network and assignment solvers Netsoft Andrew Goldberg's Network Optimization Library in C

Nonlinear objective function

 LSNNO f77 code from netlib PPRN library for various platforms PFNRN nonlinear constraints, Solaris/Windows binaries

Special/constraint Solvers/Languages

 ROPTLIB Riemannian Manifold Optimization Library (C++) Numberjack A Python Constraint Programming platform (interface to many C/C++ solvers) Manopt Optimization on Riemannian manifolds (Matlab) Rational Exact solvers for sparse and dense rational linear systems (C, GMP) plus large set of test problems GloptLab a configurable framework for the rigorous global solution of quadratic constraint satisfaction problems (Matlab) ECLiPSe Constraint Programming System, source, binaries, public license RealPaver Interval-based nonlinear constraint solver; source, binaries, documentation (C, BSD license) RSOLVER Solver for qualified inequality constraints; source, linux binaries, Java GUI, remote access, other constraint solvers ICOS Interval Constraints Solver, AMPL interface, Linux&Windows-Cygwin binaries WSAT(OIP) domain independent local search method for linear integer constraints, Linux binary has AMPL/CPLEX interface Filtrane part of Galahad, nonlinear constraints, filter method, f2003 MVE Finding the largest ellipsoid inscribing a given polytope (GPL, Matlab) Miniball Finding the smallest enclosing ball of points (GPL, C++) Miniball@sourceforge Finding the smallest enclosing ball of balls, QPL-licensed, C++

Dynamic Programming

 Open DP general dynamic programming software to optimize discrete time processes, with continuous or discrete decisions; random processes (observable or not) allowed jsdp Software for solving stochastic dynamic programming problems (Java) DP2PN2 Java package for dynamic programming; needs javac ACADO Toolkit for automatic control and dynamic optimization (C++, Matlab interface) CompEcon Tb Matlab toolbox for computational economics and finance incl general optimization, dynamic programming, stochastic control

Control Problems

 StOpt Stochastic Control Library (C++, some python bindings) SD_SCIP Scip Plug-In for Solving System Dynamics Optimization Problems (C) MOOSE Model Based Optimal Input Signal Design Toolbox (Matlab) ACADO Toolkit for control (C++, Matlab interface) HPMPC Library for High-Performance implementation of solvers for MPC, highly optimized for common architectures; C, Octave interface POCP Package for Polynomial Optimal Control Problems, uses Gloptipoly or Yalmip (Matlab) SQPlab Matlab solver for nonlinear optimization and optimal control OpenDDPT Open Discrete Dynamic Programming Template (C/C++); includes unconstrained optimization package LAAS-DO Links to various control-related software fast_mpc implementation of Boyd's method using online optimization (C/Matlab) OptControlCentre package for the optimization of dynamical systems in energy and chemical engineering HIFOO A MATLAB package for fixed-order controller design and H-infinity optimization GPOPS A MATLAB package for multiple phase optimal control; requires SNOPT RoMulOC Robust Multi-Objective Control toolbox, uses YALMIP (Matlab) MPT Multi-parametric toolbox for constrained linear and piecewise affine systems (Matlab) CompEcon Tb Matlab toolbox for computational economics and finance incl general optimization, dynamic programming, stochastic control SLICOT Control and Systems Library. Very comprehensive. MR and LTV Synthesis Tools Provides commands for H-Infinity synthesis of discrete LTV systems and multirate sampled LTI systems DIRCOL Direct collocation method. Optimal ODE control problems with control and state constraints are solved as NLPs with NPSOL or SNOPT PAREST A direct multiple shooting method for the numerical solution of optimal control and parameter estimation problems Biomimikry Matlab code for Optimization, Control, and Automation OCS SciLab/Maple based to solve unconstrained ODE control problems DAE solvers Suite of codes to solve optimal control and related problems HQP/OMUSES ODE/DAE, automatic differentiation, own format or ASCEND or Simulink input, HQP to solve NLPs (C, C++, f77, Tcl) PDECON Optimal Control of Ordinary, Algebraic and One-dimensional Partial Differential Equations TRICE Designed to solve discretized PDE-constrained optimization problems with trust region interior point SQP methods

Other collections or problem types

 IPO Investigating Polyhedra by Oracles (C++) Optizelle Open source software for general NLP problems; multilanguage support Compressive Sensing software for compressive sensing (mostly Matlab) MCQueue transient and steady-analysis of discrete-time and continuous-time Markov chains, performance measures or basic queueing models SVM software Links to Gaussian Processes and SVM software IMMOPTIBOX Matlab toolbox for Optimization and Data Fitting YALMIP Matlab toolbox for rapid prototyping of optimization problems, supports 20 solvers HYSDEL Hybrid Systems Description Language and other downloads Modulopt Fortran 77 codes for smooth and nonsmooth unconstrained, bound-constrained, and general NLP; test problems TANGO Collection of Fortran codes for NLP; applications, testproblems. CompEcon Tb Matlab toolbox for computational economics and finance incl general optimization, dynamic programming, stochastic control DAKOTA A Multilevel Parallel Object-Oriented Framework for Design Optimization, Parameter Estimation, Uncertainty Quantification, and Sensitivity Analysis OPT++ An Object-Oriented Nonlinear Optimization Library UFO Interactive System for Optimization, very comprehensive; f77 interface for various systems/compilers, library TOMLAB commercial Matlab optimization package, comprehensive, with interfaces to many state-of-the-art optimization solvers, e.g. CPLEX, FICO-Xpress, MINLP_BB, MIQPBB, filterSQP, PENBMI, PENSDP. It includes SOL software, expensive and non-convex global optimization solvers, approximation methods etc. Excel Add-ins Rich selection for many OR and optimization problems PARAM Klaus Schittkowski's software, especially parameter-identification KELLEY Iterative Methods for Optimization by T. Kelley, codes in Matlab and f77 MATLOG Facility location and logistics toolbox (Matlab) PLT production/storage/transport, various solvers as Win binaries VRP Web comprehensive information/links on VRP DistOpt Solving large-scale problems through decomposition. Requires Ptolemy, works with various free for research or commercial solvers. Tcl/Tk graphics, C++. Cheddar GPL-licensed real-time scheduling simulator, source, Win/Linux/Solaris binaries FIR toolbox Matlab toolbox to optimize FIR filters and similar structures; needs SeDuMi or LOQO or other LOLOLA a package for planar location and layout problems (solves continuous and discrete cases) StarFLIP A reusable iterative optimization library for combinatorial problems with fuzzy constraints (C++) MOZART Advanced development platform based on Oz. Demos include constraint programming, multi-agent, and concurrent applications.

TOP