This project implements a multiagent system to simulate bee colony foraging behavior, developed as part of the Autonomous Agents and Multiagent Systems (AASMA) course at Instituto Superior Técnico. The goal is to explore the interactions between bee colonies, food sources, and their environment, providing insights into collective foraging behaviors and survival strategies.
Using a decentralized approach, each bee agent makes decisions based on local information and simple rules, leading to emergent colony-wide behaviors. The simulation models real-world ecological challenges, such as food scarcity, competition, and predation, by incorporating different bee types, queen strategies, and predator threats (wasps).
Key Features:
- Decentralized multiagent system with autonomous decision-making.
- Foraging and resource management, with realistic food depletion and regrowth.
- Colony survival dynamics, including birth rates, population control, and strategic hive management.
- Multiple bee strategies, such as greedy, social, and respectful behaviors.
- Predation and defense mechanics, introducing wasps as external threats.
- Extensive experimentation and performance analysis, with different environmental setups.
Demo Video: https://youtu.be/QQ6ufTtMS0k
-
Make sure you have Python 3.11 or later installed.
-
Clone the repository:
git clone https://github.com/joao-hs/aams-beehive-simulation.git- Create a virtual environment:
python -m venv .venv- Activate the virtual environment:
source .venv/bin/activate- Install the required dependencies:
pip install -r requirements.txtTo run the simulation, execute the following command:
python main.py <path/to/config/file.json>You can create your own configuration file based on the config/base.json file, in order to explore different scenarios.