Firefighter Problem Simulator

Simulateur graphique en Python du problème de propagation d’incendie sur graphe, basé sur un algorithme combinatoire NP-complet.

Algorithmique, Recherche Opérationnelle

Projet: Académique

Oct. 2019 - Mars 2020

Durée: 6 mois

Projet scolaire réalisé en binôme entre octobre 2019 et mars 2020.
Inspiré du “Firefighter Problem” introduit par B. Hartnell (1995), ce projet vise à créer un simulateur interactif du processus de propagation du feu et de sa défense par des pompiers sur un graphe – modélisé ici sous forme de grille.


❓ Problématique

Comment tester différentes stratégies de défense face à un feu se propageant dans un réseau, tout en maximisant les sommets sauvés ?
➡️ Le défi est de représenter dynamiquement un phénomène combinatoire NP-complet et de le rendre visuel et interactif.


🛠️ Solution mise en œuvre

  • 🔥 Représentation du graphe par une grille (matrice NxN)

  • 🚒 Possibilité de placer des feux initiaux et un ou plusieurs pompiers

  • 🔁 Simulation itérative : à chaque tour, le feu se propage aux voisins non défendus et les pompiers protègent des cases

  • 👁️ Interface graphique développée avec Tkinter permettant à l’utilisateur :

    • de placer les éléments manuellement

    • de visualiser l’évolution tour par tour

    • de changer les règles (vitesse, nombre de pompiers, position initiale, etc.)




⚙️ Stack technique

  • Langage : Python

  • Librairie interface : Tkinter

  • Modélisation : Théorie des graphes · Grilles (matrices)

  • Concepts algorithmiques : propagation · heuristiques · complexité NP

  • Diagrammes : diagrammes de classes pour la modélisation objet

  • Environnement : Jupyter Notebook / IDE local


Tags

Recherche Opérationnelle, Simulation, Graph Theory, NP-Complete

You might also like

SmartCity - Data Platform for Urban Intelligence

Data Engineering, Open Data

SmartCity - Data Platform for Urban Intelligence

Data Engineering, Open Data

Reconnaissance de Chiffres Manuscrits

Deep Learning, Computer Vision

Reconnaissance de Chiffres Manuscrits

Deep Learning, Computer Vision

SRAXC : Un Chatbot Expert sur mon Portfolio

Natural Language Processing (NLP), MLOps

SRAXC : Un Chatbot Expert sur mon Portfolio

Natural Language Processing (NLP), MLOps

Multilingual Text Summarizer with Transformers

Natural Language Processing (NLP), MLOps

Multilingual Text Summarizer with Transformers

Natural Language Processing (NLP), MLOps

Create a free website with Framer, the website builder loved by startups, designers and agencies.