Sie sind auf Seite 1von 2

**Agents Intelligents :

Agent: entité qui perçoit son environnement grâce à des capteurs et qui agit grâce à des effecteurs
Objet: entité passive possédant un état, et sur laquelle un agent peut effectuer des opérations
Percept: information sur l’environnement reçue par l’agent à un instant donné
Agent rationnel: agent prenant la meilleure décision par rapport à ses connaissances.
Agent parfait: agent prenant la meilleure décision (dans l’absolu).
Mesure de performance: fonction mesurant le succès de l’agent.
**Environnements:
Complètement/partiellement observable: L’agent peut-il observer le monde entier ?
Déterministe/stochastique: Le hasard intervient-il ?
Épisodique/séquentiel : Les évènements passés influencent-ils les évènements futurs?
Statique/dynamique : Le monde évolue-t-il même si l’agent est inactif ?
Discret/continu : Les états/le temps/les percepts/les actions sont-ils discrets ou continus ?
Monoagent/multiagent : Y a-t-il plusieurs agents dans le monde ?
**Espaces d’états :
État (général) : ensemble de données décrivant l’agent et son environnement à un instant donné.
Espace d’états : ensemble de tous les états possibles.
Action : fait de passer d’un état à un autre.
but/objectif : sous-ensemble des états que l’on veut atteindre.
États initiaux : sous-ensemble des états de départ.
Solution : séquence d’actions permettant d’aller de l’état initial à l’état final.
Critère de préférence : critères permettant à l’agent de choisir entre plusieurs solutions possibles.
Recherche de solution : trouver la meilleure solution suivant les critères de l’agent.
Solution optimale : solution dont le chemin a le coût minimal
Rep. Graphique : Etats, Action (f. successeur), Cout (f. cout)
Optimalité: l’algo garantit*il d’obtenir la meilleur solution
Complétude: Est-ce que l’algo garantit de renvoyer un résultat?
Complexité: b:facteur de branchement, d: profondeur de la solution la moins profonde, m: longueur de chemin de longueur max.
**Recherche aveugle : Frange : liste des nœuds qui n’ont pas développés
Largeur d’abord : frange : FIFO (file), nœud a développé : tète de file
Propriétés : complétude : oui si b est fini, complexité temporelle : O(bd) complexité spatiale: pareil→ l’algorithme est plus efficace quand la
solution n’est pas profonde, optimalité : oui si chaque action a le même coût - non en général
Cout Uniforme: frange: file de priorité, priorité: cout des nœuds (pri)
Propriétés : même que largeur d’abord, optimale même si les actions ont les couts différents.
Profondeur d’abord : frange : LIFO (pile), nœud à développé: droite de pile
Propriétés : complétude : oui si l’arbre n’a pas une profondeur infinie (i.e. m finie), complexité temporelle: O (bd), complexité spatiale: O (bm),
optimalité : non.
Profondeur limitée : on pose une profondeur limite L au cas où l’arbre aurait une profondeur infinie. Propriétés : complétude : oui si L≥d,
complexité temporelle : O(bL), complexité spatiale : O(bL), Optimalité : non. Trois résultats possibles : solution, échec, pas de solution.
Approfondissement itérative : on applique la profondeur limitée de façon itérative, en augmentant la limite jusqu’à ce que l’on trouve la
solution. Propriétés : même qu’en largeur d’abord.
Recherche Informée : fonction d’évaluation, pour déterminer le nœud qui va être développé parmi les nœuds présents dans la frange. Une
fonction heuristique notée h : d’estimer le coût du chemin jusqu’à la solution.
Meilleur d’abord : frange : file de priorité fonction d’évaluation=h, Propriétés : optimalité : non, complétude : oui si l’arbre n’a pas une
profondeur infinie (= m finie), complexité spatio/temporelle : O (bm).
A* : f=g+h (cout+heuristique) Propriétés : complétude : oui, sauf s’il y a une infinité de nœuds s avec f(s)≤f(but), complexité
spatio/temporelle : O(bm), optimalité : oui.
**Propriétés d’une heuristique :
Facteur de branchement effectif :
N: le nombre de nœuds générés par un algorithme pour un problème donné
d: la profondeur de la solution
On note b* le facteur de branchement d’un arbre uniforme de profondeur d et contenant N+1 nœuds. b* est appelé le coefficient de
branchement effectif, Plus la valeur de b* est faible, meilleure est l’heuristique, Bien sur la valeur de b* varie d’une instance de problème à
l’autre, c’est pourquoi il faut faire la moyenne sur plusieurs instances pour avoir une valeur représentative, b* est utilisé pour comparer
différentes heuristiques N= (b*)d -1
Domination : Soient deux heuristiques h1 et h2, On dit que h2 domine h1 si h2≥h1. Relâchement : On relâche le problème, i.e. on le
simplifie, de manière à pouvoir exprimer sous la forme de fonction la solution optimale. Par la suite, cette fonction peut être utilisée comme
heuristique dans le problème de base. Apprentissage : On utilise l’expérience accumulée en cherchant la solution sur de nombreuses
instances d’un problème donné. A chaque fois qu’on trouve un chemin optimal jusqu’à la solution, on a la distance réelle entre chaque nœud
du chemin et la solution. Les techniques d’apprentissage automatique (réseaux de neurones, apprentissage par renforcement, etc.)
permettent d’approcher cette fonction distance si les exemples sont suffisamment nombreux et représentatifs.
Problèmes de jeu : tour par tour, deux joueurs, à somme nulle: une gagne-autre perde, information parfaite: complètement-observable.
Formellement : environnement déterministe, complètement observable, deux agents qui agissent chacun leur tour, les valeurs renvoyées par
les fonctions d’utilités des agents à la fin du jeu sont soit égales, soit opposées. La fonction d’utilité: fonction de performance s’appliquant aux
états terminaux.
CSP:
domain: Di variables Xi constraints Ci, etat consistant: aucun c est violée, etat complet: toutes les varibales sont concernées, sol:
complet+consistant. graphe: noueds X, arcs: C | Propriétés des CSP : domaines finis/infinis, variables discrètes/continues, contraintes,
linéaires/non-linéaires, cardinalité: unaires, binaires, n-aires. contraintes absolues/relatives : on met des préférences sur les
contraintes | Différences par rapport aux recherches aveugles/informées : méthodes aveugles/informées : traitement spécifique au problème :
fonction successeur, fonctions de but, fonction heuristique, CSP : problèmes traités de façon générique, donc méthodes
réutilisables, ensemble de variables, ensemble de valeurs
Minimax : A chaque état, on associe une valeur correspond à la valeur d’utilité pour le joueur Max si les deux joueurs jouent de façon
optimale jusqu’à la fin de la partie. Calcul du minimax : État terminal : valeur d’utilité
État Max : max (minimax des fils que Max peut jouer)
État Min : min (minimax des fils que Min peut jouer)
Propriétés : parcours en profondeur d’abord de l’arbre entier, Complexité : (arbre de profondeur maximale m et de branchement b),
temporelle : O(bm)
spatiale : O(bm), optimal, complet si l’arbre de jeu est fini
Alpha-Beta : Principe : éviter parcourir l’arbre tout entier.
α : meilleure valeur minimax courante pour Max., β : meilleure valeur minimax courante pour Min. α et β sont initialisées respectivement aux
valeurs -INF et +INF. Calcul : État terminal : valeur d’utilité, État Max (Etat Min) :Pour chaque coup possible : On évalue le minimax v du coup,
Si v > α(v<β) , alors α←v(β←v) ,Si α ≥ β (β ≤ α) alors le minimax de l’état Max est β (α) , Si on a traité tous les coups sans que α > β (β ≤ α),
alors le minimax de l’état Max est α(β).Quand le traitement d’un état est arrêté avant que tous les coups possibles aient été traités, on parle
de coupure alpha-bêta.
Propriétés : optimal (comme minimax), O(bm) (dans pire des cas)pire est rare
SSS* : Principe : garder les coupures α-β mais explorant en priorité(valeur d’utilité elevée) 1 noeud: (nom d’etat,ouvert/fermé,valeur d’utilité
courante)
--Stratégie de SSS* permet en moyenne + de coupures mais + complex.--
Frange : pile de priorité sur la valeur (minimax) d’utilité courante.
Init :(racine, 0, +INF)
Le sommet de la pile est traité (et supprimé de la pile) :
Ouvert (n,O,v) : Terminal : on insère (n,F,min(v,u)) dans la pile (u est la valeur d’utilité du nœud) en fonction de min(v,u). Max : on empile tous
les fils du nœud, avec même v. Min : on empile seulement le premier fils du nœud, avec même v. Fermé (n,F,v) : Racine : l’algorithme se
termine.
Max : Si le père de ce nœud a un autre fils pas encore développé, on empile ce fils, en tant que nœud ouvert, avec la même v. S’il n’y a plus
d’autres fils, on empile le père, en tant que nœud fermé, avec la même v.
Min : On empile le père de ce nœud, en tant que nœud fermé, et avec la même v. On supprime de la pile tout les descendants du père.
Systèmes logiques d’ordre 0 :
Limitations des approches précédentes: spécificité au problème, manque de souplesse, environnement complètement observable
Apport de l’approche logique: approche générale, environnements partiellement observables, souplesse d’utilisation
Clause de Horn : clause possédant au plus un littéral positif.
BC : ensemble des infos connues. Moteur d’inférence : outil permettant de produire de nouvelles connaissances a partir de la BC, plus rapide,
modélisation du raisonnement, algorithme automatisant le mécanisme de preuve syntaxique. BFaits : ensemble d’hypothèses prenant la
forme de littéraux. BRegles :…formules. Littéraux positifs dans la BF, clause de Horn dans la BR. Deux méthodes pour prouver une formule :
preuve sémantique : table de vérité - preuve syntaxique : réécriture.
Graphe ET/OU : …
Chainage avant :
Principe :
On veut prouver un certain fait F
On procède par saturation de la base de connaissances : on va prouver tous les faits qu’il est possible de prouver grâce aux BR et BF initiales
Dès qu’on a réussi à prouver F, on s’arrête
Si on a saturé la base sans avoir pu prouver F, alors c’est que F n’est pas prouvable
On dit qu’une règle est applicable si :
Elle n’a pas encore été utilisée
Toutes ses prémisses sont dans la BF
Sa conclusion n’est pas dans la BF
Algorithme :
Si F est contenu dans la BF, l’inférence est terminée : F est prouvé
Sinon, on détermine quelles sont les règles applicables
On utilise une stratégie pour sélectionner une règle
On applique la règle sélectionnée :
La conclusion de la règle est rajoutée dans la BF
La règle est supprimée de la liste des règles applicables
Toutes les règles applicables qui ont la même conclusion sont aussi supprimées
Si F est contenu dans la BF, l’inférence est terminée : F est prouvé
Si la liste des règles applicables est vide, l’inférence est terminée : F n’est pas prouvable
Sinon, on repart au 2ème point.
Chainage arrière :
Principe :
On veut prouver un certain fait F
On utilise le principe inverse du chaînage avant : on part du fait à prouver, et on cherche quelle règle permet de le prouver.
Pour pouvoir utiliser cette règle, on va chercher à avoir dans la BF toutes ses prémisses.
S’il manque des prémisses, il faut prouver ces faits manquants, de la même façon qu’on prouve F : on a donc un traitement récursif.
On s’arrête quand on a prouvé toutes les prémisses nécessaires pour obtenir F.
On dit qu’une règle est applicable pour prouver un fait donné G si :
Elle n’a pas encore été utilisée
Sa conclusion est G
Algorithme :
On sélectionne le premier fait de la liste des faits à prouver
On crée la liste des règles applicables pour prouver ce fait
Si aucune règle n’est applicable : le fait n’est pas prouvable
Sinon, on utilise une stratégie pour sélectionner une des règles applicables
On vérifie que les prémisses de la règle sont présentes dans la BF
Si certaines prémisses manquent :
On tente de les prouver récursivement
Si un des faits n’est pas prouvable, on passe à la règle applicable suivante
Si aucune règle n’a pu être appliquée : le fait n’est pas prouvable
Si la liste des faits à prouver est vide : succès
Bilan : c.avant : Orienté données, c.arriere : orientée but.
neurons formels :
w1, w2, et q sont initialisés aléatoirement
¢ pour chaque entrée x=(x1, x2) possible :
l on calcule l’activation a=w1x1+w2x2
l si x ne doit pas être reconnu, i.e. t=0 :
• Si a<q alors y=0=t : on ne fait rien
• Sinon, on applique les modifications suivantes :
• dw1= -αx1
• dw2= -αx2
• dq = +α
l si x=(x1, x2) doit être reconnu, i.e. t=1 :
• Si a³q alors y=1=t : on ne fait rien
• Sinon, on applique les modifications suivantes :
• dw1= +αx1
• dw2= +αx2
• dq = -α
¢ On recommence le traitement jusqu’à ce qu’il n’y ait plus aucune modification.
¢ Remarque : on peut utiliser des formules générales pour calculer les
variations apportées aux paramètres quel que soit le cas traité :
l dw1=α(t–y)x1
l dw2=α(t–y)x2
l dq =-α(t–y)
reseaux de neuron:

Das könnte Ihnen auch gefallen