• Aucun résultat trouvé

Froduald KabanzaDépartement d’informatiqueUniversité de Sherbrooke

N/A
N/A
Protected

Academic year: 2022

Partager "Froduald KabanzaDépartement d’informatiqueUniversité de Sherbrooke"

Copied!
14
0
0

Texte intégral

(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)

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

(3)

Rappel – un planificateur est un solveur de modèle

observations buts

action

World

Exécution de l’action

Plan Plan Planificateur

Planificateur

Modèle d’actions, capteurs et buts

observations buts

IFT608/IFT702 3

(4)

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

(5)

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) État initial But

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 5

(6)

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.

Exemple 1: Monde des blocs

(7)

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

(8)

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é.

(9)

Exemple 2 : Livrer des colis

É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é.

r1 r2 r3 r4

r5 r6

r1 r2 r3 r4

r5 r6

État initial But

robot

IFT608/IFT702 9

(10)

Goto(r5,r1)

Goto(r5,r2)

Take(…)

Goto(…)

… … … …

… …

(11)

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))

o

α = 0: algorithme glouton (greedy)

o

β = 0: uniform-cost

o

α = β: A*

Défi: trouver une fonction heuristique h(x)

IFT608/IFT702 11

(12)

IFT 615 (Recherche heuristique globale)

Prérequis IFT615

(13)

IFT608/IFT702 13

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.

Rappel - Recherche heuristique

(14)

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.

Rappel - Algorithme A* (IFT 615)

Références

Documents relatifs

Les élèves ne disposant pour l’instant que d’informations qualitatives sur l’énergie potentielle et l’énergie cinétique d’un système, le but de

L’objectif de cette activité consiste pour le manager à étudier l’organisation présentée, afin d’identifier le problème de management auquel elle est confrontée.. Un

Pour cela (figure 1), on émet dans le local I avec une source de bruit normalisée, et on mesure dans le local II, séparé de I par la paroi étudiée, le niveau acoustique par

 A chaque type et chaque degré est affecté un nombre de points La méthode permet de calculer le poids du projet en points de

Réaliser une analyse de l’arbre généalogique suivant pour déterminer quel risque pour III4 d’avoir un enfant malade. Les femmes sont symbolisées par des ronds, et les hommes par

L'objet posé sur le sol ne pourra en aucun cas libérer de l'énergie par le travail de son poids. Son énergie potentielle de pesanteur est nulle. Pour définir une énergie potentielle

Elle est d’autant plus importante que la masse de la charge est grande et s’oppose à la mise en mouvement. Elle est caractérisée par le moment d’inertie J, qui s’exprime en

Ils sont ensuite émis sans vitesse par la source S, puis accélérés par un champ électrostatique uniforme qui règne entre S et P tel que.. U sp