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
- Fourer R, Gay DM, Kernighan BW. A Modeling Language for Mathematical Programming. Management Science. 1990;36(5):519-554.
- Geoffrion A. Generalized Benders Decomposition. Journal of Optimization Theory and Applications. 1972;10(4):237-260.
- 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.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a9eeda853df45a73520d4f5fb647c967dd19ea2f3bf988b85b2ea9a093aa79e5
|
|
| MD5 |
f3a0116c9e1ec8f7bd70132ecb29f103
|
|
| BLAKE2b-256 |
a6543038eae24a670f100720da0e9426a3b2b7f8997c4091f7859a511e5f4d14
|