onizuka_sim_ecosysteme.py

49,00 

Simuler et visualiser en temps réel la dynamique proie-prédateur (Cerfs vs Loups) au sein d’un écosystème fermé.

UGS : onizuka_sim_ecosysteme.py Catégorie : Étiquette :

🔷 INFORMATIONS GÉNÉRALES

Champ Détail

Nom du script onizuka_sim_ecosysteme.py

Version 1.0.0

Date de création 25/03/2026

Auteur / Demandeur IA Généré (Gemini)

Objectif principal Simuler et visualiser en temps réel la dynamique proie-prédateur (Cerfs vs Loups) au sein d’un écosystème fermé.

🎯 DESCRIPTION FONCTIONNELLE

📌 Que fait ce script ?

Le script simule la vie, la reproduction, l’alimentation et la mort de deux espèces (Cerfs et Loups) interagissant dans un environnement doté de ressources végétales régénérables. Il offre une interface graphique animée affichant la carte spatiale et des graphiques statistiques (population, énergie, âge, végétation).

📌 Problème résolu

Il permet d’étudier visuellement les cycles de Lotka-Volterra (équilibre entre populations de proies et de prédateurs) et l’impact de la disponibilité des ressources sur la survie des espèces.

⚙️ SPÉCIFICATIONS TECHNIQUES

🐍 Environnement

Élément Valeur

Version Python 3.x

OS cible Windows / Linux / MacOS

Mode d’exécution CLI / Interface Graphique (Matplotlib)

📦 Dépendances / Librairies

Standard : random, collections

Externes : numpy, matplotlib

📥 ENTRÉES (INPUTS)

# Nom Type Obligatoire Description Exemple

1 taille int ❌ Non Dimension de la carte 100

2 nb_cerfs int ❌ Non Population initiale de cerfs 20

3 nb_loups int ❌ Non Population initiale de loups 5

4 nb_vegetation int ❌ Non Nombre de zones de pâturage 30

📤 SORTIES (OUTPUTS)

# Nom Type Description

1 Visualisation Graphique Fenêtre Matplotlib interactive avec 5 sous-graphiques.

2 Statistiques Console Résumé final (durée, population finale, évolution).

🧱 STRUCTURE DU SCRIPT

onizuka_41c4ub9cgq6mmalu_333.py

📌 IMPORTS (numpy, matplotlib, etc.)

📌 CLASSE Animal : Logique individuelle (mouvement, faim, reproduction).

📌 CLASSE Vegetation : Gestion de la croissance des plantes.

📌 CLASSE Ecosysteme : Moteur de simulation (mise à jour des cycles).

📌 CLASSE Visualisation : Rendu graphique via FuncAnimation.

📌 MAIN : Fonction simulation_interactive().

🔧 Détail des fonctions principales

Fonction Paramètres Retour Rôle

Animal.deplacer() environnement, cibles, predateurs None Gère l’énergie, l’âge et le choix du mouvement.

Ecosysteme.mise_a_jour() None None Orchestre un « pas » de temps (tous les déplacements/morts).

Visualisation.animate() frame None Rafraîchit les graphiques à chaque itération.

🔄 LOGIQUE / ALGORITHME

Initialisation : Création de la grille et des agents (Cerfs/Loups) avec des attributs aléatoires (sexe, position).

Boucle de simulation :

Végétation : Croissance lente des zones vertes.

Proies (Cerfs) : Fuient les loups si proches, sinon cherchent de l’herbe.

Prédateurs (Loups) : Traquent le cerf le plus proche. Si contact (dist<2), la proie meurt et le loup gagne de l'énergie. Reproduction : Si énergie > seuil et proximité d’un partenaire, création d’un nouvel individu.

Entropie : Consommation d’énergie par mouvement + vieillissement.

Nettoyage : Suppression des instances où en_vie == False.

🚨 GESTION DES ERREURS

Division par zéro : Évitée par des vérifications de norme (norme > 0) lors des déplacements.

Extinction : Le script continue de tourner même si une espèce disparaît (les graphiques s’aplatissent).

Entrées utilisateur : Utilisation de valeurs par défaut (or « 100 ») si l’utilisateur presse Entrée sans saisir de valeur.

✅ CONTRAINTES & RÈGLES MÉTIER

Règle 1 : Les loups sont plus rapides (vitesse 1.8) que les cerfs (1.0) pour permettre la chasse.

Règle 2 : La reproduction est soumise à une probabilité de 1% par contact pour éviter l’explosion démographique instantanée.

Règle 3 : L’énergie max est différente selon l’espèce (Loup: 200, Cerf: 150).

🧪 TESTS ATTENDUS

# Cas de test Entrée Résultat attendu Statut

1 Cas nominal Paramètres par défaut Cycle stable ou oscillations prédateurs/proies. ⬜ À tester

2 Surpopulation loups 50 loups / 5 cerfs Extinction rapide des cerfs puis famine des loups. ⬜ À tester

3 Sans prédateurs 0 loups Expansion des cerfs limitée uniquement par la végétation. ⬜ À tester

📝 EXEMPLE D’UTILISATION

▶️ Lancement via terminal

Bash

python onizuka_41c4ub9cgq6mmalu_333.py

(Saisissez les valeurs demandées ou appuyez sur Entrée pour les réglages d’usine).

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “onizuka_sim_ecosysteme.py”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *