/MesaFireEvacuation

Agent Based Fire Evacuation Model built using Project Mesa

Primary LanguagePythonMIT LicenseMIT

Fire Evacuation ABM

Tests

The accompanying paper includes both specification and experimental results. To view the code exactly as it was in the paper, please see here.

Setup

You will need to install Poetry using your preferred method, first, then:

cd MesaFireEvacutation/
poetry install

Usage

Visualised Run

poetry run python run.py

Runs the model with a visual interface, in which parameters can be changed.

Batch Run

poetry run python run_batch.py <num_iterations> <num_humans>

Runs the model with num_iterations of all collaboration factor values with the given num_humans.

Examples

Realistic Vision

vision through smoke

As we can see from the figure above, there is an incapacitated agent within the smoke. This agent can not be seen by our healthy agent and will therefore not be helped. We can also observe that the fire is still visible through the smoke, due to its high visibility value.

This functionality is implemented using Bresenham's line algorithm, to create a primitive form of CPU-bound ray-tracing.