Accueil
Partenaires
Recherche
Publications
Expérimentations
Matériel
Contacts

Participants :

  • Equipe MAIA, INRIA : O. Simonin (MCF, Responsable de l’opération), A. Dutech (CR), F. Charpillet (DR), N. Beaufort (IJD)
  • Equipe TRIO, INRIA : YQ Song (Prof)

1. Introduction : scénario

Considérons une personne âgée dans sa maison, Mme Dupont, éprouvant des difficultés à se mouvoir, à se baisser et à percevoir les objets. Dans le cadre de l’assistance à cette personne, nous proposons d’équiper l’environnement de capteurs sous forme de dalles inter-connectées recouvrant le sol, et de déployer un ou deux robots mobiles autonomes munis d’un bras et d’une caméra (éventuellement l’environnement peut contenir d’autres capteurs/effecteurs). L’expérimentation ou la démonstration finale qui montrera l’intérêt d’un tel équipement est la suivante : Madame Dupont vient de laisser tomber un objet qu’elle transportait (elle s’en rend compte ou pas). La dalle sur laquelle s’immobilise l’objet détecte sa présence et propage immédiatement l’information dans le réseau de dalles. Le robot d’assistance reçoit ce signal, et se rend à la dalle concernée en empruntant le chemin le plus court (il remonte le signal) tout en évitant Mme Dupont. Arrivé devant la dalle cible, il identifie l’objet et le saisit. Puis, il se dirige vers Mme Dupont et lui tend l’objet pour qu’elle puisse s’en saisir sans avoir à se baisser. Alors la tâche est accomplie.

2. Enjeux scientifiques et positionnement

2.1 Environnement actif

L’intégration de capteurs dans les habitats pour assister les personnes dans leurs tâches quotidiennes est un concept devenu courant (i.e. la domotique). Toutefois, cette assistance est encore aujourd’hui très passive (simples capteurs déclenchant des mécanismes), et l’utilisation de robots pour l’assistance aux personnes reste un défi majeur. Cette action vise à progresser sur ces deux objectifs ; rendre l’environnement plus actif et intelligent, et déployer un robot pour assister certaines tâches.

Le concept d’intelligence ambiante repose sur le déploiement de réseaux de capteurs sans fils dans l’environnement afin de rendre celui-ci actif et communiquant [Weber et al 05, Mamei et al 06]. Nous pensons qu’une telle démarche peut-être particulièrement utile également pour faciliter et robustifier le déploiement d’un robot mobile d’assistance.

Dans cette opération, nous visons à utiliser l’environnement physique comme un véritable moyen de communication et de calcul, à l’image des insectes qui déposent des informations chimiques (phéromones) dans l’environnement. En effet, ils marquent l’environnement, ou remontent un gradient d’information, pour s’organiser et résoudre des tâches complexes [Parunak 97]. Calculer et transmettre l’information à travers l’environnement (simulé) est une approche aujourd’hui classique dans le domaine des systèmes multi-agents réactifs [Ferber 99], problématique sur laquelle l’équipe Maia travaille depuis plusieurs années [Chu et al. 07, Glad et al. 08].

Le premier challenge que nous souhaitons relever est la définition d’un environnement actif permettant l’inscription, le calcul et la diffusion d’information dans l’environnement réel (en général les modèles sont étudiés en simulation). L’idée de placer des nœuds de communications dans un habitat remonte au début des années 2000, avec le dispositif « intelligent data carrier (IDC) » de [Kurabayashi et al 00]. L’un des défauts de cette approche était la nécessité de placer des IDC sur les objets et sur les murs (aux jonctions) pour rendre le dispositif pertinent. Ce nombre important d’IDC entrainait une gêne physique et une véritable intrusion pour l’habitant.

Plus récemment la technologie RFID est venue considérablement réduire cette gêne, en fournissant des nœuds-capteurs de petite taille et ne nécessitant pas d’alimentation électrique directe. Toutefois un tel dispositif reste passif, puisqu’il faut soumettre les tags RFID à l’émission de signaux pour les activer [Mamei et al 06]. Des tags RFID actifs existent, utilisant des batteries, mais leur taille et la problématique de leur charge ramènent aux limites des IDC.

