Représentation des connaissances et raisonnement automatique

Slides:



Advertisements
Présentations similaires
Introduction à la notion de fonction 1. Organisation et gestion de données, fonctions 1.1. Notion de fonction ● Déterminer l'image d'un nombre par une.
Advertisements

« Les vieux modèles » Julie Viel, enseignante CEA de Rivière-du-Loup Commission Scolaire de Kamouraska-Rivière-du-Loup.
Volée 1316 S3 Cours No 2_3 : Le nombre en 1-2H. Les fonctions du nombre  Dénombrer, énumérer, décrire une collection. Aspect cardinal  Dater, classer,
Cours COMPOSANTES DES VECTEURS Dimitri Zuchowski et Marc-Élie Lapointe.
Réalisé par : Fairouz ichou Imane Errajil.  Introduction  L’ISO en quelque mots  Définition de l’ISO 9001V2000  L’évolution de l’ISO 9001  Principes.
Enseigner autrement les mathématiques au travers du socle commun et des nouveaux programmes Un collège réformé, adapté et contextualisé.
Calcul de probabilités
La famille: c’est quoi?.
Utiliser le calcul littéral pour résoudre ou démontrer
Suites ordonnées ou mettre de l’ordre
Calcul et interprétation de taux de variation
PIB en valeur et en volume
Outils de Recherche Opérationnelle en Génie MTH 8414
épreuve E6 questionnement possible
Valeurs de toutes les différences observables sous H0
Information, Calcul, Communication
Algorithme et programmation
Lois fondamentales de l'algèbre de Boole
Reprise du cours ( ) Aujourd’hui :
Contribution: Revue des études, enquêtes et systèmes d’informations disponibles au niveau de l’INS, pour alimenter la méthode d’analyse et la cartographie.
Système de commande automatique Linéarité- L'équation des éléments
Ce videoclip produit par l’Ecole Polytechnique Fédérale de Lausanne
Les opérations sur les nombres
L’Instruction de Test Alternatif
Javadoc et débogueur Semaine 03 Version A16.
Activités algorithmiques
Fonctions logiques et algèbre booléenne
Les synthèses Sources : Guide pédagogique et didactique d’accompagnement du programme de technologie (page 15)
STRATÉGIES ET INSTRUMENTS D´ÉVALUATION
VI. Tri par tas (Heap sort)
Tests de boîte blanche.
Le choix optimal.
Techniques du Data Mining
Information, Communication, Calcul
Algorithmique & Langage C IUT GEII S1 Notes de cours (deuxième partie)
Démarche d'investigation
Stabilité des porteurs horizontaux (Poutres)
Création Et Modification De La Structure De La Base De Données
1.2 dénombrement cours 2.
II- Les annotations des productions écrites
DATA WEARHOUSE 1ère année LA: Technologies systèmes d’information
Réseaux de neurones appliqués à la reconnaissance de caractères
Formation sur les bases de données relationnelles.
POL1803: Analyse des techniques quantitatives
Chapitre 3 : Caractéristiques de tendance centrale
Adaptive Neuro Fuzzy Inference System (ANFIS)
A l’aide du triangle pédagogique de Jean Houssaye
Présenté devant le jury formé de:
Modélisation objet avec UML
Comment penser une organisation ?
Difficultés d’apprentissage
Pourquoi sommes-nous ici ?
Le code de Huffman: est une méthode de compression statistique de données qui permet de réduire la longueur du codage d'un alphabet. Le code de Huffman.
Présentation 4 : Sondage stratifié
Présentation 9 : Calcul de précision des estimateurs complexes
MATHÉMATIQUES FINANCIÈRES I
Un Mécanisme d‘Adaptation Guidé par le Contexte en Utilisant une Représentation par Objets Manuele Kirsch Pinheiro Laboratoire LSR – IMAG, Équipe SIGMA.
NUMÉRATION POSITIONNELLE / PRINCIPE DE GROUPEMENT
IFT313 Introduction aux langages formels
5. les rendements d’echelle:
Opérateurs et fonctions arithmétiques Opérateurs de relation Opérateurs logiques Cours 02.
Numéro et masse atomique
Design, innovation et créativité
LE TORSEUR STATIQUE 1) Définition 2) Notation 3) Deux cas particuliers
LA MÉTHODE SCIENTIFIQUE
Pour en moduler l’ouverture et la complexité
Sigle optionnel en français FBD
spécialité mathématiques Première
Dérivation – Fonctions cosinus et sinus
Séquence 1:Analyse du système d’information comptable
Transcription de la présentation:

Représentation des connaissances et raisonnement automatique Université de Sfax Faculté des Sciences Économiques et de Gestion de Sfax Mastère de recherche : système d’information et nouvelle technologie Matière: Intelligence artificielle Représentation des connaissances et raisonnement automatique Elaboré par : Mekki Asma Ben Ayed Wafa Kammoun Wissal Khemakhem Hela Elamine Maryam Kchaou Mariem Année universitaire : 2015-2016

PLAN Introduction Représentation des connaissances Raisonnement automatique Conclusion

