Comportement Hiérarchique GEF 447B Comportement Hiérarchique I killed the STRIPS example from Jim’s lessons, because it didn’t bring anything important to the lesson. Capt. Vincent Roberge
Aperçue Paradigme Hiérarchique Architecture Hiérarchique
Paradigme Hiérarchique Pourquoi apprendre de quoi de désuet? Pour apprendre des erreurs antérieurs: Lorsque quelqu’un doit implémenter des comportements dans un robot, les chances sont qu’il utilise le paradigme hiérarchique à cause qu’il est intuitif donc facile à comprendre. Depuis, nous avons découvert que ce n’est pas la meilleure approche, alors on passera pas plus d’une classe à apprendre ce paradigme.
Robot Primitives Primitives robot ENTRÉE SORTIE CAPTER Donnée des capteurs L’information tirée des données PLANIFIER Info des données/ connaissance Directive AGIR Info des données/ Directive Commandes d’actuation
Paradigme Hiérarchique 1967- 1990 Méthode ‘Top down’ Planificateur utilise une représentation « globale » du monde réel p.ex. Voir une porte Décider l’aller vers cette porte Planifier un chemin pour aller à la porte en tenant compte des obstacles qui figurent dans la représentation globale du monde. Planifier Capter Agir
Paradigme Hiérarchique Les données captées sont uniquement utilisées pour créer/mettre à jour la représentation global du monde La représentation globale est ensuite utilisée par le planificateur La création d’une représentation global du monde: Difficile d’en faire une précise et exacte Difficile à maintenir à jour Demandant en frais de calculs Représentation du monde réel Planifier Capter Agir
Paradigme Hiérarchique Flot d’information Primitives robot ENTRÉE SORTIE CAPTER Donnée des capteurs L’information tirée des données PLANIFIER Info des données/ connaissance Directive AGIR Info des données/ Directive Commandes d’actuation
Aperçue Paradigme Hiérarchique Architecture Hiérarchique
Architecture Hiérarchique Rappelez-vous que les architectures sont utilisées come gabarit pour l’implémentations, et ils nous permettent de les comparer selon leurs attributs. Nous nous attarderons sur celle du: Nested Hierarchical Controller (NHC) (Contrôleur hiérarchique imbriqué)
Architecture Hiérarchique (NHC) Processus du NHC : -Observations des capteurs -Représentation du monde peu utiliser connaissance a priori: - carte, règle d’ops… -Planif. (pour navigation) = 3 étapes; dernière étape étant les commandes de motion. -Contrôleur convertit en commandes pour les actuateurs. Sensors feed world model Model may have other a priori knowledge such as maps and rules such as the robot should avoid high traffic areas at the start and stop of business day. Planning stage for a navigation robot has three stages: planner, navigator and pilot: more later. All three access the knowledge base. The last stage, the Pilot generates action commands, ex. Turn left at a velocity of 0.6 m/sec. Low level controller takes these commands and interprets them to be actually actuator commands.
NHC - Planificateur de Mission NHC se démarque avec ses 3 niveaux de planification Planificateur de mission: - Reçois sa mission d’un humain ou de lui-même (p.ex. va prendre une boite dans l’autre salle) Responsable de: Traduire la mission en termes utilisables par le navigateur Lire la carte – trouver sa position et la position du but (p.ex. la boite)
NHC - Navigateur et Pilote Responsable de générer un chemin de sa position à la position du but une suite de point de passages (ou de segment de droite) et passer les segments un à un au pilot Pilote : Utilise l’information du segment de chemin pour identifier l’action à prendre (tourne 83 degrés, avance 5m)
NHC - Procédure de contrôle 1) Après Pilote passe commande au Contrôleur, représentation globale est mis à jours par les capteurs 2) Pilote vérifie périodiquement la représentation du monde: Si robot dévie du chemin: nouvelle commande est envoyé au Contrôleur 3) Arrivée au point de passage: Pilote avise le Navigateur et reçoit le prochain segment 4) Si arrivé au but: Navigateur avise le Planificateur de Mission. Planificateur de Mission donne le prochain but 4 3 2 1
NHC - Procédure de contrôle 2) Pilote vérifie périodiquement la représentation du monde: 3) Si rencontre un obstacle : Pilote passe contrôle au Navigateur. Navigateur doit faire un nouveau chemin basé sur la nouvelle représentation du monde. 4) Navigateur donne les nouveaux segments (un à un) au Pilote 3 4 2 1
NHC - Avantages / Inconvénients Imbrique la planification et l’action : ainsi, si le monde change, le robot peut réagir Intrinsèquement hiérarchique au niveau de l’intelligence et de l’abstraction Intell. : Planificateur de mission > navigateur > pilote Abst. : Planificateur de mission > navigateur > pilote Inconvénients: Approprié surtout pour la navigation Dépend beaucoup sur la représentation du monde
Paradigme Hiérarchique en bref Avant 1990, utilisé pour la plus part des robots Structure un ordre dans la relation entre le captage, la planification et l’agir La représentation du monde a une importance cruciale et mis-à-jour très lent Problèmes supplémentaires : Erreur des capteurs Erreur des actuateurs La fin d’une tâche
En bref Paradigme Hiérarchique Architecture Hiérarchique Questions?
Références Images et contenus tirés de: Introduction to AI Robotics, R. Murphy, 2000 Behavior-Based Robotics, R. Arkin, 1998