Global Optimization Software

Global Optimization Software


Global Search, As Timely As Ever

``Consider everything. Keep the good. Avoid evil whenever you notice it.'' 
(1 Thess. 5:21-22)


This file is part of my global optimization web site. It contains sections on


We are working on a comparative evaluation of a number of currently available constrained global optimization programs. The results will be made publicly available here. If, as an authors of such software, you are interested in our evaluation of your code, the notes on Global Optimization Software Evaluation will tell you what you need to know.


Janos Pintér's recent Optima Newsletter survey on continuous global optimization software is now available online. Please send new or updated information regarding your global optimization software to Janos Pintér.


Below is a list of publicly available global optimization programs (and a few commercial ones). The quality in terms of speed, reliability, and/or automatic parameter choices, stopping tests and ease of use differs widely. I have not checked out the codes (will perhaps be done some day); but I am very interested in comparisons (cf. test results available online) or any other useful comments (mail here) on the sources given.

In a few cases, I added information on problems where a code has difficulties. This is not meant to criticize the code (it may work excellent on other classes of problems) but as a service to the research community: to challenge researchers to overcome current limitations, and to compete for better and better techniques.

Lack of critical information doesn't mean that a code has no problems, but only that nobody informed me about any weaknesses. Indeed, all current global optimization codes for nonlinear problems are unreliable (i.e., cannot always find the global optimum in a reasonable, predictable amount of time and space), with unknown performance limits.

At the present stage of knowledge, if you need global optimization you must experiment with the known methods (or packages) until you have something satisfying you. Unfortunately, this is a rather unsatisfactory state of the art... In general, performance must be expected to deteriorate with increasing dimension. Dimension 50-100 is probably already very high for general-purpose codes on all but the simplest problems. Many codes allow no constraints or only bound constraints.

Since I was asked repeatedly what to try first, here are some suggestions for continuous problems. But they are backed up by little else than my feelings of what I'd try first, and I am using a small font size to emphasize that this is information of a poorer quality than in the rest of my pages. Please write me if you have significant experience that leads to improved suggestions, or that confirms the ones given.

  • If the problem has the particular structure required for cGOP, BARON, or Q01SUBS, try these.
  • Otherwise, try Boender-Timmer-Rinnoy-Kan (for unconstrained problems), ASA (for bound constrained problems), or GENOCOP III (for general constrained problems). 
    In a comparison of several stochastic algorithms in Fortran or C on 45 problems of dimension 2-30, Tibor Csendes' implementation of the Boender-Timmer-Rinnoy-Kan algorithm was the clear winner. (But MCS and DIRECT/gblSolve that are publicly available in Matlab only and did not fit the environment of the above study are even better, at least on the limited Dixon-Szego test set.) So you might want to use a penalty or barrier formulation of a constrained problem to be able to apply one of these algorithms.
  • If these first choices turn out to be not reliable enough on your problem class, but the problem is in factorable form (i.e., uses arithmetic operations and elementary functions but no branches), try INTOPT_90. These are generally slow since they use directed rounding; but, unless the program is overwhelmed by the number of boxes to be processed, you can be sure with mathematical certainty that you found all global minima!


Public Domain Systems


Some Commercial Systems

  • (no attempt for completeness is made)
GloMIQO, Global Mixed-Integer Quadratic Optimizer  in GAMS (by Misener and Floudas) 
solves quadratically constrained quadratic programs with optional integer constraints to global optimality.

BARON, Branch-And-Reduce Optimization Navigator in Fortran (by Nikos Sahinidis) 
A general purpose solver for optimization problems with nonlinear constraints and/or integer variables. Fast specialized solvers for many linearly constrained problems. GAMS interface.

LINDO/LINGO now has global optimization facilities

Interval Global Solver from Frontline Systems. Visual Basic and Excel interfaces

LSGRG Nonlinear Mixed Integer Solver for AMPL

MINOPT (Mixed Integer Nonlinear Programming)

GAMS/DICOPT Solver for Mixed Integer Nonlinear Programming

EZMod Quadratic Mixed Integer Programming (QMIP) Solver

CPLEX Linear Mixed Integer Solver (branch-and-bound for mixed integer linear programs)

CMMIP, Mixed Integer Programming for mixed integer LPs 
``In CMMIP, each processor runs a version of CPLEX ... Parallelism is attained by looking at multiple nodes of the branch-and-bound search tree simultaneously ... near-linear speedups on up to 128 processors''

MINTO, Mixed INTeger Optimizer for mixed integer LPs

IBM Optimization Subroutine Library (OSL) (with a branch-and-bound mixed integer QP solver)

NAG FortMP (branch-and-bound mixed integer LP solver)

XPRESS-MP (mixed integer LP, QP and MINLP solver)

TOMLAB modeling and optimization environment. It includes, apart from many local algorithms, improved versions of the global optimization algorithms DIRECT and EGO of Jones, rbfSolve of Gutmann and Powell, Pinter's LGO, and mixed integer nonlinear solvers of Leyffer and Fletcher.

OptQuest (Tabu and Scatter search, etc.)

OptiREX, Cutting optimizer for rectangular sheets

ILOG Solver C++ software library which solves industrial problems for which generating or optimizing a solution is a highly combinatorial task, using constraint satisfaction techniques

Koalog Constraint Solver in Java

HEURO, Integrated Optimization Environment (for large scale black box global optimization with expensive objective function)


Constrained local and global optimization  (by Janos Pinter) 
includes MathOptimizer for Mathematica and LGO on various platforms

IOSO, Indirect Optimization Based on Self-Organization in Fortran 77, for large-scale and possibly multiobjective inequality constrained problems 
heuristic: builds local statistical models from function values and optimizes these

Constrained Global Optimization with Mathematica (including mixed integer problems and 0-1 integer problems) using adaptive grid refinement (by Loehle Enterprises, commercial)

Generator, Genetic Algorithm (for Excel worksheets) 
``You can use Generator to maximize profits...'' (... of New Light Industries, Ltd., of course)

Magestic, Data Fitting by Global Optimization (for Excel worksheets, commercial)

GLO Global Local Optimizer (by Michael J. Murphy) 
genetic algorithm for expensive black box (finite element) objective functions with constraints

Pointer, Constrained Optimization Tool with automatic selection or combination of up to four different search algorithms, including their tuning parameters (by Synaps, Inc.)

OptiA 
``Options for global optimization include algorithms based on cluster analysis and Monte Carlo techniques.''

Curvi for bound constrained optimization (by Windward Technologies)

OPTECH guided stochastic search for constrained global optimization

GEATbx Matlab Genetic and Evolutionary Algorithm Toolbox (by Hartmut Pohlheim)

Astrokettle Bin Packing in 2D and 3D

HIRON, stochastic global search for multivariate functions on a box

GIRAFFE Production Scheduling


UNICALC Interval Branch and Bound  (by Alexander Semenov) 
accepts inequality and/or equality constraints and decision variables (free demo version)

CLP(BNR), Constraint Logic Programming for Boolean, Natural and Real variables

ECLiPSe, ECRC Constraint Logic Parallel System constraint satisfaction (cheap for academic users)

IF/Prolog Prolog constraint satisfaction package

CHIP Prolog, C, and C++ programs for constraint satisfaction and scheduling

Constraint Logic Programming over Finite Domains in SICStus Prolog

Integer Programming Links from the Optimization Software Guide


Some of My Other Pages

Global (and Local) Optimization

Mathematics Links
Statistics Links
Computational Mathematics Links
Mathematical Software

Interval Methods
Regularization
Protein Folding

my home page (http://www.mat.univie.ac.at/~neum) 

Arnold Neumaier (Arnold.Neumaier@univie.ac.at)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值