IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département dinformatique.

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

DECOUVERTE ET MISE EN OEUVRE
CARACTERISTIQUES D’UN ENSEMBLE DE FORCES
Fabrice Lauri, François Charpillet, Daniel Szer
Fonctions & procédures
Introduction aux classes empiétantes François Brucker Brest (Breizh)
Calcul géométrique avec des données incertaines
LIRMM 1 Journée Deuxièmes années Département Microélectronique LIRMM.
Classe : …………… Nom : …………………………………… Date : ………………..
Introduction à l’Algorithmique
Conception d’une interface pour ordinateur de plongée
LE CALCUL LITTÉRAL AU COLLÈGE
Modélisation des flux physiques et des flux d ’informations dans les procédés batchs Hervé PINGAUD Good afternoon. My name is BP and I ’ve been working.
Module d’Enseignement à Distance pour l’Architecture Logicielle
Algèbre relationnelle
1 Placement automatique des composants lors du déploiement dapplications à base de composants Abdelkrim Beloued Chantal Taconet, Dhouha Ayed, Guy Bernard.
1 Intégration numérique garantie de systèmes décrits par des équations différentielles non-linéaires Application à l'estimation garantie d'état et de paramètres.
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
IFT 702 – Planification en Intelligence Artificielle Planification avec des processus de décision de Markov Froduald Kabanza Département d’informatique.
Cours Systèmes logiques
IFT702 Intelligence Artificielle
IFT 702 – Planification en intelligence artificielle Extraction automatique d’heuristiques à partir d’un modèle Froduald Kabanza Département d’informatique.
Des RRA à la diagnosticabilité
1 Cours numéro 3 Graphes et informatique Définitions Exemple de modélisation Utilisation de ce document strictement réservée aux étudiants de l IFSIC.
IFT 702 – Planification en intelligence artificielle Planification par recherche heuristique dans un espace d’états Froduald Kabanza Département d’informatique.
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 3 : Laide à la décision Laide.
Les structures de données arborescentes
Algorithmes Branch & Bound
Les algorithmes: complexité et notation asymptotique
Éclairage Structuré et vision active pour le contrôle qualité de surfaces métalliques réfléchissantes Olivier Morel*, Ralph Seulin, Christophe Stolz, Patrick.
IFT451 Introduction aux langages formels Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift313.
IFT313 Introduction aux langages formels
1.2 COMPOSANTES DES VECTEURS
La voyage de Jean Pierre
Introduction - Modèle Discret – Modèle Continu - Algorithmes - Conclusion
Complément Le diagramme des classes
Froduald Kabanza Département d’informatique Université de Sherbrooke
Google, un moteur de recherche comme les autres ?
Jean-François Landry Département d’informatique
IFT313 Introduction aux langages formels
IFT313 Introduction aux langages formels Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift313.
IFT313 Introduction aux langages formels
IFT313 Introduction aux langages formels Froduald Kabanza Département dinformatique Université de Sherbrooke Automates à pile LR Notion de poignée.
IFT 702 – Planification en intelligence artificielle Transformations Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift702.
Présenté à: M. Froduald Kabanza Par: Jonathan Pelletier Cody Stoutenburg Simon-Pierre Thibault.
Rappels de logique des prédicats du 1er ordre
Représentation des systèmes dynamiques dans l’espace d’état
Courbes de Bézier.
1.1 LES VECTEURS GÉOMÉTRIQUES
Notre calendrier français MARS 2014
Simon Langevin Mathieu Poisson
Les Algorithmes de Tri Introduction Tri par Sélection
Ordonnancement de tâches
Programmation linéaire en nombres entiers : les méthodes de troncature
Présentation de la méthode des Eléments Finis
ECOLE DES HAUTES ETUDES COMMERCIALES MARKETING FONDAMENTAL
CALENDRIER-PLAYBOY 2020.
Les principes de la modélisation de systèmes
Supports de formation au SQ Unifié
IFT702 Intelligence Artificielle Froduald Kabanza Département d’informatique Université de Sherbrooke IFT702 TLPlan.
Algorithmique et programmation (1)‏
IFT 702 – Planification en intelligence artificielle Planification par recherche dans un espace de plans Froduald Kabanza Département d’informatique Université.
1 © Maris, IRIT 2009 Planification Temporelle Frédéric MARIS IRIT – Université Paul Sabatier – Toulouse.
Introduction Définir Planning. L’agent Planning. Représentation pour l’agent planning. Idées derrieres l’agent planning.
Introduction et Généralités sur l’Algorithmique
Distributed Planning Distributed Problem Solving, motivations, strategies. Distributed Planning : Centralized planning for distributed plans. Distributed.
IFT 615 – Intelligence artificielle Consignes pour l’examen final
IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département d’informatique.
IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département d’informatique.
Transcription de la présentation:

IFT 702 Planification en intelligence artificielle Contrôle de la recherche avec des réseaux de tâches hiérarchiques Froduald Kabanza Département dinformatique Université de Sherbrooke planiart.usherbrooke.ca/kabanza/cours/ift702

