Algorithmes Génétiques et Réseaux de Neurones “Smart Bees” Objectif Général : Appliquer un algorithme génétique sur un ensemble d’individus, chacun étant muni d’un réseau de neurones afin qu’ils puissent remplir un objectif. Réseaux de neurones e0 |f ei |f en w0 Neurone wi |f wn left |f right |f |f speed front |f |f angular speed back |f |f tanh( wie i ) Principe de l’algorithme génétique : ◾ A chaque génération, l’algorithme génétique garde 1/3 des meilleurs individus, effectue des croisements entre ceux-ci et les autres et enfin des mutations pour les individus restants. ◾ Les gènes étant représentés par les poids wi, un croisement consiste à générer un nouvel individu dont les gènes sont issus des deux parents et une mutation à ne modifier qu’un seul gène. |f Objectif de la 1 ère Nombre de passage sur la ruche 25 application : Possèdant 10 neurones chacune, les abeilles doivent rester le plus longtemps possible sur la ruche. Génération >=200 : moins de passage, mais les abeilles y restent plus longtemps 20 15 10 Résultat : Avec une durée de 10 secondes pour chaque génération. 5 0 1 10 100 50 Générations 200 500 Remarque : Lorsque le nombre de générations devient très élevé les résultats ont tendance à se dégrader. Les abeilles sur-apprennent et oublient peu à peu leur bon comportement. Nombre de fleurs apportées sur la ruche Une durée de 10 secondes pour 15 Objectif de la 2 nde chaque génération application : Possédant 10 neurones chacune, les abeilles doivent prendre une des fleurs sur le plan et l’apporter dans la ruche. 12 9 6 Plus loin : Même application avec 18 neurones. 3 0 1 10 50 100 200 500 Générations école nationale supérieure d’ingénieurssud alsace 2 Professeur référent : Studer Philippe Elèves : Freire Carvalho Emanuel Ozenne Antoine