Dans ce contexte, l’équipe Maia explore une approche non intrusive, consistant à placer un réseau de capteurs/calculateurs dans le sol, c’est-à-dire en pavant le sol avec des dalles inter-connectées contenant ce réseau (voir concept dans [Pepin et al. 07]). Récemment, d’autres équipes ont étudié la possibilité de placer des capteurs dans le sol, de façon régulière, pour aider au contrôle ou à la localisation de robots [Park et al 09, Kodaka et al 09]. Nous proposons d’aller plus loin, en définissant un véritable environnement actif, capable de détecter des événements, prendre des décisions et calculer des solutions à un problème (par exemple le calcul d’un plus court chemin). Il s’agit aussi de définir un système robuste, où chaque dalle est indépendante, seulement connectée à ses quatre voisines, afin de définir un réseau modulable (aux évolutions de l’environnement) et résistant aux pannes (d’une dalle, d’une connexion, etc.). Nous avons réalisé quelques tests préliminaires avec de petits robots mobiles et un réseau de dalles émulées (cf. [Glad et al 10]) montrant le potentiel de l’approche. Nous souhaitons, dans le cadre de cette opération, définir physiquement ces dalles et les algorithmes décentralisés relatifs, afin de montrer leur pertinence dans le cadre de l’assistance aux personnes et du contrôle de robots mobiles.

2.2 Apprentissage et réalisation de la saisie d’un objet par un robot/des robots

Faire saisir par un robot un objet a priori inconnu dont la localisation est imprécise est un véritable défi de la communauté robotique. Cette tâche est déjà complexe à réaliser quand le robot dispose d’un modèle de son environnement et de l’objet à saisir [Xiong et al 07]. Néanmoins, depuis quelques années, on observe des résultats tangibles et intéressants dans le cas de saisie d’objets divers, qui ne sont pas modélisés et en utilisant des capteurs génériques comme la vision [Saxena et al 08][Bone et al 08] .

Nous voulons aborder ce problème dans une optique de robotique développementale [Lungarella et al 03] et d’apprentissage par renforcement [Sutton & Barto 98]. Dans cette optique, la tâche de saisir un objet sera apprise petit à petit par le robot sans qu’un utilisateur montre ou programme les gestes exacts à réaliser par le robot, ce sont par des interactions répétées avec des objets, dans des séances d’entraînement, que le robot va apprendre. Cet apprentissage sera incrémental selon plusieurs dimensions, comme par exemple la complexité de la tâche à résoudre (on parle alors de « shaping », un concept que nous avons déjà mis en place dans [Buffet et al 05]) et, plus important et plus novateur, selon les capacités motrices et perceptives du robot. En effet, dans une optique développementale, la complexité des perceptions et des actions possibles du robot va augmenter au fur et à mesure que ce dernier augmente ses performances. L’idée sous-jacente est que l’apprentissage est plus facile si les tâches à apprendre sont de complexité croissante, ce à quoi participent des capacités motrices et perceptives évolutives.

3. Organisation en tâches et plan de travail

Tâche 1 : Définition d’un réseau de dalles communicantes et des algorithmes décentralisés (+0 à +36 mois)

1.1 Définition et installation du réseau de dalles (6 mois)

Cette première sous-tâche visera tout d’abord à spécifier le système de dalles communicantes, en nous basant sur le travail préliminaire réalisé dans l’équipe Maia ([Pepin et al 09]) (2 mois). Puis nous commanderons les éléments composant ce réseau de dalles (cf. Section Équipement et Fonctionnement) (délai 2 mois). Enfin suivra une phase d’installation et de test dans l’appartement expérimental (2 mois).

L’ensemble des choix technologiques et des expérimentations du réseau de dalles se fera avec l’assistance du SED (Service d’expérimentation et de développement) de l’INRIA Nancy Grand Est.

1.2 Algorithmes décentralisés (36 mois)