© Froduald Kabanza IFT702 2 Sujets Introduction Total-Order STN Planning Partial-Order STN Planning

© Froduald Kabanza IFT702 3 Introduction Principe: spécifier des recettes pour contrôle lexploration de lespace des solutions pour un planificateur. »Spécifier les chemins à éviter: approche TLPLAN: TLPLAN: Temporal Logic Planner »Spécifier les ssous-buts (sous tâches) à suivre: approche HTN: HTN: Hierarchical Task Network (HTN)

TLPLAN Actions Search Control Formula Fonction de transition A* et dautres Plan État initial (LTL) Goal LTL Formula Progress (c) Froduald Kabanza4

HTN Primitive Tasks (Actions) Fonction de transition Search Plan État initial (c) Froduald Kabanza5 Non Primitive Tasks (Search Control)

6 Vue densemble de lapproche HTN Éntrées: état initial, réseau de tâches initial (à effectuer), opérateurs, méthodes Procédure: Décomposer les tâches récursivement, jusquà trouver des tâches primitives directement exécutables par les opérateurs Rebrousser chemin (backtracking) et essayer dautres décompositions si nécessaire »Ex., si aucune méthode nest applicable, ou pas moyen de satisfaire une contrainte Observations : Ressemble à la réduction de problèmes propre à la programmation dynamique (mais avec du backtracking si ça échoue) Effectuer un ensemble de tâches plutôt quatteindre un « but » comme en planification classique © Froduald Kabanza IFT702

© Froduald Kabanza IFT702 7 Élements de base dun HTN États, opérateurs: comme dans les approches précédentes. Tâches (non primitives): une tâche représente une activité complexe décomposable en sous-activités. »Elle a règle (méthode) de décomposition de tâches associée. Tâche Primitives : une telle tâche représente une activité non décomposable »Cest une action »Elle a des préconditions et des effets comme dans PDDL

8 2) taxi-travel(x,y) Task: travel(x,y) Pre: short-distance(x,y) Subtasks: get-taxi, ride(x,y), pay-driver travel(x,y) air-travel(x,y) buy-ticket(a(x),a(y))travel(x,a(x))fly(a(x),a(y))travel(a(y),y) © Froduald Kabanza IFT702 1) air-travel(x,y) Task: travel(x,y) Pre: long-distance(x,y) Subtasks: buy-ticket(a(x),a(y)), travel(x,a(x)), fly(a(x),a(x)), travel(a(x),y) Exemple Les tâches non primitives sont en gras

9 Formes des problèmes/solutions Définition du domaine : méthodes & actions Modèle (problème): état initial, (un but), liste de tâches, et la définition du domaine Solution: plan (satisfaisant le but) obtenu en »Applicant récursivement les méthodes aux tâches non primitives (en respectant les préconditions) »Applicant une action dont les préconditions satisfaites dans létat courant. task precond method s0 precondeffectsprecondeffects s1s2 subtask 2subtask 1 action © Froduald Kabanza IFT702

© Froduald Kabanza IFT Plan Introduction Total-Order STN Planning Partial-Order STN Planning

11 Total-Order STN Planning Une méthode pour décomposer une tâche non primitive est décrite par »La tâche à décomposer »Une précondition (ensemble de littéraux: condition pour que la décomposition soit applicable) »Un ensemble totalement ordonné de sous-tâches (tâches résultants de la décomposition) © Froduald Kabanza IFT702 travel(x,y) air-travel(x,y) buy-ticket(a(x),a(y))travel(x,a(x))fly(a(x),a(y))travel(a(y),y) 1) air-travel(x,y) Task: travel(x,y) Pre: long-distance(x,y) Subtasks: buy-ticket(a(x),a(y)), travel(x,a(x)), fly(a(x),a(x)), travel(a(x),y)

12 Exemple Supposons quon veut déplacer trois piles de conteneurs en respectant lordre dempilement pour chaque pile © Froduald Kabanza IFT702

13 Une stratégie pour déplacer les containeurs dune pile p à une pile r : »déplacer les containeurs de la pile p vers une pile intermédiaire r (inversée) »ensuite les déplacer de la pile r à la pile q © Froduald Kabanza IFT702

14 © Froduald Kabanza IFT702 Spécification avec ordre total

15 Algorithme : Total-Order Forward decomposition (p. 239) state s; task list T=( t 1,t 2,…) action a state (s,a) ; task list T=(t 2, …) task list T=( u 1,…,u k,t 2,…) task list T=( t 1,t 2,…) method instance m © Froduald Kabanza IFT702

16 © Froduald Kabanza IFT702 Plan obtenu par TFD

