Prépa MPSI · Lycée Saint-Rémi · 2025

Simulation proies-prédateurs

Reproduire 60 ans de dynamique écologique avec des rÚgles simples

PythonNumPyMatplotlibModélisation
Animation de la simulation proies-prĂ©dateurs sur grille 50×50
Orignaux Loups Vide
2 500 cellules simulées
70+ générations par simulation
60 ans de données réelles (Isle Royale)
4 phases comportementales

Peut-on reproduire la nature
avec des rĂšgles simples ?

Depuis 1958, les scientifiques observent un phénomÚne fascinant sur l'Isle Royale (Michigan) : les populations de loups et d'orignaux oscillent dans un cycle perpétuel. Quand les proies abondent, les prédateurs prospÚrent
 puis déciment les proies, entraßnant leur propre déclin.

Cet écosystÚme isolé offre des conditions idéales pour étudier ces dynamiques. Ma question : peut-on les reproduire informatiquement à partir de rÚgles locales simples, inspirées du jeu de la vie de Conway ?

« Dans quelle mesure peut-on reproduire les cycles d'évolution d'un systÚme proies-prédateurs à l'aide d'une simulation informatique ? »
Évolution des populations à l'Île Royale (1980-2019)
DonnĂ©es rĂ©elles — Isle Royale (1980–2019). Les barres rouges reprĂ©sentent les loups, la courbe bleue les orignaux.

Traduire le réel, pas les équations

đŸš«

Pas de Lotka-Volterra

Le modÚle classique proies-prédateurs existe depuis 1926. Je l'ai volontairement écarté pour tester une autre hypothÚse : est-ce que la simple traduction des comportements observés dans la réalité suffit à produire des dynamiques cohérentes ? Pas d'équations différentielles. Juste de la logique locale tirée de l'observation.

🔧

Des outils fondamentaux

Le code repose volontairement sur des structures basiques de Python : boucles, matrices sous forme de listes, conditions. Pas de framework de simulation, pas de librairie spécialisée. Chaque mécanisme est codé à la main pour maßtriser chaque rouage du systÚme, et rester dans le cadre de la prépa.

🎯

Mon propre jeu de la vie

L'objectif n'était pas de reproduire le Game of Life de Conway, mais de créer mes propres rÚgles en partant d'une analyse concrÚte : pourquoi un loup chasse, comment il se déplace, quand il meurt. Chaque rÚgle traduit un comportement réel, pas une abstraction mathématique.

Un modÚle inspiré du jeu de la vie

Chaque cellule d'une grille 50×50 peut ĂȘtre vide, contenir une proie ou un prĂ©dateur. À chaque gĂ©nĂ©ration, des rĂšgles locales dĂ©terminent l'Ă©volution du systĂšme. Exemple : comportement des loups ↓

1
🎯

Chasse

Le prédateur scanne ses voisins. S'il trouve une proie, il la mange et gagne en santé.

→
2
🔄

Déplacement

S'il ne mange pas, le loup se déplace vers une case vide et subit une pénalité santé.

→
3
đŸș

Reproduction

Si assez de proies mangĂ©es, santĂ© suffisante et un peu de chance → nouveau loup.

→
4
💀

Mortalité

Âge maximal atteint ou santĂ© trop faible → le prĂ©dateur meurt.

Mécanismes adaptatifs

Survie

Seuil critique

Quand les loups tombent sous 25 individus, un bonus de santé et un seuil de reproduction réduit s'activent pour éviter l'extinction.

Génétique

Consanguinité

Les nouveaux loups naissent avec une santé réduite, simulant les effets de la consanguinité observés sur l'Isle Royale.

Équilibre

Boost proies

Si les prédateurs sont rares, les orignaux bénéficient d'un taux de reproduction augmenté, ce qui relance le cycle naturel.

SchĂ©ma du cycle proies-prĂ©dateurs — boucle update complĂšte
Vue d'ensemble : le cycle complet des interactions proies ↔ prĂ©dateurs avec les conditions de chaque phase.

La simulation reproduit les cycles réels

