CSI 4506: Introduction à l’Intelligence Artificielle La Recherche Heuristique
Plan du Cours Recherche Heuristique: Description Un Example: Le puzzle de taille 8 Recherche Best-First Definitions et Terminologie Examples
Recherche Heuristique: Description Dans la recherche aveugle, on performe un exploration exhaustive des objets de l’espace de recherche: Aucune information n’est utilisee pour guider la recherche. Dans la recherche heuristique, de l’information sur la structure de l’espace de recherche est utilisee. En particulier, on suppose l’existence d’une mesure sur les objets de l’espace qui nous permet d’estimer la distance d’un noeud a un noeud final. On utilise cette mesure pour comparer deux noeuds de facon a determiner le noeud le plus prometteur qui devrait etre explore le premier.
Example: Le puzzle a 8 Pieces Noeud de depart Noeud final 2 8 3 1 6 4 7 <Blanc> 5 1 2 3 8 <Blanc> 4 7 6 5 Mouvements Legaux: Deplace le <blanc> vers: - le haut - la droite - le bas - la gauche Contraintes: Les mouvements en diagonal sont interdits
A Noter Certains mouvements sont stupides: Example: Glisser 5 dans l’espace vide Certains mouvements sont plus avises: Example: Glisser 6 dans l’espace vide On peut utiliser une fonction d’evaluation pour guider la recherche.
Examples de fonctions d’evaluation pour le puzzle a 8 pieces f1(n) = g(n) + W(n) f2(n) = g(n) + P(n) Meilleure estimation (vis a vis du nombre d’etapes avant le but) g(n) = profondeur du noeud n dans l’arbre de recherche W(n) = nombre de carres mal places dans ce noeud P(n) = somme des distances “manhattan” de chaque carre par rapport a leur destination finale [sans prendre compte des obstacles] g(n) est important puisque l’on cherche le chemin le plus court! Avec
Examples de fonctions d’evaluation pour le puzzle a 8 pieces (Cont.) 2 8 3 1 6 4 7 <> 5 1 2 3 8 <> 4 7 6 5 f1(n) = g(n) + W(n) = 0 + 4 = 4 f2(n) = g(n) + P(n) = 0 + 1 + 1 + 1 + 2 = 5 Une solution optimale prend 5 mouvements f2 est en effet une meilleure estimation que f1
Note Dans la vie reelle on utilise aussi des heuristique: Example: Au supermarche, on choisit la queue la moins longue ou alors on choisit la queue dans laquelle les clients on le plus petit nombre d’objets dans leur panier. Avez-vous d’autres exemples?
Recherche Best-First (Voir Example au Tableau; On suppose qu’il n’y a pas de noeud final dans cet arbre) N = A n=A N = N= C->B n=C N = B N= G->F->B n=G N= F->B N= F->B n=F N= B N= B n=B N = N= E->D n=E N= D N= D n=D N= N= Ordre de la visite
Examples sur le Puzzle a 8 pieces Voir diapositives: 2 problemes differents 2 fonctions d’evaluation differentes
Notes Les resultats de la recherche dependent du choix de la fonction d’evaluation L’utilisation d’une fonction d’evaluation qui sous-estime la promesse de certains noeuds peut amener un chemin a cout non minimal Par ailleurs, l’utilisation d’une fonction d’evaluation qui sur-estime la promesse de certains noeuds peut amener a une expansion de trop de noeuds. Est-il possible d’obtenir des garanties sur nos fonctions d’evaluation?
Definitions et Terminologie Algorithme A Admissibilite Algorithme A* Monotonicite Informativite a.k.a. pouvoir heuristique Tous ces termes seront definis et expliques en cours. Veuillez lire attentivement les sections 4.0-4.2
Examples (1) Question: Est-ce que la fonction W(n) du puzzle a 8 pieces est admissible? Reponse: Oui, car W(n) est une sous-estimation de h*(n) puisque les carres qui ne sont pas a leur destination finale ont besoin d’au moins un mouvement, et probablement plus. Question: Est-ce que la fonction P(n) du puzzle a 8 pieces est admissible? Reponse: Oui, car P(n) est une sous-estimation de h*(n) puisque les carres qui se trouvent a une distance “manhattan” d de leur destination finale ont besoin d’au moins d mouvements, et peut-etre plus.
Examples (2) Parfois du pouvoir heuristique peut etre gagne au depends de l’admissibilite en utilisant une fonction h’ qui n’est pas plus petite que h. Ce pouvoir heuristique gagne peut nous permettre de resoudre des problemes bien plus difficiles. Example: h’(n) = P(n) + 3 S(n) P(n) distance “manhattan” de la position finale S(n) Score sequentiel obtenu en verifiant les carres non-centraux un par un et en distribuant 2 a tous les carres qui ne sont pas suivis de leus successeur adequat et 0 a tous les autres carres. Un carre au milieu a un score de 1.