Gameworld 10k
The Gameworld environments are designed to develop sample-efficient learning algorithms, which is enforced in the challenge by limiting the interactions to 10K steps. These environments could be solved by humans within minutes, ensuring that learning does not hinge on brittle exploration or complex credit assignment.
Gameworld also supports controlled perturbations such as changes in object color or shape, testing an agent's ability to generalize across superficial domain shifts.
Environments
The suite includes 10 diverse games generated with the aid of a large language model, drawing inspiration from ALE and classic video games, while maintaining a lightweight and structured design.
| Aviate | Bounce | Cross | Drive | Explode |
|---|---|---|---|---|
| Fruits | Gold | Hunt | Impact | Jump |
Installation
To install the gameworld library, either use the pypi registry pip install gameworld, or install from source by cloning the repository and running pip install -e ..
This library has been developed and tested onpython3.11 for both Linux and macOS.
API
The Gameworld environments use the gymnasium.Gym api. To run your own algorithm against our environments, create an environment instance as:
import gameworld.envs # Triggers registering the environments in Gymnasium
import gymnasium
game = "Aviate"
env = gymnasium.make(f"Gameworld-{game}-v0")
obs, info = env.reset()
for t in range(10_000):
# random actions as example
action = env.action_space.sample()
# step env
obs, reward, done, truncated, info = env.step(action)
# reset when done
if done:
obs, info = env.reset()
Perturbations
The Gameworld environments support controlled perturbations in order. For each environment, you can choose no (None), shape (shape), or a color (color) perturbation.
For example, a shape perturbation after 5000 steps in the Explode environment can be created using the following snippet:
env = gymnasium.make(
f"Gameworld-Explode-v0", perturb='shape', perturb_step=5000
)
Below we show an example of a shape and color perturbation on Explode and Fruits:
| Explode Color | Explode Shape | Fruits Color | Fruits Shape |
|---|---|---|---|
|
|
|
|
|
Metadata
Release files for gameworld 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| gameworld-0.1.0.tar.gz | 2.4 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| gameworld-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 2.5 MB
Release files / gameworld-0.1.0.tar.gz
| Download URL | gameworld-0.1.0.tar.gz |
|---|---|
| Size | 2.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ffda9b8e06f405bc1255888d0c9d192d15e0025bad3140db29ecf36538ca1d65
|
|
BLAKE2b-256 checksum How to use checksums |
cee3ff0ac23c10960b88f821d7a3f535921e15c1c502f137252dc391901ebef7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.11
|
Release files / gameworld-0.1.0-py3-none-any.whl
| Download URL | gameworld-0.1.0-py3-none-any.whl |
|---|---|
| Size | 35.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4153803fa7e3996ccfd42cd667c5af4a6cc700cd2f9af2662d7b2690d23d8836
|
|
BLAKE2b-256 checksum How to use checksums |
998cf3523ccc6244e778fd8bd7aa49fd18498df80e6f687cc154bf293c6274eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.11
|