Expérience 02

Agents évolutifs

Une population de créatures dotées d'un minuscule cerveau — un réseau de neurones — placée dans un monde avec de la nourriture, où l'énergie s'épuise. Aucune ligne de code ne leur dit de chercher à manger : ce « comportement » émerge, génération après génération, de la seule sélection naturelle.

Qu'est-ce que la neuroévolution ?

Chaque agent est piloté par un tout petit réseau de neurones : quelques dizaines à quelques centaines de poids qui transforment ce que l'agent « perçoit » (des rayons qui détectent de la nourriture et d'autres agents à proximité, plus sa propre énergie) en une décision de mouvement. Ce réseau n'a jamais été entraîné à reconnaître de la nourriture ni programmé à s'en approcher — au départ de chaque expérience, ses poids sont tirés au hasard, et son comportement l'est tout autant.

Ce qui fait progresser la population, ce n'est pas la rétropropagation du gradient utilisée en apprentissage profond classique : c'est un algorithme génétique. À chaque génération, les agents sont évalués sur leur capacité à survivre et à se nourrir (leur « fitness »), les plus performants sont sélectionnés pour se reproduire — leurs poids sont copiés et légèrement mutés — et les moins performants disparaissent. Aucune cible, aucune fonction de perte différentiable, aucune donnée étiquetée : seulement une sélection répétée, comme en biologie évolutive.

Pourquoi c'est de l'émergence — et en quoi c'est différent de Lenia

Chez Lenia, l'émergence produit des formes : une règle locale identique partout fait apparaître une structure stable et mobile en quelques centaines de pas. Ici, l'émergence produit un comportement : aucun agent individuel n'évolue au fil d'une simulation — c'est la population tout entière qui change de génération en génération. Le réflexe de « chercher » la nourriture n'existe dans aucune ligne de code ; il apparaît parce que les agents qui, par mutation aléatoire, ont fini par s'orienter vers la nourriture ont laissé plus de descendants que les autres.

LifeLabs ne prétend pas que ces agents « veulent » quoi que ce soit, ni qu'ils sont conscients de la nourriture qu'ils poursuivent : un réseau de quelques dizaines de poids n'a pas de représentation du monde comparable à la nôtre. Mais leur comportement satisfait un critère fonctionnel précis — il s'améliore, génération après génération, sur une tâche de survie — ce qui justifie d'employer des mots comme « chercher », « éviter » ou « apprendre » entre guillemets, comme un raccourci descriptif plutôt que comme une affirmation sur leur expérience subjective.

Piloter

Rejeu d'une trajectoire

Le lecteur ci-dessous rejoue, image par image, les positions enregistrées d'une population d'agents et de leur nourriture au cours d'un run. Tant qu'aucun run réel n'a été publié, c'est une trajectoire d'exemple qui s'affiche — le mécanisme de rejeu est identique.

Chargement de la trajectoire…

Lecture

Les signes vitaux mesurés

Chaque run enregistre cinq séries temporelles, calculées génération après génération, qui servent de « signes vitaux » à la population observée :

Population
le nombre d'agents simulés dans la génération courante — la sélection et la reproduction en font varier la composition, rarement l'effectif total.
Fitness moyenne
la fitness moyenne de la population, c'est-à-dire le score moyen (survie, nourriture trouvée) utilisé pour choisir qui se reproduit — une fitness moyenne qui progresse signale que la population s'améliore collectivement sur la tâche.
Vitesse d'approche de la nourriture
la vitesse à laquelle les agents réduisent leur distance à la nourriture la plus proche au fil d'un épisode — c'est le signal d'émergence le plus direct : proche de zéro pour une population encore aléatoire, elle augmente à mesure qu'un comportement de recherche de nourriture s'installe.
Diversité comportementale
une mesure de la variété des comportements au sein d'une même génération — elle recule quand une stratégie dominante prend le dessus sur le reste de la population, et reste élevée tant que l'algorithme génétique continue d'explorer plusieurs approches.
Énergie moyenne
la réserve d'énergie moyenne des agents en fin d'épisode — un indicateur indirect d'efficacité : une population qui termine avec de l'énergie en réserve se nourrit mieux qu'elle ne dépense.

Signes vitaux — dernier run

Population128 agents
Fitness moyenne41.2
Vitesse d'approche de la nourriture0.34 u/pas
Diversité comportementale3.87
Énergie moyenne2.00

Résultats

Synthèse réelle, après le premier run complet (30 générations, graine 42, publié le 25 juillet 2026) : la fitness moyenne de la population passe de 22,3 à la génération 0 à 41,2 à la génération 29, soit ×1,84 — mais le signal le plus direct reste la vitesse d'approche de la nourriture, qui grimpe de 0,20 à 0,51, soit ×2,6. Un comportement de « recherche » de nourriture a bel et bien émergé de la seule sélection, sans une ligne de code pour le décrire, et le verdict automatique du pipeline le confirme : evolved. La courbe plafonne ensuite — un plateau honnêtement attendu, pas un échec masqué : à effectif et durée d'épisode fixes (150 pas), la population finit par manger l'essentiel de la nourriture disponible avant qu'elle ne repousse, ce qui borne structurellement la fitness atteignable dans cette configuration. Les prochains runs testeront si allonger l'épisode ou durcir l'écologie repousse ce plafond.