Skip to main content

A multi-agent environment inspired by the Lewis Signaling Game, featuring eight unique problem configurations with both static and dynamic obstacles.

Project description

An Extension of Multi-Agent Particle Environment

conav_suite is an enhancement on top of the Simple environment, originally developed by the Farama Foundation as part of their Multi-Agent Particle Environment (MPE).

conav_suite

conav_suite is an open-source research project aimed at advancing the development of communication strategies in multi-agent systems. The project proposes a unique environment that emphasizes the principles of the Lewis signaling game. This distinct setting serves as a testing ground for advancing robot-to-robot communication protocols.

Each problem set within conav_suite introduces different constraints on entity positioning such as start points, goals, and obstacles. This dynamic aspect encourages the investigation of communication strategies in diverse settings, enhancing the environment's adaptability and realism.

A notable characteristic of conav_suite is its incorporation of asymmetric information, whereby two types of agents – an 'eye in the sky' agent with global information and ground agents with only local information – operate simultaneously. This asymmetry replicates real-world situations, presenting challenges for the development of efficient communication strategies. It also provides intriguing prospects for the generation of context-dependent language and high-level directives.

For additional information on utilizing the environment API, please refer to the PettingZoo API documentation.

Installation

git clone https://github.com/ethanmclark1/conav_suite.git
cd conav_suite
pip install -r requirements.txt
pip install -e .

Usage

import conav_suite

env = conav_suite.env()
env.reset(options={'problem_instance': 'bisect'}))
observation, _, terminations, truncations, _ = env.last()
env.step(action)
env.close()

List of Problem Instances

Problem Instance Visualization
bisect 1691433763627
circle 1691433778699
corners  1691433832902
cross 1691433961564
staggered 1691433856331
quarters 1691433864962
stellaris 1691433878432
scatter 1691433899914

The red zones denote regions where large obstacles can be spawned, while the remaining space designates areas eligible for agent deployment, goal placement, and generation of small obstacles.

Contributing

We welcome contributions to conav_suite! If you're interested in contributing, you can do so in the following ways:

  • Bug Reports : If you discover a bug when using conav_suite, please submit a report via the issues tab. When submitting an issue, please do your best to include a detailed description of the problem and a code sample, if applicable.
  • Feature Requests : If you have a great idea that you think would improve conav_suite, don't hesitate to post your suggestions in the issues tab. Please be as detailed as possible in your explanation.
  • Pull Requests : If you have made enhancements to conav_suite, please feel free to submit a pull request. We appreciate all the help we can get to make conav_suite better!

Support

If you encounter any issues or have questions about conav_suite, please feel free to contact us. You can either create an issue in the GitHub repository or reach out to us directly at eclark715@gmail.com.

License

conav_suite is open-source software licensed under the MIT license.

Paper Citation

If you used this environment for your experiments or found it helpful, consider citing the following papers:

Environments in this repo:

@article{lowe2017multi,
  title={Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments},
  author={Lowe, Ryan and Wu, Yi and Tamar, Aviv and Harb, Jean and Abbeel, Pieter and Mordatch, Igor},
  journal={Neural Information Processing Systems (NIPS)},
  year={2017}
}

Original particle world environment:

@article{mordatch2017emergence,
  title={Emergence of Grounded Compositional Language in Multi-Agent Populations},
  author={Mordatch, Igor and Abbeel, Pieter},
  journal={arXiv preprint arXiv:1703.04908},
  year={2017}
}

Project details


Download files

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

Source Distribution

conav_suite-0.0.1.tar.gz (13.7 kB view details)

Uploaded Source

Built Distribution

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

conav_suite-0.0.1-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file conav_suite-0.0.1.tar.gz.

File metadata

  • Download URL: conav_suite-0.0.1.tar.gz
  • Upload date:
  • Size: 13.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for conav_suite-0.0.1.tar.gz
Algorithm Hash digest
SHA256 ec14d6349f9bc1b7c231cd67f0b1182760cf8928ea8231a32d047046e464c11e
MD5 57cad222050aefac671b517283b4f8b6
BLAKE2b-256 fcf69248dfff1d3f53f7a9ad78b9010f8aa49117b87133a76776a0e555740430

See more details on using hashes here.

File details

Details for the file conav_suite-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: conav_suite-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for conav_suite-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2d71bdccaeaa655565cbc3954f4896a5570a92d9eb129be585fa3e8bf43f9851
MD5 1cc7387683dd503129f2aa5d148063f9
BLAKE2b-256 26f0b9201c1e8380dad7c5a854fc628090448539d72bdaf91e820db83adcab04

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page