Skip to main content

Multi-User Gymnasium (MUG)

PyPI - Version PyPI - Downloads

MUG logo

Multi-User Gymnasium (MUG) converts Gymnasium and PettingZoo environments into browser-based, multi-user experiments. It enables Python simulation environments to be accessed online, allowing humans to interact with them individually or alongside AI agents and other participants.

What does MUG offer?

  • Same environment, training to deployment. Run user experiments in the browser against the exact same simulation environments you use to train your AI agents without any rewrites or ports.
  • In-browser execution. Python environments and AI policies can run client-side for zero-latency experiences for participants. Heavier environments---or those that can't be compiled to run in the browser---can be run on the server.
  • Multi-human Experiments. Built-in networking, rollback netcode, and waiting rooms for multi-participant experiments.
  • Experiment orchestration. Scene flow, participant management, and data collection out of the box.
  • Extensive customizability. Advanced hooks and configuration for custom rendering, matchmaking, scene logic, and more.

Get started by reading the documentation.

Installation

pip install multi-user-gymnasium[server]
Overcooked human-AI demo

Development

MUG uses uv for package management. From a cloned repository:

# Create the environment and install all dependencies (server, test, docs)
uv sync --all-extras

# Run the unit tests
uv run pytest tests/unit

# Run an example
uv run python -m examples.slime_volleyball.slimevb_human_ai

Dependencies are locked in uv.lock; after changing dependencies in pyproject.toml, run uv lock and commit the updated lockfile.

Releasing

Bump version in pyproject.toml, then build and publish with uv:

uv build
uv publish  # reads UV_PUBLISH_TOKEN or prompts for PyPI credentials

Citation

If you use MUG in your research, please cite:

@article{mcdonald2026cogrid,
  title={CoGrid \& the Multi-User Gymnasium: A Framework for Multi-Agent Experimentation},
  author={McDonald, Chase and Gonzalez, Cleotilde},
  journal={arXiv preprint arXiv:2604.15044},
  year={2026}
}

MUG in the Wild

Below are a list of projects that have used MUG. If you use it in your research, please let us know or open a PR for it to be added here.

@article{mcdonald2025controllable,
  title={Controllable Complementarity: Subjective Preferences in Human-AI Collaboration},
  author={McDonald, Chase and Gonzalez, Cleotilde},
  journal={arXiv preprint arXiv:2503.05455},
  year={2025}
}

Acknowledgements

  • This project was originally inspired by the work by Carroll et al. in their Overcooked-AI demo. Most notably in the use of their Overcooked environment and assets in our examples, as well as the use of Phaser (with their client-server implementation).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

multi_user_gymnasium-0.1.3.tar.gz (272.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

multi_user_gymnasium-0.1.3-py3-none-any.whl (293.7 kB view details)

Uploaded Python 3

File details

Details for the file multi_user_gymnasium-0.1.3.tar.gz.

File metadata

  • Download URL: multi_user_gymnasium-0.1.3.tar.gz
  • Upload date:
  • Size: 272.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for multi_user_gymnasium-0.1.3.tar.gz
Algorithm Hash digest
SHA256 577176cabcd36473384cf533864a27f6539c82320f28130ec887ed522dc1020e
MD5 be64746c9c6799d2f9ca8871a068053e
BLAKE2b-256 361218f0daa8d0cf5d7b00bf7719c24b4781dc080a5e251424def59b5cff1734

See more details on using hashes here.

File details

Details for the file multi_user_gymnasium-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: multi_user_gymnasium-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 293.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"22.04","id":"jammy","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for multi_user_gymnasium-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 408a335359aa48677ca3c51b0dee6867efcd044d51509d11fa80a4e4b86f1cf2
MD5 b0b20a73e97aefa5d430ebbc9be6aaa6
BLAKE2b-256 29bdee06a9195f3e549b246085558f78a38346a36742a6d05dad3d880c7304f5

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

1 file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page