INTRODUCTION Un système intelligent Résolution de problèmes Algorithme A*, profondeur, largeur, .. Reconnaissance de formes réseau de neurones, analyse statistiques, … Représentation des connaissances Logique propositionnelle, temporelle, … Raisonnement automatique Raisonnement déductif, abductif, …

« Puisqu’il fait beau, le soleil brille » Problématique Pour concevoir un agent doué d’une “intelligence artificielle”, deux problèmes majeurs se posent à nous comment : Représenter les connaissances de l’agent ? Raisonner à partir de ces connaissances ? « Il fait beau » « Puisqu’il fait beau, le soleil brille » Ces deux problématiques sont interconnectées car la façon dont on représente les connaissances a un impact important sur le type de raisonnement .

PLAN Représentation des connaissances Définition Introduction Logiques des connaissances Logiques propositionnelle Logique du premier ordre Logique de description Logiques temporelles Logique floue Logiques de connaissances et/ou croyances Logiques non-monotones Raisonnement automatique Conclusion

REPRESENTATION DES CONNAISSANCES DEFINITION Représentation des connaissances outils procédés utiliser représenter organiser La représentation des connaissances désigne un ensemble d'outils et de procédés destinés d'une part à représenter et d'autre part à organiser le savoir humain Qui est diversifié et complexe : savoir juger résoudre un problème expliquer une solution répondre à des questions. pour l'utiliser et le partager. partager le savoir humain Savoir juger Résoudre un problème Expliquer une solution Répondre à des questions

Pourquoi représenter les connaissances? Apprentissage automatique Fouille de données Compréhension du langage Traduction automatique Raisonnement automatique Buts de la représentation des connaissances Partage du savoir Raisonnement sur le savoir

Logiques des connaissances Logique proposition-nelle Logique du premier ordre Logique de description Logiques temporelles Logique floue Logiques des connaissances et/ou croyances Logiques non-monotones

Logique propositionnelle Décrit un langage sans variable Vocabulaire du langage Propositions : (ou variables propositionnelles) qui représentent des énoncés qui peuvent être soit vrais soit faux dans une situation donnée. Connecteurs : Et () , Ou () , Négation (), Implication (), Equivalence () Expressions : {propositions} U {connecteurs} littéral est une proposition ou la négation d’une proposition. Une clause est une disjonction de littéraux. La logique propositionnelle est une logique très simple qui se trouve à la base de presque toutes les logiques qui sont étudiées aujourd’hui. Les éléments de bases sont des propositions (ou variables propositionnelles) qui représentent des énoncés qui peuvent être soit vrais soit faux dans une situation donnée.

 Exemples P  Q   P "Pierre n ’aime pas voyager" Exemples de propositions et d’expressions P : "Pierre aime voyager" Q : "Pierre prend souvent l’avion" P  Q Expression   P  Q ≡ (équivaut) "Pierre aime voyager et Pierre prend souvent l’avion" P  Q "Pierre aime voyager ou Pierre prend  P "Pierre n ’aime pas voyager" P  Q "Si Pierre aime voyager Alors Pierre prend Connecteur Propositions

Exemples  ¬P v Q P Q   P "Pierre n ’aime pas voyager" Exemples de propositions et d’expressions P : "Pierre aime voyager" Q : "Pierre prend souvent l’avion"  ¬P v Q (P ^ Q) v (¬P ^¬Q) P Q  P  Q ≡ (équivaut) "Pierre aime voyager et Pierre prend souvent l’avion" P  Q "Pierre aime voyager ou Pierre prend  P "Pierre n ’aime pas voyager" P  Q "Si Pierre aime voyager Alors Pierre prend

Logique propositionnelle (Suite) Un modèle M est une fonction qui donne une valeur de vérité à chaque proposition du langage. M ⊨ p (M est un modèle de p), M ⊭ p (M n’est pas un modèle de p). M ⊨  ˄ 𝝍 ssi M ⊨  et M ⊨ 𝝍 M ⊨ ˅ 𝝍 ssi M ⊨  ou M ⊨ 𝝍 (ou les deux) M ⊨ ¬ ssi M ⊭  P := Fausse N’est pas satisfaite dans M P := Vraie Satisfaite dans le modèle M une valeur de vérité (soit vrai, soit faux) Une proposition p est satisfaite dans un modèle M si elle reçoit la valeur vrai, et elle n’est pas satisfaite si elle reçoit la valeur faux.

(Suite) Une formule est valide si elle est satisfaite par tout modèle. Elle est dite satisfiable si elle est satisfaite dans au moins un modèle. Une formule  est une conséquence logique de 𝝍 si : chaque modèle qui satisfait  satisfait aussi 𝝍, ou autrement dit, s’il n’y a pas de modèle de ˄¬𝝍. La logique propositionnelle est decidable, c’est- à -dire qu’il existe des algorithmes pour déterminer si une formule est valide ou non.

Exercice 1: a) Construire des formules en utilisant des propositions et des connecteurs logiques pour exprimer les phrases suivantes : S’il fait beau et que l’on n’est pas samedi alors je fais du vélo et si je fais du vélo alors c’est le printemps. b = il fait beau s = on est samedi f = je fais du vélo p = c’est le printemps ((b ∧ ¬s) → f) ∧ (f → p)

