IA
Objectifs
Comment rsoudre un problme ?
Recherche des solutions. Recenser les tats dun systme donn et trouver parmi ces tats une ou plusieurs solutions.
Comment ?
Le passage dun tat un autre se fait par lapplication dune action donne. Dveloppement dun arbre de recherche + une stratgie de recherche.
IA
Machine dterministe
LHumain rsout un problme, la machine excute la solution Machine/Systme algorithmique (non intelligent)
Systme d excution de la solution, Machine dterministe tats finis, A tout moment durant l excution, la prochaine instruction excuter est bien dtermine
IA
IA
IA
En tudiant les diffrents systmes cognitifs (Raisonnement, Planification, Comprhension, etc.), on dcouvre encore et encore les mmes concepts caractrisant le Systme de Rsolution de Problmes:
Espace de Recherche Ensemble de rgles de transformation/production Stratgie de Recherche Connaissance supplmentaire (Heuristique) Etc.
IA
Composantes d un SRP
Un espace de recherche Nature: espace dtats, de problmes, de plans.. Reprsentation: LP, Rseaux Smantiques, Un ensemble de rgles de production: tq; Une rgle est une unit du comportement; elle permet de transformer ltat de lespace faisant ainsi avancer la recherche. ex: ``la configuration de lchiquier correspond la situation A`` ``dplacer la tour la case X`` Un mcanisme de contrle qui choisit la rgle dclencher parmi les rgles applicables. Une rgle est applicable si sa tte sunifie avec l tat courant de l espace. Plusieurs rgles peuvent tre applicables un moment donn. Le mcanisme de contrle/choix correspond la stratgie de recherche adopte pour explorer l espace. Etats initiaux. Etats finaux. Si tat courant = tat final Fin recherche
IA
Le Tic-tac-toe est un jeu de rflexion se pratiquant deux joueurs au tour par tour et dont le but est de crer le premier un alignement.
IA
Modlisation
Remarque : Un tat est gnralement dcrit par un ensemble de variables dtats. Les valeurs attribues ces variables permettront alors de dfinir de manire univoque un tat donn. Ces variables dcrivent gnralement les attributs des diffrents objets (ou situations, faits, ) de lenvironnement du problme.
Pr. Imade BENELALLAM IA
Rsolution
Pour atteindre ltat but, le processus de rsolution doit disposer doprateurs de transformation dtat (dits aussi de transition) qui permettent de passer progressivement de ltat initial ltat but. On peut voir ces oprateurs comme des moyens de rduction de la diffrence entre ltat initial et ltat but.
IA
Etapes de Rsolution
Ainsi, dans ce cas la rsolution dun problme va consister en trois tapes :
1. La reprsentation formelle des tats du problme (lensemble des variables dtats) : cette tape peut faire appel lun des formalismes de reprsentation de connaissances ou directement des structures de donnes comme les listes et les tableaux; 2. La reprsentation formelle des oprateurs de transformation : les formalismes logiques peuvent remplir ce rle ou comme nous allons le voir, lutilisation des rgles de production peut tre un choix judicieux ; 3. Le choix de lalgorithme de recherche qui va choisir quels oprateurs il va appliquer et sur quels tats du problme en vue de trouver ltat but le plus vite possible. Cet algorithme doit donc disposer de procdures de test des tats pour dterminer sil a oui ou non atteint son but.
IA
Exemple 1
Le problme du Fermier, du Loup, de la Chvre, du chou et de la traverse de la rivire: Un fermier avec son loup, sa chvre et son chou veulent traverser la rivire. Il y a un canot bord, mais seul le fermier peut ramer, et il ne peut contenir que deux entits la fois (y compris le rameur). Si le loup reste seul avec la chvre, il va la manger, si la chvre reste seule avec le chou, elle va manger le chou. Que devrait tre la squence des traverses pour que les quatre soient sur lautre bord .
IA
IA
IA
Solution :
Trouver un plan, i.e. une suite dactions Sur un tat courant, plusieurs actions sont possible Un plan est un chemin parmi plusieurs chemins possible (y compris les chemins qui ne mnent pas ltat final)
IA
IA
Stratgies de recherche
Dans la session prcdente nous avons vu quun grand nombre de problmes peuvent tre reprsents de manire formelle sous forme despace dtats et que pour ces problmes les algorithmes de recherche constituent une technique gnrale de rsolution.
En effet, ces algorithmes permettent de guider la recherche dune solution en faisant des choix concernant les tats dvelopper et en grant le retour sur ces choix tout en vitant lexplosion combinatoire.
IA
Recherche systmatique
Nous allons nous intress la recherche systmatique (mthodique, organise) Exemple: Combien y a-t-il de triangles de toute grandeur dans cette figure ?
Dmarche. Quatre rgles seront appliques pour rendre la recherche systmatique. 1. On trouve les triangles commenant par A, puis par B, etc. 2. On ne considre pas les lettres antrieures la premire. Quand on arrive C, par exemple, on considre ni A ni B. 3. On identifie un triangle en plaant les lettres par ordre alphabtique. 4. La liste des triangles est faite par ordre alphabtique.
IA
Stratgies de recherche
Les stratgies de recherche permettent de dire lalgorithme quel tat il doit dvelopper en premier Le but de la stratgie est donc dorganiser lexploration de lespace dtats dun problme.
Soit Struct la structure de donnes reprsentant les noeuds en attente de dveloppement de larbre de recherche chaque tape.
IA
Stratgies de recherche
Les critres de choix dune stratgie de recherche sont essentiellement : La compltude : Lorsque la mthode garantit de trouver une solution si elle existe ; La terminaison (dcidabilit) : Mme si la solution nexiste pas, il sarrte en signalant un chec condition que lespace dtats soit fini. La complexit en temps : ce critre correspond lefficacit algorithmique qui dpend du nombre dtats dvelopps ; La complexit en espace : ce critre se rfre la quantit mmoire utilise ; Loptimalit (admissibilit): ce critre concerne loptimalit de la solution trouve par rapport celles qui existent- en se basant sur une fonction de cot.
IA
Stratgies de recherche
La complexit (en temps ou en espace) est mesure selon : b : le facteur de branchement maximal de larbre de recherche et qui correspond au nombre maximal de successeurs pour un tat. d : la profondeur laquelle se trouve le (meilleur) nud solution. m : la profondeur maximale de larbre de recherche correspondant lespace dtats et qui peut tre infinie.
IA
Stratgies de recherche
Trouver un chemin, lors de lexploration de lespace, qui mne de ltat initial ltat final: Recherche systmatique non-informe (aveugle): En-Profondeur et En-Largeur (couteux) Recherche avec Information sur le nud Hill-Climbing, Beam et Best-First Recherche Informe sur le nud et larc : A* Recherches dans les jeux : MINIMAX et ALPAH-BETA
IA
IA
E2
E8
E9
E3
E4
E5
E6
IA
IA
Problme de k-reines
Description : Il faut placer k reines dans un chiquier de dimension kxk sans qu'aucune d'entres elles ne soit en prise par une autre. On dit que deux reines sont en prise, si elles se trouvent sur une mme ligne, une mme colonne ou une mme diagonale.
Exercice: 1. Proposer une modlisation pour le problme 4-reines. 2. Donner une solution de ce problme avec la stratgie en profondeur dabord
IA
IA
Proprits
Les proprits de la recherche en profondeur sont comme suit : La compltude : Incomplet si lespace dtats est infini ou si on peut tomber sur des nuds correspondant au mme tat dans larbre de recherche ce qui entrane des boucles. Pour remdier ce problme, il faut ajouter des tests pour viter quun nud correspondant un tat dj trait par un autre nud ne soit dvelopp et ce, on sauvegardant dans une liste, par exemple, les nuds dj traits. Sinon il est complet et mme si la solution nexiste pas il sarrte en signalant un chec; La complexit en temps : Le nombre de nuds dvelopps est de lordre de bm (1+b+b2+..+bm=O(bm)) avec b le facteur de branchement et m la profondeur maximale de larbre. La complexit en espace : elle est linaire de lordre de b*m (O(b*m)). Loptimalit : Non. Il ne garantit pas de trouver le plus court chemin qui mne la solution (en termes de profondeur du nud solution).
IA
IA
E2
E3
E4
E5
E7
E8
E9
IA
IA
Problme de 4-reines
IA
Proprits
A la diffrence de la stratgie de profondeur, la recherche en largeur possde les proprits suivantes :
La compltude/ terminaison : Oui (Si le facteur de branchement b est fini). La complexit en temps : Le nombre de nuds dvelopps est de lordre de bd (O(bd)) avec b le facteur de branchement et d la profondeur de la meilleure solution. La complexit en espace : elle est exponentielle de lordre de bd. (car il faut stocker dans la file tous les nuds dvelopps) Loptimalit : Oui (Si la gnration de successeurs est sans cot ou cot uniforme) .
IA
IA
Best-First considre tout moment tous les nuds explorer et choisit le nud au meilleur cot.
La slection est globale La mmoire est gre comme une liste
Pr. Imade BENELALLAM IA
IA
IA
IA
La stratgie de recherche A*
Lalgorithme de recherche A* peut tre considr comme une amlioration de lalgorithme de recherche meilleur en premier se basant non seulement sur une fonction heuristique h mais aussi sur une fonction g destimation du cot minimal depuis le nud correspondant ltat initial jusquun nud n. Recherche doublement informe Un poids est associ chaque nud. Un poids est associ chaque arc (action). Chercher le meilleur chemin, qui mne de ltat initial ltat final, en fonction du cot associ chaque chemin. Le graphe (qui reprsente lespace) est construit progressivement On part de ltat initial et on dveloppe progressivement les chemins vers ltat final. La mmoire est une liste de chemins pondrs.
IA
Chemin optimal A*
6 G 1
4
D
Pr. Imade BENELALLAM IA
Sur quel critre seffectue le choix du prochain chemin dvelopper ? Selon la fonction f : chaque chemin est associ son cot et le cot du dernier nud n atteint : f(n) = g(n) + h(n);
g(n) donne le cot du chemin optimal, du nud initial au nud n; h(n) estime le cot du chemin restant, de n au nud final.
IA
IA
Exercice 1: Dans quels cas la recherche par lalgorithme Hill Climbing serait-elle meilleure que la recherche meilleure en premier? Justifiez votre rponse. Exercice 2 : Dans lespace de recherche ci-dessous, le nombre plac ct de chaque arc reprsente le cot qui lui est associ et h la valeur donne par lheuristique au nud comme estimation de sa proximit du but.
a-Donner f(n) pour chacun des nuds b-Donner lordre dans lequel les nuds seront visits par lalgorithme A*.
IA
Algorithmes de jeux
Ltude des jeux est lun des domaines favoris et fascinants de lIA, il concerne ltude rigoureuse des situations dans lesquelles plusieurs joueurs (acteurs) sont amens effectuer des choix qui dtermineront, du moins en partie, la situation future. Dans plusieurs problmes de jeu, les techniques de recherche vues dans la session prcdente, peuvent tre exploites par les joueurs (notamment les machines) pour optimiser leurs coups et gagner la partie (atteindre ltatbut). Toutefois, dans certains jeux (les plus intressants) dautres techniques sont souvent ncessaires pour guider et restreindre les choix afin dchapper au pige de lexplosion combinatoire et aussi pour prendre en compte la rivalit entre les joueurs pour les jeux avec plus dun joueur.
IA
Les jeux peuvent tre classs suivant diffrents critres : linformation disponible aux joueurs au moment de la prise de dcision ; Le nombre de joueurs ; le caractre isol ou rpt du jeu ; la possibilit ou non de coopration entre les joueurs, etc. Le premier critre est celui utilis dans la classification des jeux
IA
IA
IA
IA
IA
Le dveloppement de lespace rsulte dune alternance entre deux joueurs antagonistes. Alternance de niveaux MAX/Agent-A et MIN/Agent-B ?
Pr. Imade BENELALLAM IA
E3
Pr. Imade BENELALLAM
E4
MAX
IA
C F
D 10 M 2
E H 8 I 5 J 1 K 9
IA
L 10
IA
IA
IA
ALPHA-BETA
Avec MINIMAX, exploration exhaustive de lespace, .. selon le niveau de profondeur requis. a
b e 7 f 9 5 g 5 4 h i 10
2 j 2 k 7 3 l
1 n
m 9
ALPHA-BETA
Avec ALPHA-BETA: recherche slective MAX espre que (b) > (a) mais MIN va essayer de minimiser le (b) Ds que (b) < (a) arrter la recherche du succ pour b MAX = - , 5 a
= + , 7 , 5 b e 7
Pr. Imade BENELALLAM
7 3 k 7
MIN
g f
5 9
h 4
IA
l
3
IA