Cette sous-tâche sera réalisée en continu tout au long de l’action, puisqu’elle impacte sur la définition des besoins (dalles), et sur la réalisation de la tâche globale d’assistance. Celle-ci se décompose en plusieurs fonctions (ou algorithmes) que devront réaliser les dalles :

  • détection d’un objet au sol,
  • diffusion d’une information dans l’environnement,
  • communication avec les robots,
  • planification de chemins dans l’environnement,
  • détection et suivi du déplacement de l’habitant ou d’un robot.

Ces algorithmes reposeront sur des techniques de calcul distribué (ou multi-agent), ou chaque nœud du réseau est un processus (ou agent) autonome, prenant des décisions en fonction de ses perceptions (capteurs) et des messages reçus du voisinage (connexions entre dalles). En complément des approches multi-agents développées dans l’équipe Maia [Simonin 05][Pepin et al 09], nous étudierons et étendrons les techniques de diffusion utilisées dans les réseaux par [Payton03], ou adapterons les règles d’évolution utilisées dans les Automates Cellulaires (AC) [Bandman 99].

Les algorithmes seront étudiés et validés en simulation (un émulateur est disponible) avant d’être déployés sur le réseau de dalles, l’enjeu principal étant de définir des solutions qui passent à l’échelle (en nombre de dalles). Plus généralement cette tâche visera à définir des fonctions de suivi des objets et des personnes dans l’environnement. En particulier, nous montrerons comment le réseau de dalles peut détecter une personne soudainement allongée au sol, synonyme d’une chute et donc nécessitant de déclencher une alarme.

Tâche 2 : Apprentissage pour la mobilité et la saisie d’un objet (+0 à +36 mois)

2.1 Navigation couplée avec l’environnement

Cette première sous-tâche consistera à mettre au point sur les robots des comportements de navigation permettant au robot de se rendre en un endroit donné. Ce comportement sera fortement couplé avec la structure de dalles et s’appuiera sur des travaux déjà entamés au sein de l’équipe MAIA [Pepin et al 09]. A ce déplacement « haut-niveau » guidé par les dalles s’ajouteront des comportements d’évitement d’obstacles, ce que nous savons faire par apprentissage [Beaufort 09] ou en le programmant [Braitenberg 84].

Dans un deuxième temps, en fonction des contraintes dues aux autres sous-tâches, des comportements additionnels de déplacement pourront être ajoutés aux robots. Il pourra s’agir, par exemple, de comportement visant à mieux placer le robot face à l’objet qui doit être saisi.

2.2 Saisie d’un objet

Ainsi que nous l’avons rapidement souligné précédemment, la tâche de saisie d’un objet quelconque et non-modélisé est extrêmement difficile. De plus, notre intérêt est plus de valider les couplages de l’approche robotique développementale et de l’apprentissage par renforcement. C’est pourquoi la tâche de saisie à laquelle nous allons nous confronter sera certainement moins ambitieuse que celle consistant à saisir un objet quelconque. En accord avec une approche incrémentale de l’apprentissage, nous allons en particulier faire évoluer la difficulté de la tâche. Une possibilité sera de procéder de la manière suivante :

  • apprendre à saisir un objet simple à saisir et connu dont la localisation est elle aussi connue et simple (face au robot par exemple)
  • apprendre à saisir un objet simple à saisir et connu dont la localisation est elle aussi connue (derrière le robot, sur une table, sur une case donnée).
  • apprendre à saisir un objet inconnu dont la localisation est elle aussi connue et simple (face au robot par exemple)
  • etc...

2.3 Coopération multi-robots

Cette troisième sous-tâche a pour objet d’expérimenter et de valider des méthodes de coopération multi-agents et multi-robots développées dans l’équipe MAIA au travers de tâches pertinentes dans le cadre de la robotique d’assistance [Buffet et al 07], [Glad et al 08].