Exercice 1- a: (Suite) Si la température du patient est supérieure à 38° Alors le patient a de la fièvre et si en plus de la fièvre le patient présente une augmentation de la vitesse de sédimentation du sang alors il souffre d'une infection bactérienne. T= la température du patient est supérieure à 38° F= le patient est fébrile A= le patient présente une augmentation de la vitesse de sédimentation du sang I= le patient souffre d'une infection bactérienne ((T → F) ∧ ((F ∧ A) → I)

Exercice 1: (Suite) b) Pour toute formule ci-dessous, vérifiez si elle est valide, satisfaisable ou contradictoire : 1. (A → B) ∧ ¬B → ¬A 2. (A → B) ∧ B → A 3. ((A ∨ B) → ¬C) ∧ (¬C ∨ (B ∨ A)) 4. A ∧ ¬A 5.(A → B) → (¬A ∨ B) Satisfaisable Satisfaisable Satisfaisable Contradictoire Valide

Logique du premier ordre/Prédicat un prédicat est une fonction prenant l’une des deux valeurs vraie ou fausse suivant la valeur de ses arguments: les symboles pour constants, exemple : Paul, gareLyon les variables, exemple : x, y les symboles pour fonctions, exemple : mèreDe les symboles pour prédicats, exemple : humain, dans les connectives logiques : ^, ¬, etc. le quantificateur  le quantificateur existentielle  le symbole d’égalite =

Suite(…) Symbole pour fonction Symbole pour prédicat a un arité Exemples: mèreDe(X) a un arité de 1, dans(X,Y) a un arité de 2. a un arité Chaque Une arité qui détérmine combien d’arguments elle peut prendre (0, 1, 2,...).

Suite(…) Terme Variable mèreDe(Paul) Fonction appliquée à d’autres termes Constante mèreDe(mèreDe(Paul)) Les termes sont des symboles pour : constante, variable ou bien fonction appliquée à d’autre termes Paul

Suite(…) Atome P (terme1, ..., termen) terme1 = terme2 dans(Paul, gareLyon) Marie = mèreDe(Paul) Les atomes sont de deux types : soit P (terme1,..., termen) où P est un symbole pour prédicat avec arité n et les termei sont des termes, soit terme1= terme2 où terme1 et terme2 sont des termes.

Combinaison Booléenne de formules Suite(…) humain(Paul) Formule Atomes Combinaison Booléenne de formules Formules préfixées x humain(x) ou x humain(x) dans(Paul,gareLyon)˄ humain(Paul)

Fonction d’interprétation Suite(…) Modèle Fonction d’interprétation Univers I(C) ∊ U une fonction n-aire de U à U Un modèle en logique du premier ordre est composé de : un ensemble non vide U appelé univers, d’une fonction d’interprétation I. La fonction I associe à chaque symbole pour constante C un élément de l’univers nous notons I(C) ∊ U , à chaque symbole pour fonction F (où l’arité de F est n) une fonction n-aire de U à U , et à chaque symbole pour prédicat P (où l’arité de P est n) un prédicat n-aire sur U . un prédicat n-aire sur U

Suite(…) La valuations : Ce sont des fonctions qui associent à chaque variable un membre de l’univers U . La notation v(x/d), avec x une variable et d l’univers. La satisfaction d’une formule par rapport à un modèle M =< U, I > et une valuation v comme ceci : Pour traiter des variables (qui ne sont pas fixés par des modèles), nous faisons appel aux valuations, Dans la définition de la satisfaction, nous aurions aussi besoin de la notation v(x/d), qui donne la valuation qui est la même que v sauf pour la variable x, à laquelle on associe l’élément de l’univers d.

Suite(…) ⊨ M,v t1 = t2 ssi t1 et t2 réfère au même élément de U. ⊨ M,v P (t1, ..., tn) ssi le tuple d’éléments associés à (t1, ..., tn) est dans I(P ) ⊨ M,v  ^ 𝝍 ssi ⊨M,v  et ⊨M,v 𝝍 ⊨M,v  ˅ 𝝍 ssi ⊨M,v  ou ⊨M,v 𝝍 ⊨M,v ¬ ssi ⊭M,v  ⊨M,v x. ssi pour tout d ∊ U nous avons ⊨ M,v(x/d)  ⊨M,v x. ssi il existe d ∊ U tel que ⊨ M,v(x/d)  Point deux : ssi est dans Interprétation de P =>(I(P)) Une formule est valide si elle est satisfaite par tout modèle et toute valuation.

Exercice Exprimez les énoncés suivants en logique du premier ordre : 1. « Tous les A sont B. » 2. « Seuls les A sont B. » 3. « Aucun A n’est B. » 4. « Quelques A sont B. » 5. « Certains étudiants assistent à tous les cours. » 6. « Aucun étudiant n’assiste à un cours inintéressant. »

Exercice Exprimez les énoncés suivants en logique du premier ordre : 1. « Tous les A sont B. » ∀x (A(x) → B(x)) 2. « Seuls les A sont B. » ∀x (B(x) → A(x)) 3. « Aucun A n’est B. » ∀x (A(x) → ¬B(x)) 4. « Quelques A sont B. » ∃x (A(x) ∧ B(x)) 5. « Certains étudiants assistent à tous les cours. » ∃x (Etudiant(x) ∧ (∀y Assiste(x,y))) 6. « Aucun étudiant n’assiste à un cours inintéressant. » ¬∃x (Etudiant(x) → (Assiste(x,y) ∧ ¬Interessant(y)))

Récapitulation sur les deux Logiques La logique du premier ordre est beaucoup plus puissante que la logique propositionnelle, et cette expressivité accrue se paie par une difficulté du calcul. En effet, à l’inverse de la logique propositionnelle, la logique du premier ordre n’est pas decidable : il n’existe pas d’algorithmes qui retournent oui si une formule est valide, et non si elle ne l’est pas.

Comparaison entre logique propositionnelle, 1er ordre, description Cette famille de logiques se trouve à mi-chemin entre la logique propositionnelle et la logique du premier ordre, offrant ainsi une expressivité beaucoup plus importante que celle de la logique propositionnelle mais avec une complexité du raisonnement moindre que pour la logique du premier ordre (en particulier, les logiques de description sont souvent decidables)

Logiques de description Logique de description : Cette famille de logiques se trouve à mi-chemin entre la logique propositionnelle et la logique du premier ordre. La logique propositionnelle et la logique du premier ordre sont de loin les deux logiques les plus étudiées, mais on constate un intérêt grandissant pour d’autres logiques qui sont parfois plus adaptées pour représenter certains types de connaissances. En voici quelques-unes :

Logiques de description Axiome Assertion Oiseau  Animal et Oiseauenfant.oiseau Oiseau(T weety) et enfant(T weety, Paul) Axiome : décrivent des relations entre des concepts Exemple 1(= chaque oiseau est un animal) Exemple2(= les enfants des oiseaux sont aussi des oiseaux) Assertion: expriment les caractéristiques des individus et les relations entre individus. Exemple1: (=Tweety est un oiseau) Exemple2: (=Paul est un enfant de Tweety).

Suite(…) Les logiques de description sont utilisées dans plusieurs domaines d’application (exemple la médecine, le traitement du langage naturel, etc.) et sont à la base du web sémantique (qui est censé être la prochaine incarnation du Web).

Logiques temporelles Ces logiques sont obtenues à partir de la logique propositionnelle en ajoutant un certain nombre de quantificateurs temporels, exemple : “maintenant”, “dorénavant”, “toujours”, qui permettent de parler des propriétés qui sont vraies à différents moments dans le temps.

Suite(…) Exemples : “Marc est un étudiant maintenant mais un jour il ne sera plus étudiant” , “Deux est toujours un nombre pair”. L’une des applications principales des logiques temporelles est la vérification de programmes où ces logiques sont utilisées pour décrire des propriétés qui devraient être vraies lors d’une exécution d’un programme.

Logique floue logiques classiques : Il existe des propriétés qui semblent pouvoir être vraies à un certain degré. Exemple : la propriété “grand”. Comment chosir une hauteur telle que toutes les personnes avec une taille supérieure à cette hauteur sont grands, et les autres ne le sont pas ? Des propositions vraies Des propositions fausses Exemple de « grand » : Il serait un peu bizarre de séparer les êtres humains entre deux classes, ceux qui sont grands, et ceux qui ne le sont pas Exemple "les jeunes enfants sont turbulents"

Suite(…) La logique floue tente de répondre à ce problème en permettant aux propositions de prendre les valeurs entre 0 et 1, où 0 signifie que la proposition n’est pas satisfaite du tout, 1 signifie la satisfaction complète de la proposition, et les valeurs entre 0 et 1 signifient des niveaux de satisfaction de la proposition. La logique floue a été appliquée avec succès à de nombreux problèmes dans l’industrie.

Logiques de connaissances et/ou croyances Dans ces logiques, nous pouvons exprimer les informations de type : “je sais que Marie a un enfant, et je crois que c’est une fille, mais je ne suis pas sûr” “je crois qu’il croit que je sais qui a volé le diamant, mais je ne le sais pas”. L’une des caractéristiques du raisonnement humain est sa faculté de raisonner sur ses propres connaissances/croyances et sur les connaissances/croyances des autres. Un certain nombre de logiques ont été proposées pour formaliser ce type de raisonnement.

Suite(…) Le raisonnement sur les connaissances devient un sujet de plus en plus populaire grâce à son utilité dans de nombreux domaines tels que l’IA, la linguistique, l’informatique distribuée, et l’économie.

Logiques non-monotones Les logiques classiques sont appelées monotones. ⊨𝝍 ˄⊨𝝍 cette propriété ne semble pas toujours vérifiée dans les raisonnements humains. le fait d’ajouter de l’information supplémentaire ne peut pas causer de perte d’informations Autrement dit, le fait d’ajouter de l’information supplémentaire ne peut pas causer de perte d’informations. Or cette propriété ne semblent pas toujours vérifiée dans les raisonnements humains.

Suite(…) Exemple : “oui car les oiseaux volent. “ Tweety ne vole pas. C’est un exemple d’un raisonnement non-monotone car l’ajout d’une hypothèse (Tweety est un pingouin) fait perdre l’une des conséquences (Tweety vole). Si nous disons que “Tweety est un oiseau”, et nous vous demandons si Tweety vole. Mais si maintenant j’ajoute le fait que Tweety est un pingouin, est-ce-que il vole? Conclusion à la place de flèche dans l’animation Ce type de raisonnement ne satisfait pas donc les lois de la logique classique mais il est rationnel tout de même car il nous permet de raisonner en l’absence d’informations complètes. Les logiques non-monotones essaient de formaliser ce type de raisonnement.

Récapitulation Logiques des connaissances Decidable : vrai/faux Logique propositionn-elle Logique du premier ordre Logique de description Logiques temporelles Logique floue Logiques des connaissances et/ou croyances Logiques non-monotones Non Decidable Parfois l’ajout d’une information  Annule une information précédente Souvent Decidable Je sais/ Je crois Logique de description : combinaison entre logique propositionnelle et du 1er ordre Propriétés qui semblent être vraies à un certain degré Propositionnelle + quantificateurs temporels

Exercice global Pour chacun de ces phrases suivantes donnez le type de la logique utilisée? Le feu continue toujours à travailler Un entier naturel est pair ou impair Un entier naturel est pair ou impair : ici 3 symboles de relation d’arité 1 : naturel, pair, impair. ∀ n ( naturel(n) ⇒ (pair(n) ∨ impair(n)) Il pleut et il y a un bon film à la télévision ce soir: P1= “il pleut ” P2 =“Il y a un bon film à la télévision ce soir” si le feu est vert et ma vitesse est faible et le feu est proche alors j'accélère : Logique temporelle Logique du premier ordre Logique propositionnelle P1 ∧ P2 Logique floue

PLAN Raisonnement automatique Introduction Représentation des connaissances Raisonnement automatique Définition Types de raisonnement Raisonnement déductif Raisonnement abductif Raisonnement inductif Conclusion

RAISONNEMENT AUTOMATIQUE DEFINITION Raisonnement automatique Connaissances Répondre aux questions Tirer des conclusions Le raisonnement automatique utilise des connaissances qui lui permettent de répondre aux questions et de tirer des conclusions

Pourquoi représenter les raisonnement? Systèmes d’aide à la décision Systèmes de capitalisation des connaissances Outils d’exploration de mécanismes du raisonnement Buts du raisonnement Rapprocher des situations Transposer des solutions.

Raisonnement automatique Raisonnement déductif Raisonnemnt abductif Raisonnemnt inductif

Raisonnement déductif C’est le type de raisonnement le plus étudié. Il s’agit de dériver les conséquences d’un ensemble d’informations données.

Exemple “Marie est un docteur ou un professeur” Et “Marie n’est pas un professeur” “Marie est un docteur” L’une des caractéristiques du raisonnement déductif est que si nous dérivons une conséquence d’un ensemble d’informations qui sont vraies, alors nous sommes sûrs que la conséquence est vraie aussi.

Raisonnement abductif Le but de l’abduction est d’expliquer des observations. La vie de tous les jours Diagnostic médical cause possible Connaisances générales observations

Connaissances générales Exemple Observation “La patiente a de la fièvre, de la toux, et mal à la tête” “La grippe peut provoquer des fièvres, maux de gorge, maux de tête, fatigue, toux, et des douleurs musculaires” “La patiente a la grippe” Connaissances générales Cause possible

Raisonnement inductif Il s’agit ici de produire des connaissances générales à partir d’observations. Le raisonnement inductif peut donc être vu comme une forme d’apprentissage.

Exemple “Tous les cygnes sont blancs”, étant donné que tous les cygnes que l’agent a vu dans sa vie étaient blancs. il existe des cygnes noirs à la différence du raisonnement déductif, les conclusions du raisonnement inductif peuvent s’avérer fausses ce type de raisonnement est très important car il nous permet d’agir dans un environnement donné, lorsque les informations dont on dispose sur celui-ci sont incomplètes.

Raisonnement déductif en logique propositionnelle Il existe deux problèmes : tester si une formule est bien une conséquence logique d’une autre formule, produire les conséquences d’une formule donnée. nous allons nous focaliser sur le raisonnement déductif en logique propositionnelle. pour résoudre le premier de ces problèmes, la méthode la plus facile à comprendre (mais aussi la moins efficace) est la méthode de table de vérité. En fait, Une formule PSI est une conséquence logique d’une formule PHI juste dans le cas où chaque modèle de PHI est aussi un modèle de PSI. Nous pourrions donc énumérer tous les modèles possibles (c’est le principe même de la table de vérité). Solution : Ces algorithmes ne donnent pas, par contre, une façon de dériver les conséquences d’une formule. C’est la raison pour laquelle nous introduisons une autre méthode, appelée la règle de résolution la règle de résolution

Identifier les conséquences d’une formule, Utilités Identifier les conséquences d’une formule, Générer les conséquences d’une formule, Peut être généralisée à la logique du premier ordre. Cause une bonne partie des algorithmes pour la logique du premier ordre sont basés sur la résolution. Je vais vous présenter l’utilité de la règle de résolution et les causes d’emploi

Exemple s’il fait beau, je vais à la plage, Et Rappel : a  b  ¬a ˅ b s’il fait beau, je vais à la plage, Et s’il ne fait pas beau, je vais au cinéma Ou je reste travailler à la maison. En logique, nous pourrions formaliser cet argument ainsi : je vais à la plage Ou je vais au cinéma je reste à la maison pour travailler. Si j’avais les propositions suivantes : s’il fait beau, je vais à la plage, ET s’il ne fait pas beau, je vais au cinéma OU je reste à travailler à la maison J’obtiens comme conséquences possibles : je vais à la plage OU je vais au cinéma OU je reste à travailler à la maison

Suite (…) Formule générale où lj et l’k sont des littéraux opposés. Ici nous avons supprimés lj et l’k parce qu'ils sont des littéreaux opposés. En fait ici nous sommes dans le cas où il y a une seule copie de chaque littéral

Suite (…) Si chaque clause contient plus qu’une copie de chaque littéral. a v a v b ¬a v c il faut supprimer toutes les copies du littéral dans la clause. a v b v c b v c Nous passons maintenant dans le cas où il y a plus qu’une copie Nous avons supposé que chaque clause contient au plus une seule copie de chaque littéral. Par exemple, le résultat de la résolution de a v a v b avec ¬a v c est b v c et non pas a v b v c.

Mise sous forme clausale Pour transformer une formule en forme clausale, il suffit d’appliquer les règles suivantes :   𝝍 Ξ ¬  v 𝝍  ↔ 𝝍 Ξ ( ^ 𝝍) v (¬ ^¬ 𝝍)  et ↔ ¬( ^ 𝝍) Ξ ¬  v ¬𝝍 ¬( v 𝝍) ¬ ^¬𝝍 ¬¬ Ξ  ¬ ( ^ 𝝍) v ζ Ξ ( v ζ) ^ (𝝍 v ζ) développement 1. Si les abréviations  et ↔ sont présentes dans la formule, supprimez les en utilisant les équivalences   𝝍 Ξ ¬  v 𝝍 et  ↔ 𝝍 Ξ ( ^ 𝝍) v (¬ ^¬ 𝝍). 2. Appliquez les équivalences ¬( ^ 𝝍) Ξ ¬  v ¬𝝍 et ¬( v 𝝍) ¬ ^¬𝝍 et ¬¬ Ξ  jusqu’à ce que les négations se trouvent juste devant les propositions. 3. Appliquez les équivalences ( ^ 𝝍) v ζ Ξ ( v ζ) ^ (𝝍 v ζ) pour arriver à une conjonction de clauses.

Exercice Rappel : a  b  ¬a ˅ b ¬(a  b) v (c ^ d) Ξ Ξ (¬¬a ^¬b) v (c ^ d) Ξ (a^¬b) v (c ^ d) Ξ (a v (c ^ d)) ^ (¬b v (c ^ d)) Ξ (a v c) ^ (a v d) ^ (¬b v c) ^ (¬b v d) ¬(¬a v b) v (c ^ d) 76 La formule ¬(¬a v b) v (c ^ d) est donc équivalente à l’ensemble de clauses {a v c, a v d,¬b v c,¬b v d}.

Vérification et génération de conséquences via la règle de résolution : Algorithme1 1. Transformer  en un ensemble de clauses C. 2. Tant qu’il existe deux clauses cl1 et cl2 dans C tels que : a) la règle de résolution s’applique à cl1 et cl2, et b) le résultat de la résolution de cl1 avec cl2 n’est pas déjà dans C et n’est pas une tautologie : Si le résultat de la résolution est la clause vide Alors Sinon ajoutez le résultat de la résolution de cl1 avec cl2 à C. Fin Si Fin TantQue 3. Retournez “satisfiable”. retournez “pas satisfiable”, Nous montrons maintenant comment utiliser la règle de résolution pour faire du raisonnement déductif.

Exercice 𝝍 = cinéma = (beau  plage)^(¬beau  Cinéma v travail)^ (paresseux  ¬travail) ^ ¬beau ^ paresseux 1. Transformez la formule  ^ ¬ 𝝍 en un ensemble de clauses? 2. Est-ce que les clauses ¬beau v plage et beau v cinéma v travail satisfont les conditions? 3. Résoudre : beau v cinéma v travail et ¬beau C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, ¬ cinéma} C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, ¬cinéma, plage v cinéma v travail } Il peut être prouvé que cet algorithme s’arrête toujours et qu’il retourne “satisfiable” si et seulement si la formule est satisfiable. L’ordre dans lequel nous les traitons ne change pas le résultat de l’algorithme. En fait, pour illustrer le fonctionnement de cet algorithme, nous l’utilisons pour tester si PSI= cinéma est une conséquence logique de la formule PHI 2/ Les clauses ¬beau v plage et beau v cinéma v travail satisfont les conditions, (qui sont règle a et b de l’algorithme) donc nous ajoutons la clause plage v cinéma v travail à C. 3/ Nous ajoutons la clause cinéma v travail à l’ensemble C : C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, ¬cinéma, plage v cinéma v travail, cinéma v travail }

Exercice 𝝍 = cinéma = (beau  plage)^(¬beau  Cinéma v travail)^ (paresseux  ¬travail) ^ ¬beau ^ paresseux 1. Transformez la formule  ^ ¬ 𝝍 en un ensemble de clauses 2. Est-ce que les clauses ¬beau v plage et beau v cinéma v travail satisfont les conditions ? 3. Résoudre : beau v cinéma v travail et ¬beau 4. Résoudre : ¬paresseux v ¬travail et paresseux C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, ¬cinéma, plage v cinéma v travail, cinéma v travail, ¬travail} Nous ajoutons la clause ¬travail à l’ensemble C:

