Skip navigation.
Home

Optimization Resources

1 Introduction

In this topic, we demonstrate the optimization online sever and relative software packages. NEOS (Network-Enabled Optimization System) project began in late 1994. For the most part, the analysis, development and software implementation of optimization algorithms , it make stronger and more effective connections with users of optimization technology, in engineering and basic science as well as in more familiar OR applications. NEOS give users all the information they need to formulate their problems correctly and to choose the right pieces of software for solving them. It also gives people ready access to a wide collection of state-of-the-art optimization software, without subjecting them to the delays associated with buying software and hardware.

2 Optimization Online

Check out Optimization Online, a repository of eprints about optimization and related topics. Post your new reports and sign up for a monthly digest of new submission. Optimization Online is a new joint venture of the Optimization Technology Center (operators of NEOS) and the Mathematical Programming Society.

The home page of NEOS (or, more accurately, of its parent organization, the Optimization Technology Center) can be found at:

http://www.mcs.anl.gov/otc//

As this page shows, NEOS is organized into three components:

•NEOS Tools: A library of freely available optimization software written by researchers in the NEOS project. Contents include PCx, an interior-point linear programming code, and LBFGS-B, a limited-memory code for bound-constrained optimization.

•NEOS Guide: A collection of informational and educational material about optimization, including a guide to optimization software, thumbnail sketches of algorithms for different optimization problems, applications case studies, FAQs (answers to frequently asked questions) for linear and nonlinear programming, and collections of test problems and technical reports.

•NEOS Server: A facility for solving optimization problems remotely over the Internet. Users submit their problems through e-mail, the World Wide Web, or an Xwindows tool. Their problems are automatically scheduled and solved on workstations at Argonne, Northwestern and the University of Wisconsin.

3 Optimization Software Resources

You can have data on the following software packages:

