Skip to main content

Robust Stochastic Optimization Made Easy

Project description

Robust Stochastic Optimization Made Easy

PyPI PyPI - downloads Commit activity Last commit tests Docs Project Status: Active - The project has reached a stable, usable state and is being actively developed. GitHub closed issues GitHub issues

RSOME (Robust Stochastic Optimization Made Easy) is an open-source Python package for generic modeling of optimization problems (subject to uncertainty). Models in RSOME are constructed by variables, constraints, and expressions that are formatted as N-dimensional arrays. These arrays are consistent with the NumPy library in terms of syntax and operations, including broadcasting, indexing, slicing, element-wise operations, and matrix calculation rules, among others. In short, RSOME provides a convenient platform to facilitate developments of robust optimization models and their applications.

Content

Installation

The RSOME package can be installed by using the pip command:


pip install rsome


Solver interfaces

The RSOME package transforms robust or distributionally robust optimization models into deterministic linear or conic programming problems, and solved by external solvers. Details of compatible solvers and their interfaces are presented in the following table.

Solver License type Required version RSOME interface Second-order cone constraints Exponential cone constraints Semidefiniteness constraints
scipy.optimize Open-source >= 1.9.0 lpg_solver No No No
CyLP Open-source >= 0.9.0 clp_solver No No No
OR-Tools Open-source >= 7.5.7466 ort_solver No No No
ECOS Open-source >= 2.0.10 eco_solver Yes Yes No
Gurobi Commercial >= 9.1.0 grb_solver Yes No No
Mosek Commercial >= 10.0.44 msk_solver Yes Yes Yes
CPLEX Commercial >= 12.9.0.0 cpx_solver Yes No No
COPT Commercial >= 7.0.3 cpt_solver Yes No Yes

Getting started

Documents of RSOME are provided as follows:

Team

RSOME is a software project supported by Singapore Ministry of Education Tier 3 Grant Science of Prescriptive Analytics. It is primarly developed and maintained by Zhi Chen, Melvyn Sim, and Peng Xiong. Many other researchers, including Erick Delage, Zhaowei Hao, Long He, Zhenyu Hu, Jun Jiang, Brad Sturt, Qinshen Tang, as well as anonymous users and paper reviewers, have helped greatly in the way of developing RSOME.

Citation

If you use RSOME in your research, please cite our papers:

Bibtex entry:

@article{chen2021rsome,
  title={{RSOME} in {Python}: An open-source package for robust stochastic optimization made easy},
  author={Chen, Zhi and Xiong, Peng},
  journal={INFORMS Journal of Computing},
  volume={35},
  number={4},
  pages={717--724},
  year = {2023},
  publisher={INFORMS}
}
@article{chen2020robust,
  title={Robust stochastic optimization made easy with RSOME},
  author={Chen, Zhi and Sim, Melvyn and Xiong, Peng},
  journal={Management Science},
  volume={66},
  number={8},
  pages={3329--3339},
  year={2020},
  publisher={INFORMS}
}

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

rsome-1.3.1-py3-none-any.whl (87.8 kB view details)

Uploaded Python 3

File details

Details for the file rsome-1.3.1-py3-none-any.whl.

File metadata

  • Download URL: rsome-1.3.1-py3-none-any.whl
  • Upload date:
  • Size: 87.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for rsome-1.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ce3ecf5752bf0974f9b70219c8c0cfd4b8df5f8b05725cf1371b5f2f7840a66f
MD5 c067e781a18d1a7697c582b478e832af
BLAKE2b-256 1dfbb54592c9c96fbde222bad92df462636c431aba76f614f157b7ad1b981b86

See more details on using hashes here.

Supported by

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