Les systèmes experts L3 MI.

Slides:



Advertisements
Présentations similaires
Tris.
Advertisements

Chap. 4 Recherche en Table
Chapitre annexe. Récursivité
Module 4- Caractéristiques générales de l'évaluation
Classification et prédiction
Classification et prédiction
But de la lecture critique
RECONNAISSANCE DE FORMES
Calculs de complexité d'algorithmes
Algorithmique et évaluation
Algorithmique Résume.
Introduction aux environnements de developpement.
Collecte de données F. Kohler.
Systèmes à base de connaissances
Compétence, activité, évaluation, certification
Systèmes Experts implémentation en Prolog
Notion de problème Pavilly Novembre Typologie de problèmes Construction dune nouvelle connaissance Construction dune nouvelle connaissance Réinvestissement.
INTRODUCTION.
Ordonnancement des mouvements de deux robots
Recherche heuristique de similitudes dans les séquences dADN École Jeunes Chercheurs en Algorithmique et Calcul Formel Laurent Noé
Initiation à la programmation et algorithmique cours 3
Chapitre VII :Commande par retour d’état
1 Théorie des Graphes Cycle Eulérien. 2 Rappels de définitions On dit qu'une chaîne est un chemin passant par toutes les arêtes du graphe. On dit qu'un.
S.T.S. S.I.O. 1ère année La gestion de projets
Initiation au système d’information et aux bases de données
Les bases de l’Algorithmique
Les Systèmes Experts I.A. Session 2009/2010
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
Récursivité.
44 Contrôle du déroulement du programme. 4-2 Objectifs A la fin de ce cours, vous serez capables de : Utiliser les constructions de prise de décision.
Démarche de résolution de problèmes
Algorithmique et Programmation
Algorithmes Branch & Bound
Programmation logique Logique des prédicats du premier ordre
Heuristiques A. Introduction B. Recherche d ’une branche
DURIBREUX, Michèle & COCQUEBERT & HOURIEZ, Bernard,
Automates Programmables Industriels Automates Programmables
Système Expert (Principe)
1.2 COMPOSANTES DES VECTEURS
Méthode des k plus proches voisins
Programmation logique Démonstrateur automatique
Gestion de Fichiers Arbres B.
Allocation de mémoire Allocation de mémoire.
Équations Différentielles
Rappels de logique des prédicats du 1er ordre
CSI 4506: Introduction à l’intelligence artificielle
Révisions - IA Généralité: problèmes de lIA Recherche Logique Traitement de lincertitude Apprentissage Langue naturelle.
Diffusion Nationale TOULOUSE -Mai 2006 STSWEB Rattacher Services et ARE Gestion des pondérations.
Partie II Sémantique.
Institut Supérieur des Etudes Technologiques de Djerba Exposé du Traitement de Données Réalisé par: Khalifa Marwa Magroun Amira Jawadi Souad L2MDW.
Diffusion Nationale TOULOUSE -Mars 2006 Structure et Services « STS » Documentation et suivi.
Programmation logique Le Langage PROLOG
Programmation non procédurale Le projet ECOLE 2000
Programmation linéaire en nombres entiers : les méthodes de troncature
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
1 Notations Asymptotiques Et Complexité Notations asymptotiques : 0 et  Complexité des algorithmes Exemples de calcul de complexité.
Architecture d’un système expert
Présenté par : Attia Hamza Merzouk Abdelkrim 2003/2004
Suites numériques Définitions.
Programmation dynamique
INTRODUCTION.
Le GRAFCET.
Algorithmique et programmation (1)‏
Algorithmes Branch & Bound
I.A. Session 2009/2010 E.P.S.I. Bordeaux – C.S.I.I – 2 ème Année – Cours n°5.
TD Intelligence Artificielle
LOGIQUE ET PROGRAMMATION LOGIQUE
Le rationalisme.
Programmation par contraintes Réalisé par: WETCHA Chaima MOKDED Mohamed Ali FIA3-GL-AL 1 1.
Transcription de la présentation:

