https://github.com/ethanmclark1/blocksworld3d
3D version of the classic Blocksworld environment for reinforcement learning
https://github.com/ethanmclark1/blocksworld3d
3-dimensional 3d blocksworld gym gymnasium miniworld multi-agent openai-gym pettingzoo
Last synced: 6 months ago
JSON representation
3D version of the classic Blocksworld environment for reinforcement learning
- Host: GitHub
- URL: https://github.com/ethanmclark1/blocksworld3d
- Owner: ethanmclark1
- License: apache-2.0
- Created: 2023-08-11T20:43:37.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-10-30T17:39:18.000Z (almost 2 years ago)
- Last Synced: 2025-03-26T10:36:32.831Z (7 months ago)
- Topics: 3-dimensional, 3d, blocksworld, gym, gymnasium, miniworld, multi-agent, openai-gym, pettingzoo
- Language: Python
- Homepage:
- Size: 60.5 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# An Extension of MiniWorld
Blocksworld3D, building upon the MiniWorld environment, specifically targets the RoomObjects scenario. Designed for reinforcement learning and robotics research, this minimalistic environment aligns with the MiniWorld API.
# Blocksworld3D
Blocksworld3D extends the traditional BlocksWorld planning problem to a 3D domain, adding extra rows of blocks. It presents eight problems, each with unique constraints on initial block positioning and final objectives.
## Installation
Install from ``PyPi`` using:
``pip install blocksworld3d``
Or install from the source using:
```
git clone https://github.com/ethanmclark1/blocksworld3d.git
cd blocksworld3d
pip install -r requirements.txt
pip install -e .
```## Usage
```
import blocksworld3denv = blocksworld3d.env()
env.reset(options={'problem_instance': 'gap'}))
observation, _, terminations, truncations, _ = env.last()
env.step(action)
env.close()
```## List of Problem Instances
| Problem Instance |
| ---------------- |
| ``gap`` |
| ``balance`` |
| ``stairs`` |
| ``pyramid`` |
| ``bed`` |
| ``towers`` |
| ``wave-v0`` |
| ``wave-v1`` |## Contributing
We welcome contributions to Blocksworld3d! Whether it's bug reports, feature requests, or pull requests, your collaboration helps make Blocksworld3d better.
## Support
If you have questions or need support, please contact us at [eclark715@gmail.com](mailto:eclark715@gmail.com), or create an issue in the GitHub repository.
## License
Blocksworld3d is open-source software licensed under the [MIT license](https://chat.openai.com/LINK_TO_YOUR_LICENSE).
## Paper Citation
If you found this environment helpful, consider citing relevant papers. Here's an example citation for the original MiniWorld environment:
@article{MinigridMiniworld23,
author={Maxime Chevalier-Boisvert and Bolun Dai and Mark Towers and Rodrigo de Lazcano and Lucas Willems and Salem Lahlou and Suman Pal and Pablo Samuel Castro and Jordan Terry},
title={Minigrid & Miniworld: Modular & Customizable Reinforcement Learning Environments for Goal-Oriented Tasks},
journal={CoRR},
volume={abs/2306.13831}
year={2023}
}