Apprentissage pour Cybot
J’en bave !
Voilà !
Après lecture et relecture de la thèse de Kelly sur l’apprentissage par renforcement, je pensais utiliser toutes les possibilités de Cybot : 9 niveaux pour chaque moteur et 4 évaluations des distances …
En fait très rapidement je vois qu’on aura des matrices de possibilités exigeant des calculs tellement longs que le robot risque de " réfléchir " un peu trop longtemps au milieu de l’autoroute avant de se décider!
J’ai donc comme Kelly (p 4-7 à 4-8 de sa thèse) décidé de simplifier les matrices au plus simple ( au moins dans un premier temps …) :
1 vitesse avant
1 vitesse arrière
1 vitesse=0
pour chaque moteur droit et gauche
3 estimations de distance pour chaque sonar au lieu des 4 possibles …( 8 pour TOM !):
près
moyen
loin
Ca me rabaisse déjà mon caquet ! ! ..(et celui de Cybot…Tom, lui, a 17 vitesses moteur possibles et 8 " range " de sonar ! ! ! )
J’arrive donc à ces matrices :
Je me heurte maintenant à plusieurs problèmes :
"
Ah ! si j’eusse étudié au temps de ma jeunesse " ( Ronsard peut-être Villon … ?)… et mes notions d’application d’une matrice sur une autre sont bien loin …
Remplaçant mes notions mathématiques par un bon sens de plus de 60 ans et ignorant le concept même de " fuzzy automata " cher à Kelly ( p 4-7 ) je m’aperçois qu’il va falloir confronter les 9 possibilités des sonars à chacune des 9 possibilités moteurs …
Soit 81 calculs élémentaires sans parler des mémoires de travail à utiliser pour ranger les résultats positifs ou négatifs dans chacun des cas … !
Dur …dur d’être Cybot !
De plus si ce petit robot dispose de capteurs assez bien foutus comme vous le voyez, il dispose d’élément de calcul extrêmement faibles ( + - / \ > < = )
Il ne peut compter que de 0 à 255 ( tiens … tiens !) : d’où retenues à mettre dans une autre case …
Alors les calculs tels que les propose Kelly …
Le logiciel permet des étiquettes heureusement mais combien ,… ?
Par contre ,
grâce à mon Génie mécanique !, tous mes robots disposent maintenant d’un contacteur de choc ( punition si le robot touche l’obstacle ! )Résultat pratique :
Comment verriez-vous l’affaire pour que Cybot puisse apprendre à se déplacer sans toucher les obstacles ?
Bref si vous avez des solucs elles seront les bienvenues ! !
Pascal