La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

IFT 702 – Planification en intelligence artificielle Planification par recherche heuristique dans un espace d’états Froduald Kabanza Département d’informatique.

Présentations similaires


Présentation au sujet: "IFT 702 – Planification en intelligence artificielle Planification par recherche heuristique dans un espace d’états Froduald Kabanza Département d’informatique."— Transcription de la présentation:

1 IFT 702 – Planification en intelligence artificielle Planification par recherche heuristique dans un espace d’états Froduald Kabanza Département d’informatique Université de Sherbrooke planiart.usherbrooke.ca/cours/ift608

2 vendredi 23 novembre 2018 Contenu Rappels Architecture d’un planificateur utilisant comme solveur une recherche dans un espace d’états Langage de modélisation STRIPS et transformation correspondante pour un solveur par recherche dans un espace d’états Langage de modélisation PDDL transformation correspondante pour un solveur par recherche dans un espace d’états IFT608/IFT702

3 Rappel – un planificateur est un solveur de modèle
observations buts observations buts action Planificateur Plan Le comportement du robot résulte de l’ Il est autonome en ce sens qu’il peut ajuster son mécanisme de choix d’actions à des situations non progrannées explicitement en générant un nouveau plan– toute fois, cela est limité par son modèle. Modèle d’actions, capteurs et buts Exécution de l’action World IFT608/IFT702

4 Rappel – Hypothèses sur le domaine
vendredi 23 novembre 2018 Rappel – Hypothèses sur le domaine Les hypothèses du domaine à considérer sont: Un seul agent au lieu plusieurs agents Déterministe au lieu de stochastique Complétement observable au lieu de partiellement observable Séquencement d’actions ayant des liens de causalité Un algorithme défini avec ces hypothèse peut dans une certaine mesure être appliqué dans un environnement ne satisfaisant pas les deux premières hypothèses: Un planificateur déterministe centralisé peut planifier pour plusieurs agents L’incertitude est géré par l’architecture décisionnelle en re-planifiant Nous supposons dans un premier un temps que l’environnement est déterministe, complètement observable, avec un seul agent pour qui on planifie. IFT608/IFT702

5 vendredi 23 novembre 2018vendredi 23 novembre 2018
Architecture générale d’un planificateur opérant par recherche dans un espace d’états Modèle (actions, buts) Fonction de transition Recherche heuristique dans un graphe d’états Plan (Séquence d’actions) But État initial Le modèle ne décrit pas les capteurs puisque l’environnement est déterministe. L’agent est le seul acteur du changement. Pour les mêmes raisons, le plan est une séquence d’actions. Le modèle ne décrit pas les capteurs puisque l’environnement est déterministe. Le modèle est transformé en fonction de transition pour un graphe d’états. IFT608/IFT702

6 Exemple 1: Monde des blocs
Un robot doit empiler des blocs dans une configuration indiquée. C’est une version simplifiée d’un robot de manipulation de conteneurs dans un port. On dit au robot quoi faire (le but) Exemple: Livrer des colis Le comportement pour accomplir le but n’est pas codé d’avance Le robot utilise un planificateur pour déterminer le comportement C’est quoi un comportement au juste? Une séquence d’actions Que veulent dire les hypothèses détermiste et complétement observable ici? IFT608/IFT702

7 Exemple 2: Livraison de colis
vendredi 23 novembre 2018 Exemple 2: Livraison de colis Un robot doit recevoir des commandes de livraisons de colis et les exécuter. r1 (chambre) r2 (chambre) c1 (corridor) r4 (cuisine) r3 (s. bain) c2 (corridor) Colis 1 Colis 2 d11 d12 d23 d24 Que veulent dire les hypothèses détermiste et complétement observable ici?

8 Exemple 1 : Empiler des blocs
vendredi 23 novembre 2018vendredi 23 novembre 2018 Exemple 1 : Empiler des blocs Étant donné un modèle d’actions primitives (prendre un block, relâcher un bloc, etc.), trouver un plan pour attendre le but. Le problème est transformé en un problème de trouver un chemin dans un graphe dirigé. IFT608/IFT702