Exercice (Suite) 5. Résoudre : cinéma v travail et ¬travail. C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, ¬cinéma, plage v cinéma v travail, cinéma v travail, ¬travail, cinéma} Nous ajoutons la clause cinema à l’ensemble C:

Exercice (Suite) 5. Résoudre : cinéma v travail et ¬travail. 6. Dans cette étape, vous allez choisir 2 clauses à résoudre qui vont générer « pas satisfiable ». Lesquelles? cinéma ^ ¬ cinéma L’algorithme retourne « pas satisfiable ». clause vide Nous ajoutons la clause cinema à l’ensemble C:

Exercice (Suite) 5. Résoudre : cinéma v travail et ¬travail. 6. Dans cette étape, vous allez choisir 2 clauses à résoudre qui vont générer « pas satisfiable ». Lesquelles? 7. Puisque  ^ ¬ 𝝍 n’est pas satisfiable, Est-ce-que vous pouvez retourner « oui »? Nous pouvons retourner “oui” car le fait que  ^ ¬ 𝝍 n’est pas satisfiable implique que 𝝍 est bien une conséquence de . Nous ajoutons la clause cinema à l’ensemble C:

Exercice : Résolution d’une énigme par la logique des propositions. Vous êtes perdus sur une piste dans le désert. Vous arrivez à une bifurcation. Chacune des deux pistes est gardée par un sphynx que vous pouvez interroger. Les pistes peuvent soit conduire à une oasis, soit se perdre dans le désert profond (au mieux, elles conduisent toutes à une oasis, au pire elles se perdent toutes les deux).

Suite (…) A. Le sphynx de droite vous répond : « Une au moins des deux pistes conduit à une oasis. » B. Le sphynx de gauche vous répond : « La piste de droite se perd dans le désert. » C. Vous savez que les sphynx disent tous les deux la vérité, ou bien mentent tous les deux.

Suite (…) On pose : D : « Il y a une oasis au bout de la route de droite. » G : « Il y a une oasis au bout de la route de gauche. » On a : A = D ∨ G B = ¬D A ≡ B (formule F qu’on cherche à vérifier)

Suite (…) Mise sous forme normale conjonctive : F = A ↔ B = (A → B) ∧ (B → A) = ((D ∨ G) → ¬D) ∧ (¬D → (D ∨ G)) = (¬ (D ∨ G) ∨ ¬D) ∧ (¬¬D ∨ (D ∨ G)) = ((¬D ∧ ¬G) ∨ ¬D) ∧ (D ∨ (D ∨ G)) = (¬D ∨ ¬D) ∧ (¬G ∨ ¬D) ∧ (D ∨ D ∨ G) = (¬D) ∧ (¬D ∨ ¬G) ∧ (D ∨ G) = (¬D) ∧ (D ∨ G) Pour faciliter le travail ceci est la première ligne de la résolution à vous maintenant de terminer

Suite (…) On aboutit à l’ensemble de clauses C = {¬D, D ∨ G}. L’application de la règle de résolution nous indique que la route de gauche conduit effectivement à une oasis : La résolution des deux clauses nous donne que G « l’oasis gauche est le bon chemin »

Exercice Montrez {pvqvr, ¬pvqvr, ¬qvr}⊨r à l’aide de la méthode de résolution Ensemble de départ{pvqvr, ¬pvqvr, ¬qvr, ¬r} Premier pas {pvqvr, ¬pvqvr, ¬qvr, ¬r, ¬q} Deuxième pas {pvqvr, ¬pvqvr, ¬qvr, ¬r, ¬q, qvr} Troisième pas {pvqvr, ¬pvqvr, ¬qvr, ¬r, ¬q, qvr, r} Quatrième pas {pvqvr, ¬pvqvr, ¬qvr, ¬r, ¬q, qvr, r, ⫨} Montrez que « r » est une conséquence logique pour cet ensemble de clauses. Pour vous aidez voici l’ensemble de départ À la fin on obtient l’ensemble vide suite à la résolution de (not r et r) donc nous avons pu montrer que {pvqvr, ¬pvqvr, ¬qvr}⊨r (« r » est une conséquence logique pour cet ensemble de clauses)

