script_222cvmn_222.py

49,00 

Simuler les variations de graisse corporelle et les changements d’états comportementaux d’un ours sur plusieurs cycles annuels.

UGS : script_222cvmn_222.py Catégorie : Étiquettes : , ,

🔷 INFORMATIONS GÉNÉRALES

Champ Détail

Nom du script script_222cvmn_222.py

Version 1.0.0

Date de création 02/03/2026

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

Objectif principal Simuler les variations de graisse corporelle et les changements d’états comportementaux d’un ours sur plusieurs cycles annuels.

🎯 DESCRIPTION FONCTIONNELLE

📌 Que fait ce script ?

Ce script simule la survie d’un ours en fonction des saisons. Il gère dynamiquement ses réserves de graisse (gain via la pêche, perte via l’activité ou l’hibernation) et bascule entre trois états : Actif, Préparation à l’hiver et Hibernation.

📌 Problème résolu

Il permet de modéliser l’impact des seuils critiques de ressources (famine ou réserve suffisante) sur le comportement animal et de visualiser la viabilité métabolique d’un individu sur le long terme.

⚙️ SPÉCIFICATIONS TECHNIQUES

🐍 Environnement

Élément Valeur

Version Python 3.x

OS cible Tous (Windows, Linux, MacOS)

Mode d’exécution Script autonome avec visualisation graphique

📦 Dépendances / Librairies

Librairies externes (pip install) :

numpy (Calculs aléatoires et gestion de tableaux)

matplotlib (Génération des graphiques)

📥 ENTRÉES (INPUTS)

📂 Fichiers / Sources de données en entrée

Aucun fichier externe : Les paramètres sont codés en dur comme constantes au début du script.

📤 SORTIES (OUTPUTS)

📂 Fichiers / Données en sortie

Type Chemin / Format Description

Graphique Fenêtre interactive Matplotlib Courbe de graisse vs État de l’ours

Console Flux Standard (STDOUT) Alertes en cas de sortie d’hibernation forcée (famine)

🧱 STRUCTURE DU SCRIPT

script_222cvmn_222.py

📌 IMPORTS : numpy, matplotlib.pyplot

📌 CONSTANTES : Seuils de graisse et durée de simulation.

📌 CLASSE BearSimulator : Cœur de la logique métier.

📌 FONCTION run_simulation() : Pilote l’exécution temporelle.

📌 VISUALISATION : Bloc final générant le graphique double-axe.

🔧 Détail des fonctions principales

Fonction Paramètres Retour Rôle

get_current_season day (int) str Retourne la saison selon le jour de l’année.

peche_saumon season (str) None Ajoute de la graisse selon un gain aléatoire saisonnier.

update day (int) None Calcule la transition d’état et met à jour la graisse.

run_simulation jours (int) BearSimulator Instancie l’objet et fait tourner la boucle temporelle.

🔄 LOGIQUE / ALGORITHME

Phase d’Activité : L’ours pêche (gain) et se déplace (perte).

Transition Automnale : Si graisse >= 150, l’ours entre en hibernation. Sinon, il reste en « Prep_Hiver » pour tenter d’accumuler le manque.

Phase d’Hibernation : Perte fixe de 0.4 graisse/jour.

Sortie d’Hibernation :

Naturelle : Arrivée du Printemps.

Forcée : Si graisse < 50 (Alerte famine). 🚨 GESTION DES ERREURS Protection des données : Utilisation de max(0, self.graisse) pour éviter que la santé de l'ours ne devienne mathématiquement négative. Sortie forcée : Un message console prévient l'utilisateur si l'ours doit interrompre son sommeil pour survivre. ✅ CONTRAINTES & RÈGLES MÉTIER Règle 1 : Le gain de pêche est maximal en Automne ([3.0,5.0]). Règle 2 : L'hibernation n'est possible qu'en Automne si le stock est suffisant. Règle 3 : Les actions sociales (protection, marquage) ont une probabilité de déclenchement (10% et 5%). 🧪 TESTS ATTENDUS # Cas de test Entrée Résultat attendu 1 Cycle Nominal Graisse initiale 120 Cycle stable sur 2 ans. 2 Famine hivernale Graisse initiale faible Message "Alerte : Sortie d'hibernation forcée" en console. 3 Automne pauvre Gain saumon faible L'ours ne rentre pas en hibernation immédiatement. 📝 EXEMPLE D'UTILISATION ▶️ Lancement Bash python script_222cvmn_222.py 📋 Exemple de sortie attendue (Console) Plaintext 🐻 Alerte : Sortie d'hibernation forcée au Jour 312 !

Avis

Il n’y a pas encore d’avis.

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

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