Scatter Search and Local NLP Solvers: A Multistart Framework for Global Optimization

  • Authors:
  • Zsolt Ugray;Leon Lasdon;John Plummer;Fred Glover;James Kelly;Rafael Martí

  • Affiliations:
  • Management Information Systems Department, Utah State University, Logan, Utah 84322;Department of Information, Risk, and Operations Management, McCombs School of Business, The University of Texas at Austin, Austin, Texas 78712;Department of Computer Information Systems and Quantitative Methods, Texas State University, San Marcos, Texas 78666;University of Colorado, Boulder, Colorado 80309;OptTek Systems, Inc., Boulder, Colorado 80302;Departamento de Estadística e Investigación Operativa, University of Valencia, 46100 Burjassot, Valencia, Spain

  • Venue:
  • INFORMS Journal on Computing
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

The algorithm described here, called OptQuest/NLP or OQNLP, is a heuristic designed to find global optima for pure and mixed integer nonlinear problems with many constraints and variables, where all problem functions are differentiable with respect to the continuous variables. It uses OptQuest, a commercial implementation of scatter search developed by OptTek Systems, Inc., to provide starting points for any gradient-based local solver for nonlinear programming (NLP) problems. This solver seeks a local solution from a subset of these points, holding discrete variables fixed. The procedure is motivated by our desire to combine the superior accuracy and feasibility-seeking behavior of gradient-based local NLP solvers with the global optimization abilities of OptQuest. Computational results include 155 smooth NLP and mixed integer nonlinear program (MINLP) problems due to Floudas et al. (1999), most with both linear and nonlinear constraints, coded in the GAMS modeling language. Some are quite large for global optimization, with over 100 variables and 100 constraints. Global solutions to almost all problems are found in a small number of local solver calls, often one or two.