Optimization Services









About Optimization Services

Optimization Services (OS) is a general design for XML-based, service-oriented, optimization-centered distributed architecture. It is intended to be an open source computational infrastructure for running optimization as services on distributed systems (e.g. Internet).  With its corresponding Optimization Services Protocol (OSP), which includes 20+ specifications of Optimization Services x Languages (OSxL), Optimization Services is intended to be an industrial standard and a unified framework for new generation (mathematical/algebraic) modeling systems over distributed systems, including the Internet.

This project originated as an initiative to start a wider level of cooperation to move toward a final standardization and facilitate a healthier development environment for research in the area of Operations Research (OR) and Management Sciences (MS). It is funded by the National Science Foundation (NSF) with the project name "Next-Generation Servers for Optimization as an Internet Resource." Under this project, the next-generation NEOS server, currently hosted at the Argonne National Lab, will become an Optimization Services Registry providing locations of all the decentralized Optimization Services.

Optimization Services made its first public debut at INFORMS Annual Meeting at Denver 2004. In a word, Optimization Services is:

  • A Optimization Internet, with solvers being web pages, registries being search engines, modeling language environment being browsers, etc.
  • An open source computation infrastructure for OR with which researchers and practitioners can put up their own algorithmic codes.
  • The new-generation NEOS (Network Enabled Optimization System), only that there is no longer a central server but a registry.
  • A standard computational utility service, with which modelers write the models and get the results without knowing anything about how and where they are solved.

Through standardization of modeling representation, communication, discovery and registration, the framework provides an open infrastructure for all modeling system components including modeling language environment, servers, registries, communications clients, interfaces, analyzers, solvers and simulations. The goal is that all the algorithmic codes will be implemented as services under this framework and customers use these computational services similar to daily utility services.

Although the modeling system framework is intended to an infrastructure in the area of optimization, the design concept and philosophy is general enough to be learned and adopted by designers of any distributed system and architectures.