Les systèmes experts L3 MI

Introduction Objectif : remplacer les experts humains d'un domaine ou les aider dans leur expertise. Exemple d'applications : choix d'un mastic, soins infirmiers : alimentation des patients, détermination de composés chimiques à partir de données spectrométriques, bactériologie : diagnostic de traitements, évaluation géologique de sites : probabilité de présence de gisements, méthode pour arrêter de fumer, aide à l’organisation des transports en commun…

Principe On dispose de connaissances sur un domaine et d'un moteur d'inférences. À partir d'informations contextuelles factuelles, on infère de nouvelles connaissances sur le problème examiné. Base de règles Moteur Base de faits ? solution

SI condition ALORS action Constituants Un système expert est constitué de : La base de connaissance : La base de faits : code la connaissance sur l'étude en cours. Son état évolue au cours de l'expertise (mémoire de travail) La base de règles : code la connaissance sur le domaine. Elle est fixe. Une règle est de la forme SI condition ALORS action Le moteur d'inférences : Composé des algorithmes utilisés pour la déduction : Calcul des faits déductibles Chaînage avant Chaînage arrière Chaînage mixte

Caractéristiques Les connaissances sur le domaine peuvent être représentées de manière finie (booléen, symbole, nombre) incertaine ou floue La programmation de l'expertise est déclarative Indépendance entre moteur d'inférences et base de connaissances => séparation du procédural et du déclaratif Recherche sur un but précis ou pas Données monotones ou pas Interrogation de l'utilisateur

Classification des systèmes experts Ordre 0 Fondé sur le calcul propositionnel (déduction) Les faits sont à valeurs booléennes SI agé_de_plus_de_18_ans ALORS majeur Ordre 0+ ou 0.5 Les faits peuvent être à valeurs réelles ou symboliques SI age >= 18 ALORS statut=majeur Ordre 1 Basés sur le calcul des prédicats Utilisation des variables et de l'unification SI age(X,Age) ET Age >= 18 ALORS majeur(X)

