Name | plangym JSON |
Version |
0.1.28
JSON |
| download |
home_page | None |
Summary | Plangym is an interface to use gymnasium for planning problems. It extends the standard interface to allow setting and recovering the environment states. |
upload_time | 2024-10-16 17:39:09 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.10 |
license | MIT License Copyright (c) 2018 - 2021 FragileTech Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
keywords |
rl
gymnasium
plangym
planning
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
## Welcome to Plangym
[![Documentation Status](https://readthedocs.org/projects/plangym/badge/?version=latest)](https://plangym.readthedocs.io/en/latest/?badge=latest)
[![Code coverage](https://codecov.io/github/FragileTech/plangym/coverage.svg)](https://codecov.io/github/FragileTech/plangym)
[![PyPI package](https://badgen.net/pypi/v/plangym)](https://pypi.org/project/plangym/)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)
[![license: MIT](https://img.shields.io/badge/license-MIT-green.svg)](https://opensource.org/licenses/MIT)
Plangym is an open source Python library for developing and comparing planning algorithms by providing a
standard API to communicate between algorithms and environments, as well as a standard set of environments
compliant with that API.
Given that OpenAI's `gym` has become the de-facto standard in the research community, `plangym`'s API
is designed to be as similar as possible to `gym`'s API while allowing to modify the environment state.
Furthermore, it provides additional functionality for stepping the environments in parallel, delayed environment
initialization for dealing with environments that are difficult to serialize, compatibility with `gym.Wrappers`,
and more.
## Supported environments
Plangym currently supports all the following environments:
* OpenAI gym classic control environments
* OpenAI gym Box2D environments
* OpenAI gym Atari 2600 environments
* Deepmind's dm_control environments
* Stable-retro environments
## Getting started
### Stepping an environment
```python
import plangym
env = plangym.make(name="CartPole-v0")
state, obs, info = env.reset()
state = state.copy()
action = env.action_space.sample()
data = env.step(state=state, action=action)
new_state, observ, reward, end, truncated, info = data
```
### Stepping a batch of states and actions
```python
import plangym
env = plangym.make(name="CartPole-v0")
state, obs, info = env.reset()
states = [state.copy() for _ in range(10)]
actions = [env.action_space.sample() for _ in range(10)]
data = env.step_batch(states=states, actions=actions)
new_states, observs, rewards, ends, truncateds, infos = data
```
### Using parallel steps
```python
import plangym
env = plangym.make(name="MsPacman-v0", n_workers=2)
state, obs, info = env.reset()
states = [state.copy() for _ in range(10)]
actions = [env.action_space.sample() for _ in range(10)]
data = env.step_batch(states=states, actions=actions)
new_states, observs, rewards, ends, truncateds, infos = data
```
## Installation
TODO: Meanwhile take a look at how we set up the repository in `.github/workflows/push.yaml`.
## License
Plangym is released under the [MIT](LICENSE) license.
## Contributing
Contributions are very welcome! Please check the [contributing guidelines](CONTRIBUTING.md) before opening a pull request.
If you have any suggestions for improvement, or you want to report a bug please open
an [issue](https://github.com/FragileTech/plangym/issues).
# Installing nes-py
#### Step 1: Install necessary development tools and libraries
sudo apt-get update
sudo apt-get install build-essential clang
sudo apt-get install libstdc++-10-dev
#### Step 2: Verify the compiler and include paths
#### Ensure you are using g++ instead of clang++ if clang++ is not properly configured
export CXX=g++
export CC=gcc
# Rebuild the project
rye install nes-py --git=https://github.com/FragileTech/nes-py
Raw data
{
"_id": null,
"home_page": null,
"name": "plangym",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "Guillem Duran Ballester <guillem@fragile.tech>",
"keywords": "RL, gymnasium, plangym, planning",
"author": null,
"author_email": "Guillem Duran Ballester <guillem@fragile.tech>",
"download_url": "https://files.pythonhosted.org/packages/27/75/34466eb6865af04144e8d7a72f0332c85a967580c41d35edd3e9d5e2288c/plangym-0.1.28.tar.gz",
"platform": null,
"description": "## Welcome to Plangym\n\n[![Documentation Status](https://readthedocs.org/projects/plangym/badge/?version=latest)](https://plangym.readthedocs.io/en/latest/?badge=latest)\n[![Code coverage](https://codecov.io/github/FragileTech/plangym/coverage.svg)](https://codecov.io/github/FragileTech/plangym)\n[![PyPI package](https://badgen.net/pypi/v/plangym)](https://pypi.org/project/plangym/)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/ambv/black)\n[![license: MIT](https://img.shields.io/badge/license-MIT-green.svg)](https://opensource.org/licenses/MIT)\n\nPlangym is an open source Python library for developing and comparing planning algorithms by providing a \nstandard API to communicate between algorithms and environments, as well as a standard set of environments \ncompliant with that API.\n\nGiven that OpenAI's `gym` has become the de-facto standard in the research community, `plangym`'s API \nis designed to be as similar as possible to `gym`'s API while allowing to modify the environment state.\n\nFurthermore, it provides additional functionality for stepping the environments in parallel, delayed environment\ninitialization for dealing with environments that are difficult to serialize, compatibility with `gym.Wrappers`, \nand more.\n\n## Supported environments\nPlangym currently supports all the following environments:\n\n* OpenAI gym classic control environments\n* OpenAI gym Box2D environments\n* OpenAI gym Atari 2600 environments\n* Deepmind's dm_control environments\n* Stable-retro environments\n\n## Getting started\n\n### Stepping an environment\n```python\nimport plangym\nenv = plangym.make(name=\"CartPole-v0\")\nstate, obs, info = env.reset()\n\nstate = state.copy()\naction = env.action_space.sample()\n\ndata = env.step(state=state, action=action)\nnew_state, observ, reward, end, truncated, info = data\n```\n\n\n### Stepping a batch of states and actions\n```python\nimport plangym\nenv = plangym.make(name=\"CartPole-v0\")\nstate, obs, info = env.reset()\n\nstates = [state.copy() for _ in range(10)]\nactions = [env.action_space.sample() for _ in range(10)]\n\ndata = env.step_batch(states=states, actions=actions)\nnew_states, observs, rewards, ends, truncateds, infos = data\n```\n\n\n### Using parallel steps\n\n```python\nimport plangym\nenv = plangym.make(name=\"MsPacman-v0\", n_workers=2)\n\nstate, obs, info = env.reset()\n\nstates = [state.copy() for _ in range(10)]\nactions = [env.action_space.sample() for _ in range(10)]\n\ndata = env.step_batch(states=states, actions=actions)\nnew_states, observs, rewards, ends, truncateds, infos = data\n```\n\n## Installation \nTODO: Meanwhile take a look at how we set up the repository in `.github/workflows/push.yaml`.\n\n## License\nPlangym is released under the [MIT](LICENSE) license.\n\n## Contributing\n\nContributions are very welcome! Please check the [contributing guidelines](CONTRIBUTING.md) before opening a pull request.\n\nIf you have any suggestions for improvement, or you want to report a bug please open \nan [issue](https://github.com/FragileTech/plangym/issues).\n\n\n# Installing nes-py\n\n#### Step 1: Install necessary development tools and libraries\nsudo apt-get update\nsudo apt-get install build-essential clang\nsudo apt-get install libstdc++-10-dev\n\n#### Step 2: Verify the compiler and include paths\n#### Ensure you are using g++ instead of clang++ if clang++ is not properly configured\nexport CXX=g++\nexport CC=gcc\n\n# Rebuild the project\nrye install nes-py --git=https://github.com/FragileTech/nes-py",
"bugtrack_url": null,
"license": "MIT License Copyright (c) 2018 - 2021 FragileTech Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.",
"summary": "Plangym is an interface to use gymnasium for planning problems. It extends the standard interface to allow setting and recovering the environment states.",
"version": "0.1.28",
"project_urls": null,
"split_keywords": [
"rl",
" gymnasium",
" plangym",
" planning"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "675e385822fd0db79569aa761756c8f3a1cce4f03eae61f19a472215194f449c",
"md5": "98796e5cecb28b1e449187824a4f83f0",
"sha256": "d255e228e6dec7faeefcd2c77ca3e4a6e2bcbe4edb58acac1689b086513aeed2"
},
"downloads": -1,
"filename": "plangym-0.1.28-py3-none-any.whl",
"has_sig": false,
"md5_digest": "98796e5cecb28b1e449187824a4f83f0",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 64365,
"upload_time": "2024-10-16T17:39:06",
"upload_time_iso_8601": "2024-10-16T17:39:06.721712Z",
"url": "https://files.pythonhosted.org/packages/67/5e/385822fd0db79569aa761756c8f3a1cce4f03eae61f19a472215194f449c/plangym-0.1.28-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "277534466eb6865af04144e8d7a72f0332c85a967580c41d35edd3e9d5e2288c",
"md5": "704d2eefb5daa020b375ff5385541140",
"sha256": "5a4c2cab45c4bae64636dcae83f8ad7ac644dd592bb15e9453bc405382f8499f"
},
"downloads": -1,
"filename": "plangym-0.1.28.tar.gz",
"has_sig": false,
"md5_digest": "704d2eefb5daa020b375ff5385541140",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 61556299,
"upload_time": "2024-10-16T17:39:09",
"upload_time_iso_8601": "2024-10-16T17:39:09.304744Z",
"url": "https://files.pythonhosted.org/packages/27/75/34466eb6865af04144e8d7a72f0332c85a967580c41d35edd3e9d5e2288c/plangym-0.1.28.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-16 17:39:09",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "plangym"
}