🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script onizuka_2pzdv33p90my39jv_333.py
Version 1.0.0
Date de création 25/03/2026
Auteur / Demandeur IA Générée (Modèle Onizuka)
Objectif principal Simuler graphiquement la dynamique de colonisation et de compétition entre deux types d’espèces végétales (pionnières et climax) sur une grille 2D.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script utilise des automates cellulaires pour modéliser l’évolution d’une forêt. Il simule le cycle de vie de deux espèces : les Pionnières (croissance rapide, grande dispersion) et les Climax (croissance lente, robustes, dominantes). La simulation affiche en temps réel l’expansion des forêts et le remplacement progressif des espèces par compétition.
📌 Problème résolu
Il permet de visualiser et de comprendre les mécanismes écologiques de la succession végétale : comment un terrain vide est colonisé par des espèces opportunistes avant d’être stabilisé par des espèces forestières matures.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.x
OS cible Windows / Linux / MacOS
Mode d’exécution Interface graphique (Matplotlib Animation)
📦 Dépendances / Librairies
numpy : Gestion de la matrice (grille) et calculs statistiques.
matplotlib : Moteur de rendu graphique et système d’animation.
📥 ENTRÉES (INPUTS)
📂 Paramètres de configuration (Hardcodés)
# Nom Type Description Valeur
1 GRID_SIZE int Taille du côté de la grille carrée 100
2 ITERATIONS int Nombre total de cycles de simulation 200
3 PROBA_GERMINATION_PION float Facteur de dispersion par le vent (Pionnières) 0.05
4 SURVIE_CLIM float Taux de survie des espèces robustes 0.98
📤 SORTIES (OUTPUTS)
# Nom Type Description
1 Fenêtre Matplotlib UI Animation interactive montrant l’évolution de la grille.
2 new_grid ndarray État de la matrice mis à jour à chaque frame.
🧱 STRUCTURE DU SCRIPT
onizuka_forest_sim.py
│
├── 📌 CONSTANTES (États : EMPTY, PIONEER, CLIMAX)
├── 📌 CONFIG (Probabilités de survie et germination)
├── 📌 FONCTIONS
│ ├── initialiser_grille() → Génère l’état initial aléatoire.
│ └── mise_a_jour() → Applique les règles biologiques à chaque pas de temps.
└── 📌 VISUALISATION (Initialisation de FuncAnimation)
🔧 Détail des fonctions principales
Fonction Paramètres Retour Rôle
initialiser_grille(size) size: int np.ndarray Crée une grille avec 2% de population initiale.
mise_a_jour(frame, img, grid) frame, img, grid tuple Calcule l’état t+1 en fonction du voisinage de Moore.
🔄 LOGIQUE / ALGORITHME
ÉTAPE 1 → Mortalité : Chaque cellule occupée a une chance de mourir (devenir EMPTY) selon son espèce.
ÉTAPE 2 → Dispersion : Les cases vides comptent leurs voisins. La probabilité de germination augmente avec le nombre de voisins de la même espèce.
ÉTAPE 3 → Compétition : Si une case contient une PIONEER, elle peut être convertie en CLIMAX si des voisins dominants sont présents (effet d’ombrage).
ÉTAPE 4 → Rendu : La grille est redessinée avec un code couleur (Blanc/Vert Clair/Vert Foncé).
✅ CONTRAINTES & RÈGLES MÉTIER
Règle 1 (Voisinage) : Utilise le voisinage de Moore (les 8 cases entourant une cellule).
Règle 2 (Priorité de succession) : Les Pionnières germent plus facilement (dispersion anémochore) mais les Climax gagnent toujours sur le long terme (compétition interspécifique).
Règle 3 (Robustesse) : SURVIE_CLIM(0.98)>SURVIE_PION(0.92).
🧪 TESTS ATTENDUS
# Cas de test Entrée Résultat attendu Statut
1 Cas nominal Paramètres par défaut Transition d’une grille vide vers une forêt mixte puis climax. ⬜ À tester
2 Stabilité SURVIE à 1.0 La forêt remplit l’espace et ne libère plus de cases vides. ⬜ À tester
3 Extinction PROBA_GERMINATION à 0 La population initiale meurt sans se reproduire. ⬜ À tester
📝 EXEMPLE D’UTILISATION
▶️ Lancement
Bash
python onizuka_forest_sim.py
📋 Sortie visuelle attendue
Début : Quelques points colorés éparpillés.
Milieu : Taches de vert clair s’étendant rapidement.
Fin : Stabilisation avec une domination des zones vert foncé (Climax).



Avis
Il n’y a pas encore d’avis.