🔷 INFORMATIONS GÉNÉRALES
Champ Détail
Nom du script onizuka_anyfik93t9j3vpgo_333.py
Version 1.0.0
Date de création 25/03/2026
Auteur / Demandeur Gemini (Analyse de code existant)
Objectif principal Simuler et analyser la dynamique des populations (Cerfs et Loups) au sein d’un écosystème fermé avec gestion des ressources.
🎯 DESCRIPTION FONCTIONNELLE
📌 Que fait ce script ?
Ce script simule un modèle proie-prédateur (inspiré du modèle de Lotka-Volterra) où des Cerfs et des Loups interagissent dans un environnement 2D. Il gère le cycle de vie complet des agents : déplacement, alimentation, reproduction, vieillissement et mort. Le script propose une visualisation animée en temps réel ainsi que des outils d’analyse statistique et d’exportation de données.
📌 Problème résolu
Il permet d’étudier l’impact des paramètres initiaux (population, ressources) sur la stabilité d’un écosystème et de visualiser les cycles de population naturels ou les risques d’extinction.
⚙️ SPÉCIFICATIONS TECHNIQUES
🐍 Environnement
Élément Valeur
Version Python 3.x
OS cible Tous (Windows / Linux / MacOS)
Mode d’exécution CLI avec interface graphique (Matplotlib)
📦 Dépendances / Librairies
Standard : random, json, datetime, collections
Externes : numpy (calculs vectoriels), matplotlib (graphiques et animation)
📥 ENTRÉES (INPUTS)
📂 Fichiers / Sources de données
Le script fonctionne de manière autonome par défaut mais propose un menu interactif (1-4) pour définir le scénario de simulation.
📤 SORTIES (OUTPUTS)
📂 Fichiers / Données en sortie
Type Chemin / Format Description
Graphique Fenêtre Matplotlib 4 graphiques (Populations, Nourriture, Relation Proie-Prédateur, Âges)
JSON simulation_TIMESTAMP.json Export complet de l’historique et des paramètres finaux
Logs Console État de la population tous les 30 jours simulés
🧱 STRUCTURE DU SCRIPT
onizuka_anyfik93t9j3vpgo_333.py
Classes d’Agents : Animal (Base), Cerf (Héritage), Loup (Héritage).
Classe Environnement : Nourriture, Ecosysteme (Moteur de simulation).
Classe Interface : SimulationVisuelle (Gestion de l’animation).
Analyse : analyser_scenarios() (Tests de stress).
Point d’entrée : if __name__ == « __main__ »:
🔧 Détail des fonctions clés
Fonction Paramètres Retour Rôle
simuler_jour() Aucun None Gère le déplacement, la faim et la mort pour tous les agents
chasser() Environnement bool Spécifique au Loup : tente de manger un Cerf à proximité
reproduire() Environnement bool Gère la naissance de nouveaux individus selon l’énergie et le sexe
demarrer() Interval (ms) None Lance l’interface graphique animée
🔄 LOGIQUE / ALGORITHME
[Image d’un diagramme de flux montrant le cycle d’un jour de simulation : Déplacement -> Alimentation/Chasse -> Reproduction -> Vieillissement -> Mise à jour des graphiques]
Initialisation : Création de la carte, placement aléatoire de la nourriture et des populations initiales.
Boucle Quotidienne :
Les Cerfs cherchent la nourriture la plus proche.
Les Loups traquent les Cerfs les plus proches.
Vérification des collisions (manger/chasser).
Tentative de reproduction si l’énergie > seuil.
Mise à jour : Suppression des cadavres, régénération de la nourriture si le stock est bas.
Statistiques : Enregistrement des effectifs dans l’historique.
🚨 GESTION DES ERREURS
Limites de terrain : Utilisation de min/max pour empêcher les animaux de sortir du cadre (0-100).
Extinction : Le script continue de tourner même si une espèce disparaît (historique à 0).
Entrée utilisateur : Gestion basique via un else pour le choix du mode si la saisie est incorrecte.
✅ CONTRAINTES & RÈGLES MÉTIER
Règle 1 : Les Cerfs perdent de l’énergie en se déplaçant.
Règle 2 : Un Loup ne chasse que si son énergie est inférieure à 40.
Règle 3 : La reproduction nécessite un mâle et une femelle à proximité immédiate.
Règle 4 : La mort naturelle survient obligatoirement si l’âge dépasse 50 jours (perte d’énergie accélérée).
📝 EXEMPLE D’UTILISATION
▶️ Lancement en ligne de commande
Bash
python onizuka_anyfik93t9j3vpgo_333.py
# Puis choisir « 1 » pour voir l’animation ou « 3 » pour comparer les scénarios.
📋 Exemple de sortie console
Plaintext
Jour 30: Cerfs=42, Loups=12, Nourriture=30
Jour 60: Cerfs=35, Loups=15, Nourriture=32
…
Données exportées dans simulation_20260325_1300.json



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