Chapitre 3: Système
Experts
DR. AMIRA HENAIEN
ISIMA, MAHDIA, TUNISIE
Motivation
Vue Historique
Définition de système expert
Contenu de
Architecture détaillés de systèmes
chapitre 3
Systèmes Experts
expert
logique propositionnelle
Chainage avant et arrière
Motivation : Résolution de problème
Classique Résolution automatique de
problème
problème Phase statique domaine
Modélisation
Conception
Représentation des
Algorithme connaissance du monde
Phase dynamique exploitation
données problème
exécution résolution
Intérêts des systèmes experts
•les systèmes experts
répondent aux besoins:
•la formalisation d'un savoir faire
•L’aide à la décision.
•Clients des systèmes
experts:
•Les laboratoires d'analyse
(biologique, mécanique...)
• les métiers de gestion de
ressources en temps réel
(supplychain, transactions
boursières …).
Définition du concept de système expert
LES SYSTEMES EXPERTS sont ...
- "... des systèmes informatiques permettant de résoudre un type de
problème donné, à partir d'une connaissance du domaine fournit au
système"
-"...des programmes conçus pour raisonner habilement à propos de
tâches dont on pense qu'elles requièrent une expertise humaine
considérable..."
Edward FEIGENBAUM
-des programmes capables de:
-d'ASSIMILER des connaissances d'un domaine de spécialité
-de RAISONNER sur ces connaissances
-parfois, d'attribuer un degré de CREDIBILITE aux réponses fournies
-souvent, de JUSTIFIER ces reponses
-d'EVOLUER facilement pour prendre en compte l'évolution des
connaissances
Expertises humaines
deux grandes classes de tâches qui "...requièrent une
expertise humaine considérable..." :
1- gestion, comptabilité, calcul de structure, calcul numérique, ....
souvent: processus intellectuels bien définis
systèmes experts: solution de génie logiciel (maintenance plus
facile,...)
2diagnostique médical, prospection pétrolière, prévisions, ....
pour partie: processus intellectuels mal définis:
-expertise insuffisamment structurée pour donner lieu à des algorithmes
parfaitement définis
-expertise représentable, comme un ensemble de granules de
connaissances relativement indépendantes (références et origines)
granules de connaissances = règles de production
systèmes experts: solution de résolution
Quelques systèmes experts connus
DENDRAL (Stanford) :
recherche de formules développées en chimie organique à partir de
spectrographies de masse.
MYCIN (Stanford):
médecine, enseignement.. (500 règles)
PROSPECTOR (SRI inter):
géologie, mine molybdène; M$ (1600 règles)
LITHO (Schlmberger-France): géologie
(500 règles)
PAYE (Paris 6 Levesque):
système de paye PMI PME, sur micro. (400 règles)
MOLGEN (Stanford):
expèriences en génétique, synthèse de séquences d'ADN
R1 (Xcon), XSEL (Carnegie Mellon):
configuration d'ordinateurs VAX&*), DEC gain de M$ par an (>7000 règles)
TOM (Cognitech-INRA 1984)
agronomie, maladies de la salade (200 règles)
Objectifs d'un système expert
- CAPTURER et REPRESENTER aisément les unités de savoir-faire:
- faciliter l'expression la plus directe possible de ces granules de
connaissances
représentation des connaissances
-EXPLOITER au mieux ces unités de connaissances:
-combiner et/ou chainer ces granules de connaissances afin d'en
générer d'autres: décisions, jugements, plans, prédictions,....
-rendre compte de cette exploitation: explications, trace,....
interprétation des connaissances
- supporter aisément la REVISION de ces unités de savoir-faire
système expert = systèmes à base de connaissances
Vue Historique
• L’un des plus grands domaines de succès de l’IA a été le
développement de systèmes de résolution de problèmes à
grande échelle
• Appelés à l’origine systèmes experts, ils imiteraient les
processus de résolution de problèmes des experts du
domaine.
• les médecins effectuant le diagnostic,
• les ingénieurs effectuant la conception,
• les analystes de Wall Street sélectionnant les transactions boursières
• Les systèmes experts ont été développés à l’origine à la
main
• le plus souvent dans certains dialectes Lisp
• Il a été découvert que de nombreux problèmes étaient
résolus en enchaînant des règles (déclarations si-alors) qui
fonctionneraient sur un ensemble de faits et de conclusions
partielles.
• mémoire de travail
• Ces systèmes basés sur des règles ont conduit aux premiers
outils ou shells d’IA
Le système Dendral (DENDRitic ALgorithm) a été le premier
système expert, développé dans les années 1960
L’idée était, compte tenu des données du spectrogramme de
masse, de déterminer quelle était la composition chimique
L’approche : planifier-générer-et-tester avec la
rétroaction humaine
Il s’agit d’une technique de recherche contrainte
• Générer une hypothèse : un composé chimique possible
• Tester l’hypothèse : utiliser une série d’heuristiques et de sous-
programmes pour déterminer si le composé chimique généré est
plausible compte tenu des données
• Si c’est le cas, montrez-le à l’utilisateur – l’utilisateur peut orienter la
direction que DENDRAL prend ensuite en suggérant quels éléments
chimiques doivent être ajoutés ou retirés du composé d’hypothèse
généré
• DENDRAL se répète jusqu’à ce qu’une réponse soit jugée acceptable qui
ne viole pas les contraintes dictées par les données
Eliza
• Créé par Joseph Weizenbaum
• Ce système agirait comme un psychanalyste rogerien en dialoguant
avec une personne
• le dialogue serait composé du médecin (Eliza) posant des questions,
l’humain répondant et le médecin utilisant la réponse pour poser une
autre question
• Weizenbaum a écrit le programme de manière à ce qu’il génère une
réponse / question en anglais basée sur un groupe de pattern (modèles)
• Si la phrase de l’utilisateur correspondait à un modèle, ce modèle
serait utilisé pour générer la phrase/question suivante
Sample dialog with Eliza:
H: Men are all alike
E: In what way?
H: They’re always bugging us about something or
another.
E: Can you be more specific?
H: Well, my boyfriend made me come here.
E: Your boyfriend made you come here?
H: He says I’m depressed much of the time.
E: I am sorry to hear you are depressed.
H: It’s true. I am unhappy.
E: Do you think coming here will help you not to be
unhappy?
H: I need some help, that much seems certain.
E: What would it mean to you if you got some help?
H: Perhaps I could learn to get along with my mother.
E: Tell me more about your family
Comment fonctionne Eliza
Repeat
Input a sentence
Find a rule in the Eliza knowledge-base that matches the pattern
Attempt to perform pattern match (see next slide)
Attempt to perform segment match (see two slides)
If rule found, select one of the responses randomly (each pattern
will have at least one response)
Fill in any variables
Substitute values (you for I, I for you, me for you, am for are, etc)
Respond
Until user quits
La majeure partie du travail se déroule dans les
fonctions de correspondance de modèle et de
correspondance de segment
MYCIN
Mis en œuvre au début des années 1970, Mycin est peut-être le système
expert le plus reconnu et le plus cité
Développé à Stanford, il effectue un diagnostic bactériologique – à la
fois l’identification et le traitement de la maladie
Testé contre des médecins, des internes, des professeurs de médecine
et des étudiants en médecine, Mycin les a tous surpassés dans une
expérience de quelque 80 cas différents!
Principalement formé à partir de règles qui ressemblent à ceci:
Les prémises peut être trouvé dans “working memory”
(defrule 52
if (site culture is blood) Les Prémises avoir un identificateur et une valeur
(gram organism is neg) L’organisme est un échantillon (tissue, blood)
(morphology organism is rod) Il peut y avoir plusieurs organismes à évaluer
(burn patient is serious) Le patient est le patient en cours de diagnostic
then .4
(identity organism is pseudomonas)) .4 représente un facteur de certitude
dans quelle mesure l’affirmation est-elle
plausible?
MYCIN : Règles et facteurs de certitude
• L’idée derrière MYCIN est qu’il existe des milliers de telles
règles
• Si les prémisses permettent de sélectionner une règle, cela modifiera la mémoire
de travail qui, à son tour, pourrait permettre à une autre règle, plus spécifique,
d’être sélectionnée.
• Dans quelle mesure la prochaine règle est-elle certaine
dans la chaîne de logique?
• Les facteurs de certitude doivent être combinés
• Imaginez la règle (si (prémisse 1) (prémisse 2) alors .7 (conclusion3))
• Si la prémisse 1 a un CF de 0,8 et que la prémisse2 a un CF de 0,5, quelle est notre
FC pour la conclusion3?
• Nous devons d’abord trouver les FC des deux locaux combinés (les ANDing
ensemble)
• Nous devons ensuite propager les FC à travers la règle
Ce qui va suivre ...
• Les systèmes experts
– Type de problème: classification, diagnostic,
réponse à des questions.
– Exemple: est ce que la “baleine-bleue” est un
mammifère ?
• La représentation des connaissances
– La logique des prédicats
– Les réseaux sémantiques
Définition des systèmes experts
• Un système expert est un logiciel qui reproduit le
comportement d'un expert humain accomplissant une tâche
intellectuelle dans un domaine précis. On peut souligner les
points suivants :
– Les systèmes experts sont généralement conçus pour résoudre
des problèmes de classification ou de décision (diagnostic
médical, prescription thérapeutique, régulation d'échanges
boursiers, ...)
– Les systèmes experts sont des outils de l'Intelligence Artificielle,
c'est-à-dire qu'on ne les utilise que lorsqu'aucune méthode
algorithmique exacte n'est disponible ou praticable
Vision Globale
Formalisme
Adapté au
formalisme
Mécanisme de
raisonnement
Adapté au
type de question
La connaissance ? (1)
• Différence entre donnée, information, connaissance.
– la donnée transporte l'information : ce sont des signaux non
interprétés ;
– l'information est une interprétation de la donnée ;
– La connaissance utilise l'information dans le cadre
d'actions, dans un but précis. Les actions peuvent être la
prise de décisions, la création de nouvelles informations,
etc.
• Questions fondamentales
1. Acquisition de la connaissance du domaine
2. Représentation de la connaissance (un formalism syntaxe
+ sémantique)
3. Contrôle du raisonnement (complétude et validité)
La connaissance ? (2)
• Connaissance => capacité à mobiliser des informations pour agir
• Le passage de INFORMATION à CONNAISSANCE est lié à l’expérience de l’action
= > pas de frontière parfaitement définie
• Définition : Connaissance = Information (donnée) qui influence un processus.
un système définissant une série de symboles et une série d'opérations sur
ces symboles. Pas de classification universelle des différents types de
connaissances (voir la tentative de Porphyre)
• Connaissance : ensemble des notions et des principes qu'une personne acquiert par
l'étude, l'observation ou l'expérience et qu'elle peut intégrer à des habiletés.
● Synonyme de Génie cognitif : Discipline étudiant l'extraction et la formalisation de
connaissances provenant d'un expert humain en vue d'automatiser le
raisonnement.
● En informatique, l'ingénierie des connaissances évoque les techniques pour manipuler
des connaissances sur ordinateur.
La représentation de connaissance : vers un formalisme
● La représentation des connaissances est le support
préalable aux traitements ultérieurs que l'on souhaite
effectuer sur ces connaissances:
1. Organiser, classer,...
2. Chercher, extraire,...
3. Déduire, établir des contradictions, réviser,...
● D'une certaine manière, la représentation des connaissances
explicite dans un formalisme visé, la recherche de
connaissances implicites mais inhérentes aux faits de base.
La représentation ? (1)
• Dire que A « représente » B
– Ne suffit pas pour que ce soit « vrai »
– Il convient de vérifier que si B a un certain effet sur un processus
P, A démontre un effet « équivalent » sur un processus
« équivalent »
• A n’est cependant pas « équivalent » à B
– « Une carte n’est pas le territoire »
– Une carte « représente » le territoire dans le cadre d’un
processus de recherche d’un itinéraire (par exemple)
• Séparation l'objet de la représentation, le monde réelle, et le monde
artificiel utilisé pour.
Représentation (2)
• Représenter Approximer dans le contexte d’une tâche
(activité?) particulière
• Représenter Structure de symboles pour « décrire » une
approximation du « monde » (un modèle du monde) dans le
contexte d’une tâche particulière.
• Interpréter une structure (une représentation) Composition
de l’interprétation des différents symboles la constituant
=
• Exemple
– X=(y+2)/z x /
+ z
y 3
Représentation (3)
• La propriété de composition n’est pas naturelle.
L’expression “tout à l’heure” est-elle la composition de
“tout” et “à l’heure”?
• La notion d’interprétation présuppose que le modèle (du
monde) est constitué d’objets, et que parmi les symboles, il
en est qui s’interprètent comme des objets du modèle.
• Les symboles ont la capacité de déclencher des inférences
Représentation d’un monde (4)
interprétation Le Monde
représentation
opi
Représentation de connaissances (5)
Il s’agit de langages formels
un alphabet, ensemble de symboles pas nécessairement réduit à
des caractères
un procédé de formation des expressions, pas nécessairement la
concaténation
un ensemble d'axiomes
des règles de dérivation qui, à partir des axiomes, permettent de
produire des théorèmes (c'est-à-dire des expressions appartenant
au système), et peuvent ensuite s'appliquer aux théorèmes pour
en produire d'autres
Représentation de procédures
peut-être l’objet d’une procédure (machine de Turing, Algorithmes
de Markov, fonctions récursives, logique combinatoire, production
de Post (Si p se réalise et que p => q Alors q peut se réaliser) =
autant de méthodes pour représenter un procédé de calcul.
Représentation dans un modèle (6)
Langage => aspects « syntaxiques » de la
représentation (attention langage formel!)
Système de déduction => aspects
« sémantiques » (attention, représente un
calcul et peut être très éloigné d’un « sens »
quelconque)
Règles de valuation => « vrai », « faux »
(attention, ne pas confondre avec le sens
général vrai et faux…)
Correction et complétude
Un système est « correct » si toutes les formules
qui sont des théorèmes sont des tautologies
(valuées « vrai »)
Un système est « complet » si toutes les formules
qui sont des tautologies sont des théorèmes.
Représentaion de connaissances : les formlismes (1)
• Selon la nature de la représentation (procédurale ou déclarative)
• Classification de Laurrière
1. Automates finis
2. Programmes
3. Scripts
4. Réseaux sémantiques
5. Frames
6. Graphes, réseaux
7. Spécifications formelles
8. Calcul des prédicats
9. Théorèmes, règles de réécriture
10. Règles de production
11. Phrases en langage naturel
Représentaion de connaissances : les formlismes (2)
• Le choix du formalisme à utiliser dépend à la fois du
domaine d'application, des opérations à mettre en oeuvre
sur ces connaissances (type de problème à resoudre) et ...
de la culture du modélisateur.
Définition d'une logique formelle
• Définition 1.1 : D’une façon générale, une logique formelle L
est constituée :
1. d'une famille de formules:
• formules de L sont les objets sur lesquels portent les raisonnements, et
sont habituellement des mots formés sur un certain alphabet
2. d’une notion de preuve :
• raisonnements valides, et sont généralement des suites de formules de L
obéissant à des règles syntaxiques particulières
3. d’une notion de vérité ou sémantique :
• faisant référence à une interprétation à l’aide de structures extérieures au
monde des formules.
• 1 & 2 : Syntaxe de la logique
• 3 : Sémantique de la logique
Définition et syntaxe(1)
• Syntaxe :
– Un ensemble de mot représentant des propositions atomiques
notées par Xi....
– Des connecteurs
•
•
•
•
•
• Séparateurs : les parenthèse avec la notion de porté classique ()
– les formules propositionnelles L* , F, G,... Obéit à la syntaxe suivante :
• S:: P|...|Q| (F)|(FG) | (F G) | (FG) | (FG)
– On designe par L* l'ensemble des formules produites par cette
grammaire.
Définition et syntaxe(2)
• Proposition 1.1: Pour montrer qu’une propriété P est vraie pour toute
formule propositionnelle, il suffit de montrer
● que P est vraie pour toute variable Xi
– que, si P est vraie pour F, alors elle est vraie aussi pour ¬F,
– et que, si P est vraie pour F et G, alors elle est vraie aussi pour F∧G, F∨G,
F⇒G, et F⇔G.
• Par exemple, on déduit de ce qui précède que toute formule qui n’est pas
une variable s’écrit de façon unique (aux parenthèses près) sous la forme
¬F, ou F∧G, ou F∨G, ou FG, ou FG.
• De cette unicité résulte que, pour définir une application f sur les formules
propositionnelles, il suffit de définir f(Xi), puis de définir f(F∧G), . . . , f(F
G) en fonction de f(F) et f(G). Par exemple, on construit ainsi l’ensemble
Var(F) des variables apparaissant dans une formule, défini par :
– Var(Xi)={Xi}, Var(¬ F) = Var(F)
– Var (F * G)=Var(F) Var (G) avec *={¬F, ou F∧G, ou F∨G, ou FG, ou FG}
Preuve : objectif
• L'objectif de la théorie de la preuve est de donner une
caractérisation finie des formules valides, en se basant sur un
(petit) ensemble de `vérités premières : les axiomes, et un
(petit) ensemble de règles permettant de produire toutes les
vérités :les règles d'inférence. (saturation des connaissances
implicites)
Preuve : axiomes (1)
• D éfinition 1.2: L'ensem ble des s ous- form ules d'une form ule A
est le plus petit ensemble tel que
– B est une sous-formule de A.
– Si (B) est une sous-formule de A alors B est une sous-formule de A.
– Si (B C) est une sous-formule de A alors B et C sont des sous-formules de A.
– Si (B v C) est une sous-formule de A alors B et C sont des sous-formules de A.
– Si (B - > C) est une sous-formule de A alors B et C sont des sous-formules de A.
• Définition 1.3: Une substitution (ou substitution uniforme) associe à
une variable propositionnelle p une formule A . Elle est notée
[p\A].L'application de [p\A] à une formule B , notée (B)[p\A], est le
résultat du remplacement simultané de toutes les occurrences de p
dans B par A. (A)[p\B] est appelé une instance de A.
Preuve : Axiomes (de Hilbert) (2)
• Axiomes:
1) A - > (B - > A)
2) (A - > B) - > ((A - > (B - > C)) - > (A - > C))
3) A - > (B - > A B)
4) (A B) - > A
5) (A B) - > B
6) A - > A v B
7) B - > A v B
8) (A - > C) - > ((B - > C) - > (A v B - > C))
9) (A - > B) - > ((A - > ~B) - > ~A)
10) A - > A
Règle d'inférence
• Il existe plusieurs schémas de déduction, ou syllogismes, dans
le raisonnement naturel. Les preuves par coupure sont
définies par référence à un unique schéma, la coupure, ou
modus ponens.
• Définition (règle inférence): Soient F, G, H des formules
propositionnelles. On dit que H est déduite par inférence à
partir de F et G si G est la formule F ->H.
• Par exemple, supposons F = X1v X2 et G = (X1v X2)⇒X1.
Alors X1 se déduit par coupure à partir de F et G.
La preuve (suite)
• Définition (preuve). Soit A une formule. Une preuve de A est une liste finie
de formules (A1, ... ,An) t.q.
– An = A
– pour i = 1, ..., n, la formule Ai est
• soit l'instance d'un axiome,
• soit obtenue par application de la règle de Modus Ponens à partir de deux
prémisses Aj, Ak précédant Ai dans la liste.
• Définition (déduction) : Une déduction d'une formule A à partir d'hypothèses
B1,...,Bm (noté B1,...,Bm |- A) est une liste finie de formules (A1, ... ,An) t.q.
– An = A
– pour i = 1, ...,n, la formule Ai est
• soit un axiome,
• soit égal à une des hypothèses Bj,
• soit obtenue par application de la règle de Modus Ponens à partir de deux
prémisses Aj, Ak précédant Ai dans la liste.
Exemple de preuve
• Exemples de preuve
– Preuve de A -> A :
1. A -> (A -> A)
instance de A -> (B -> A)
2. (A -> (A -> A)) -> ((A -> ((A -> A) -> A)) -> (A -> A))
instance de (A -> B) -> ((A -> (B -> C)) -> (A -> C))
3. ((A -> ((A -> A) -> A)) -> (A -> A))
obtenue par Modus Ponens à partir de 1. et 2.
4. A -> ((A -> A) -> A)
instance de A -> (B -> A)
5. A -> A
obtenue par Modus Ponens à partir de 3. et 4.
Sémantique
• Définir une sémantique pour une logique, (ou pour un formalisme en
général) c’est attacher à chaque formule (ou toute production du
formalisme) une interprétation faisant référence à un contexte externe. Ici le
domaine de discours qu'on veut modéliser.
• Le but de la logique propositionnelle est de modéliser le raisonnement
naturel — ou tout au moins l’un des aspects de celui-ci, sur des valeurs de
vérité des propositions.
– Attribuer une valeur de vérité qui est soit « vrai » ou « faux » à une
formule atomique donnée.
– Attribuer une fonctionn de vérité des connecteurs par rapport au
raisonnement naturel qu'ils sont supposés mimer (table de vérité).
Grâce à la proposition 1.1
=> on peut claculer la valeur de vérité de n'importe quelle formule
Interprétation ou affectation
• On appelle affectation de valeurs booléennes, ou simplement affectation,
pour une formule propositionnelle F une fonction v de Var∗ dans {0, 1} dont
le domaine inclut Var(F) ; l'évaluation de F en v, notée evalv(F), est alors
définie récursivement par les clauses
– evalv(Xi) = v(Xi), evalv(¬F) = f¬(evalv(F)), evalv(F c G) = fc(evalv(F),
evalv(G)),
Satisfaction, validité, équivalence, conséquence
• Soit L une logique
– F et G deux formules de la logiques et T une famille de formule.
– Soit la classe de toutes les interprétations (affectation) possible avec v
une affectation des instance d'interprétation (v )
• Statisfaisabilité: v |= F ssi evalv(F) = « vrai » .
• Validité : |= F ssi v |= F pour toute affection v de .
• Equivalence et conséquence :
– F, G sont équivalentes si v |= F équivaut à v |= G;
– G est conséquence de F si v |= F entraîne v |= G.
• Par exemple, la formule X∨¬X est valide, puisque satisfaite par toute
affectation
Complétude et correction
• Notez que le système de preuve est interne aux syntaxes
– Axiomes syntaxique + règle d'inférences (pas interprétation)
• Une sémantique est données pour les propositions ainsi que pour
les connecteurs en fonction d'un raisonnement naturel qu'on veut
capter.
• Notez également que la validité (etc.) fait appel au monde externe,
les interprétations.
• Il est essentiel pour l'automatisation du raisonement que ces deux
mondes duaux soient conformes l'un vers l'autre. Deux proprités :
– Correction : tous ce qui est syntaxiquement porouvable doit être valide :
“|- F entraîne |=F”
– Complétude : tout ce qui est valide doit être prouvable “|=F entraine |-F”
Recentrons nos propos
exploitation modélisation
connaissance
L={formule}
description du domaine
base des règles
Représentation
de la situation
concerne
expert
BF
question raisonnement
réponse (moteur d'inférence)
Utilisateur
Représentation Domaine
de la situation Entités
(propositionnelle)
•relation entre entités
situation
Question sur la
situation observée?
Exemple
rhizome phanérogame
fleur
graine
dicotylédone
1-
cotylédone monocotylédone
dicotylédone
........
Expert en botanique
Exemple : expert en botanique(2)
• L'Expert peut voir les choses comme suit :
• Les plantes ont des propriétés (présentes (vrai) ou absentes (faux)
– Exemple :
• À fleur ou sans fleur
• À graine ou sans graine
• Pour celles qui sont à graine on distingue : graine nue et graine enveloppée
• Les plantes sont classées selon leurs propriétés :
– Exemple :
• Si une plante a des fleurs et des graines, elle appartient à la famille des
phanérogames.
• Etc.
• On a des propositions qui décrivent des entités ainsi que des règles
qui régissent le lien entre des phrases (ou des formules sur les
propositions).
Exemple : expert en botanique
J'ai une plante qui a
une fleur et elle produit
des graines aussi est
ce c'est une
phanérogame ?
Fleur graine
phanérogame
graine, fleur,
graine,fleur grain, fleur
phanérogame
pas1
fleur graine phanérogame,
fleurgraine
J'ai une plante qui
a une fleur et elle
produit des graines Modus pas2
aussi qu'est ce que
vous pouvez me ponens fleur graine phanérogame,
fleurgraine, phanérogame
dire?
Systèmes experts propositionnels
• Un système expert = Base de connaissances + moteur d'inférence:
• Une base de connaissances elle-même composée :
– d'une base de règles qui modélise la connaissance du domaine
considéré ;
– d'une base de faits qui contient les informations concernant le cas en
cours de traitement.
• Moteur d'inférence :
– Un module qui implémente des algorithmes capables de raisonner à
partir des informations contenues dans la base de connaissances, de
faire des déductions, etc.
• L'objectif est de résoudre des problèmes. Les données du problème
sont les observations (les faits) et on veut expliciter et déduire ce
qui est implicite dans les rè gles => modus ponens
Systèmes experts propositionnels : les règles(1)
• Elle rassemble la connaissance et le savoir-faire de l'expert. Elle
n'évolue donc pas au cours d'une session de travail.
• Une règle est de la forme:
<conjonction de formule> <conclusion>
où les conclusions sont de la forme
<Fait> = <valeur>.
• Exemples :
– si population > 200000 et ville-universitaire alors cinémaArtEtEssai=vrai
– si revenu-imposable = connu et quotient-familial = connu alors
calculerMontantImpot=vrai
Le dernier exemple montre comment un système expert peut être utilisé
en association avec des programmes classiques.
On peut supposer que le passage à la valeur vrai du fait booléen
calculerMontantImpot déclenche une procédure calculant le montant
de l'impôt en question en l'attribuant au fait réel MontantImpôt.
Systèmes experts propositionnels : les règles(2)
• La signification logique est la conjonction de la
signification logique de chacune des règles. En
particulier, on peut aisément coder dans le formalisme
précédent des règles de la forme :
– si A ou B alors C
ou
– si A alors B et C
Attention ! n'en est pas de même pour : si A alors B ou C
• Règle déclenchable : une règle est déclenchable quand la
pré-condition est évaluée à vrai en accord avec
l'interprétation donnée dans la base de faits.
La base de faits
• Constituée des formules (les faits) dont le contenu
(valeur de vérité) est connu par le système (ou
l'utilisateur).
• Les faits sont une interprétation qui correspond à une
instance du domaine (ou cas) considéré.
• C'est un espace de travail, modifié par les nouveaux faits
déduits lors du raisonnement. Toute formule déduite ou
prouvée est considérée comme un fait.
Moteur d'inférence
• Essentiellement un raisonnement par règles d'inférence
(modus ponens).
• On désigne par :
– BR un ensemble de règles.
– BF un ensemble de faits.
– Et F un fait à prouver (appelé but)
• Une moteur d'inférence doit répondre à :
– BR U BF |- F ?
En utilisant les règles d'inférences.
Trois algorithmes d'inférence : R U F |= G ?
• On distingue essentiellement trois modes
principaux de fonctionnement des
moteurs d'inférences :
– le chaînage avant
– le chaînage arrière
– le chaînage mixte
Chaînage avant
• pour déduire un fait particulier:
• on déclenche les règles dont les prémisses sont connues
• jusqu'à
– ce que le fait à déduire soit également connu
– ou qu'aucune règle ne soit plus déclenchable.
ALGORITHME DU CHAINAGE AVANT
ENTREE : BF, BR, F
DEBUT
TANT QUE F n'est pas dans BF ET
QU'il existe dans BR une règle applicable FAIRE
choisir une règle applicable R (étape de résolution de
conflits, utilisation d'heuristiques, de métarègles)
BR = BR - R (désactivation de R)
BF = BF union concl(R) (déclenchement de la règle R, sa
conclusion est rajoutée à la base de faits)
FIN DU TANT QUE
SI F appartient à BF ALORS
F est établi
SINON
F n'est pas établi
Exercices
a) fleur graine phanérogame
b) phanérogame graine-nue sapin
c) phanérogame 1-cotylédone monocotylédone
d) phanérogame 2-cotylédone dicotylédone
e) monocotylédone rhizome muguet
f) dicotylédone anémone
g) monocotylédone rhizome lilas
h) feuille fleur cryptogame
i) cryptogame racine mousse
j) cryptogame racine fougère
k) feuille plante thallophyte
l) thallophyte chlorophylle algue
m) thallophyte chlorophylle champignon
n) feuille fleur plante colibacille
déterminer la plante ayant les caractéristiques suivantes: rhizome, fleur,
graine, 1-cotylédone?
Exercices
Déterminer la plante ayant les caractéristiques suivantes: rhizome, fleur, graine, 1-
cotylédone?
Cela singifie que {rhizome, fleur, graine, 1-cotylédone} est la base de
faits initiale.
• En chaînage avant, on obtient la chaîne de dérivation suivante :
a ) - - > phanérograme
c) - - > monocotylédone
e) - - > muguet
Les autres règles ne se déclenchent pas.
Que se passe-t-il si d’autres règles se déclenchent ?
Chaînage avant : propriété
• Cet algorithme peut être très pénalisant pour certaines
bases
• L'algorithme de chaînage avant s'arrête toujours
– si l'on utilise des règles dont les conclusions peuvent être des
faits négatifs, pour tout fait F, il peut se produire 4 situations :
• F BF : le fait est établi.
• ¬ F BF : la négation du fait est établie.
• ni F, ni ¬ F ne sont dans BF : le système ne déduit rien à propos
du fait. C'est une troisième valeur de vérité qui apparaît
naturellement et dont l'interprétation peut être diverse selon les
cas.
• F et ¬ F Î BF : la base est incohérente. On peut prévoir un fait
Base_incohérente et une méta-règle de la forme : s’il existe un
fait et que sa négation qui appartiennent à BF alors
Base_incohérente.
Chaînage arrière
• Le mécanisme de chaînage arrière consiste à partir du fait que
l'on souhaite établir, à rechercher toutes les règles qui
concluent sur ce fait, à établir la liste des faits qu'il suffit de
prouver pour qu'elles puissent se déclencher puis à appliquer
récursivement le même mécanisme aux faits contenus dans
ces listes.
• Ces faits deviennent à leur tour des faits à démontrer. La
récurssion s'arrête quand le but à établir appartient à la base
des faits.
Arbre E T- O U
• Soit BF = {B,C},
Fait = H et BR composée des règles :
– B D E F
– G D A
– C F A
– B X
– D E
– XA H
– C D
– XC A
– XB D
Algorithme de chaînage
• Problème de terminaison
– S'il n'a pas de mémoire avec deux règles récursives, deux faits
apparaissant l'un et l'autre dans les pré-condition/conclusion
mutuelles.
• Avantages le chaînage arrière
– Gain en rapidité : on ne déclenche que les règles qui ont un
rapport de dépendance avec le fait à prouver
– constitue une approche intéressante pour définir des systèmes
d'interaction puissants avec l'utilisateur
• Principes: définir des faits comme « demandables » (i.e on peut
demander les valeur de vérité à l'utilisateur.
• Si on a un fait à prouver :
– On régresse ce fait et on favorise les règle où les conditions contiennent
le plus de faits « demandables » ou encore des but avec des faits
« demandables ».
– Ceci permet de calculer l'ensemble minimal des questions pertinentes
pour prouver des faits.
Chaînage arrière avec fait demandable
– BC A
– D E A
– FG A
– I J G
– J ¬ E
• On suppose que les faits B, D, F et I sont les seuls faits
demandables.
• La m ém oire de travail est initialisée avec l'information J est
vrai.
• La question posée au système est : A est-il vrai ? Quelles sont
les questions pertinentes à poser à l'utilisateur ?
Chaînage arrière avec fait demandable
– BC A
– D E A
– FG A
– I J G
– J ¬ E
– “B est-il vrai” n'est pas un question pertinente.
• aucune règle ne conclut sur le fait C qui n'est pas non plus
demandable.
• le fait B ne peut être utilisé que conjointement à C, la valeur de
vérité de B n'apportera aucune information sur celle de A
– “D est-il vrai” n'est pas non plus pertinente. En effet, comme on sait que
Jest vrai, que cela implique que E est faux et que D n'est utilisé que
conjointement à E.
– “F est-il vrai” est pertinente. En effet, le fait G est encore déductible.
Mais si la réponse à cette question est NON,
– “I est-il vrai” n'est plus pertinente car la valeur de G ne sert plus à rien