Skip to content

JoyousOne/MASim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MASim

Multi-agent system simulator (MASim). Allow users to create and configure environments, place agents in those environments, and observe how they interact or evolve over time.

runner_demo demo_mining_bot

Table of content:

Installation

  1. Install Rust

  2. Clone the repo:

git clone https://github.com/JoyousOne/MASim.git
cd MASim
  1. Dependencies: Will be automatically installed when running cargo. To consult the dependencies, see Cargo.toml.

Usage

  1. In src/playground add the file you want to play with.

  2. Import in src/main.rs and tinker with it as you which.

  3. Build & Run:

cargo run

Examples

Runner

In this example, runners spawn in random positions. Their objective is to reach the goal, which is represented by a green cell. They start with a trained Q-table, after which they continue learning independently.

runner_demo

Mining bots

In this example, multiple bots explore a 2D map to find mineral veins. They form a swarm in the sense that they coordinate or share information. Concretely, they all reference and update a shared Q-table. This means that whenever any single bot has a learning update (e.g., it explores new territory, encounters a mineral, or hits a wall), that update modifies the Q-values for all bots. In other words, they are learning from collective experience, which can speed up learning if the environment and tasks are similar for all agents.

demo_mining_bot

About

Multi-agent system simulator (MASim). Allow users to create and configure environments, place agents in those environments, and observe how they interact or evolve over time.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages