1 / 82

Agents Logiques

Agents Logiques . Chap. 7. Plan. Agents basés sur des connaissances Le monde de Wumpus Logique en général – modèle et entraînement ( entailment ) Logique propositionnelle (booléenne) Equivalence, validité, satisfiabilité Règles d’inférence et preuve de théorème Chaînage avant

dionne
Download Presentation

Agents Logiques

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Agents Logiques Chap. 7

  2. Plan • Agents basés sur des connaissances • Le monde de Wumpus • Logique en général – modèle et entraînement (entailment) • Logique propositionnelle (booléenne) • Equivalence, validité, satisfiabilité • Règles d’inférence et preuve de théorème • Chaînage avant • Chaînage arrière • Règle de Résolution

  3. Base de connaissances • Base de connaissances = ensemble de phrases dans un langage formel • Approche déclarative pour construire un agent (ou un système) : • Tell: lui dire ce qu’il doit savoir (Approche procédurale: dire comment faire – étape par étape) • Ensuite, il peut se demander (Ask) ce qu’il a à faire – les réponses doivent suivre la KB (conséquence logique) • On peut voir un agent selon son niveau de connaissances i.e., ce qu’ils savent, indépendamment de comment c’est implanté • Ou au niveau d’implantation • i.e., structures de données dans la KB et algorithmes pour les manipuler

  4. An agent simple basé sur connaissances • L’agent doit être capable de: • Représenter les états, les actions, etc. (un formalisme de représentation) • Intégrer de nouvelles perceptions • Mettre à jour la représentation du monde (modifier KB) • Déduire des propriétés cachées du monde (conséquences) • Déduire des actions appropriées (prendre des décisions – conséquences)

  5. Mesure de performance Or+1000, mort -1000 -1 par étape, -10 pour utiliser la flèche Environnement Objets: wumpus, agent, fosses, or Carrés adjacents au wumpus sentent fort (smelly) Carrés adjacents à une fosse sentent du brises (breezy) On voit briller (Glitter) ssi l’or est dans le carré Tirer (Shooting) tue le wumpus si on est face à Tirer utilise la seule flèche disponible Saisir (Grabbing) prend l’or si dans le même carré Relâcher (Releasing) laisse l’or dans le carré Senseurs: Puanteur (Stench), Brise (Breeze), Éclat (Glitter), Coup (Bump), Cri (Scream) Actuateurs:Leftturn, Right turn, Forward, Grab, Release, Shoot Description de PEAS dans le monde de Wumpus

  6. Caractéristiques du monde de Wumpus • Observable complètement Non – seulement des perceptions locales • Déterministe Oui – Le résultat spécifié exactement • Épisodique Non – séquentielle au niveau d’actions • Statique Oui – Wumpus et fosses ne bougent pas • Discret Oui • Seul-agent? Oui – Wumpus est le seul agent qui agit dans l’environnement

  7. Explorer le monde de wumpus

  8. Explorer le monde de wumpus

  9. Explorer le monde de wumpus

  10. Explorer le monde de wumpus

  11. Explorer le monde de wumpus

  12. Explorer le monde de wumpus

  13. Explorer le monde de wumpus

  14. Explorer le monde de wumpus

  15. Logique en général • Les logiques sont des langages formels pour représenter des informations tel que des conclusions peuvent être tirées. • La syntaxe définit les règles pour écrire des phrases du langage • La sémantique définit le “sens” des phrases • i.e., définit la vérité d’une phrase dans un monde • E.g., le langage d’arithmétique • x+2 ≥ y est une phrase; x2+y > {} n’est pas une phrase • x+2 ≥ y est vrai ssi le nombrer x+2 n’est pas plus petit que y • x+2 ≥ y est vrai dans un monde où x = 7, y = 1 • x+2 ≥ y est faux dans in monde où x = 0, y = 6 • E.g. le français • « Mets est une dans » n’est pas une phrase • « Je mange une pomme » est une phrase • « Je me promène » n’est pas vrai maintenant • « Je donne un cours » est vrai

  16. Entraînement/Implication (Entailment) • Entraînement signifie qu’une chose suit sémantiquement une autre (╞ ): KB ╞α • La base de connaissances KB entraîne la phrase α ssi α est vrai dans tous les mondes où KB est vrai • E.g., la KB contenant“theGiants won” et “the Reds won” entraîne “Either the Giants won or the Reds won” • E.g., x+y = 4 entraîne 4 = x+y • L’entraînement est une relation entre des phrases (i.e., une relation syntaxique) qui est basée sur la sémantique • On ne peut pas créer cette relation n’importe comment • E.g. x+y = 4 ╞ x-y = 4 ne doit pas être créée.

  17. Modèle • Les logiciens pensent typiquement en terme de modèles, qui sont des mondes structurés formellement, par rapport auxquels la vérité est évaluée. • On dit que mest un modèle d’une phrase α si α est vrai dans m • M(α) est l’ensemble de modèles de α • On note KB ╞ α ssiM(KB)  M(α) • E.g. KB = Giants won and Red won α = Giants won

  18. Entraînement dans le monde de wumpus Situation après avoir rien détecté dans [1,1], bougé à droite et senti la brise à [2,1] Considérer les modèles possibles pour KB en supposant il y a seulement des puits 3 choix booléens  8 modèles possibles

  19. Modèles Wumpus(mondes possibles)

  20. Modèles Wumpus • KB = règles du monde wumpus + observations

  21. Modèles Wumpus • KB = règles du monde wumpus + observations • α1 = "[1,2] est sécuritaire", KB ╞ α1, prouvé par model checking

  22. Modèles Wumpus • KB = règles du monde wumpus + observations

  23. Modèles Wumpus • KB = règles du monde wumpus + observations • α2 = "[2,2] est sécuritaire", KB ╞ α2

  24. Inférence • KB ├i α = la phrase α peut être dérivée de KB par une procédure i • Adéquation (Soundness): i est adéquate si quand KB ├i α est vrai, KB╞ α l’est aussi. • Complétude (Completeness): i est complète si quand KB╞ α est vrai, KB ├i α l’est aussi • À venir: nous allons définir une logique (logique du premier ordre) qui est suffisamment expressive pour exprimer presque tout ce qu’on veut exprimer, et pour laquelle il existe une procédure d’inférence à la fois adéquate et complète. • C’est-à-dire, la procédure peut répondre à toute question dont la réponse suit logiquement KB

  25. Logique propositionnelle: Syntaxe • La logique propositionnelle est la logique la plus simple pour illustrer les idées de base • Syntaxe = règle de grammaire • Les symboles de proposition P1, P2 etc. sont des phrases • Si S est une phrase, S est une phrase (négation) • Si S1 et S2 sont des phrases, S1 S2 est une phrase (conjonction) • Si S1 et S2 sont des phrases, S1 S2 est une phrase (disjonction) • Si S1 et S2 sont des phrases, S1 S2 est une phrase (implication) • Si S1 et S2 sont des phrases, S1 S2 est une phrase (biconditionnel)

  26. Logique propositionnelle: Sémantique Chaque modèle spécifie la valeur vrai/faux pour un symbole de proposition E.g. P1,2 P2,2 P3,1 false true false Avec ces symboles, 8 modèles possibles peuvent être énumérés automatiquement Règles pour évaluer la vérité par rapport à un modèle m: S istrueiff S is false S1 S2istrueiff S1istrueand S2istrue S1 S2istrueiff S1is trueor S2istrue S1 S2istrueiff S1is false or S2istrue i.e., is false iff S1istrueand S2 is false S1 S2 istrueiff S1S2istrueand S2S1istrue Processus récursif simple pour évaluer une phrase arbitrairement complexe, e.g., P1,2  (P2,2 P3,1) = true(true false) = truetrue= true

  27. Table de vérité pour les connecteurs logiques Pour ce système avec 2 symboles de proposition: - 4 mondes possibles

  28. Phrase dans le monde de Wumpus Supposons que Pi,j est vrai si il y a une fosse à [i, j]. Et Bi,j est vrai si il y a une brise à [i, j].  P1,1 B1,1 B2,1 • "Pits cause breezes in adjacent squares” (une fosse cause la brise dans les carrés adjacents) B1,1 (P1,2 P2,1) B2,1  (P1,1 P2,2  P3,1)

  29. Table de vérité pour inférence À vérifier Vérifier pour chaque ligne où KB est vraie (modèle de KB) si la conclusion est aussi vraie.

  30. Inférence par énumération • Profondeur d’abord pour énumérer tous les modèles • Procédure adéquate et complète • C’est une approche sémantique • Pour n symboles, complexité en temps O(2n), en espace O(n)

  31. Méthodes de preuve • Méthodes de preuve divisées grosso modo en 2 catégories: • Model checking (Vérification de modèles) • Énumération en utilisant une table de vérité (toujours exponentiel en n) • Retour en arrière (backtracking) amélioré, e.g., Davis--Putnam-Logemann-Loveland (DPLL) • Recherche heuristique dans l’espace de modèles (adéquate mais non complet) e.g., algorithme hill-climbing qui favorise le conflit minimal • Application de règles d’inférence • Génération légitime (sound) de phrases nouvelles à partir des anciennes • Preuve = une séquence d’applications de règles d’inférence • Peut utiliser les règles d’inférence comme opérateur dans un algorithme de recherche standard • Typiquement, ceci demande à transformer une phrase en une forme normale (pour simplifier la procédure)

  32. Par ordinateur? • L’ordinateur a beaucoup de problème pour manipuler la sémantique • Il peut faire la vérification dans une table de vérité • Mais complexité exponentielle • Une approche syntaxique • Manipulations des expressions pour tenter d’arriver à la conclusion • Procédure d’inférence • En maths?

  33. Équivalences logiques • 2 phrases sont logiquement équivalentesssi elles sont vraies dans les mêmes modèles : α ≡ ß ssi α╞ β et β╞ α

  34. Comment vérifier l’équivalence? • Vérifier dans la table de vérité si 2 expressions ont toujours les mêmes valeurs de vérité • A B et (A)  B ? • Utilité des équivalences • Une expression peut être transformée en une autre équivalente

  35. Validité et satisfiabilité d’une phrase Une phrase est valide si elle est vrai dans tous les modèles, e.g., True, A A, A  A, (A  (A  B))  B La validité est reliée à l’inférence via le Théorème de déduction: KB ╞ α si et seulement si (KB α) est valide Une phrase est satisfiable si elle est vraie dans quelques modèles e.g., A B, C Une phrase est insatisfiable si elle est vraie dans aucun modèle e.g., AA La satisfiabilité est reliée à l’inférence via la propriété suivante: KB ╞ α si et seulement si (KBα) est insatisfiable

  36. Méthodes de preuve • Méthodes de preuve divisées grosso modo en 2 catégories: • Model checking (Vérification de modèle) • Énumération en utilisant une table de vérité (toujours exponentiel en n) • Retour en arrière (backtracking) amélioré, e.g., Davis--Putnam-Logemann-Loveland (DPLL) • Recherche heuristique dans l’espace de modèles (adéquate mais non complet) e.g., algorithme hill-climbing qui favorise le conflit minimal • Application de règles d’inférence • Génération légitime (sound) de phrases nouvelles à partir des anciennes • Preuve = une séquence d’applications de règles d’inférence • Peut utiliser les règles d’inférence comme opérateur dans un algorithme de recherche standard • Typiquement, ceci demande à transformer une phrase en une forme normale (pour simplifier la procédure)

  37. Règles d’inférence • Forme générale d’une règle a b • Signification: Si a est accepté, alors on accepte aussi b • Une procédure de preuve • Ensemble de phrases KB0 • Pour une règle d’inférence, si a est dans KB0, alors on ajoute dans KB0: KB1 • Si dans un KBn, on voit la conclusion C, alors C est prouvée.

  38. Règles: exemples • Modus Ponens a, a b b • Modus Tolens b, a b a • Et-élimination a  b a

  39. Exemple de preuve • KB0 = {A, AB, C, BCD} a = D KB1 avec MP: {A, AB, C, BCD, B} KB2 avec MP: {A, AB, C, BCD, B, D} Prouvé # • Recherche • KB0, KB1, KB2commeétats • Une application de règled’inférence = successeur

  40. Résolution Conjunctive Normal Form (CNF) (forme normale conjonctive) conjonction de disjonctions de littéraux = clauses E.g., (A B)  (B C D) • Règle de résolution (pour CNF): li… lk, m1 … mn li … li-1 li+1  … lkm1 … mj-1 mj+1... mn où li et mj sont des littéraux complémentaires (i.e. li = mj) E.g., P1,3P2,2, P2,2 P1,3 • Règle de résolution est adéquate et complète pour la logique de proposition

  41. Résolution Une démonstration informelle de l’adéquation de la règle de résolution: l1 … li-1  li li+1  … lk≡(li … li-1 li+1  … lk)  li m1 … mj-1 mjmj+1... mn ≡ mj  (m1 … mj-1 mj+1... mn) (li … li-1 li+1  … lk)  li mj  (m1 … mj-1 mj+1... mn) (li … li-1 li+1  … lk)  (m1 … mj-1 mj+1... mn) ≡ li … li-1 li+1  … lkm1 … mj-1 mj+1... mn

  42. Résolution Une démonstration informelle de l’adéquation de la règle de résolution: A  B≡ (A)  B B  C≡B  C (A)  B B  C (A)  C = A  C

  43. Conversion en CNF B1,1 (P1,2 P2,1) • Éliminer , remplacer α  β par (α  β)(β  α). (B1,1 (P1,2 P2,1))  ((P1,2 P2,1)  B1,1) 2. Éliminer , remplacer α  β par α β. (B1,1 P1,2 P2,1)  ((P1,2 P2,1)  B1,1) 3. Déplacer  vers l’intérieur en utilisant les règles de Morgan et double-négation: (B1,1  P1,2 P2,1)  ((P1,2 P2,1)  B1,1) 4. Appliquer la loi de distributivité ( sur ) et aplatir : (B1,1 P1,2 P2,1)  (P1,2  B1,1)  (P2,1 B1,1)

  44. Algorithme de Résolution • Preuve par contradiction/réfutation, i.e., montrer que KBα est insatisfiable (ou monter que ça mène à la contradiction ( )

  45. Exemple • KB = (B1,1 (P1,2 P2,1))  B1,1 α = P1,2

  46. Chaînage avant et arrière • Forme Horn (plus restreinte) KB = conjonction de Clauses Horn • Clause Horn = • Symbole de proposition; ou • (conjonction de symboles)  symbole • E.g., C  (B  A)  (C  D  B) • Modus Ponens (Pour forme Horn): complet pour KB en forme Horn α1, … ,αn, α1 …  αnβ β • Peut être utilisé avec chaînage avant (forwardchaining) ou chaînage arrière (backwardchaining). • Ces algorithmes sont très naturels et demandent un temps linéair

  47. Chaînage avant • Idée: Activer une règle dont les prémisses sont satisfaites dans KB, • Ajouter son conclusion dans KB, jusqu’à la requête soit trouvée dans KB

  48. Algorithme • Chaînage avant est adéquat et complet pour KB en Horn

  49. Exemple de chaînage avant

  50. Exemple de chaînage avant

More Related