• The AIMMS modeling language.
• The AMPL modeling language.
ANALYZE linear programming model analysis.
ASA - adaptive simulated annealing.
BPMPD - linear programming.
BQPD - quadratic programming.
BT - minimization.
BTN - block truncated Newton.
CML - constrained maximum likelihood.
CNM - linear algebra and minimization.
CO - constrained optimization.
COMPACT - design optimization.
CONOPT - nonlinear programming.
CONSOL-OPTCAD - engineering system design.
CONTIN - systems of nonlinear equations.
CPLEX - linear programming.
C-WHIZ - linear programming models.
DATAFORM - model management system.
DFNLP - nonlinear data fitting.
DOC - Design Optimization Control Program.
DONLP2 - nonlinear constrained optimization.
DOT - Design Optimization Tools.
EASY FIT - parameter estimation in dynamic systems.
Excel and Quattro Pro Solvers - spreadsheet-based linear, integer and nonlinear programming
EZMOD - modeling environment for decision support systems
FortMP - linear and mixed integer quadratic programming.
FSQP - nonlinear and minmax constrained optimization, with feasible iterates.
GAMS - modeling language.
GAUSS - matrix programming language.
GENESIS - structural optimization software.
GENOS 1.0 - nonlinear network optimization.
GINO - nonlinear programming.
GRG2 - nonlinear programming.
GOM: Global Optimization for Mathematica.
HOMPACK - nonlinear equations and polynomials.
HOPDM - linear programming (interior-point).
HARWELL Library - linear and nonlinear programming, nonlinear equations, data fitting.
HS/LP Linear Optimizer - linear programming.
ILOG - constraint-based programming and nonlinear optimization.
IMSL - Fortran and C Library.
KNITRO -nonlinear programming.
KORBX - linear programming.
LAMPS - linear and mixed-integer programming.
LANCELOT - large-scale problems.
LBFGS - unconstrained minimization.
LBFGS-B - bound-constrained minimization.
LGO IDE - continuous and Lipschitz global optimization.
LINDO - linear, mixed-integer and quadratic programming.
LINGO - modeling language.
LIPSOL - linear programming.
LNOS - linear programming/network flow problems.
LOQO - Linear programming, unconstrained and constrained nonlinear optimization.
LP88 and BLP88 - linear programming.
LSGRG2 - nonlinear programming.
LSNNO - large scale optimization.
LSSOL - least squares problems.
M1QN3 - unconstrained optimization.
MATLAB - optimization toolbox.
MAXLIK - maximum likelihood estimation.
MCS - global optimization.
MILP88 - mixed integer programming.
MINOS - linear programming and nonlinear optimization.
MINTO - mixed integer linear programming.
MINPACK-1 - nonlinear equations and least squares.
MIPIII - mixed integer programming.
MODFIT - parameter estimation in dynamic systems.
MODLER - linear programming modeling language.
MODULOPT - unconstrained problems and simple bounds.
MOSEK - linear programming and convex optimization.
MPL - modeling system
MPSIII - mathematical programming system.
NAG C Library - nonlinear and quadratic programming, minimization
NAG Fortran Library - nonlinear and quadratic programming, minimization
NETFLOW - network optimization.
NITSOL - systems of nonlinear equations.
NLPE - minimization and least squares problems.
NLPJOB - Mulicriteria optimization.
NLPQL - nonlinear programming.
NLPQLB - nonlinear programming with constraints.
NLSSOL - constrained nonlinear least squares problems.
NLPSPR - nonlinear programming.
NOVA - nonlinear programming.
NPSOL - nonlinear programming.
ODRPACK - NLS and ODR problems.
OML - linear and mixed-integer programming, model management.
OPL Studio - optimization language and solver environment.
OPTDES - design optimization tool.
OPTECH - global optimization.
OptiA - unconstrained, constrained, quadratic, minimax, nonsmooth, and global optimization
OPTIMA Library - optimization and sensitivity analysis.
OPTIMAX - component software for optimization
OPTMUM - optimization.
OPTPACK - constrained and unconstrained optimization.
OptQuest - global optimization
OSL - linear, quadratic and mixed-integer programming.
PCOMP - modelling language with automatic differentiation.
PCx - linear programming with a primal-dual interior-point method.
PDEFIT - parameter estimation in partial differential equations.
PETSc - parallel solution of nonlinear equations and unconstrained minimization problems.
PLAM - algebraic modeling language for mixed integer programming, constraint logic programming, etc.
PORT 3 - minimization, least squares, etc.
PROC LP - linear and integer programming.
PROC NETFLOW - network optimization.
PROC NLP - various quadratic and nonlinear optimization problems.
Q01SUBS - quadratic programming for matrices.
QAPP - quadratic assignment problems.
QL - quadratic programming.
QPOPT - linear and quadratic problems.
RANDMOD - linear programming model randomizer.
SIMUSOLV - modeling software.
SPRNLP - sparse and dense nonlinear programming, sparse nonlinear least squares, including the SOCS package for optimal control
SPEAKEASY - numerical problems and operations research.
SNOPT - large-scale quadratic and nonlinear programming problems.
SQOPT - large-scale linear and convex quadratic programming problems.
SQP - nonlinear programming.
SYNAPS Pointer - multidisciplinary design optimization software
SYSFIT - parameter estimation in systems of nonlinear equations.
TENMIN - unconstrained optimization.
TENSOLVE - nonlinear equations and least squares.
TN/TNBC - minimization.
TNPACK - nonlinear unconstrained minimization.
TSA88 - network linear programming.
UNCMIN - unconstrained optimization.
VE08 - nonlinear optimization.
VE10 - nonlinear least squares.
VIG and VIMDA - decision support system.
What'sBest - linear and mixed integer programming.
WHIZARD - linear programming, mixed-integer programming.
XLSOL - Linear, integer and nonlinear programming for AMPL models
XPRESS-MP from Dash Associates - linear and integer programming.

4 AMPL—a modeling language for mathematical programming

4.1 Instruction of AMPL

AMPL is a modeling language for linear and nonlinear optimization problems, in continuous or discrete variables. It lets people use common notation and familiar concepts to formulate optimization models and examine solutions, while the computer manages communication with an appropriate solver.

AMPL offers an interactive command environment for setting up and solving optimization problems. A flexible interface allows a user to switch between solvers with a single command, and to select options that may improve solver performance. Once optimal solutions have been found, they are expressed in terms of the modeler's notation so that they can be viewed and analyzed. All of the general set and arithmetic expressions of AMPL can also be used for displaying data and results; a variety of options are available to format data for browsing on a screen, printing reports, or preparing input to other programs.

Looping and if-then-else commands allow the AMPL command language to also be used as a programming language, for rapid prototyping and testing of iterative schemes that incorporate the solution of one or more problems at each step.

4.2 Need more info?

Check out the AMPL Web Site for an extensive FAQ, up-to-date information on new features, and complete lists of platforms, vendors and solver software. Further information can also be obtained by writing to info@ampl.com.

Netlib also has an AMPL area that contains bug reports, sample models, the latest versions of the AMPL book software for numerous platforms, and sample code that demonstrates how to hook additional solvers to AMPL.

Latest image