17 On ne peut pas entrelacer des sous- tâches de tâches différentes »Inefficacité du planificateur »Complexité de la spécification des domaines Théoriquement on peut toujours sen sortir (puisque SHOP est Turing- complete), mais au prix dune spécification »Peu naturelle On veut des méthodes qui procèdent globalement plutôt que localement »Peu efficace Limites des tâches complètement ordonnées walk(a,b) pickup(p) walk(b,a) get(p)get(q) get-both(p,q) walk(a,b) pickup(q) walk(b,a) goto(b) pickup(p)pickup(q) get-both(p,q) pickup-both(p,q) walk(a,b) goto(a) walk(b,a) © Froduald Kabanza IFT702

© Froduald Kabanza IFT Plan Introduction Simple Task Network (STN) Planning Total-Order STN Planning Partial-Order STN Planning

19 Partial-Order STN Planning Partial-Order STN Planning généralise Total-Order STN Planning »Les sous-tâches ne sont pas totalement ordonnées »Au contraire, elles sont partiellement ordonnées »Par conséquent, on peut entrelacer des sous-tâches de tâches différentes Lalgorithme de planification devient plus complexe »Exemple: réparer les interaction (add/delete des effets) entre actions Certaines approches utilisent les lien causaux vue dans lapproche PSP (Planification par recherche dans lespace de plans) walk(a,b)pickup(p) get(p) stay-at(b)pickup(q) get(q) get-both(p,q) walk(b,a)stay-at(a) © Froduald Kabanza IFT702

20 Partial-Order STN Planning Une méthode est décrite par »Une tâche non primitive (la tâche à décomposer par la méthode) »Une précondition (ensemble de littéraux: condition pour que la décomposition soit applicable) »Un ensemble partiellement ordonné de sous-tâches (tâches résultants de la décomposition) © Froduald Kabanza IFT702 travel(x,y) air-travel(x,y) buy-ticket(a(x),a(y))travel(x,a(x))fly(a(x),a(y))travel(a(y),y) 1) air-travel(x,y) Task: travel(x,y) Pre: long-distance(x,y) Subtasks: u 1 =buy-ticket(a(x),a(y)), u 2 =travel(x,a(x)), u 3 =fly(a(x),a(x)), u 4 =travel(a(x),y), {(u 1,u 3 ), (u 2,u 3 ), (u 3,u 4 )}

21 Spécification avec ordre partiel © Froduald Kabanza IFT702 <- sous-tâches partiellement ordonnées

22 P={p 1 …,p k, o }; w={t 2, …} w={ t 1,t 2,…} method instance m w={ t 11,…,t 1k,t 2,…} π={p 1,…,p k }; w={ t 1,t 2,…} operator instance o Algorithme: Partial-Order Forward Decomposition (p. 243) © Froduald Kabanza IFT702

23 Comparaison à recherche dans lespace détats Goal-oriented comme dans une recherche à rebours »Les buts correspondent aux tâches Génère les actions dans lordre de leur exécution comme une recherche en avant Lorsquon veut planifier la prochaine tâche »Toutes les tâches qui la précède sont déjà planifiées »Ainsi, on connaît létat courant! s0s0 s1s1 s2s2 … task t m … … task t n op 1 op 2 op i S i–1 task t 0 © Froduald Kabanza IFT702

24 Comparaison avec la planification classique Tout problème de planification classique peut être traduit en un problème HTN, en temps polynomial »Une des façons de le faire: Pour chaque but ou précondition e, crée une tâche t e Pour chaque action o et effet e, crée une méthode m o,e La tâche effectuée par la méthode est t e Les sous tâches sont t p1, t p2, …, t pn, o où p 1, p 2, …, p n sont les préconditions de o Ordre partiel sur les contraintes: chaque t pi précède o Par contre, il y a des problèmes HTN qui ne peuvent être traduits dans des problèmes de planification classique. © Froduald Kabanza IFT702

25 Deux méthodes: »Aucun argument »Aucune précondition Deux opérateurs, a et b »Sans argument ni précondition État initial : vide; tâche initiale t Ensemble de solutions {a n b n | n > 0} Aucun problème de planification classique na cette solution »Le système de transitions est une machine à état fini »Aucune machine à état fini ne peut reconnaître le language {a n b n | n 0} method1 bt a t method2 ba t © Froduald Kabanza IFT702 Comparaison avec la planification classique

26 Lapproche TFD est implémenté dans SHOP Lapproche PFD est implementé dans SHOP2 Implémentations © Froduald Kabanza IFT702

© Froduald Kabanza IFT Plan Introduction Simple Task Network (STN) Planning Total-Order STN Planning Partial-Order STN Planning

© Froduald Kabanza IFT Généralisation Conraintes plus générales que juste les ordres partielles entre les tâches: »before-constraint: un littéral doit être vrai dans létat juste avant une tâche »after-constraint: un littéral doit être vrai dans létat juste après une tâche »between-constraint: un littéral doit être vrai dans lintervalle

© Froduald Kabanza IFT Références Malik Ghallab, Dana Nau & Paolo Traverso. Automated Planning: theory and practice. Morgan Kaufmann, ISBN: (Chapitre 11)