Données réelles
Données réelles Isle Royale
Isle Royale, 1980–2019
VS
Ma simulation
Graphe de la simulation
Grille 50×50, 70 gĂ©nĂ©rations
✓
Décalage de phase reproduit

L'augmentation des prédateurs suit celle des proies avec un retard temporel, exactement comme dans les données réelles.

✓
Oscillations cohérentes

Les fluctuations non périodiques du modÚle probabiliste reflÚtent la variabilité naturelle de l'écosystÚme.

✓
Émergence comportementale

Des rÚgles locales simples suffisent à produire un comportement global cohérent avec 60 ans de données réelles.

La grille à travers les générations

Chaque image montre un instant de la simulation. On observe l'expansion des proies, suivie de l'explosion des prédateurs, puis l'effondrement et la reprise du cycle.

Gén. 12
Génération 12

2 042 orignaux · 98 loups
Expansion maximale des proies

Gén. 29
Génération 29

239 orignaux · 122 loups
Pic prédateurs, effondrement proies

Gén. 50
Génération 50

697 orignaux · 12 loups
Déclin des loups, reprise du cycle

Gén. 67
Génération 67

231 orignaux · 38 loups
Nouveau cycle en cours

Ce que le modĂšle ne capture pas

Un bon modĂšle est aussi dĂ©fini par ce qu'il reconnaĂźt ne pas couvrir. Sur le long terme ou avec des paramĂštres extrĂȘmes, le systĂšme diverge.

Simplifications

  • Pas de saisons ni de variation climatique
  • Pas de migration, l'Ăźle est fermĂ©e
  • GĂ©nĂ©tique et maladies peu dĂ©taillĂ©es
  • ParamĂštres de simulation fixes

Cas d'effondrement

Sur 500 gĂ©nĂ©rations, les loups finissent par s'Ă©teindre (gĂ©nĂ©ration 396 : 22 orignaux, 0 loup). Sur une grille de 100×100, ce sont les orignaux qui disparaissent en premier. Le modĂšle ne maintient pas l'Ă©quilibre indĂ©finiment.

Pistes d'amélioration

  • Introduction de facteurs environnementaux
  • Reproduction spatialement localisĂ©e
  • RĂ©pĂ©tition de simulations pour moyennage statistique
  • ParamĂštres adaptatifs au fil des gĂ©nĂ©rations

Vers une simulation qui s'amĂ©liore d'elle-mĂȘme

Le modÚle actuel repose sur des paramÚtres fixés à la main : taux de reproduction, seuils de santé, pénalités. Ces choix fonctionnent, mais ils sont le fruit de mon intuition et de mes essais, pas d'une optimisation rigoureuse.

Je travaille actuellement sur l'intégration d'un algorithme génétique pour calibrer automatiquement ces paramÚtres. Le principe : générer des centaines de simulations avec des configurations différentes, évaluer leur proximité avec les données réelles de l'Isle Royale, et faire "survivre" les meilleures configurations, génération aprÚs génération.

🧬
L'idĂ©e : appliquer la logique de la sĂ©lection naturelle non plus aux loups et aux orignaux, mais aux paramĂštres de la simulation elle-mĂȘme. Faire Ă©voluer le modĂšle pour qu'il apprenne Ă  reproduire le rĂ©el.

C'est une transition naturelle vers le machine learning : passer d'un modÚle conçu manuellement à un modÚle qui s'optimise par les données. Et c'est exactement la direction de ma spécialisation en Data & IA.

Ce que ce projet m'a appris

Ce travail montre qu’il est possible de reproduire partiellement les dynamiques d’un systĂšme rĂ©el Ă  l’aide d’un modĂšle numĂ©rique simple. La simulation ne cherche pas Ă  remplacer la complexitĂ© du vivant, mais Ă  comprendre les mĂ©canismes fondamentaux qui gouvernent l’évolution d’un systĂšme complexe.

Ce projet illustre l’intĂ©rĂȘt de la modĂ©lisation numĂ©rique comme outil d’ingĂ©nierie des systĂšmes, permettant d’analyser, tester et interprĂ©ter des comportements globaux Ă  partir de rĂšgles locales, avant toute implĂ©mentation sur un systĂšme rĂ©el.