Recent NEOS Developments: NEOS 99


Jorge Moré, Argonne National Laboratory

In late 1994, shortly after Netscape made its first appearance on the Internet, CRPC researchers at Argonne National Laboratory's (ANL) Mathematics and Computer Science Division and collaborators embarked on a project to demonstrate the new capabilities that could be obtained by combining optimization software with automatic differentiation tools.

"The idea was to develop a service that would take an optimization problem defined by a user, compute derivatives with automatic differentiation tools, link the resulting codes with the optimization solver, and return the results to the user," says ANL Senior Scientist Jorge Moré. "We also wanted to make use of the Internet to deliver results. In essence, we wanted to develop Internet access to a library of optimization software. Contrary to standard optimization libraries, the optimization solvers would not reside at one central location; they would be distributed over the Internet."

From the project's inception, the emphasis was on developing capabilities that would make it easy for a user to solve optimization problems. The researchers were interested in developing capabilities that would not be available elsewhere and show that optimization technology would become the modeling tool of the 21st century.

The Network-Enabled Optimization System (NEOS) way of solving optimization problems only requires the following steps:

  • Develop code to define the optimization problem
  • Submit the optimization problem to NEOS
  • Interpret the results
Once the user obtains the results for any given problem, there will usually be a need to revise the problem, change some parameters, and re-submit.

The advantages of this approach are considerable:

  • It is easy to use
  • There is no need to retrieve software
  • Derivatives and sparsity patterns are computed, if needed
  • It is independent of the computing resources
The first version of the NEOS Server made its public appearance at a Supercomputing '94 demo held in Washington, D.C. The official version of the NEOS Server (version 1.0) was released in September 1995 with an announcement in Netlib (http://www.netlib.org/cgi-bin/mfs/02/95/v95n39.html?325#mfs).

The NEOS Guide (http://www.mcs.anl.gov/otc/Guide/), a Web-resident source of information about optimization algorithms and applications, is the other main component of NEOS. The Guide contains information about optimization software packages, short descriptions of optimization algorithms, and a collection of case studies to show how optimization solves problems.

NEOS proved to be a popular and useful service. Users wanted additional solvers and features, and as a result, the Server continued to be improved. Version 2.0 of the Server was released in May 1997. This version had a new look, new interfaces, and new solvers.

NEOS 99 is the third and latest version of the NEOS Server. The motivation for this version was to make the Server a portable, general Internet resource broker. Portability means that users will be able to install their own version for research or academic purposes. As an additional bonus, NEOS 99 is faster, more reliable, and allows submissions from the user local file space.

Version 2 of the NEOS Server was de-commissioned at around 2 p.m. on March 4, 1999, after having processed 39,900 submissions. NEOS 99 went into service shortly after that with few problems.

NEOS 99 continues to be developed in various ways. In particular, the offering of solvers that accept optimization problem in AMPL (http://www.ampl.com/cm/cs/what/ampl/) format has proved to be very popular. The accompanying chart illustrates the level of interest over a fairly typical four-month period. The current list of AMPL solvers (http://www.mcs.anl.gov/neos/Server/server-solvers.html) continues to grow and expand.

Another interesting development has been the introduction of commercial solvers for integer programming problems. This is interesting because these solvers require significant amounts of computational power, so they are being offered with some restrictions. The XPRESS-MP integer solver accepts input in the form of MPS files and XMPS, and solves problems with the linear and integer programming modeling and optimization system of Dash Associates (http://www.dash.co.uk/) and Dash Optimization (http://www.dashopt.com/).

The researchers are currently discussing the introduction of solvers that accept solvers in GAMS format (http://www.gams.com/). This development is of interest because chemical engineers and economists are avid developers of optimization problems in GAMS format.

"A discussion of NEOS developments is not complete without acknowledging the many users and developers who have contributed to the NEOS development," says Moré. "They are literally too many too mention. However, Mike Mesnier deserves special credit as the developer of all versions of the Server. He developed NEOS 99 as a graduate student project at the University of Illinois. He graduated and is now a member of the technical staff at Intel Corporation."

For more information about NEOS, see http://www.mcs.anl.gov/otc/.

Other Issues of PCR Back to PCR CRPC Home Page