Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parSégolène Paradis Modifié depuis plus de 8 années
1
IA and AIBO COGITOÏDE Alejandro Garrido López sous la direction de Éric Bourreau et Jean Sallantin
2
OBJECTIFS “Porter sur le robot chien AIBO une démonstration de comportements avec COGITOIDE” ● Amélioration de la plateforme COGITOÏDE ● Généralisation du logiciel pour travailler avec tous les robots. ● Autonomie du Robot : Aibo ● Montrer que la plateforme COGITOÏDE est valable pour l'Aibo. ● Apprentissage ● Comment rendre la COGITOÏDE plus intelligente.
3
COGITOÏDE Introduction ● Qu'est-ce que la COGITOÏDE*? ● Plateforme Hybride de planification basée en réseaux de contraintes Les comportements sont des actions Actions décrites par réseaux de contraintes Contrôle réactif réalisé par COGITOÏDE * GOGITOÏDE a été développé par Mathias Paulin: “Contribution à l’apprentissage automatique de réseaux de contraintes et à la constitution automatique de comportements sensorimoteurs en robotique"
4
COGITOÏDE Description ● COGITOÏDE est construit en trois niveaux ● PLANNING SOLVER : – Trouver une séquence d'actions qui arrive à la cible. ● SEQUENCE SOLVER : – Instancier la séquence d'actions. ● Instancier les actuateurs qui règlent l'action. ● SUPERVISE : – Contrôler les actions exécutées. – Lancer la REPLANIFICATION et la CORRECTION MINEURE si nécessaire. – Supervise utilise Planning Solver et Sequence Solver
5
COGITOÏDE Planning Solver ● Problème de contraintes résolues avec CHOCO en 'n' pas ● Variables: – Descripteurs d ij : domaine dans les entiers – Actions a j : le domaine est [1..a] ● Contraintes: (dans le pas j) – Pre(a j ) & Post(a j ) implies a j = k – Post(a n ) implies CIBLE – DM j implies Pre(a j ), DM j+1 implies Post(a j ) – Dm j = Dm j+1
6
COGITOÏDE Exemple ● Planning Solver ● Descripteurs: JambeGauche, JambeDroit, Distance ● Actions: PasGauche, PasDroit Pas Gauche: Pre: {JG = -1 ^ JD = 1} Post: {JG = 1 ^ JD = -1 ^ Dfin Dini - 10} Pas Gauche: Pre: {JG = -1 ^ JD = 1} Post: {JG = 1 ^ JD = -1 ^ Dfin Dini - 10} Pas Droit: Pre: {JG = 1 ^ JD = -1} Post: {JG = -1 ^ JD = 1 ^ Dfin Dini - 10}
8
COGITOÏDE Tribot Mathias Paulin et Emmanuel Peralta
9
COGITOÏDE Amélioration ● Ancien Code ● Un algorithme SUPERVISE pour chaque robot ● Maintenant ● Le même SUPERVISE pour tous ● Changement ● Création de l'interface IRobot. ● Généralisation de SUPERVISE pour utiliser IRobot. ● Création de points de contact pour gérer de nouveaux robots.
10
COGITOÏDE Amélioration interface IRobot
11
COGITOÏDE Amélioration: Utilisation du même SUPERVISE ● Actions ● Chaque action implément IAction ● Robots ● Pour chaque robot créer une classe qui le réprésente ● Appeler SUPERVISE avec la classe robot comme paramètre. ● Avant: new TribotSupervisionModule(0, 15); ● Maintenant : new SupervisionModule(0, 15, aibo);
12
COGITOÏDE Amélioration: Définition d'un nouveau Robot ● Comment définissons-nous le robot? 1. Créer des descripteurs : Implémenter IDescriptor 2. Actuateurs : Implémenter IActuator 3. Actions : Implémenter IAction 4. Créer une classe qui réprésente le robot I.Introduire les descripteurs, les actuateurs et les actions II. Définir les méthodes de IRobot : Integer[] executeAction(String) Integer[] getCurrentState() MetaConstraint[] getGoalConstraints()
13
COGITOÏDE Aibo 19 lumières 16 moteurs 10 capteurs contact Capteurs de distance, d'accélération et de température Caméra
14
COGITOÏDE Comment connecter l'Aibo et COGITOÏDE ● Connexion avec Aibo vers URBI* ● Classe UAibo ● Descriptions des dispositifs URBI. ● Assosiacition des descripteurs utilisés par COGITOIDE et des dispositifs décrits par URBI. ● Envoi des commandes au URBI server. ● Réception des données d'URBI server. ● Definition d'objectif que l'Aibo suit. *URBI: Universal Real-time Behavior Interface
15
COGITOÏDE Aibo: Descripteurs et Actuateurs existants ● Descripteurs: ● Distance [10,90] ● Xblob [-100,100] ● Yblob [-100,100] ● Visible [0,1] ● TakePhoto [0,1] ● Actuateurs: ● Walk [1,90] ● Turn [-360,360] ● Photo [0,1] ● MoveHead [-85,40]
16
COGITOÏDE Aibo ● Comportements d'URBI ● Walk: il fait marcher l'Aibo ● Turn: il fait tourner l'Aibo ● Photo: il fait une photo avec la caméra ● MoveHead: il bouge la tête d'Aibo ● Les actions “physiques” sont paramétrés par les actuateurs.
17
COGITOÏDE Aibo ● Actions sur COGITOÏDE ● CatchUp : Il définit Walk quand Aibo est proche de la cible. ● Walk : Il définit Walk quand Aibo est plus loin que le domaine du capteur de distance. ● CenterUp, CenterDown : Il définit MoveHead pour regarder en haut ou en bas. ● CadreD, CadreG : Il définit Turn quand l'Aibo peut voir la cible mais lorsqu'elle n'est pas centrée. ● Find : Il définit Turn quand l'Aibo ne peut pas voir la cible. ● Photo : Il définit Photo.
18
COGITOÏDE Exemple de séquence dans Aibo
19
APPRENTISSAGE Mémoire Épisodique ● Ancienne Mémoire : Emmanuel Péralta ● À la fin de chaque expérience l'instructeur catalogue la séquence d'actions par un arbre de décision ID3. ● Pendant l'exécution COGITOÏDE évalue la séquence actuelle.
20
APPRENTISSAGE Mémoire Épisodique ● Mémoire proposée ● Pendant l'exécution l'instructeur catalogue la séquence d'actions déjà réalisées. ● Création de nouvelles catégories de séquences: je comprends et je ne comprends pas
21
APPRENTISSAGE Mémoire Épisodique ● Objectifs de la nouvelle proposition ● Apprentissage plus rapide. ● Apprentissage plus précis des séquences d'actions. ● Augmenter le vocabulaire de la mémoire. ● Problèmes de l'implémentation actuelle ● Il faut définir une nouvelle mémoire pour chaque ensemble d'actions. ● Futur: Généraliser la connexion entre la mémoire et les robots.
22
Conclusion & Perspectives ● Les buts sont faits ● Meilleure réutilisation et portabilité ● Implémentation sur l'AIBO ● Exposition d'une manière d'apprentissage ● Implémentation sur Pekee est envisagée ● Amélioration de la Plateforma vers CBR ou un autre système.
23
FIN
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.