Skip to main content

SYMbolic Reformulation and Optimization (SYMRO) package

Project description

The Symbolic Reformulation and Optimization (SymRO) package is a multi-purpose modelling/optimization toolset. The aim of this package is to provide ready-to-use, model-agnostic implementations of advanced optimization algorithms. SymRO reads a problem formulation provided by the user, and constructs a symbolic representation of each construct in the problem. The only input format supported at this time is a text file written in the AMPL modelling language [1]. SymRO comes with a set of tools related to problem reformulation and/or optimization. To solve an optimization problem, SymRO connects to a backend engine. The AMPL engine is the only backend supported at this time.

Input Formats

  • Model file formulated in the AMPL modelling language

Backends

  • AMPL (separate installation required)

Features

  • Generalized Benders Decomposition (GBD) [2]

Planned Features

  • Convex Relaxation
  • Nonconvex GBD [3]
  • Surrogate Modelling
  • Pyomo support

Acknowledgements

SymRO was developed under the auspices of the McMaster Advanced Control Consortium (MACC). The support of the MACC is gratefully acknowledged.

References

  1. Fourer R, Gay DM, Kernighan BW. A Modeling Language for Mathematical Programming. Management Science. 1990;36(5):519-554.
  2. Geoffrion A. Generalized Benders Decomposition. Journal of Optimization Theory and Applications. 1972;10(4):237-260.
  3. Li X, Tomasgard A, Barton PI. Nonconvex Generalized Benders Decomposition for Stochas- tic Separable Mixed-Integer Nonlinear Programs. Journal of Optimization Theory and Applications. 2011;151(3):425-454.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

symro-0.0.2.tar.gz (83.2 kB view details)

Uploaded Source

File details

Details for the file symro-0.0.2.tar.gz.

File metadata

  • Download URL: symro-0.0.2.tar.gz
  • Upload date:
  • Size: 83.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.25.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.8.0

File hashes

Hashes for symro-0.0.2.tar.gz
Algorithm Hash digest
SHA256 a9eeda853df45a73520d4f5fb647c967dd19ea2f3bf988b85b2ea9a093aa79e5
MD5 f3a0116c9e1ec8f7bd70132ecb29f103
BLAKE2b-256 a6543038eae24a670f100720da0e9426a3b2b7f8997c4091f7859a511e5f4d14

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page