This release is a pre-release and may not be stable for production use.
truman: dynamic complex-system simulations for one-shot optimal decision-making agents
What is it?
truman is a package that implements suites of environments (system simulations) exhibiting behaviours of real world large scale systems, e.g. changes in online consumer cohort conversion as a function of changes in product price.
truman is not an environment for training reinforcement learning agents, but aims to be an effective way to develop and validate one-shot optimal decision-making agents that perform well on unique systems that can’t be reliably simulated and that have a high cost of experimentation.
Main Features
- Environments that are compatible (built on) OpenAI's Gym interface
- Various suites of environments that exhibit common behaviours of real world dynamic systems
truman.agent_registioninterface for managing agents and their hyperparameterstruman.runinterface for running suites of agents on suites of environments and storing performance summaries and full histories
Installation
To get started, you'll need to have Python 3.7+ installed. Then:
pip install truman
Editable install from source
You can also clone the truman Git repository directly. This is useful when you're working on adding new environments or modifying truman itself. Clone and install in editable mode using:
git clone https://github.com/datavaluepeople/truman
cd truman
pip install -e .
Background: Why truman?
The base framework that environments are built upon is OpenAI’s Gym. Gym is a powerful framework for building environments and developing reinforcement learning algorithms - but Gym's environments are mostly directed towards training agents on problems that can be simulated exactly, e.g. playing an Atari game. Our work at datavaluepeople is often developing reinforcement learning algorithms for making a massive number of optimal decisions simultaneously on high noise and changing environments, e.g. pricing 100,000s of travel products daily, or health intervention decisions for 1,000,000s of humans daily. In such environments, agents should be able to learn quickly and adapt to novel behaviours, since the price of testing algorithms is very high.
Thus the suites of environments in truman are directed towards the goal of large scale optimised decision making on complex systems, and only allow agents a single episode to both learn and optimize on simultaneously.
License
Metadata
Release files for truman 0.0.1a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| truman-0.0.1a1-2.tar.gz | 33.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| truman-0.0.1a1-2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 54.5 kB
Release files / truman-0.0.1a1-2.tar.gz
| Download URL | truman-0.0.1a1-2.tar.gz |
|---|---|
| Size | 33.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
69c72f2f6a1a076f53c544e479818e146890f301a08dbf875ac181fd27db5db2
|
|
BLAKE2b-256 checksum How to use checksums |
7048f595fe5c27e71c4a80a96f7e93b23e114f229ca339b0b49e963eb00ecce1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.7
|
Release files / truman-0.0.1a1-2-py3-none-any.whl
| Download URL | truman-0.0.1a1-2-py3-none-any.whl |
|---|---|
| Size | 21.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
97ccf230f2486953568d764558937d1153d82c04cd7fb24a493f88d1571ba407
|
|
BLAKE2b-256 checksum How to use checksums |
b72dda40c69e1f073a34552c98c8fb5dfa679af6fceeaf6bcdc5a3e7480afa92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.7.7
|