Les faits 3 états possibles (métavaleurs) : CONNU : une valeur a été attribuée (par déduction ou par l'utilisateur) INCONNU : aucune information connue INDETERMINEE : pas de valeurs connue et l'utilisateur a dit "je ne sais pas" 3 transitions possibles généralement (inférences monotones) : INCONNU => CONNU INDETERMINE => CONNU INCONNU => INDETERMINE Si non monotonie, on peut avoir : CONNU => INCONNU Des options : demandable et affichable, ouvert ou fermé Des variantes : coefficient de vraisemblance (maladie = rougeole(0.6)) introduction de variables (ordre 1) valeurs floues (taille = grande)

SI conjonction de littéraux/prémisses ALORS conclusion/action Les règles SI conjonction de littéraux/prémisses ALORS conclusion/action Exemple de base de règles (ordre 0) SI fleur et graine ALORS phanérogame SI phanérogame et graine nue ALORS sapin SI phanérogame et 1-cotylédoné ALORS monocotylédone SI phanérogame et 2-cotylédoné ALORS dicotylédone SI monocotylédone et rhizome ALORS muguet SI dicotylédone ALORS anémone SI monocotylédone et non rhizome ALORS lilas SI feuilles et fleur ALORS cryptogame SI cryptogame et non racine ALORS mousse SI cryptogame et racine ALORS fougère SI non feuilles et plante ALORS thallophyte SI thallophyte et chlorophylle ALORS algue SI thallophyte et non chlorophylle ALORS champignon SI non feuilles et non fleur et non plante ALORS colibacille

Utilisation de variables Utiliser des variables permet de compacter les connaissances. Exemple : on dispose des liens de parenté directe et on désire connaître les liens de paternité de deuxième niveau. SI père(X, Y) ET père(Y, Z) ALORS grand-père(X, Z) Sans variables, il faudrait déclarer autant de faits qu'il y a de liens de paternité. Inconvénient : le filtrage des règles par la base de fait est plus complexe.

Faits conclusifs Il est nécessaire de déterminer les faits conclusifs. Exemple : cas d'un SE d'ordre 0 permettant de déterminer en fonction de critères le type de logement convenant le mieux à un client. Les différents buts possibles sont à choisir parmi : F2 pavillon fermette etc. Expertise avec chacun des buts possibles, ce qui revient à poser les questions : "est-ce que F2 convient ?" "est-ce que pavillon convient ?" etc. Une autre solution consiste à ajouter un fait conclusif : trouve et les règles : SI F2 ALORS trouve SI pavillon ALORS trouve etc. On effectue alors les expertises avec comme but trouve, quand le but a été prouvé, il ne reste qu'à examiner la base de faits afin de connaître le type de logement.

Mécanismes de base du moteur d’inférences Chaînage avant : basé sur le modus ponens : SI (A => B ET A) ALORS B Chaînage arrière : basé sur le modus tollens : SI (A => B ET ¬B) ALORS ¬A

Chaînage avant Principe : à partir d'un état de la base de faits, effectuer toutes les déductions logiquement possibles. Exemple : Base de règles : SI a ALORS c SI a ET d ALORS e SI b ET c ALORS d SI e ALORS f Base de faits initiale : {a, b} On peut déduire : c d e f

Mécanisme On cherche les règles dont la condition est vérifiée et on applique leurs conclusions Plusieurs étapes : sélection : suppression de règles (ex : définitivement non déclenchable ou concluant sur un fait déjà établi) détermination des règles déclanchables (condition satisfaite) résolution de conflits : choisir la règle à déclencher selon des heuristiques activation : appliquer la conclusion Arrêt lorsque : il n'y a plus de règles déclenchables le but recherché a été établi

Un algorithme de chaînage avant activer toutes les règles de la base Tant qu'il existe des règles actives déclenchables choisir R une de ces règles Si la conclusion de R ne contredit pas la base de faits alors appliquer la conclusion de R et désactiver R sinon base inconsistante STOP fin Si fin Tant que La désactivation des règles assure la terminaison de l'algorithme En ordre 1, on ne peut pas désactiver les règles : dans l'exemple précédent, si on utilise la règle grand-père, elle est tout de même susceptible d'être réutilisée. Par exemple si on veut savoir si deux personnes sont cousines (et ont donc le même grand-père).

La résolution de conflits différentes heuristiques possibles : dans l'ordre de l'écriture de la base au hasard déclencher toutes les règles simultanément à partir de coefficient de priorité sur les règles règle dont la condition utilise les faits les plus récemment déduits à partir de règles de contrôle (meta-règles)

Chaînage arrière Principe : On recherche les connaissances nécessaires à la preuve d'un but donné. On considère les règles qui ont le but pour conclusion, si la condition de l'une de ces règles est vérifiée alors succès, sinon les prémisses inconnues deviennent les nouveaux (sous)-buts. Exemple : Base de règles : SI a ALORS c SI a ET d ALORS e SI b ET c ALORS d SI e ALORS f Base de faits initiale : {a, b} But : f

Deux méthodes de chaînage arrière Base de règles : SI a ALORS c SI a ET d ALORS e SI b ET c ALORS e SI e ALORS f Base de fait : {a, b} But : f f e f a, d b, c e et et ou c d  b  c a  d  a  a  Arbre de liste de buts (gestion par pile des buts) Arbre ET/OU

La résolution de conflits Choix de la règle concluant sur le but dans l'ordre d'écriture dans la base au hasard celle avec le moins de prémisses inconnues coefficient de priorité méta-règles Choix parmi les prémisses du fait devenant le nouveau but ordre d'écriture dans la règle demandables en priorité non demandables en priorité

Chaînage mixte Les chaînages avant et arrière nécessitent une connaissance suffisante dès le début. Si les connaissances initiales sont insuffisantes, la conclusion recherchée peut ne pas pouvoir être établie. Solution : le système doit pouvoir poser des questions à l'utilisateur en cours de raisonnement afin de compléter ses connaissances, notamment pour des informations non calculables par déduction.