Gym Craftingworld
This is a (work-in-progress) gym package for a 2D crafting environment. This environment is based off one first described in Plan Arithmetic: Compositional Plan Vectors for Multi-Task Control, published in NeurIPS 2019, and the mechanics are adapted from the corresponding code at code.
You can read the documentation here.
Environment description
This environment consists of a two-dimensional top-down, grid-based world consisting of 4x4 pixel cells.
The environment contains seven object types of object: Tree, Rock, Logs, Wheat, Bread, Hammer, and Axe.
Different objects are represented by differently coloured 4x4 blocks, while the agent is represented by a 2x2 white pixel block centered within the 4x4 cell.
The agent's actions are descrete and consist of six possible choices: Up, Down, Left, Right, PickUp, and Drop.
Logs, hammers, and axes can be picked up by agent. Trees and rocks block the agent's movement.
When an agent picks up an object, its block changes to a square block with 2x1 white pixels on top and 2x1 pixels below in the color of the object.
The environment consists of nine skills:
ChopTree-- The agent is required to be holding anAxeand on a cell with aTreetoChopTreeand turn it intoLogs.BuildHouse-- The agent is required to be holding aHammerand on a cell with someLogstoBuildHouse.MakeBread-- The agent is required to be holding anAxeand on a cell with someWheattoMakeBreadand createBread.EatBread-- The agent is required to be on a cell withBreadtoEatBread.BreakRock-- The agent is required to be holding aHammerand on a cell with aRocktoBreakRock.GoToHouse-- The agent is required to be on a cell with aHousetoGoToHouse.MoveAxe-- The agent is required toPickUpanAxeanddropit in another cell.MoveHammer-- The agent is required toPickUpaHammeranddropit in another cell.MoveLogs-- The agent is required toPickUpsomeLogsanddropit in another cell.
A task is defined by a list of skills. For example, [ChopTree, BuildHouse].
The quantities and positions of each object are randomly selected at each reset, which occurs between episodes.
Rendering
To store each episode as a gif, call env.allow_gif_storage(), which will store each episode in the /renders/ subdirectory.
Release files for gym-craftingworld 0.1.9.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gym_craftingworld-0.1.9.8.tar.gz | 32.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gym_craftingworld-0.1.9.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 99.6 kB
Release files / gym_craftingworld-0.1.9.8.tar.gz
| Download URL | gym_craftingworld-0.1.9.8.tar.gz |
|---|---|
| Size | 32.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c2618aa273274229bf4099ad5527ebeaed7d8ef7a9385e0cd4369a8d0a1db56f
|
|
BLAKE2b-256 checksum How to use checksums |
3719253d2805355632783cdc984cae1258991a96332229403a26a1e49d2bc9b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.2
|
Release files / gym_craftingworld-0.1.9.8-py3-none-any.whl
| Download URL | gym_craftingworld-0.1.9.8-py3-none-any.whl |
|---|---|
| Size | 66.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
656820611ab7cc0d3cf663c2ed372930eea48cf74328df9eb69be17bdb98c046
|
|
BLAKE2b-256 checksum How to use checksums |
0017f38da0f9592d25f660ddc9c1a77f2e2a1dd06669f033eb37ccfd48bd8900
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.2
|