Vérification et génération de conséquences via la règle de résolution : Algorithme2 1. Transformer  en un ensemble de clauses C. 2. Tant qu’il existe deux clauses cl1 et cl2 dans C tels que : a) la règle de résolution s’applique à cl1 et cl2, et b) le résultat de la résolution de cl1 avec cl2 n’est pas déjà dans C et n’est pas une tautologie : { ajoutez le résultat de la résolution de cl1 avec cl2 à C. } Fin TantQue 3. Enlever de C toutes les clauses qui ne sont pas minimales 4. Renvoyer C. 3. Retournez “satisfiable”. Minimale Cl={a,b,c,d} Cl’={a,b} une clause cl est minimale dans C s’il n’existe pas une autre clause cl’ dans C telle que tous les littéraux de cl0 sont dans cl mais certains des littéraux de cl ne sont pas dans cl’).

Non complet Complet (Suite) … Ne retourne pas toutes les consequences de . Complet Retourne toutes les conséquences clausales les plus fortes de . impliqués premiers Cet algorithme termine toujours, et il est correct (chacune des clauses retournées est bien une conséquence de ).

(Suite) … Ces clauses sont appelées les impliqués premiers de , et elles satisfont la propriété suivante : Si une clause cl est une conséquence d’une formule , il existe un implique premier p de ! tel que p |= cl. Les impliqués premiers sont donc une façon compacte de représenter les conséquences d’une formule.

Exercice = (beau  plage)^(¬beau  Cinéma v travail)^ (paresseux  ¬travail) ^ ¬beau ^ paresseux 1. Transformez la formule  en un ensemble de clauses? 2. Est-ce que les clauses ¬beau v plage et beau v cinéma v travail satisfont les conditions? 3. Résoudre : beau v cinéma v travail et ¬beau C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux} C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, plage v cinéma v travail } Essayez maintenant d’appliquer cet algorithme pour calculer les impliqués premiers de la formule suivante : Meme travail C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, plage v cinéma v travail, cinéma v travail }

Exercice  = (beau  plage)^(¬beau  Cinéma v travail)^ (paresseux  ¬travail) ^ ¬beau ^ paresseux 1. Transformez la formule  ^ ¬ 𝝍 en un ensemble de clauses? 2. Est-ce que les clauses ¬beau v plage et beau v cinéma v travail satisfont les conditions? 3. Résoudre : beau v cinéma v travail et ¬beau 4. Résoudre : ¬paresseux v ¬travail et paresseux C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, plage v cinéma v travail, cinéma v travail, ¬travail} Nous ajoutons la clause ¬travail à l’ensemble C:

Exercice (Suite) 5. Résoudre : cinéma v travail et ¬travail. C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, plage v cinéma v travail, cinéma v travail, ¬travail, cinéma} Nous ajoutons la clause cinema à l’ensemble C:

Exercice (Suite) 5. Résoudre : cinéma v travail et ¬travail. 6. Supprimez les clauses les plus faibles C = {¬beau v plage, beau v cinéma v travail, ¬paresseux v ¬travail, ¬beau, paresseux, plage v cinéma v travail, cinéma v travail, ¬travail, cinéma} C = {¬beau, paresseux, ¬travail, cinéma} Apres 5 : Comme il ne reste plus de paires de clauses auxquelles nous pouvons appliquer la règle de résolution, nous passons `a l’´étape suivante. L’ensemble des impliqués premiers de  contiennent exactement les mêmes informations que  mais elle à l’avantage d’être beaucoup plus lisible.

Exercice 2 On pose : D : « Il y a une oasis au bout de la route de droite. » G : « Il y a une oasis au bout de la route de gauche. » On a : 1. A = D ∨ G 2. B = ¬D = (A  B)^(B A) 1. Transformez la formule  en un ensemble de clauses? 2. Est-ce que les clauses ¬D et D v G satisfont les conditions? Essayez maintenant d’appliquer cet algorithme pour calculer les impliqués premiers de la formule suivante : Meme travail C = {¬D , D ∨ G } 3. Supprimez les clauses les plus faibles C = {¬D, D v G , G} C = {¬D, G} C = {¬D, D v G, G }

Conclusion La représentation des connaissances veut dire représentation et organisation du savoir. Les connaissances les plus précises sont les plus faciles à représenter. La représentation des connaissances nous permet de construire une Base de connaissances. Une BC contient les connaissances spécifiques à un domaine, sous une forme exploitable par un ordinateur. Avec règles base de règles Moteur d’inférence (raisonnement déductifs logiques) Déduction de nouveaux faits

Conclusion Architecture des systèmes à base de règles de production ou à base de connaissances SYSTEME A BASE DE CONNAISSANCES Base de connaissances UTILISATEUR Base de faits L’utilisateur donne des données au système et ce dernier lui génère des résultats Le système à base de connaissances est composé d’une base de connaissance et d’un moteur d’inférence La base de connaissances est constituée de Base de fait + Bases de règles qui interagissent avec le moteur d’inférences pour générer des résultat à l’utilisateur. Base de règles Moteur d’inférences

Merci pour votre attention