INTELLIGENCE ARTIFICIELLE

Slides:



Advertisements
Présentations similaires
Inférence en logique du premier ordre
Advertisements

Programmation logique Logique des prédicats du premier ordre
Programmation logique Démonstrateur automatique
Rappels de logique des prédicats du 1er ordre
CSI 4506: Introduction à l’intelligence artificielle
Gestion de la concurrence avec Entity Framework Développement d’application avec base de données Chapitre 23 Hugo St-Louis – Automne 2015.
CINI – Li115 1 Semaine 9 Algorithmes de tri ● Introduction ● Tri à bulle ● - principe ● - algorithme ● - efficacité ● Tri par sélection ● - principe, algorithme,
Marlène Côté et Christèle Charbonneau Thème: Mathématiques et univers social Les élèves seront amenés à effectuer des additions et des soustractions, de.
1- Introduction 1ère partie Le langage SQL 2- Connexion 3- Structure & Contenu 4- Requêtes.
SQL query - 1 / D. Berrabah SQL : interrogation de BD Requêtes d'interrogation simples Requêtes complexes Agrégats et groupement.
Le principe du défi calcul pour tous, chacun fait de son mieux Passer d’une situation à une épreuve: d’un jeu d’atelier à une activité de recherche personnelle.
ANNEE ACADEMIQUE Institut Supérieur Emmanuelle D’Alzon de Butembo COURS: THEORIE DE BASE DE DONNEES : 45H PROMOTION: G2 Gestion Informatique.
SITUATION DE REFERENCE
La spécialité math en TS
Initiation à la conception des systèmes d'informations
Pierre Joli Cours de Mathématique Pierre Joli
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
Résolutions et réponses
Semaine #1 INF130 par Frédérick Henri.
Représentation de l’information en binaire:
Les inégalités et les inéquations
Loi Normale (Laplace-Gauss)
Collecte de données CAPI
Cliquer pour en savoir plus
Informatique et Sciences du Numérique
Master Réseaux et Systèmes Distribués (RSD)
Au Far West L'histoire se passe dans un saloon, à l'époque du Far
Information, Calcul, Communication
Les bases de données et le modèle relationnel
Techniques d’Optimisation Chapitre 3: Programmation en 0-1 (bivalente)
Technologies de l’intelligence d’affaires Séance 11
Les interfaces en PHP.
Argumentation Énumération Classification
Concepts avancés en mathématiques et informatique appliquées
Fonctions Logiques & Algèbre de BOOLE
INTELLIGENCE ARTIFICIELLE
GRAPHISME PAR ORDINATEUR
INTELLIGENCE ARTIFICIELLE
2.2 Probabilité conditionnelle
Cours N°9: Algorithmiques Les Tableaux 1
La méthode du simplexe. 1) Algorithme du simplexe  Cet algorithme permet de déterminer la solution optimale, si elle existe, d’un problème de programmation.
Structure D’une Base De Données Relationnelle
Calcul Relationnel Chapitre 4, Section 4.3.
REVUE DE LITTERATURE. Introduction Première partie majeure dans la rédaction du mémoire, la réalisation d’une revue de littérature consiste à effectuer.
OPTIMISATION 1ère année ingénieurs
Algèbre relationnelle
Arbres de décision.
Les réseaux logiques programmables
CHAPITRE 8 Equations, Inégalités
Transition vers l’assignation automatique des stages à la résidence
Plateforme CountrySTAT Aperçu global de la préparation des tableaux dans la nouvelle plateforme CountrySTAT FORMATION DES POINTS FOCAUX SUR LE SYSTEME.
Info Bases de données avancées
Sujets Spéciaux en informatique II
Information, Calcul, Communication
CSI 3505 Algorithmes Voraces
RABAH M ed Ali 2018/2019
Principes de programmation (suite)
INTELLIGENCE ARTIFICIELLE
INTELLIGENCE ARTIFICIELLE
PROGRAMMATION SCIENTIFIQUE EN C
INTELLIGENCE ARTIFICIELLE
5. Algorithme du simplexe
CSI 3505 / Automne 2005: Conception et Analyse des Algorithmes I.
Test de performances. Test de performances:  Un test de performance est un test dont l'objectif est de déterminer la performance d'un système informatique.
INTELLIGENCE ARTIFICIELLE
INTELLIGENCE ARTIFICIELLE
Chapitre 2 Résolution des Problèmes et Jeux. Objectifs  Comment ? – Modéliser un Problème. – Modéliser un Jeu.  Comment ? – Passer d’un état à un autre.
Boulain Joris, Handouz Yassine, Regnier Fabien, Giraud Antoine
Conception d’un QCM F. Loizeau ; Clermont-Ferrand.
Comment aller plus loin avec Zotero? Comité d’Aide à la Publication, FMT Zotero worshop Hand’s on session Zotero worshop Hand’s on session 12h-12h30.
Transcription de la présentation:

INTELLIGENCE ARTIFICIELLE IAR-1001

Contenu du cours 5 Connaissances et Raisonnement Système expert Inférence propositionnelle/premier ordre Moteur d’inférence par chaînage avant Moteur d’inférence par chaînage arrière LECTURES: Chapitres 9 Russell & Norvig Notes de cours (site ftp UQTR)

Connaissances et Raisonnement Système Expert (Inférence propositionnelle/premier ordre) Les systèmes d’inférence logiques modernes permettent, par l’utilisation de règles d’inférence simples pouvant être appliquées aux propositions du premier ordre donc avec des quatificateurs pour revenir à des propositions sans quantificateurs. L’inférence du premier ordre peut être effectuée en convertissant la base de connaissances en propositions logiques et en utilisant les règles d’inférence propositionnelle.

Connaissances et Raisonnement Système Expert (Règles d’inférence sur les quantificateurs) Exemple de proposition de premier ordre Il est alors possible d’inférer que: Nous pouvons écrire formellement les règles d’inférence en utilisant la notion de substitutions sachant que SUBST(θ,α) correspond au résultat découlant de l’application de la substitution θ à la proposition α. Pour chaque variable v et instance g Exemple de substitutions: {x/John}, {x/Richard }, et {x/Father (John)}.

Connaissances et Raisonnement Système Expert (Règles d’inférence sur les quantificateurs) Pour les règles d’instantiation Existentielle, la variable est replacée par un symbole constant unique. Pour chaque proposition α, variable v, et constante k n’apparaissant pas ailleurs dans la base de connaissances. Exemple:

Connaissances et Raisonnement Système Expert (Réduction en propositions logiques) Après l’élimination des quantificateurs, il est possible de réduire les règles d’inférence du premier ordre sous forme de règles d’inférence propositionnelles. D’abord, nous savons qu’une proposition quantifiée sous forme existentielle peut être remplacée par une seule instantiation, et une, sous forme universelle, remplacée par un ensemble des instantiations possibles. Avec les propositions: Après l’application des substitutions possibles ({x/John} et {x/Richard }) tirées du dictionnaire de la base de connaissances, découlant des instantiations universelles sur la première proposition, nous pouvons ainsi réduire cette proposition.

Connaissances et Raisonnement Système Expert (Réduction en propositions logiques) L’inférence que “John is evil”, découle du fait que la substitution {x/John} apporte une solution au prédicat Evil(x), pour utiliser la règle “greedy kings are evil”, cherchons des x tel que x est un “king” et x est “greedy”, et pouvons inférer que x est “evil”. Donc, si une substitution θ existe de telle sorte que chaque conjonction des prémisses d’une implication soit identique à des propositions déjà dans la base de connaissances, nous pouvons alors assumer la conclusion de cette implication, après avoir appliqué θ. Dans ce cas, la substitution θ = {x/John} atteint ce but.

Connaissances et Raisonnement Evil(John) Connaissances et Raisonnement Système Expert (Réduction en propositions logiques) L’inférence peut être poussée un peu plus loin en supposant que d’avoir dans la base de connaissances le fait que Greedy(John), nous savons que tous sont “greedy”: Alors comment conclure que Evil(John), sachant que John est un “king” et que John est “greedy”. Nous devons donc trouver une substitution pour les variables dans l’implication et les variables dans les propositions qui sont dans la base de connaissances. Dans ce cas, en applicant la substitution {x/John, y/John} aux prédicats de l’implication King(x) et Greedy(x) et que les propositions de la base de connaissances King(John) et Greedy(y) les rendent identiques. Il est alors possible d’inférer la conclusion de cette implication.

Connaissances et Raisonnement Système Expert (Modus Ponens) Sachant que les processus d’inférence permettent de déduire des propositions qui sont des conséquences logiques d’autres propositions. Un bon processus d’inférence doit être correct (sound). Toute proposition déduite d’un ensemble de propositions doit être une conséquence logique de ces propositions. Un processus d’inférence doit idéalement être complet. Il doit donc être capable de déduire toute proposition qui est une conséquence logique d’autres propositions. À partir d’une prémisse f1 et l’implication f1 → f2,on peut déduire f2. Si on a (wumpusAhead ∧ wumpusAlive) et la règle (wumpusAhead ∧ wumpusAlive) → shoot alors shoot peut être inféré.

Connaissances et Raisonnement Système Expert (Modus Ponens) À partir de la proposition ∀ x f1 on peut déduire f2 déduit de f1 en remplaçant toutes les occurrences libres (instances) de x par un terme n’ayant pas de variable en commun avec f1. Par exemple: tous les chiens sont des mammifères, Fido est un chien, donc Fido est un mammifère.

Connaissances et Raisonnement Système Expert (Modus Ponens) Ce processus d’inférence peut être représenté par le Modus Ponens Généralisé: Pour les propositions pi , pi’ et q, avec une substitution θ pour laquelle SUBST(θ, pi’) = SUBST(θ, pi), pour tout i. Cette règle comportent n+1 prémisses: les n propositions atomiques pi et une implication. La conclusion est le résultat de l’application de la substitution θ sur la conséquence q.

Connaissances et Raisonnement Système Expert (Modus Ponens) Par exemple: Sachant que pour une substitution θ satisfaisant les conditions de la règle du Generalized Modus Ponens Alors à partir des propositions p1‘,.., pn‘ nous pouvons inférer que: Et de l’implication p1 ∧ . . . ∧ pn ⇒ q nous pouvons inférer:

Connaissances et Raisonnement Système Expert (Modus Ponens) La substitution θ dans la règle Generalized Modus Ponens est définie de telle sorte que SUBST(θ, pi‘)= SUBST(θ, pi ), pour tout i; Donc les premières prémisses correspondent exactement aux secondes (voir les deux premières propositions). Alors , SUBST(θ, q) découle donc par Modus Ponen. Le Generalized Modus Ponens est une “lifted version” du Modus Ponen et généralisant le Modus Ponens d’une logique propositionnelle sans variable libre (variable-free) vers une logique du premier ordre.

Connaissances et Raisonnement Système Expert (Modus Ponens) L’avantage de ces règles d’inférence “lifted” par rapport aux formes propositionnelles sans variables est que juste les substitutions requises sont appliquées pour déduire des inférences particulières.

Connaissances et Raisonnement Système Expert (Principe d’unification) Les règles d’inférence “Lifted” requièrent de trouver les substitutions rendant des expressions logiques identiques. Ce processus est l’unification et est une composante importante des algorithmes d’inférence du premier ordre. L’algorithme UNIFY prend 2 propositions (phrases) et retourne un unifier de ces propositions si un existe:

Connaissances et Raisonnement Système Expert (Principe d’unification) Algorithme UNIFY()

Connaissances et Raisonnement Système Expert (Mise en situation) “La loi stipule que c’est un crime pour un Américain de vendre des armes à des nations hostiles. Le pays Nono, un ennemi des USA, possède des missiles, et ces missiles furent achetés du Colonel West, qui est Américain”. Maintenant comment prouver que le Colonel West est un criminel. Pour ce faire il faut d’abord représenter les faits relatés dans la mise en situation sous forme de propositions logiques du premier ordre.

Connaissances et Raisonnement Système Expert (Mise en situation) “c’est un crime pour un Américain de vendre des armes à des nations hostiles”. “Nono a des missiles.” Cette proposition ∃ x Owns(Nono, x) ∧ Missile(x) est transformée en 2 propositions distinctes par instantiation Existentielle, introduisant une nouvelle constante Mi “Tous leurs missiles furent achetés du Colonel West”: 1 2 3 4

Connaissances et Raisonnement Système Expert (Mise en situation) Nous devons aussi savoir que des missiles sont des armes: Et que les ennemis des USA sont considérés comme “hostile”: Que West est américain: Et que le pays Nono est un ennemi des USA 5 6 7 8

