Skip to main content

OR-Gym: A set of environments for developing reinforcement learning agents for OR problems.

Project description

or-gym

Environments for OR and RL Research

This library contains environments consisting of operations research problems which adhere to the OpenAI Gym API. The purpose is to bring reinforcement learning to the operations research community via accessible simulation environments featuring classic problems that are solved both with reinforcement learning as well as traditional OR techniques.

Installation

This library requires Python 3.5+ in order to function.

Installation is possible via pip:

$ pip install or-gym

Or, you can install directly from GitHub with:

git clone https://github.com/hubbs5/or-gym.git
cd or-gym
pip install -e .

Quickstart Example and Benchmarking Example

See the IPython notebook entitled inv-management-quickstart.ipynb in the examples folder for a quickstart example for training an agent in an OR-GYM environemnt, and for using the environment for benchmarking policies found by other algorithms. For the RL algorithm, Ray 1.0.0 is required.

Citation

@misc{HubbsOR-Gym,
    author={Christian D. Hubbs and Hector D. Perez and Owais Sarwar and Nikolaos V. Sahinidis and Ignacio E. Grossmann and John M. Wassick},
    title={OR-Gym: A Reinforcement Learning Library for Operations Research Problems},
    year={2020},
    Eprint={arXiv:2008.06319}
}

Environments

  • Knapsack-v0: a small version of the classic unbounded knapsack problem with 200 items.
  • Knapsack-v1: binary (0-1) knapsack problem with 200 items.
  • Knapsack-v2: bounded knapsack problem with 200 items.
  • Knapsack-v3: stochastic, online knapsack problem.
  • BinPacking-v0 through BinPacking-v5: online bin packing problem taken from Balaji et al..
  • Newsvendor-v0: multi-period newsvendor problem with lead times taken from Balaji et al..
  • VMPacking-v0: permanent, multi-dimensional virtual machine packing problem.
  • VMPacking-v1: temporary, multi-dimensional virtual machine packing problem.
  • VehicleRouting-v0: pick-up and delivery problem with delivery windows taken from Balaji et al..
  • InvManagement-v0: multi-echelon supply chain re-order problem with backlogs.
  • InvManagement-v1: multi-echelon supply chain re-order problem without backlog.
  • NetworkManagement-v0: multi-echelon supply chain network problem with backlogs from Perez et al..
  • NetworkManagement-v1: multi-echelon supply chain network problem without backlogs from Perez et al..
  • PortfolioOpt-v0: Multi-period asset allocation problem for managing investment decisions taken from Dantzig and Infanger.
  • TSP-v0: traveling salesman problem with bi-directional connections and uniform cost.
  • TSP-v1: traveling salesman problem with bi-directional connections.

Resources

Information on results and supporting models can be found here.

Examples

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

or_gym-0.5.0.tar.gz (44.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

or_gym-0.5.0-py3-none-any.whl (39.5 kB view details)

Uploaded Python 3

File details

Details for the file or_gym-0.5.0.tar.gz.

File metadata

  • Download URL: or_gym-0.5.0.tar.gz
  • Upload date:
  • Size: 44.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.41.1 importlib-metadata/0.17 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.13

File hashes

Hashes for or_gym-0.5.0.tar.gz
Algorithm Hash digest
SHA256 aad989edfbd8fd0f2795a638d9cfcf67a8bc5f112202c166b1b64014ec28a236
MD5 a451def437b408839fe2d4ed2a8125d7
BLAKE2b-256 15460fb3b3182e0303e0d5306290d43eaea5745d0dd98ba9551b8f6f6afd7cef

See more details on using hashes here.

File details

Details for the file or_gym-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: or_gym-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 39.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/34.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.41.1 importlib-metadata/0.17 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.13

File hashes

Hashes for or_gym-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd3bf5221edcedf0af7f97dbd6e658514c3b35507480b6087e8de2d4761f6105
MD5 850585d899d434b8ac41f01a51c25473
BLAKE2b-256 e0f93c782de6c154ed27049634128a5ec579e262b08cca18b78bd321bf547709

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