/MARS

MARS is shortened for Multi-Agent Research Studio, a library for mulit-agent reinforcement learning research.

Primary LanguageJupyter Notebook

MARS - Multi-Agent Research Studio

drawing

If life exists on Mars, shall we human cooperate or compete with it?

Status

WIP. Not released yet.

If you have any question (propose an ISSUE if it's general problem) or want to contribute to this repository, feel free to contact me: zhding96@gmail.com

Large-scale competitive games are generally hard, I'm still struggling with developing this repo.

Usage Instruction

Some tutorials (./tutorials/) are provided for simple MARL concepts, including building an arbitrary matrix game, solving the Nash equilibrium with different algorithms for matrix games, building arbitrary Markov game, solving Markov games, etc.

For comprehensive usage instruction document, see here.

MARS is still under-development and not prepared to release yet. You may find it hard to clone b.c. the author is testing algorithms with some models hosted on Git.

Installation

Use Python 3.6

pip install -r requirements.txt

Development

Basic RL Algorithms to do:

  • DQN
  • PPO
  • Genetic Algorithm
  • PMOE
  • DDPG
  • TD3
  • SAC

MARL Algorithms to do:

Supported environments:

  • Openai Gym
  • PettingZoo
  • LaserTag
  • SlimeVolley
  • SMAC

Self-play

Two agents in SlimeVolley-v0 trained with self-play.

Two agents in Boxing-v1 PettingZoo trained with self-play.

Exploitability tests are also conducted.