• Aucun résultat trouvé

Environnement virtuel

8.3 Mod`ele d’´evolution

8.3.2 Environnement virtuel

Fig. 8.6 – L’environnement virtuel, compos´e d’animaux (proies en bleu, pr´edateurs en

rouge) et de points noirs. L’individu apparait en haut `a gauche

Nous avons red´efini un environnement virtuel d´ej`a existant (Reynaud et Puzenat, 2001), permettant d’effectuer l’´evaluation d’un individu control´e par le RNA d´efinit dans la section pr´ec´edente. L’environnement (figure 8.6) est compos´e de 40*25 cases, pouvant etre chacune occup´ee par l’individu, un animal ou un point noir. L’individu apparaˆıt en haut `a gauche sur la figure. Les animaux sont pr´ed´efinis comme ´etant des pr´edateurs (en rouge sur la figure 8.6) ou des proies (en bleu). Les comportements des animaux sont stochastiques, avec une tendance `a se rapprocher de l’individu pour les pr´edateurs, et `a s’´eloigner de l’individu pour les proies. Les animaux en gris sont neutres et se d´eplacent al´eatoirement. La disposition des animaux et de l’individu dans l’environnement est ini-tialement toujours la mˆeme. L’individu peut passer sur les proies, les animaux neutres, et les points noirs, en les faisant disparaˆıtre. En revanche, Il ne peut pas avancer sur une case

o`u se trouve un pr´edateur ni sur un mur (constituant les bords de l’environnement). Il y a

13 types d’animaux diff´erents dans l’environnement (2 pr´edateurs, 8 proies, 3 neutres) et l’individu acc`ede `a plusieurs types d’informations perceptives : chaque animal est associ´e `a un motif visuel et un motif auditif. Les murs correspondent `a un motif visuel particulier (une croix), et n’´emettent pas de sons.

Les motifs, auditifs et visuels, qui sont envoy´es au RNA par l’interm´ediaire des groupes d’entr´ee, d´ependent de la distance s´eparant l’objet per¸cu de l’individu. Un niveau de bruit

est ajout´e au motif re¸cu par le groupe, proportionnellement `a la distance entre l’individu et le stimulus.

Fig. 8.7 – Port´ee auditive et visuelle de l’individu

Les port´ees des champs auditifs et visuels sont d´efinies diff´eremment (voir figure 8.7). Pour la modalit´e visuelle, chacun des 5 groupes d’entr´ee correspond `a une “ligne visuelle” dans l’environnement, par rapport `a la tˆete de l’individu. Chaque ligne a une longueur diff´erente, permettant la r´ealisation d’un cˆone de vision. Si un animal se trouve dans une ligne visuelle, l’image de cet animal est envoy´ee sur le goupe d’entr´ee correspondant. Si plusieurs animaux se trouvent sur la mˆeme ligne visuelle, seule l’image de l’animal le plus proche est envoy´ee. Si plusieurs animaux se trouvent dans des lignes diff´erentes, les motifs correspondant sont envoy´es aux diff´erents groupes.

Pour la modalit´e auditive, le champ perceptif d´epend ´egalement de la direction de la tˆete de l’individu. Si l’animal est `a gauche par rapport `a la direction de la tˆete , le signal auditif de l’animal le plus proche est envoy´e `a l’oreille gauche uniquement. Si l’animal est `a droite, le signal de l’animal le plus proche est seulement envoy´e `a l’oreille droite. Si l’animal est devant, ou derri`ere l’individu, le signal est envoy´e aux deux oreilles.

Un signal de punition est ´emis lorsque l’individu est en contact direct avec un pr´edateur, c.`a.d sur une case voisine `a l’horizontal ou `a la verticale. Le signal est une activation si-multan´ee de tous les neurones du groupe correspondant. Un signal de r´ecompense est ´emis dans deux cas : lorsque l’individu passe sur un des points noirs sur la figure 8.6, ou lorsque l’individu passe sur une proie et la d´etruit. Les deux signaux diff`erent par leurs intensit´es : l’ingestion d’un point noir correspond `a une activation diffuse sur la largeur de l’intervalle de temps de tous les neurones du groupe correspondant, tandis que l’ingestion d’une proie active simultan´ement tous les neurones du groupe correspondant.

On d´efinit le plus petit pas de temps de l’environnement comme ´etant la longueur de l’intervalle de temps defini dans la partie 8.3.1 pour que l’individu puisse percevoir ou se d´eplacer (1 pas de temps = 10ms de temps calcul´e).

En plus des perceptions envoy´ees au r´eseau de neurones, certaines situations ont une influence sur une variable interne, le niveau de vie. Au d´epart, le niveau de chaque

in-dividu est fix´e `a 200 points de vie. l’inin-dividu perd 10 points de vie par pas de temps o`u celui-ci est en contact avec le pr´edateur. Il gagne 20 points de vie pour chaque point noir atteint, et 200 points de vie pour chaque proie ing´er´ee. Tous les 5 pas de temps, on lui retire un point de vie. Lorsque le niveau de vie de l’individu atteint 0, la simulation est arr´et´ee. Un crit`ere d’arrˆet sur un nombre de pas de temps (10000) est ´egalement d´efini, afin de permettre `a la simulation de se terminer relativement rapidement, si l’individu reste trop longtemps en vie.

Nous avons ajout´e une contrainte pour le passage dans l’environnement. Le r´eseau est initialis´e par l’activation simultan´ee de tous les groupes d’entr´ee, puis tourne `a vide pendant 100ms. Si le r´eseau de neurones de l’individu est incapable de maintenir une activit´e interne pendant les 100 premi`eres millisecondes, alors l’individu ne peut plus recevoir de nouvelles perceptions, et il ne pourra plus se d´eplacer. L’individu est alors statique dans l’environnement et son niveau de vie chute en raison de la baisse r´eguli`ere de son niveau de vie, et de la proximit´e de pr´edateurs qu’il ne per¸coit plus. Le temps de vie correspondant `a ce cas est le temps de vie minimal que peut passer un individu dans l’environnement.

Le passage d’un individu dans l’environnement permet l’´evaluation du r´eseau, et d´efini le crit`ere de performance utilis´e dans l’AE.