Ainsi, nous comptons mettre en oeuvre des comportements multi-robots. En particulier nous proposons de généraliser la tâche de recherche d’un objet, en utilisant plusieurs robots d’assistance. En effet, l’habitant peut vouloir retrouver un objet, qui ne vient pas nécessairement de tomber au sol (par exemple une télécommande, un sac, un livre). Dans ce cas, le ou les robots doivent partir en exploration de l’environnement pour rechercher cet objet. Nous considèrerons la recherche d’objets déjà connus par les robots (base de données contenant des photos d’objets identifiés) et utiliserons des outils de reconnaissance d’images. Nous souhaitons focaliser notre travail sur la coopération multi-robots pour réaliser le parcours (ou la couverture) de l’environnement le plus efficacement possible. Ici l’originalité est de disposer d’un environnement actif pour établir et guider cette exploration des robots. Nous nous appuierons directement sur les travaux menés ces dernières années dans l’équipe Maia sur la patrouille multi-agent/robot exploitant le marquage de l’environnement (modèle EVAP [Glad et al. 08][Glad et al. 10]).

2.4 Robots et effecteurs

La recherche ainsi que les expérimentations menées dans cette tâche nécessiteront l’acquisition d’au moins un robot mobile, muni d’un bras manipulateur et d’un ensemble de capteurs (tels que caméra, télémètre laser, carte de communication sans fil). Nous proposons d’orienter notre choix vers un robot de type Pioneer 3-AT, qui répond à l’ensemble des besoins. Toutefois, nous étudierons la possibilité d’utiliser le nouveau robot mobile/manipulateur PR2 proposé par la société Willow Garage (actuellement non vendu mais prêté sur appel à projet).

L’acquisition de deux robots nous permettra d’étudier simultanément deux sous-tâches ou fonctions du robot (et de ne pas être bloqués lors d’une éventuelle panne sur un robot). Par ailleurs, déployer deux robots dans l’environnement nous permettra d’aborder la résolution de problème de façon plus riche (coopération entre robots), mais aussi de mieux « couvrir » l’environnement, en pouvant par exemple se rendre en un lieu inaccessible pour l’un des robots (blocage spatial dû à la présence de l’habitant).

Tâche 3 : Assistance à la récupération d’un objet (+6 à + 36 mois)

L’objectif de cette dernière sous-tâche est la validation du système Dalles+Robots à travers la réalisation de la tâche d’assistance décrite dans le scénario introductif (récupération d’un objet tombé par terre). Il s’agira de définir les fonctions actives ou à déclencher :

  • dans l’environnement : détection d’un objet perdu, diffusion d’une alarme, de la position de l’habitant)
  • dans le robot : réaction aux alarmes, déplacement vers l’objet et saisie, levé de l’objet.

Plusieurs critères d’efficacité (temps, précision) et de robustesse (résistance au bruit, aux perturbations) seront mesurés pour évaluer la qualité du système défini. Nous pourrons alors envisager de définir ce scénario comme un nouveau benchmark dans le contexte des robots d’assistance aux personnes.

Bibliographie :

[Bandman 99] O. Bandman, Comparative Study of Cellular-Automata Diffusion Models, Parallel Computing Technologies, Lecture Notes in Computer Science 1662, pp 756-771, 1999

[Beaufort 09] Beaufort, N. (2009). Apprentissage optimiste et planification partielle pour un robot mobile. Master’s thesis, Université Henri Poincaré, Nancy I.

[Bone et al 08] Bone, G.M, Lambert, A., Edwards, M. Automated modeling and robotic grasping of unknown three-dimensional objects, in IEEE International Conference on Robotics and Automation, 2008. ICRA 2008.

[Braitenberg 84] Braitenberg, V. (1984). Vehicules : Experiments in synthetic psychology. The MIT Press, Cambridge

[Buffet et al 05] O. Buffet, A. Dutech et F. Charpillet. Développement autonome des comportements de base d’un agent. Revue d’Intelligence Artificielle, RIA, volume 19(4-5), 2005.

[Buffet et al 07] Shaping Multi-Agent Systems with Gradient Reinforcement Learning. O. Buffet, A. Dutech et F. Charpillet. Autonomous Agent and Multi-Agent System Journal (AAMASJ), vol 15:2, pp 197-220, 2007.

