Adloun

Faire tourner un algorithme évolutionnaire

Exercice supplémentaire · niveau 2 · enseignement scientifique (terminale), chapitre 8 — L'évolution comme grille de lecture du monde

Énoncé

On cherche l'entier compris entre et qui maximise . On applique l'algorithme suivant : partir de six candidats ; garder les trois meilleurs ; chacun produit deux « enfants » valant et . Population initiale : , , , , , . 1. Calculer pour les six candidats et désigner les trois meilleurs. 2. Écrire la génération et calculer les . 3. Écrire la génération et conclure. 4. À aucun moment l'algorithme n'utilise l'expression de autrement que pour l'évaluer. Pourquoi est-ce intéressant ? 5. Quelle différence essentielle sépare cet algorithme de l'évolution biologique ?

Corrigé

1. ; ; ; ; ; . Les trois meilleurs sont (), () et ().

2. Enfants : et ; et ; et . Génération : , avec , , , , . Les trois meilleurs : (), (), ().

3. Enfants : et ; et ; et . Génération : , avec . L'optimum est atteint en deux générations, sans qu'on ait jamais résolu l'équation.

4. Parce que beaucoup de problèmes réels ne se résolvent pas algébriquement : on sait simuler la performance d'une antenne, d'une aile ou d'un emploi du temps, mais on ne sait pas écrire l'équation dont la solution serait le meilleur dessin. L'algorithme évolutionnaire ne demande qu'une chose : savoir comparer deux solutions. C'est très peu, et cela suffit.

5. La fonction objectif. Ici, un humain a écrit : le système sait ce qu'il cherche. La sélection naturelle n'a rien de tel : aucun critère n'est fixé à l'avance, et ce qui est « bon » dépend d'un environnement qui change lui-même. L'algorithme est donc une imitation du mécanisme, non de l'absence de but qui en fait toute la particularité.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.