8.3.3 Algorithme ´evolutionniste

L’algorithme ´evolutionniste utilis´e est issu du paradigme classique de l’´evolution ar-tificielle (voir section 5.2). Le programme est d´evelopp´e en C++.

Au d´epart, une population de chromosomes (100 individus) est g´en´er´ee al´eatoirement, en respectant les contraintes du codage par projections d´efini `a la section 8.3.1. Les individus de cette population sont ensuite plac´es successivement dans l’environnement virtuel, chaque individu ´etant contrˆol´e par le r´eseau de neurones dont la topologie est la traduction d’un chromosome par le codage par projection.

Pour cr´eer une nouvelle g´en´eration, on enchaˆıne alors les trois ´etapes d´efinies ci-dessous.

– ´Evaluation : L’´evaluation permet de connaˆıtre la performance de chaque individu.

Ici, la performance d’un individu est l’int´egrale de son niveau de vie dans le temps. Cette mesure permet de privil´egier les individus restant un grand nombre de pas de temps dans l’environnement, avec un niveau de vie ´elev´e.

– S´election : Une fois chacun des individus ´evalu´e, on effectue une s´election par

tournois. Le principe en est le suivant : chaque tournoi implique une partie (ici, 10 chromosomes) de la population totale. Les chromosomes qui prennent part `a un tournoi sont tir´es al´eatoirement dans l’ensemble de la population. Le vainqueur du tournoi est le chromosome de l’individu qui a la performance la plus ´elev´ee. Ce chromosome est recopi´e dans la nouvelle population. On effecte autant de tour-nois que de chromosomes `a s´electionner pour la nouvelle population. L’avantage de ce processus est qu’il est stochastique, tout en privil´egiant les individus ayant de

bonnes performances.

– Variation : Dans la nouvelle population, les chromosomes ne sont pour l’instant que des copies des chromosomes de la population initiale. Afin d’introduire de nouvelles combinaisons de g`enes, on brasse la population en appliquant avec une certaine pro-babilit´e les deux op´erateurs g´en´etiques, de mutation et d’enjambement (voir section 5.2). Les probabilit´es de mutation et d’enjambement sont ici choiseis de mani`ere `a ce que, en moyenne, chaque chromosome voit un de ces g`enes muter, et participe `a un enjambement avec un autre chromosomes.

Afin de garantir que les meilleurs individus sont toujours pr´esents d’une g´en´eration sur l’autre, une proc´edure dite d’´elitisme est mise en place. Les 10 meilleurs individus de la population courante sont recopi´es tels quels dans la nouvelle population, sans passer par les ´etapes de s´election et de variation. De plus, ces individus sont aussi susceptibles d’ˆetre choisis pour participer `a un tournoi, et peuvent aussi se retrouver dans la partie de la nouvelle population qui ˆetre soumise `a l’´etape de variation.

Il peut arriver que le mˆeme individu soit pr´esent en plusieurs exemplaires identiques dans la nouvelle population, parce qu’il a ´et´e selectionn´e plusieurs fois, puis a echapp´e plu-sieurs fois `a l’´etape de variation. Afin de garantir un plus fort brassage des g`enes pr´esents dans la population, et pour ´eviter d’´evaluer plusieurs fois le mˆeme individu, un syst`eme de r´einitialisation des doublons a ´et´e introduit : on ne garde qu’une seule version de chaque individu, les autres versions sont remplac´ees par des chromosomes compl`etement al´eatoires. Avec des taux relativement ´elev´es de mutation et d’enjambement, ce cas est cependant relativement rare.

L’algorithme s’arrˆete au bout d’un nombre de g´en´erations fix´ees `a l’avance, ici 30

g´en´erations. Nous ferons par la suite r´ef´erence `a la population ´evolu´ee pour d´esigner la

population obtenue apr`es 30 g´en´erations, et `a la population al´eatoire pour d´esigner la

population initiale.

Nous avons con¸cu un syst`eme o`u le comportement de l’individu s’adapte `a

l’envi-ronnement, sans tenir compte des propri´et´es topologiques ou dynamiques du r´eseau de neurones qui le contrˆole. Au cours du chapitre 9, nous montrons que le comportement de l’individu est effectivement am´elior´e au cours de l’´evolution (section 9.1), et que ses capacit´es d’apprentissage le sont ´egalement, sans que cette propri´et´e n’intervienne dans le calcul de la performance (section 9.2). Nous nous int´eresserons par la suite `a la topologie (chapitre 10) et `a la dynamique (chapitre 11) des r´eseaux ´evolu´es.

Chapitre 9

R´esultats sur l’´evolution et

l’apprentissage

Dans ce chapitre, nous montrons que le protocole d’´evolution fonctionne correctement, et qu’il permet d’am´eliorer les performances des individus au cours des g´en´erations (sec-tion 9.1). D’autre part, nous ´etudions les capacit´es d’apprentissage des r´eseaux au fur et `a mesure de l’´evolution. Ces r´esultats ont fait l’objet d’une publication (Meunier et Paugam-Moisy, 2005).

9.1 R´esultats sur le comportement