Vous êtes sur la page 1sur 6

Intelligence Artificielle NFP106

Anne 2012-2013

Systmes Experts
"Un systme expert est un programme conu pour simuler le comportement d'un
humain qui est un spcialiste ou un expert dans un domaine trs restreint" P.
Denning!(1986)

Systme expert est un programme :


! Incorporant la fois
des connaissances formelles
des jugements personnels de l'expert (sous forme d'heuristiques)

Systmes experts

! Expliquant la fois
le raisonnement conduisant aux rponses aux questions
le savoir qu'il contient
! Capable d'incorporer du nouveau savoir dans le savoir existant de
manire incrmentale
! Sparant
!les connaissances,
!le contrle (moyen d'utiliser les connaissances)
! "Dialoguant" (systmes volus) avec l'utilisateur dans un langage
proche du sien (langue naturelle, "jargon" du domaine)

F.-Y. VILLEMIN!
CNAM-CEDRIC
http://deptinfo.cnam.fr

F.-Y. Villemin 2012!

2!

Principes actuels de construction

Schma d'un systme expert

Credo de E. Feigenbaum (1977) :


! la puissance du systme rside dans son savoir
Donnes et
questions

! le savoir est souvent mal-spcifi

EXPERT

! les amateurs deviennent des experts incrmentallement

Rponses et
explications

! les systmes experts doivent tre flexibles

Donnes et
questions

! les systmes experts doivent tre transparents


UTILISATEUR

Principes architecturaux :

Rponses et
explications

! sparer le moteur d'infrence de la base de connaissances

INTERFACE :
LANGAGE
EXTERNE
/
LANGAGE
INTERNE

ACQUISITION
DE
CONNAISSANCES

RESOLUTION
DES PROBLEMES
+ EXPLICATION

BASE DE CONNAISSANCES

Connaissances

! le savoir est souvent inexact, incomplet

! utiliser le mode de reprsentation le plus uniforme possible


! garder le moteur d'infrence simple
! exploiter la redondance
F.-Y. Villemin 2012!

3!

F.-Y. Villemin 2012!

4!

Types de problmes traiter

Exemple d'un systme expert (1)

!!Donnes non sres ou incompltes

(N.B. cet exemple, de H. Gallaire, n'a pas la prcision d'une expertise mdicale)

!!Savoir non sr ou incomplet

MR1!!S'il y a des ruptions ou des rougeurs alors envisager: R1, R2, R3, R4

!!Donnes variant avec le temps

MR2!!Si le patient est une femme adulte et si R1, R2, R3, R4 sont envisages alors
R1 est prioritaire

!!Trs nombreuses solutions plausibles

MR3!!Si le patient est un adolescent ou un enfant et si R1, R2, R3, R4 sont


envisages alors R4 est peu probable

!!Interaction de sous-problmes
!!Besoin de plusieurs reprsentations

MR4!!Si deux rgles sont galement probables alors prendre en priorit celle qui a le
plus de conditions

!!Connaissances de divers types

R1!!Si la fivre est faible, la peau sche, s'il y a des ganglions, pas de pustules ni de
rhume alors envisager la rubole

!!Besoin d'inventer des tats

R2!!Si les boutons sont isols et dmangent beaucoup avec une faible fivre, et si la
crote apparat vite sur les pustules ou les vsicules alors envisager fortement la
varicelle

!!Plusieurs raisonnements envisager

R3!!S'il y a rhume, mal aux yeux, taches roses dans la gorge, boutons en taches,
fivre forte alors envisager la rougeole

F.-Y. Villemin 2012!

5!

R4!!S'il y a amygdales rouges, desquamation, forte fivre, taches rouge vif alors
envisager la scarlatine
F.-Y. Villemin 2012!

Exemple d'un systme expert (2)

6!

Exemple d'un systme expert (3)


Moteur

BASE DE FAITS
R1
R2
R3
R4
....

cycle!
Dtection des mtargles applicables, puis les rgles
applicables (par mtargles)!
Choix d'une rgle!
Application!

INTERPRETE

Excution!
Base de faits: patient adulte femme, rougeurs, fivre faible

MR1
MR2
MR3
MR4
....
BASE DE CONNAISSANCES

F.-Y. Villemin 2012!

7!

Pas 1 : mtargles intressantes : MR1, MR2, MR4; slectionner MR1


Pas 2 : par MR1 l'interprte slectionne R1, R2, R3, R4
Pas 3 : la base de faits est utilise pour prslectionner: R1 et R2
Pas 4 : MR2 suggre d'utiliser R1(mais R2 reste slectionnable)
question pose l'utilisateur : pustules ?
supposons une rponse positive : R2 reste slectionnable, mais R1 est
limine !! varicelle
F.-Y. Villemin 2012!

8!

Exemple d'un systme expert (4)

Critiques des systmes experts actuels


Critres de R. Davis (1982) ! Caractristiques attendues d'un systme
expert!:
! rsoudre le problme
! expliquer le rsultat
! apprendre
! restructurer son savoir
! "casser" les rgles
! dterminer la pertinence de ses rponses
! se dgrader lentement aux limites de son domaine

fievre
faible

forte
patient adulte femme
oui

boutons ou taches

non

demangeaison forte
oui

boutons

taches
rhume
oui

non

oui

non

Bilan de B. Buchanan (1982) :


! domaine d'expertise trs troit
! comportement "fragile" aux frontires du domaine
! langage de reprsentation de connaissances trs limit
! entre-sortie limites
! explications rduites
! base de connaissances fonde sur un seul expert ("knowledge czar")

mal aux yeux


non

rougeole

F.-Y. Villemin 2012!

9!

F.-Y. Villemin 2012!

Typologie des systmes experts

Systmes experts gnriques


"Les bons travaux en IA concernent l'automatisation des choses que nous savons
faire, et non l'automatisation de choses que nous aimerions savoir faire" D. Perlis
(1986)

Systmes superficiels
! conus pour avoir grande vitesse d'excution (conclusions en un petit
nombre d'tapes)
! connaissances principalement empiriques ou compiles
! bon rsultat dans leur domaine propre, mauvais rsultats en dehors
Exemple : MYCIN (fonctionnement simulant le comportement d'un mdecin
face un malade et des rsultats d'analyses)
Systmes profonds
! conclusions drivant des principes premiers d un modle des phnomnes
et du domaine
! solutions sont gnralement longues obtenir (rsultats paraissant
souvent non-triviaux aux observateurs)
Exemple : SOPHIE de J. S. Brown & de J. Kleer (utilise la physique
qualitative pour prdire le comportement rel d'un systme physique)
F.-Y. Villemin 2012!

10!

11!

Intuitivement, pour tout domaine, types de connaissances et des mcanismes de


raisonnement communs en :
! !diagnostic
! !conception
! !identification
! !classement de donnes...
!!notions de:
! !Tches gnriques (Chandrasekaran)
! !Structures d infrence (Clancey)
But:
! !Dterminer les invariants
! !Programmer d'avance ces invariants
! !Mthodes de vrification des systmes en rfrence au modle
F.-Y. Villemin 2012!

12!

Problmes relevant des systmes experts

Analyse et synthse des systmes!

D'aprs Hayes-Roth, Waterman et Lenat: Building Expert Systems

Interprter

Interprtation:!Identifier des donnes partir de leurs descriptions: DENDRAL


(Buchanan-Feigenbaum)

ANALYSE

Identifier /
Reconnatre

Diagnostic:!Dterminer les fautes partir de donnes: MYCIN (Shortliffe)


Prdiction:!Dterminer les consquences plausibles en fonction du prsent et du pass
Monitoring:!Dterminer si des donnes sont nominales: VM (Fagan)
Planification:!Concevoir une suite d'actions: MOLGEN (Stefik)

Prdire /
Simuler

Monitorer /
Auditer /
Vrifier

Contrler

Diagnostiquer /
Dboguer

Conception: Spcifier un objet tant donnes des contraintes: ISIS (Fox)

Construire

Dbogage:!Prvoir la rectification d'une erreur: PROUST (Kant)

SYNTHESE

Rparation:!Planifier une solution de secours


Instruction:!Diagnostiquer, dboguer et rparer l'attitude d'un tudiant

Spcifier /
Contraindre

Contrle:!Interprter, prdire, rparer et guider le comportement d'un systme

F.-Y. Villemin 2012!

13!

Analyse et synthse des systmes

Systme comme!
objets en interaction!

Configurer
(structure)

Assembler /
Fabriquer
Modifier /
Rparer
Planifier
(processus)

14!

Algorithme gnrique de diagnostic GSC


R. Reggia, D. Nau & H. Wang (1983)

Configuration!
Entre!
!

F.-Y. Villemin 2012!

Concevoir

Soit un systme avec:

Sortie!

! M!"!ensemble de toutes les manifestations observables


! F!"!ensemble de toutes les fautes (pannes, disfonctionnements)
possibles

! C, (C # F $ 2M), l'ensemble de toutes les causes

Entre

Planification

Systme
Transformation
comme une suite d'actions

Sortie

cause c!%!C c!=!<f,!{m1,!,!mn}> avec f!%!F et m1, , mn!%!M


fonction Manif , Manif : 2F!!!2M,

Systme
transform

ensemble des manifestation associes un ensemble de fautes par C


fonction Cause , Cause : 2M!!!2F
ensemble des fautes tel que l'une puisse causer au moins l'une des
manifestations

Configuration (statique) et planification (dynamique)


F.-Y. Villemin 2012!

15!

F.-Y. Villemin 2012!

16!

Diagnostic de Fautes Multiples

Algorithme GSC

Problme du diagnostic d un systme:

Procdure GSC (in S : ensemble de manifestations observables, ex D :


ensemble de fautes);!
Var Obs : ensemble de manifestations observables, m :
manifestation observable;!
Fautexclues, Hypothses, Explic : ensemble de fautes;!
Dbut!
Obs := ; /* Obs est le sous-ensemble de S examin*/!
Causexclues := ; /* Fautexclues sous-ensemble de F qui ne peut
tre retenu */!
Hypothses := ; /* Hypothses sous-ensemble de F */!
tantque Obs S faire!
prendre une manistestation m dans S - Obs; !
ajouter m Obs; /* m peut ne pas tre un disfonctionnement */!
dterminer Explic = Cause (m); !
si panne(m) alors ajouter Explic Fautexclues is;!
ajuster Hypothses Explic et m!
fait;!
D:= premier lment de Hypothses !/* D ! diagnostic */!
Fin!

!S, (S!#!M), ensemble de tous les symptmes


&

&!!dterminer D, (D!#!F), tel que:


! D est tel que S # manif (D)
! D!#!Cause (S)
! D est de cardinalit minimale

Principe du Rasoir d'Occam: "ne rien supposer qui ne soit


strictement ncessaire"
!D!"!diagnostic du systme {F, M, C} pour S
F.-Y. Villemin 2012!

17!

F.-Y. Villemin 2012!

18!

Algorithme GSC

Exemple

Les auteurs ont remarqu que les experts savent que :


certaines fautes s'excluent les unes les autres
hypothse H: soit f1, soit f2 est vraie et combine soit f3, soit f4
&!!hypothse H est crite en utilisant des gnrateurs:
H = {{f1, f2}X{f3, f4}}

"
"

{f1, f2} signifie soit f1, soit f2

certaines fautes sont plus probables que d'autres


&!!fautes ordonnes dans les gnrateurs (les plus probables d'abord)

!
"

Exemple d'ajustement de l'hypothse H:


hypothse H = {{f1, f2, f3, f4}}
lment accommoder {f1, f3, f5}
!!H devient:
(cas faute) H = {{f1, f3} et {f2, f4}X{f5}} (ici f1 prfre f3)

Ai!"!additionneurs
Mj!"!multiplicateurs
Mesures aux bornes supposes correctes :
! 3, " 4, # 5, $ 32, % 61, &!29, ' 27, ( 20
Pas de problme de fils

(cas normale) H = {{f2, f4}} (f1 et f3 exclus)


F.-Y. Villemin 2012!

!A1

19!

F.-Y. Villemin 2012!

20!

Exemple

Fonctionnement
Au dbut : Obs = {}; Fautexclues = {}; Hypothse = {}

Ensemble F des malfonctions possibles (X!"!circuit X dfectueux):


{ M1, M2, M3, A1, A2, A3, A4}

(1) Sortie 4 correcte


!!Obs = { 4}; Cause(4) = {M1 & M3 & A1} (ngation de la cause);
Fautexclues = {M1, M3, A1}; Hypothse = {}

Ensemble S des disfonctionnement observable (X!"!sortie X dfectueuse):


{{ 4} { 5} { 6} { 7} {8}}
Table des causes
M1
M2
M3
A1
A2
A3
A4

C
|
|
|
|
|
|
|

Table de causalit (transpose


4
| { M1}, {
5
| { M1}, {
6
| { M1}, {
7
| { M1}, {
8
| { M3}
F.-Y. Villemin 2012!

(2) Sortie 5 incorrecte


!!Obs = { 5}; Cause( 5) = { M1, M2, M3, A1, A2, A4};
Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2, A4}} car M1 & M3 & A1

ou fonction Manif (","!"!ou):


4 & 5 & 6 & 7
5 & 6 & 7
4 & 5 & 7 & 8
4 & 5
5 & 6 & 7
7
5
de la
M3},
M2},
M2},
M2},

(3) Sortie 6 incorrecte


!!Obs = { 6}; Cause( 6) = { M1, M2, A2};
Fautexclues = {M1, M3, A1}; Hypothse = {{!M2, A2} & {!M2, A2}X{ A4}}
(4) Sortie 7 incorrecte
!!Obs = { 7}; Cause( 7) = { M1, M2, M3, A2, A3};
Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2} & { M2, A2}X{!A4}X{ A3}}

prcdente) ou fonction Cause :


{ A1}
{ M3}, { A1}, { A2}, { A4}
{ A2}
{ M3}, { A2}, { A3}

(5) Sortie 8 correcte


!!Obs = { 8}; Cause(8) = {M3} (ngation de la cause, aucune information nouvelle);
Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2} & { M2, A2}X{!A4}X{ A3}}
Interprtation, deux diagnostics minimaux:
soit A2 est en panne
soit M2 est en panne
21!

F.-Y. Villemin 2012!

22!

Vous aimerez peut-être aussi