TD/TP interactif "Sélection de la couleur des insectes"

Voir l'énoncé du problème sur la page de l'UE LIFAMI, dans le poly TD/TP page 43.


Ces vidéos demandent d'être actif !

  1. S'asseoir devant un ordinateur
  2. Lire l'énoncé du TD/TP + regarder la vidéo 0 montrant le résultat final
  3. Commencer à coder, soit directement, soit en suivant les vidéos qui montrent l'écriture du code au fur et à mesure avec des commentaires audio.
  4. Comme dans les vidéos, il faut compiler et tester le plus souvent possible.
  5. Faites des pauses dans les vidéos, pour coder, voir le code, etc.


Bon travail !



Objectif du TD/TP

Notre objectif est de programmer un mini jeu où l’ordinateur « apprend » un camouflage pour une population d’insectes se faisant dévorer par votre souris. La phase d’apprentissage est une simulation de l’évolution génétique des gènes de couleur que pourrait faire une espèce d’insectes voulant maximiser ses chances de survie.


Voici une vidéo montrant le résultat attendu :



Question 1

  • Création du code vide.
  • Écriture des 4 structures : Position, Color, Insects, SomeInsects


Voici la vidéo tuto décrivant l'écriture du code :



Question 2

  • Fonctions d'initialisation des deux structures


Voici la vidéo tuto décrivant l'écriture du code :



Question 3

  • Affichage

Voici la vidéo tuto décrivant l'écriture du code :



Question 5

  • la question 4 demandes de faire les questions 5 et 6
  • La souris mange les insectes

Voici la vidéo tuto décrivant l'écriture du code :



Question 6.a

  • Trouver la durée de vie minimale et la durée de vie maximale

Voici la vidéo tuto décrivant l'écriture du code :



Question 6.b et 6.c

  • Calculer la couleur moyenne des “bons” insectes, ceux qui ont vécu “longtemps” : ceux qui ont vécu plus que la valeur seuil calculée en faisant (MIN+MAX)/2
  • Puis régénérer une population avec cette couleur moyenne et une plage de couleur possible plus étroite.
  • Il y a de nombreuses améliorations possibles …

Voici la vidéo tuto décrivant l'écriture du code :