Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parMargot Picot Modifié depuis plus de 10 années
1
La robotique au service des personnes agées: défis et résultats dans le cadre du projet Nursebot Joelle Pineau - Carnegie Mellon University What we see here on the one side are some elderly people, which you may be likely to assume are not necessarily too technologically-savy. What you see on the other side is a robot, which I assure you is not yet so very smart. Yet these people and this robot somehow are trying to interact which each other, even talk to each other. Now that has to be a difficult problem. How do you get an elderly person and a robot to communicate, cooperate and maybe even successfully do a few of the tasks listed above? This really brings up an interesting problem. How can we bring mobile robots into people’s homes. It means designing robots that can operate in unpredictable, unconstrained environments. And the successful integration of robots in people's living environments strongly depends on robots' ability to effectively and meaningfully interact with humans.
2
Le robot Pearl Pearl est un assistant robotisé pour personnes agées et personnel médical. yeux articulés et caméras bouche LCD microphone et haut-parleurs écran “touchscreen” It can sense the world using: lasers, sonars, microphone, touchscreen, camera vision, wireless ethernet It can act and respond using: motion, speakers, display, facial expressions barre d’appuie plateau de livraison laser sonars base mobile Nursebot: La robotique au service des personnes agées
3
Profile d’une population vieillissante
Prévision (E.-U.): 450,000 infirmières à recruter d’ici 2008 Nursebot: La robotique au service des personnes agées
4
Notre vision de la robotique gériatrique
Suivi des ADLs (“Activities of daily living”) Source d’information Aide-mémoire Surveillance Lien entre personnel de soutien Appel à l’aide Aide physique Transport d’objets Socialisation Soins à distance Nursebot: La robotique au service des personnes agées
5
Le projet Nursebot à ses débuts
Field tests for the Nursebot Project are being conducted at Longwood, a retirement community in the Pittsburgh area. Our first field test involved a visit during a social hour at the facility, when residents and staff could meet “Pearl,” respond to her offers of candy, and engage in conversation. “Pearl” was well received. She didn’t topple over or bump into anything or anybody. But she was a bit dull and limited in her range of expression as she made small talk about the weather and TV. Nursebot: La robotique au service des personnes agées
6
Architecture Contrôleur en chef Navigation Aide-mémoire Communication
Nursebot: La robotique au service des personnes agées
7
Architecture Contrôleur en chef Navigation Aide-mémoire Communication
Localisation et construction de carte (Burgard et al., 1999) Détection des individus (Montemerlo et al., 2002) Analyse des mouvements (Bennewitz et al., 2001) Nursebot: La robotique au service des personnes agées
8
Navigation à base de système de particules
Nursebot: La robotique au service des personnes agées
9
Détection des individus
Nursebot: La robotique au service des personnes agées
10
Analyse des mouvements
Nursebot: La robotique au service des personnes agées
11
Architecture Contrôleur en chef Navigation Aide-mémoire Communication
Système Autominder (Pollack et al., 2002) Nursebot: La robotique au service des personnes agées
12
Système Autominder Horaire de l’utilisateur Modèle de l’utilisateur
Activités à l’horaire Mise à jour du plan Info des capteurs Activités complétées Horaire de l’utilisateur Modèle de l’utilisateur Info de l’utilisateur Activités à l’horaire Messages aide-mémoire Préférences Nursebot: La robotique au service des personnes agées
13
Architecture Contrôleur en chef Navigation Aide-mémoire Communication
Reconnaissance de la parole: Système Sphinx (Ravishankar, 1996) Synthèse de la parole: Système Festival (Black et al., 1999) Nursebot: La robotique au service des personnes agées
14
Reconnaissance de la parole avec Sphinx
Nursebot: La robotique au service des personnes agées
15
Le rôle du contrôleur en chef:
Établir les priorités parmi les objectifs des différents modules Négocier entre plusieurs objectifs ayant des coûts/gains variés Planifier malgré la présence d’incertitude Négocier entre l’acquisition d’information et la rencontre des objectifs Passer d’une tâche à l’autre en partageant l’information sensorielle Navigation Aide-mémoire Communication Nursebot: La robotique au service des personnes agées
16
Utilisateur + Environnement + Robot
Le contrôle des robots à base de Processus de Décision Markoviens Partiellement Observables (POMDPs) Observations Coûts/Gains Croyance (“belief state”) Etat Utilisateur + Environnement + Robot Etant donne un robot place dans un environnement quelconque et un but a atteindre, trouver un suite d’actions permettant au robot d’acceder au but en maximizant les gains (ou minimsant les couts) Actions Nursebot: La robotique au service des personnes agées
17
La famille de modèles Markoviens
Ambiguité quand à l’état? non oui non Choix d’action? Chaîne de Markov Modèle de Markov caché (HMM) oui Processus de Décision Markovien Partiellement Observable (POMDP) Processus de Décision Markovien (MDP) Nursebot: La robotique au service des personnes agées
18
Le modèle ... ... ... ... st-1 st ot-1 ot at-1 ?? bt-1 ??
Le POMDP est un septuple { S, A, , b, T, O, R } rt-1 rt Etat: ... st-1 st ... ot-1 ot Control: at-1 ?? Croyance: ... bt-1 ?? ... Nursebot: La robotique au service des personnes agées
19
Le modèle ... ... ... ... st-1 st ot-1 ot at-1 ?? bt-1 ??
Le POMDP est un septuple { S, A, , b, T, O, R } Problème #1: Ajuster la croyance En quoi est-ce que la plus récente observation change la croyance? rt-1 rt Etat: ... st-1 st ... ot-1 ot Control: at-1 ?? Croyance: ... bt-1 ?? ... Nursebot: La robotique au service des personnes agées
20
Le modèle ... ... ... ... st-1 st ot-1 ot at-1 ?? bt-1 ?? Difficile!
Le POMDP est un septuple { S, A, , b, T, O, R } Problème #1: Ajuster la croyance En quoi est-ce que la plus récente observation change la croyance? Problème #2: Trouver un plan Quelle action permettra au robot de maximiser ses gains? rt-1 rt Etat: ... st-1 st ... ot-1 ot Control: at-1 ?? Croyance: ... bt-1 ?? ... Difficile! Nursebot: La robotique au service des personnes agées
21
Méthodes de résolution pour POMDP
Notre objectif: Trouver un plan, (b), qui maximise les gains. IDEAL! POMDP Performance AMDP UMDP FIB QMDP MDP Complexité Nursebot: La robotique au service des personnes agées
22
Nouvelle approche: Une hiérarchie de POMDPs
Concept: Exploiter notre connaissance du domaine pour diviser un POMDP en plusieurs POMDPs. Motivation: La complexité de la planification POMDP croît de façon exponentielle avec le nombre d’actions. tâche Agit super-action ExamineSanté Navigue Avance ClarifieBut VérifiePoulx VérifieMeds action Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
23
PolCA: La planification avec hiérarchie de POMDPs
Etant donné POMDP M = { S, A, , b, T, O, R } et hiérarchie H Pour chaque tâche h H: 1) Choisir les composantes Ah sous-tâches Sh S h ANavigue ={ClarifieBut,Avance} SNavigue = S Navigue = Navigue AAvance ={N,S,E,W} SAvance = S Avance = Avance ClarifieBut Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
24
PolCA: La planification avec hiérarchie de POMDPs
Etant donné POMDP M = { S, A, , b, T, O, R } et hiérarchie H Pour chaque tâche h H: 1) Choisir les composantes Ah sous-tâches Sh S h 2) Minimiser le modèle Sh {zh(s0), …, zh(sn)} h {yh(o0), …, yh(op)} ANavigue ={ClarifieBut,Avance} SNavigue ={X’,Y’,Destination} Navigue ={o0,…,op} Navigue AAvance ={N,S,E,W} SAvance ={X,Y} Avance ={o0,…,om} Avance ClarifieBut Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
25
PolCA: La planification avec hiérarchie de POMDPs
Etant donné POMDP M = { S, A, , b, T, O, R } et hiérarchie H Pour chaque tâche h H: 1) Choisir les composantes Ah sous-tâches Sh S h 2) Minimiser le modèle Sh {zh(s0), …, zh(sn)} h {yh(o0), …, yh(op)} 3) Choisir les paramètres {bh,Th,Oh,Rh} {b,T,O,R} ANavigue ={ClarifieBut,Avance} SNavigue ={X’,Y’,Destination} Navigue ={o0,…,op} Navigue AAvance ={N,S,E,W} SAvance ={X,Y} Avance ={o0,…,om} Avance ClarifieBut Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
26
PolCA: La planification avec hiérarchie de POMDPs
Etant donné POMDP M = { S, A, , b, T, O, R } et hiérarchie H Pour chaque tâche h H: 1) Choisir les composantes Ah sous-tâches Sh S h 2) Minimiser le modèle Sh {zh(s0), …, zh(sn)} h {yh(o0), …, yh(op)} 3) Choisir les paramètres {bh,Th,Oh,Rh} {b,T,O,R} 4) Planifier tâche h h {bh, Th, Oh, Rh} ANavigue ={ClarifieBut,Avance} SNavigue ={X’,Y’,Destination} Navigue ={o0,…,op} Navigue AAvance ={N,S,E,W} SAvance ={X,Y} Avance ={o0,…,om} Avance ClarifieBut Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
27
L’exécution avec hiérarchie de POMDPs
Traverser la hiérarchie de haut-en-bas. Pour chaque tâche, consulter le plan at h(bt) Cas #1: at termine une branche, > appliquer cette action. Cas #2: at est une sous-tâche, > passer à cette sous-tâche. Agit ExamineSanté Navigue Avance ClarifieBut VérifiePoulx VérifieMeds Nord Sud Est Ouest Nursebot: La robotique au service des personnes agées
28
Première étude en simulation
Domaine 20-questions: Agent: “Est-ce qu’il s’agit d’un animal?” Utilisateur: “Non.” Agent: “Est-ce qu’il s’agit d’un légume?” Utilisateur: “Oui.” Agent: “Est-ce que c’est vert?” Agent: “...?” Objectif: Planifier une série de questions permettant de découvrir l’objet choisi. Petite complication…. l’utilisateur peut changer d’objet n’importe quand (Pr = 0.1), sans en avertir l’agent. Nursebot: La robotique au service des personnes agées
29
Première étude en simulation
Domaine 20-questions: Agent: “Est-ce qu’il s’agit d’un animal?” Utilisateur: “Non.” Agent: “Est-ce qu’il s’agit d’un légume?” Utilisateur: “Oui.” Agent: “Est-ce que c’est vert?” Agent: “...?” Actions Objectif: Planifier une série de questions permettant de découvrir l’objet choisi. Petite complication…. l’utilisateur peut changer d’objet n’importe quand (Pr = 0.1), sans en avertir l’agent. Nursebot: La robotique au service des personnes agées
30
Première étude en simulation
Domaine 20-questions: Agent: “Est-ce qu’il s’agit d’un animal?” Utilisateur: “Non.” Agent: “Est-ce qu’il s’agit d’un légume?” Utilisateur: “Oui.” Agent: “Est-ce que c’est vert?” Agent: “...?” Observations Objectif: Planifier une série de questions permettant de découvrir l’objet choisi. Petite complication…. l’utilisateur peut changer d’objet n’importe quand (Pr = 0.1), sans en avertir l’agent. Nursebot: La robotique au service des personnes agées
31
Les détails Etats: 1 par objet (e.g. tomate, concombre, lapin, tortue, tulipe, ….) Observations: “oui”, “non”, “” Actions: 1 réponse par objet Gains: question = -1 + plusieurs questions bonne réponse = +5 mauvaise réponse = -20 Début Les Végétaux Les Minéraux Les Animaux Animal? Végétal? Minéral? … … Mammiphère? Herbivore? LAPIN TORTUE …? Nursebot: La robotique au service des personnes agées
32
Résultats Domaine: |S|=12, |A|=20, |O|=3
Nursebot: La robotique au service des personnes agées
33
Une nouvelle décomposition
Début Les Végétaux Les Minéraux Les Animaux Animal? Végétal? Minéral? … … Mammiphère? Herbivore? LAPIN TORTUE …? Nursebot: La robotique au service des personnes agées
34
Une nouvelle décomposition
Début Les Végétaux Les Minéraux Les Animaux Animal? Végétal? Minéral? … Mammiphère? Herbivore? LAPIN TORTUE …? Les Fruits Les Légumes … … Nursebot: La robotique au service des personnes agées
35
Résultats Domaine: |S|=12, |A|=20, |O|=3
Nursebot: La robotique au service des personnes agées
36
Un exemple plus intéressant
Objectif: Le robot est deployé dans un foyer de personnes agées, ou il fournit des rappels à ses utilisateurs et les accompagnent à leurs rendez-vous. Domaine: |S|=512, |A|=20, |O|=19 Hiérarchie: Observations: {laser, speech, touchscreen, reminder} State features: robot_location person_location person_status reminder_goal motion_goal user_goal Nursebot: La robotique au service des personnes agées
37
Résultats pour système de dialogue
Plan POMDP Plan MDP Nombre moyen d’erreurs par action Utilisateur 1 Utilisateur Utilisateur 3 Nursebot: La robotique au service des personnes agées
38
Scénario During our next visit, “Pearl” led people to physical therapy appointments—on time and in the correct location—but it was clear that she couldn’t adjust her pace to the variable speed at which people walked. Nursebot: La robotique au service des personnes agées
39
Travail à venir Adaptation et apprentissage de paramètres reliés à la reconnaissance de la parole et aux préférences de l’utilisateur. Nouvelles techniques pour approximer les POMDPs. Demonstration d’émotions et/ou personnalité utilisant une nouvelle tête. Ajout d’un bras pour manipuler des objets. Nouvelles barres d’appui pour supporter un utilisateur en mouvement. Nursebot: La robotique au service des personnes agées
40
Le mot de la fin Nous avons developé un premier prototype d’un robot pouvant servir d’assistant mobile pour personnes agées. Le robot utilise une variante hiérarchique du modèle POMDP pour sa planification d’action. Ceci lui permet d’acquérir l’information nécéssaire pour satisfaire ses objectifs. Plusieurs autres méthodes probabilistiques sont utilisées dans le cadre de modules specialisés, tels que la détection d’individus et la planification de messages aide-mémoire. Nursebot: La robotique au service des personnes agées
41
L’équipe Nursebot Pour plus de détails: www.cs.cmu.edu/~nursebot
CMU - Robotics: Greg Armstrong Michael Montemerlo Joelle Pineau Nicholas Roy Jamie Schulte Sebastian Thrun CMU - HCI/Design: Francine Gemperle Jennifer Goetz Sarah Kiesler Aaron Powers U. of Pittsburgh - Nursing: Jacqueline Dunbar-Jacobs Sandra Engberg Judith Matthews U. of Pittsburgh - CS: Don Chiarulli Colleen McCarthy U. of Freiburg - CS: Maren Bennewitz Wolfram Burgard Dirk Schulz U. of Michigan - CS: Laura Brown Dirk Colbry Cheryl Orosz Bart Peintner Martha Pollack Sailesh Ramakrishnan Standard Robotics: Greg Baltus Pour plus de détails: Nursebot: La robotique au service des personnes agées
42
Comment choisir les paramètres?
Considerons par exemple TNavigue(s,a,s’) Cas #1: a est une action. TNavigue(s,ClarifieBut,s’) T(s,ClarifieBut,s’) S’ S’ Navigue Avance ClarifieBut Sud Est Ouest Nord 0.7 Nord ClarifieBut S 0.3 Sud S’ S’ Nursebot: La robotique au service des personnes agées
43
Comment choisir les paramètres?
Considerons par exemple TNavigue(s,a,s’) Cas #1: a est une action. TNavigue(s,ClarifieBut,s’) T(s,ClarifieBut,s’) Cas #2: a est une super-action. TNavigue(s,Avance,s’) T(s, Avance(s) ,s’) S’ S’ Navigue Avance ClarifieBut Sud Est Ouest Nord 0.9 Nord 0.2 ClarifieBut S Sud 0.1 S’ S’ 0.8 Nursebot: La robotique au service des personnes agées
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.