[Chu et al. 07] H. Chu, A. Glad, O. Simonin, F. Sempe, A. Drogoul, and F. Charpillet. Swarm approaches for the patrolling problem, information propagation vs. pheromone evaporation. In IEEE International Conference on Tools with Articial Intelligence ICTAI, pages 442-449, 2007.

[Ferber 99] J. Ferber, "Multi-Agent Systems, An introduction to Distributed Artificial Intelligence", Addison Wesley, London, 1999.

[Glad et al 10] A. Glad, O. Simonin, O. Buffet, F. Charpillet, "Influence of Different Execution Models on Patrolling Ants Behavior : from Agents to Robots" AAMAS’10 9th International Conference on Autonomous Agents and Multiagent Systems , full paper to appear, 2010.

[Glad et al. 08] A. Glad, O. Simonin, O. Buet, and F. Charpillet. Theoretical study of ant-based algorithms for multi-agent patrolling. In 18th European Conference on Articial Intelligence ECAI’08, pages 626-630, 2008.

[Kodaka et al 09] K. Kodaka, H. Niwa, and S. Sugano. Active localization of a robot on a lattice of rd tags by using an entropy map. In 2009 IEEE Int. Conf. on Robotics and Automation, pages 3921-3927, 2009.

[Kurabayashi et al 00] D. Kurabayashi and H. Asama. Knowledge sharing and cooperation of autonomous robots by intelligent data carrier systems. In 2000 IEEE Int. Conf. on Robotics and Automation ICRA, pages 464-468, 2000.

[Lungarella et al 03] M. Lungarella, G. Metta, R. Pfeifer and Sandini, Giulio. Developmental robotics : a survey, Connection Science, Vol. 15(4), pp 151-190, 2003.

[Mamei et al 06] M. Mamei and F. Zambonelli. Augmenting the Physical Environment Through Embedded Wireless Technologies. In E4MAS workshop 2005, LNAI 3830, pages 187-204, 2006.

[Parunak 97] H. Parunak. Go to the ant : Engineering principles from natural agent systems. Annals of Operations Research, 1997.

[Payton03] Payton, Estkowski, and Howard « Compound behaviors in pheromone robotics » Robotics and Autonomous Systems 44(3-4), pp. 229-240, 2003.

[Pepin et al 09] N. Pepin, O. Simonin, F. Charpillet "Intelligent Tiles : Putting Situated Multi-Agents Models in Real World" ICAART’09 International Conference on Agents and Artificial Intelligence, pp 513-519, AAAI, ACM, Springer, 2009.

[Park et al 09] S. Park and S. Hashimoto. Autonomous mobile robot navigation using passive rd in indoor environment. IEEE Transaction on Industrial Electronics, 56(7):2366-2373, 2009.

[Saxena et al 08] Ashutosh Saxena, Justin Driemeyer, Andrew Y. Ng. Robotic Grasping of Novel Objects using Vision, in International Journal of Robotics Research (IJRR), 2008.

[Simonin 05] O. Simonin, "Construction of numerical potential fields with reactive agents", AAMAS’05 The Fourth International Joint Conference on Autonomous Agents and Multi Agent System, pp. 1351-1352 ACM-SIGART, 2005

[Sutton & Barto 98] R. Sutton and G. Barto, Reinforcement Learning, Bradford Book, MIT Press, Cambridge, MA, 1998.

[Weber et al 05] W. Weber, J. M. Rabaey, E. Aarts "Ambient Intelligence", Book Springer-Verlag New York, 2005.

[Xiong et al 07] Caihua Xiong , Han Ding et Youlun Xiong. Fundamentals of robotic grasping and fixturing, in Series on Manufacturing Systems and Technology, Vol 3, World Scientific Publishing Company, 2007.

Equipement :

  • 2 robots type Pioneer 3-AT avec bras et capteurs :
  • Réseau de dalles communicantes (10 x 10) : 100 nœuds de type iMote + 100 dalles avec capteur de pression (dalle SFR vendues par Interface-Z)+Installation (montage), connectique, software
 
Informatique Située - Plate-forme
"Appartement intelligent pour l'assistance à la personne"
Robotique d'assistance