9 Exemple 2 : Livrer des colis
vendredi 23 novembre 2018vendredi 23 novembre 2018 Exemple 2 : Livrer des colis État initial But r1 r2 r3 r4 r1 r2 r3 r4 r5 r6 r5 r6 robot Étant donné un modèle d’actions primitives (prendre un colis, relâcher un bloc, se déplacer d’une pièce à l’autre), trouver un plan pour attendre le but. Le problème est transformé en un problème de trouver un chemin dans un graphe dirigé. IFT608/IFT702

10 Goto(r5,r1) Goto(r5,r2) Take(…) Goto(…) IFT608/IFT702

11 Rappel - Comment trouver un chemin dans un graphe?
vendredi 23 novembre 2018vendredi 23 novembre 2018 Rappel - Comment trouver un chemin dans un graphe? Non informé: Largeur, profondeur, iterative deepening, Dijkstra, etc. Ces algorithmes ne sont pas efficaces pour des problèmes qui nous intéressent. Ils n’ont aucun sens de direction. Le sens de direction est donné par une fonction heuristique. Recherche heuristique dans un graphe Best-first: (f(x) = α*g(x) + β*h(x)) α = 0: algorithme glouton (greedy) β = 0: uniform-cost α = β: A* Défi: trouver une fonction heuristique h(x) In AI, heuristics are criteria, methods or principles for deciding which among several alternative courses of action promises to be the most effective in order to achieve some Son but (Pearl, 1983, p. 3). In general, a heuristic is a function that computes an estimate from the current state to an optimal Son but state. This way, it provides the search process used by a planner with a sense of direction with actions resulting in states that are closer to the Son but being preferred. In a recent book chapter, Geffner provides the following parallel between heuristics and similar functions in human cognition (Geffner, Heuristics book chapter): Heuristic evaluation functions are also used in other settings such as Chess playing programs (Pearl, 1983) and reinforcement learning (Sutton & Barto, 1998). The difference between evaluation functions in Chess, reinforcement learning and domain-independent planning mimic actually quite closely the relation among the three approaches to action selection mentioned in the introduction: programming-based, learning-based and model-based. Indeed, the evaluation functions are programmed by hand in Chess, are learned by trial-and-error in reinforcement learning, and are derived from a (relaxed) model in domain-independent planning. He relates to heuristics to ‘feelings’, ‘emotions’ or ‘appraisals’ in high-level human problem solving: It is now widely accepted in cognitive science that emotions play a key role in action decision, yet not consciously. Analogously, heuristics are most of the time ‘opaque’ to the search process of a planning algorithm and yet provide key guidance for the search to converge rapidly to a Son but solution. Heuristics provide a sense of direction or ‘gut feeling’ to the agent. Similarly, emotions have been shown to provide the appraisals that are necessary for navigating in a complex world. IFT608/IFT702

12 Prérequis IFT615 IFT 615 (Recherche heuristique globale) IFT608/IFT702

13 Rappel - Recherche heuristique
Voir IFT 615 (Recherche heuristique globale) A* est une extension de l’algorithme de Dijkstra Utilisé pour trouver un chemin optimal dans un graphe via l’ajout d’une heuristique Une heuristique h(n) est une fonction d’estimation du coût entre un nœud n d’un graphe et le but (le nœud à atteindre) L’heuristique donne un sens de direction à l’exploration de l’espace d’états. Le temps de calcul de A* et la qualité de la solution (proximité à la solution optimale) dépendent beaucoup de la qualité de l’heuristique. Les heuristiques sont fondamentales en IA. Dans la planification, les enjeux sont notamment au niveau de: Extraire automatiquement des heuristiques à partir du modèle Apprendre des heuristiques automatiquement (non couvert dans ce cours) IFT608/IFT702

14 Rappel - Algorithme A* (IFT 615)
Entrée de A* État initial (l’état courant) État final (le but) Fonction de transition : successeur(état, action) Fonction de cout : cout(état,successeur) Fonction heuristique: h(état) Sortie: chemin entre l’état initial et l’état final. Le chemin est optimal si l’heuristique est admissible. Les fonctions sont définies une seule fois pour un domaine. Elles définissent le domaine. L’état initial et le but spécifie un problème dans le domaine. IFT608/IFT702


Télécharger ppt "IFT 702 – Planification en intelligence artificielle Planification par recherche heuristique dans un espace d’états Froduald Kabanza Département d’informatique."

Présentations similaires


Annonces Google