Connaissances et Raisonnement Système Expert (Mise en situation) Les implications sont: (1), (4), (5), et (6). Le processus déductif comporte 2 itérations: Itération 1: la règle (1) a des prémisses insatisfaites. La règle (4) est satisfaite par la substitution {x/M1}, et Sells(West,M1, Nono) est ajouté. La règle (5) est satisfaite par la substitution {x/M1}, et Weapon(M1) est ajouté. La règle (6) est satisfaite par la substitution {x/Nono}, et Hostile(Nono) est ajouté. Itération 2: la règle (1) est satisfaite avec la substitution {x/West, y/M1, z/Nono}, et Criminal (West) est ajouté.

Connaissances et Raisonnement Système Expert (Mise en situation) Itération 2 Itération 1

Connaissances et Raisonnement Système Expert (Moteur d’inférence: chaînage avant) En chaînage avant, le contenu de la mémoire correspond aux données qui peuvent vérifier certaines prémisses des règles, ces règles deviennent des règles candidates à être utilisées dans le raisonnement. Ensuite, le système prend en compte les règles candidates selon un ordre donné et teste si le reste des prémisses sont vérifiées.

Connaissances et Raisonnement Système Expert (Moteur d’inférence: chaînage avant)

Connaissances et Raisonnement Système Expert (Moteur d’inférence: Chaînage arrière) Avec le chaînage arrière, le but est placé au début dans la mémoire du système. Ensuite, le système cherche dans sa base de connaissances les règles dont la conclusion correspond au but recherché. Une des règles est choisie selon une stratégie donnée. Ses prémisses sont empilées dans la mémoire du SE et deviennent les sous-buts actuels à résoudre. Le système continue à travailler de cette façon jusqu’à ce que tous les sous buts placés en mémoire soient vérifiés. Les sous-buts peuvent être résolus en posant des questions à l’expert.

Connaissances et Raisonnement Système Expert (Chaînage arrière) La fonction FOL-BC-ASK(KB,goal ) sera prouvée si la KB contient une proposition (clause) de la forme lhs ⇒ goal, où lhs (left-hand side) est une listes de conjonctions. Un fait atomique comme American(West) est considérée comme une proposition avec un lhs est vide. Une requête du genre Person(x) peut être prouvée par la substitution {x/John} et aussi {x/Richard }. Nous pouvons implémenter FOL-BC-ASK () sous forme d’un générateur qui est une fonction qui retourne à chaque fois qu’un résultat est possible.

Connaissances et Raisonnement Système Expert (Chaînage arrière) Le chaînage arrière est une recherche de type AND/OR, la partie OR puisque la requête but peut être prouvée par n’importe quelles règles dans la KB, et la partie AND puisque toutes les conjonctions dans le lhs d’une proposition doivent être prouvées. FOL-BC-OR retirent chaque clauses pouvant être unifiées avec le but, standardise les variables dans la proposition, et ensuite, si le rhs de la proposition peut être unifié avec le but, prouver chaque conjonction du lhs, par la fonction FOL-BC-And (). Cette fonction prouve chacune des conjonctions, conservant en même temps l’ensemble des substitutions réussies.

Connaissances et Raisonnement Système Expert (Chaînage arrière: exemple)

Connaissances et Raisonnement Système Expert (Chaînage arrière: exemple) Sachant que l’arbre de preuves découlant du BC permet de prouver que West est un criminel. L’arbre de preuves comme l’algorithme BC sont depth first (profondeur d’abord), de gauche à droite. Pour prouver que Criminal (West), nous devons prouver les 4 conjonctions en dessous. Certaines sont dans la KB, mais d’autres doivent être développées par chaînage arrière. Les unifications réussies sont présentées à côté des sous buts correspondants. Dès qu’un sous but dans une conjonction réussi (devient vrai), ces substitutions sont alors appliquées aux sous buts subséquents (plus hauts). Donc quand FOL-BC-ASK arrive à la dernière conjonction, originalement Hostile(z), sachant que z est déjà associé à Nono lors d’une substitution antérieure.

Connaissances et Raisonnement Système Expert (Chaînage arrière)

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Voir la référence: https://www.princeton.edu/~stengel/IGHLCCSM1991.pdf Composantes de l’assistant de conduite intelligent

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Composantes du système expert

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Composantes du système expert: Sous systèmes: Situations normales et urgentes

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Composantes du système expert: Base de règles Exemple de règle codée en Lisp

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Composantes du système expert: Diagramme logique de la conduite normale

Connaissances et Raisonnement Système Expert (Chaînage arrière: Assistant de conduite) Composantes du système expert: Chaînage arrière pour valider un changement de voie à gauche