Skip to main content

Real-World Multi-Agent Reinforcement Learning problems, potentially yielding a high positive impact on society when solved.

Project description

HiveX header image

HiveX

Real-World Multi-Agent Reinforcement Learning problems, potentially yielding a high positive impact on society when solved.

About

The motivation of the HiveX suite is to provide advanced reinforcement learning benchmarking environments with an emphasis on: (1) real-world scenarios, (2) multi-agent systems, (3) investigating problems and solutions with high impact on society, (4) cooperation and communication mechanisms.

Available Environments

Thumbnail Title Domain Paper Env Name
WindFarm Windfarm Orientation Optimisation Distributed Energy Grids Link
(Neurips'21)
"WindFarm"
Wildfire Wildfire-Management
Resource Distribution
Catastrophe Management Link
(ICLR'22)
"Wildfire"

Installation

hivex can be installed from PyPI using pip:

pip install hivex

Manual install using conda virtual environment

The installation steps are as follows:

  1. Create and activate a virtual environment, e.g.:

    conda create -n hivex python=3.9
    conda activate hivex
    
  2. Install hivex:

    git clone -b main https://github.com/philippds/HiveX
    cd HiveX
    pip install .
    
  3. Test the hivex installation:

    cd <hivex_root>/hivex/python/pytest
    pytest test.py
    

Example Usage

Training agents with UnityEnvironment (Environment Interface | Learning Framework)

UnityEnvironment | Random

cd <hivex_root>/examples/UnityEnvironment
python UnityEnvironment_train.py

Training agents with ML-Agents (Environment Interface | Learning Framework)

UnityEnvironment | ML-Agents

cd <hivex_root>/examples/ml_agents
mlagents-learn config/WindFarm.yaml --env=<hivex_root>/hivex/environments/hivex_WindFarm_x86_64 --run-id="WindFarm_Test_01"

Training agents with Stable-Baselines3 (Environment Interface | Learning Framework)

Stable-Baselines3 VecEnv | Stable-Baselines3

cd <hivex_root>
pip install -e .[stable-baselines3]
cd <hivex_root>/examples/stable_baselines3
python VecEnv_train.py

Gym | Stable-Baselines3

cd <hivex_root>/examples/gym
python gym_train.py

dm_env | Random

cd <hivex_root>/examples/dm_env
python dm_env_train.py

Interface Test (Optional)

cd <hivex_root>/examples/dm_env/utilities
python dm_env_test.py

Training agents with RLLib (Linux Only) (Environment Interface | Learning Framework)

cd <hivex_root>
pip install -e .[rllib]
pip install -e .[pettingzoo]

PettingZoo ParallelEnv (AEC) | RLLib

cd <hivex_root>/examples/pettingzoo_ParallelEnv
python ParallelEnv_train.py

Interface Test (Optional)

cd <hivex_root>/examples/pettingzoo_ParallelEnv/utilities
python api_test.py
python parallel_api_test.py

Documentation

Full documentation is available here

Citing HiveX

If you use HiveX in your work, please cite:

@inproceedings{siedler2022hivex,
    title={},
    author={Philipp D. Siedler},
    year={2022},
    journal={},
    organization={}
}

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

hivex-1.0.1a0.tar.gz (4.4 kB view hashes)

Uploaded Source

Supported by

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