Vous êtes sur la page 1sur 19

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Sommaire
LES PRINCIPES DE BASE.............................................................................................3
EN QUOI CONSISTE UN SYSTME EXPERT ?..............................................................................3
A QUOI SERT UN SYSTME EXPERT ?.....................................................................................3
QUELS SONT LES PRINCIPES DE BASE ?..................................................................................3
Que faut-il savoir sur les systmes experts ?..............................................................3
Quel est le problme ?.............................................................................................4
Quel est le rle de l'expert ?.....................................................................................4
Quelles doivent tre les caractristiques des connaissances ?.......................................4
En quoi consiste lexplication du raisonnement ?.........................................................4
Quelles sont les applications dun systme expert ?.....................................................4
Quelles sont les diffrences dun systme expert par rapport aux autres logiciels ?.........5
Quelle est lorganisation de base ?.............................................................................5
QUEL EST LE CYCLE DE BASE D'UN SYSTME EXPERT ?................................................................6
En quoi consiste lvaluation ?..................................................................................6
En quoi consiste lexcution ?..................................................................................6
EN QUOI SE DIFFRENCIENT LES SYSTMES EXPERTS ?................................................................7
Quels sont les diffrents niveaux de faits ?.................................................................7
Quels sont les diffrents types de rgles ?..................................................................7
QUEL EST LALGORITHME UTILIS ?.......................................................................................8
Quest-ce que la base de connaissances ?..................................................................8
Quest-ce que le dmonstrateur de thormes (ou moteur d'infrences) ?.....................8
Quelles sont les techniques de dmonstration de thorme ?.......................................8
Quelles sont les tapes lors de lexcution dun systme expert ?.................................8
QUELLE EST LIDE PRINCIPALE ?.........................................................................................8
QUES-CE QUUNE PROPOSITION ?........................................................................................9
QUELLE EST LA STRUCTURE DU PROGRAMME ?..........................................................................9
En quoi consiste le chanage avant ?........................................................................10
En quoi consiste le chanage arrire ?......................................................................10
QUEL EST LALGORITHME PRINCIPAL ?..................................................................................11
QUEL EST LALGORITHME DE LA VRIFICATION (TAPE 1 DE L'ALGORITHME PRINCIPAL) ?......................11
QUEL EST LALGORITHME DE DMONSTRATION (TAPE 2 DE L'ALGORITHME DE VRIFICATION) ?.............11
QUELS SONT LES TYPES DE CONNAISSANCES ?.......................................................................13
Quelles sont les caractristiques des connaissances ?................................................13
Quest-ce quune connaissance de nature heuristique ?..............................................13
Quest-ce quune connaissance de nature procdurale (mta-connaissance) ?..............13
Quest-ce quune connaissance factuelle ?................................................................13
Quels sont les domaines d'application ?....................................................................13
QUELS SONT LES CONSTITUANTS ?.....................................................................................14
Quest-ce quune base de connaissances ?................................................................14
Quest-ce quun dictionnaire ?.................................................................................14
QU'EST-CE QU'UNE BASE DE FAITS ?...................................................................................14
Quest-ce quun fait demandable ?...........................................................................14
Quest-ce quun fait affichable ?..............................................................................14
Quest-ce quune base de faits ?..............................................................................14
Quest-ce quun but ?.............................................................................................14
QUEST-CE QUUN MOTEUR D'INFRENCE ?............................................................................15
Quest-ce que le moteur 0 ?....................................................................................15
Quest-ce que le moteur 1/2 ?.................................................................................15
Quest-ce que le moteur 1 ?....................................................................................15
1

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


Quest-ce que le moteur 2 ?....................................................................................15
Quest-ce que le moteur 3 ?....................................................................................15
Quelle est la syntaxe des rgles associes un moteur 0 ?........................................15
QUELLES SONT LES STRATGIES DE RSOLUTION ET RGLES DE DDUCTION ?..................................16
En quoi consiste le chainage avant ?........................................................................16
En quoi consiste le chainage arrire ?......................................................................18
Quels rapports entre le chainage avant et le chainage arrire ?..................................19
QUELLES SONT LES RGLES DE DDUCTION ?.........................................................................19
Quest-ce que la rgle du modus ponens ?................................................................19
Quest-ce que la rgle du modus tollens ?................................................................19

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Les principes de base

En quoi consiste un systme expert ?


Les systmes experts servent la reprsentation des mcanismes gnraux
de raisonnement dans des domaines particuliers.
Des informaticiens et des experts crent une partie programme et une partie
connaissances spares.

A quoi sert un systme expert ?


Le but du systme expert est la reconstitution du raisonnement humain (aide
au dpannage,...)

Quels sont les principes de base ?


Que faut-il savoir sur les systmes experts ?
L'laboration d'un systme expert ncessite l'analyse des comportements
humains. Mais certains problmes viennent encore se greffer cette
premire difficult.
Un systme expert fait appel trois tapes :

L'expert du domaine d'application doit dcrire l'ensemble des faits


dcrivant l'univers considr.

L'utilisateur final doit dfinir du problme pos.

Elaborer le dmonstrateur de thormes, ou moteur d'infrences.


Le systme de traitement sera ainsi constitu.

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


Quel est le problme ?
Un problme se pose. C'est celui des rgles non explicites : Tout le monde
le sait ... .
Il existe de nombreuses difficults :

lments relatifs au temps

degr de certitude

dgager des sous-buts l'intrieur des buts, ... afin de faciliter la


constitution du moteur d'infrences

le logiciel doit avoir de bonnes capacits conversationnelles

prvoir la possibilit de montrer l'utilisateur le chemin logique


suivi

prvoir galement le support d'interfaces agrables pour les


experts

Quel est le rle de l'expert ?


Explication de ses connaissances et de ses stratgies de rsolution
l'informaticien.

Quelles doivent tre les caractristiques des connaissances ?

dclaratives (spares du programme)

lisibles (exprimes en langage clair)

facilement examinables

=> maintenance sans informaticien

En quoi consiste lexplication du raisonnement ?


Le systme expert montre les infrences successives qu'il fait pour aboutir
aux conclusions qu'il donne.
=> l'utilisateur a confiance en l'ordinateur

Quelles sont les applications dun systme expert ?

aide des non spcialistes

formations

sauvegarde de l'expertise des experts rares

=> mta-connaissances (des connaissances sur les connaissances)

Bruno Delb

Date : 27/10/1999

http://www.brunodelb.com

Les systmes experts


Quelles sont les diffrences dun systme expert par rapport aux
autres logiciels ?
Ce qui diffrencie les systmes experts des autres logiciels :

contiennent des connaissances importantes non algorithmiques


sous forme de rgles granules indpendants, associatifs, dans un
langage proche du langage de l'expert, modifiable facilement

explication du raisonnement et justification des rsultats

parfois possibilit de traiter


imprvues

des informations incertaines ou

L'intrt rside donc dans :

facilit d'accs des connaissances chres et rares

prservation des connaissances qui pourraient disparatre

unification des connaissances

Quelle est lorganisation de base ?


Il existe deux types d'utilisateurs :

les utilisateurs experts (qui peuvent augmenter la base de


connaissances)

les utilisateurs ordinaires (qui peuvent que consulter la base de


connaissances)

Les composants de base d'un SE (Systme Expert) sont :

langage d'expression des connaissances (langages base de


rgles)

base de connaissances (programme) :

base de rgles

base de faits (mmoire de travail)

moteur d'infrence (les bases de fait et de rgle s'enrivchissenet)

fonction de dialogue, d'acquisition de connaissances :

utilisation normale

saisie, modification

facteurs de vrification, de compilation et d'laboration

Les rgles consistent en : Condition de Dclenchement -> Effet


Le filtrage est donc l'opration de comparaison entre la base de faits et la
condition de dclenchement d'une rgle (attention, l'ordre des rgles a des
influences sur le moteur d'infrence).

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Quel est le cycle de base d'un systme expert ?


En quoi consiste lvaluation ?

phase de restriction

R1 C Base de Rgles

F1 C Base de faits

phase de filtrage pour comparaison entre F1 et R1

R2 C R1

phase de rduction du conflit

R3 C R2

En quoi consiste lexcution ?


Condition de Dclenchement -> Action sur la base de faits
Lorsque F3 est vide,

on peut s'arrter (chanage avant)

on peut revenir en arrire (chanage arrire)

reconsidrer la situation antrieure exactement comme elle tait


(donc rvocable)

reconsidrer la situation de la base de rgles mais ne pas


modifier les faits obtenus (donc irrvocable)

La rsolution d'un conflit se fait comme suit :

prendre la premire rgle

faire du back-tracking (prendre la premire rgle non dj


essaye)

On s'arrte :

quand il n'y a plus de but

quand le back-tracking peut tre fait

quand R3 = 0

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


Exemple :
B, C et X sont des faits. H est le fait tablir.
P -> B/D/E
Si P est mon but, alors faire B et me fixer un but comme D et E
/AB -> /D/G
Si mon est A et si j'ai interrog le passion alors me fixer comme but D et G

En quoi se diffrencient les systmes experts ?


Quels sont les diffrents niveaux de faits ?
niveau 1 = le plus lmentaire (A, B, est_grand, est_un_homme)
niveau 2 = (A, B, non A, non B)
niveau 3 = faits symboliques (profession = mdecin)
niveau 4 = possitilit de manipuler des coefficients numriques (taille = 180),
notion de priorit sur les oprateurs (taille = poids * 12 / 100 -5)
niveaux plus levs = variables

Quels sont les diffrents types de rgles ?


"et" est toujours prvu, tandis que "ou" est rarement prvu, car on peut s'en
passer.
taille <= 180

Coefficient de vraissemblance
Il peut varier dans [-1, +1], [0, 1], [-100, +100], ...
Ici, on s'intresse au cas o il varie sur [-1, +1].
On affecte chaque rgle d'un coefficient de vraissemblance (CV).
Les rgles sont dclenches si CV >= seuil.

Les problmes de monotonie


Si on a une base de faits comparer BF1 et BF2, alors (BF1 C BF2)
=>
consquences
(BF1)
C
consquences
(BF2)
Plus on donne d'information, plus on obtient de conclusions.

Moteur d'infrence pour grer des plans


A chaque instant, il y a :

une pile de programme PP

une base de faits BF

un plan qui doit tre gnr

un numro de noeud

Bruno Delb

Date : 27/10/1999

http://www.brunodelb.com

Les systmes experts


Remarques sur ce moteur :

interdiction de dpasser une certaine profondeur pour interdir le


cycle

quand il y a un blocage, on utilise une rgle qui rend ce fait vrai

Quel est lalgorithme utilis ?


Un systme expert est form de deux grandes parties.

Quest-ce que la base de connaissances ?


Elle est constitue en un langage dclaratif et modulaire. Elle doit tre lisible,
indpendante du moteur d'infrence, et enfin conue par et pour l'expert.

Quest-ce que
d'infrences) ?

le

dmonstrateur

de

thormes

(ou

moteur

Son rle est d'appeler et d'utiliser les connaissances. Il doit induire les faits
nouveaux partir de la base de connaissances et de la rgle :
si p vrai et si p => q, alors q est vrai.

Quelles sont les techniques de dmonstration de thorme ?


Il existe deux grandes techniques de dmonstration de thormes :

Le chanage avant.
La base de faits initiale dclenche toutes les rgles dont les
prmisses sont satisfaites. Il y a donc accumulation de faits, ce qui
peut entrainer une saturation.

Le chanage arrire.
On effectue une recherche dans les rgles qui ont le but comme
consquence. Si les prmisses sont satisfaites, alors le but est
atteint. Si les prmisses sont insatisfaites, alors on se fixe un
nouveau but (prmisse insatisfaite).

Quelles sont les tapes lors de lexcution dun systme expert ?


L'excution d'un systme expert doit pouvoir procder en trois tapes :

Dtection.
Il faut ici dterminer les rgles applicables.

Choix.
Il faut ici choisir les rgles qu'il convient d'appliquer.

Dduction.
C'est la mise jour de la base de faits.

Quelle est lide principale ?

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


L'laboration d'un systme expert ncessite l'analyse des comportements
humains. Mais certains problmes viennent encore se greffer cette
premire difficult.
Un systme expert fait appel trois tapes :

l'expert du domaine d'application doit dcrire l'ensemble des faits


dcrivent l'univers considr

L'utilisateur final doit dfinir du problme pos

laboration du dmonstrateur de thormes, ou


d'infrences. Le systme de traitement sera ainsi constitu

moteur

Un problme se pose : c'est celui des rgles non explicites. Tout le monde
le sait ... .

Ques-ce quune proposition ?


A cela viennent s'ajouter encore d'autre difficults :

lments relatifs au temps

degr de certitude

dgager des sous-buts l'intrieur des buts, ... afin de faciliter la


constitution du moteur d'infrences

le logiciel doit avoir de bonnes capacits conversationnelles

prvoir la possibilit de montrer l'utilisateur le chemin logique


suivi

prvoir galement le support d'interfaces agrables pour les


experts

Quelle est la structure du programme ?


Un systme expert est form de deux grandes parties :

la base de connaissances; elle est constitue en un langage


dclaratif et modulaire elle doit tre lisible, indpendante du moteur
d'infrence, et enfin conue par et pour l'expert

le dmonstrateur de thormes (ou moteur d'infrences); son rle


est d'appeler et d'utiliser les connaissance il doit induire les faits
nouveaux partir de la base de connaissances et de la rgle : si
p vrai et si p => q, alors q est vrai.

Il existe deux grandes techniques de dmonstration de thormes.

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


En quoi consiste le chanage avant ?
La base de faits initiale dclenche toutes les rgles dont les prmisses sont
satisfaites.
=> accumulation de faits, ce qui peut entrainer
=> saturation
La base de faits est constitue d'une liste de propositions logiques de valeur
de vrit VARI. On applique l'algorithme :

Existe-t-il une rgle applicable ? Si oui, alors aller l'tape


suivante. Si non, alors fin.

Appliquer cette rgle.

Dsactiver cette rgle.

Le but souhait est-il dmontr ? Si oui, alors fin. Si non, alors


retourner en 1.

L'tape 1 permet de tester la condition d'arrt. On dit que le moteur


fonctionne par saturation.
Pour le codage, on opre de la faon suivante.
Chaque fait est cod l'aide d'un dictionnaire de faits. La base de faits est
donc constitue d'une liste d'entiers, chacun d'eux tant le code des faits
dans le dictionnaire.
Pour les rgles, nous avons besoin d'une variable lie chacune d'elle afin de
connaitre son tat d'activit. Elle vaudra 1 si la rgle est active, et 0 si elle
est inactive. Mais la liste devra tre dote de quatre paramtres :

l'indice de dbut de la liste des conditions dans la base des faits

l'indice de fin de la liste des conditions dans la base de faits

l'indice de fin de la liste des conclusions dans la base de faits

l'tat d'activit de la rgle

En quoi consiste le chanage arrire ?

Recherche dans les rgles qui ont le but comme consquence

Si les prmisses sont satisfaites, alors le but est atteint

Si les prmisses sont insatisfaites, alors on se fixe un nouveau but


(prmisse insatisfaite)

L'ordinateur recherche si le but souhait peut tre dmontr l'aide des


rgles prsentes dans la base des rgles.

10

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Quel est lalgorithme principal ?

Vrifier le but

Le but est-il satisfait ?

Si oui, alors fin avec succs.

Si non, alors fin avec chec.

Quel est lalgorithme de la vrification (tape 1 de l'algorithme


principal) ?

Existe-t-il une rgle concluante sur ce fait ? Si oui, alors passer


l'tape suivante. Si non, alors aller en .

Montrer la rgle

La rgle est-elle montre ? Si oui, alors fin (fait vrifi). Si non,


alors passer l'tape suivante.

Existe-t-il une autre rgle concluante sur ce fait ? Si oui, alors aller
en 2. Si non, alors fin (on ne peut pas conclure).

Quel est lalgorithme de dmonstration (tape 2 de l'algorithme de


vrification) ?

On suppose la premire condition de la rgle comme fait.

Vrifier le fait.

Le fait est-il satisfait ? Si oui, alors passer l'tape suivante. Si


non, alors fin (rgle non prouve).

Existe-il d'autres conditions ? Si oui, alors passer l'tape suivante.


Si non, alors fin (rgle prouve).

On suppose la condition suivante comme fait.

On retourne en 2.

Le codage suivant est utilis.

11

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

A chaque proposition on lui associe un numro correspondant l'indice dans


le tableau du dictionnaire des faits. A l'aide d'une variable, nous conservons
l'information qui indique si le fait est initiale ou dmontrer. On pourra par
exemple lui assigner :

0 pour un fait initial,

)-1) pour un but prouver,

1 dans les autres cas.

Chaque rgle sera affecte d'un poids. La liste des rgles sera ordonne
selon ces poids. Pour chaque rgle, nous conservons :

le dbut dans la liste des conditions

le fin dans la lite des conditions

le numro du fait conclusion

son poids

Le poids d'une rgle est gal au nombre de ses prmisses qui ne sont pas
des faits initiaux. On propose comme mthode de codage la procdure
suivante :

On construit le tableau :
Poids
Base de faits

A, B

Base de rgles 1:A et B -> C

2:A et C -> D

etc ...

On construit un second tableau :


Etat

Liste ordonne de rgles concluant sur ce fait

-2

etc ...

L'excution d'un systme expert doit pouvoir procder en trois tapes :

Dtection; il faut ici dterminer les rgles applicables

Choix; il faut ici choisir les rgles qu'il convient d'appliquer

Dduction; c'est la mise jour de la base de faits

12

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Quels sont les types de connaissances ?


Quelles sont les caractristiques des connaissances ?
Les connaissances sont :

dclaratives : Elles sont spares du programme.

lisibles : Elles sont exprimes en langage clair.

facilement examinables

=> maintenance sans informaticien


Le systme expert montre les infrences successives qu'il fait pour aboutir
aux conclusions qu'il donne.
=> l'utilisateur a confiance en l'ordinateur

Quest-ce quune connaissance de nature heuristique ?


Si A et B sont vrifies, alors C est plausible, mais srement pas D.

=> Chaque conclusion peut recevoir un poids.

Quest-ce quune connaissance de nature procdurale (mtaconnaissance) ?


Si l'on connat A, alors s'intresser B puis C, sinon s'intrersser C puis B.

Quest-ce quune connaissance factuelle ?


A est compos de B, C et D.

Quels sont les domaines d'application ?


Les principaux domaines dapplication sont :

laide des non spcialistes,

les formations ,

la sauvegarde de l'expertise des experts rares,

la reconnaissance ,

laide la dcision.

=> mta-connaissances (des connaissances sur les connaissances)

13

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Quels sont les constituants ?


Quest-ce quune base de connaissances ?
Couramment limite une base de rgles, chaque rgle tant exprime en
langage comprhensible par tous :
NOM_REGLE : SI fait ET fait ET ... ET fait
ALORS fait ET fait ET ... fait
FINREGLE

Quest-ce quun dictionnaire ?


Ensemble des mots reconnus par le systme (mots appartenant la base de
connaissances).

Qu'est-ce qu'une base de faits ?


Quest-ce quun fait demandable ?
Informations manquantes pour la dduction (prvoir la possibilit de
rpondre Je ne sais pas. )

Quest-ce quun fait affichable ?


Faits que le crateur du systme expert a jugs pas trop techniques.

Quest-ce quune base de faits ?


Ensemble des faits fournis initialement par l'utilisateur et ensemble des faits
dduits par le systme.

Quest-ce quun but ?


Le systme a un but, qui peut tre Je ne sais pas.

14

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

Quest-ce quun moteur d'infrence ?


Programme qui contient les mcanismes d'interprtation des rgles ainsi que
le programme permettant de dduire les mcanismes de dduction.

Quest-ce que le moteur 0 ?


Ne peut pas interprter des rgles contenant des variables.

Quest-ce que le moteur 1/2 ?


Peut valuer des variables :
SI vhicule ET carroserie ET nombre_de_roues = 4
ALORS voiture

Quest-ce que le moteur 1 ?


Peut interprter des prdicats (de la forme Prdic (X), X tant une variable).
L'instanciation se fait par une constante.
SI homme (X)
ALORS mortel (X)

Quest-ce que le moteur 2 ?


L'instanciation peut se faire par un prdicat.

Quest-ce que le moteur 3 ?


L'instanciation peut se faire par un prdicat de prdicat, ... (n - 1) fois en
tout) de prdicat. Encore que de la thorie.

Quelle est la syntaxe des rgles associes un moteur 0 ?


<lment> := <mot>
:= <non mot>
<mot> := <chane alphanumrique>
<fait> := <lment>
<rgle> := <nom> <prmisse> ALORS <consquent>
<prmisse> := <lment>
:= <lment> ET <prmisse>
<consquent> := <prmisse>

Une rgle est valide si toutes ses prmisses sont vraies. On ajoute alors
tous les consquents la base de faits. Une rgle se dclenche au plus une
fois.

15

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


On distingue deux types de donnes de base :

les FAITS :

La personne a le nez qui coule.


La personne tousse.
=> Ce sont des certitudes, des vrits.

les REGLES :

SI la personne a de la fivre ET elle tousse


ALORS elle a la grippe.
SI la personne a la grippe ET mal au sinus
ALORS elle a la sinusite.
SI la personne a le nez qui coule
ALORS elle a le rhume.
etc ...

=> Elles permettent de dduires des faits partir d'autres faits. La partie
gauche de ALORS est l'HYPOTHESE, la partie droite de ALORS est la
CONCLUSION.

Quelles sont les stratgies de rsolution et rgles de dduction ?


En quoi consiste le chainage avant ?
A partir des faits initiaux, on dclenche itrativement toutes les rgles qui
peuvent l'tre jusqu' :

satisfaction d'un but donn

saturation complte dde la base de faits

Le chanage avant consiste examiner toutes les rgles et partir de l, de


dduire de nouveaux faits.
On prend donc la premire rgle. Si ses hypothses sont vrifies (si elles
figurent dans la base des faits), alors on ajoute les conclusions de cette rgle
dans la base des faits. Sinon, on passe la rgle suivante.
La base des faits est donc : { La personne a le nez qui coule. , Elle
tousse. }

On commence la premire rgle.

SI la personne a de la fivre ET elle tousse


ALORS elle a la grippe.
La personne a de la fivre. ne figure pas dans la base des faits, bien que Elle tousse. y figure.
La base des faits reste donc : { La personne a le nez qui coule. , Elle tousse. }

16

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts

On passe la rgle suivante.

SI la personne a la grippe ET elle a mal au sinus


ALORS elle a la sinusite.
Ce n'est pas vrifi ( Elle a mal au sinus. et Elle a mal au sinus. ne sont pas dans la base des
faits).
La base des faits reste donc : { La personne a le nez qui coule. , Elle tousse. }

On passe la rgle suivante.

SI la personne a le nez qui coule


ALORS elle a le rhume.
C'est exact.
Elle a le rhume. est ajout la base des faits.
La base des faits est donc : { La personne a le nez qui coule. , Elle tousse. , Elle a le rhume. }
Comme on a valid un nouveau fait, il faut recommencer les tests la premire rgle, car de nouvelles
rgles ont pu ainsi tre valides.

On repasse la premire rgle.

SI la personne a de la fivre ET elle tousse


ALORS elle a la grippe.
C'est exact.
Elle a la grippe. est ajout la base des faits.
La base des faits est donc : { La personne a le nez qui coule. , Elle tousse. , Elle a le rhume. ,
Elle a la grippe. }

On passe la rgle suivante.

SI la personne a la grippe ET elle a mal au sinus


ALORS elle a la sinusite.
Ce n'est pas vrifi ( Elle a mal au sinus. n'est pas dans la base des faits).
Elle a la sinusite. n'est pas ajout la base des faits.
La base des faits est donc : { La personne a le nez qui coule. , Elle tousse. ,
Elle a le rhume. , Elle a la grippe. }

On passe la rgle suivante.

Celle-ci a dj t teste et valide. On ne s'en occupe donc pas.

On retente un troisime passage.

Mais aucune rgle n'est valide. On arrte donc l la recherche. C'est fini.
La conclusion fournie par le systme expert est donc : Elle a le rhume et elle a la grippe. Il s'ensuit donc
le traitement appropri ...

17

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


Ce qui donne lalgorithme :
POUR Toutes les rgles de la liste
Marquer chaque rgle comme tant non vrifie;
REPETER
POUR Toutes les rgles de la liste
SI La rgle n'est pas dj vrifie
ALORS SI Les hypothses de la rgle sont dans la base des faits
ALORS DEBUT
Ajouter les conclusions de la rgle la base des faits;
Marquer la rgle comme tant vrifie;
Indiquer qu'il faudra faire un nouveau parcours;
FIN;
JUSQU'A Ce qu'aucune nouvelle rgle n'ait t vrifie;

En quoi consiste le chainage arrire ?


A partir d'un but donn par l'utilisateur (ou choisi par le systme), on
remonte rcursivement vers les faits initiaux.
Dans ce cas, on interroge le systme expert.
Si on demande : La personne a-t-elle le rhume ? .

On va la premire rgle.

SI la personne a de la fivre ET elle tousse


ALORS elle a la grippe.
La question La personne a-t-elle le rhume ? ne correspond pas la conclusion Elle a la grippe. .

On passe donc la rgle suivante.

SI la personne a la grippe ET mal au sinus


ALORS elle a la sinusite.
La question La personne a-t-elle le rhume ? ne correspond pas la conclusion Elle a la sinusite. .

On passe donc la rgle suivante.

SI la personne a le nez qui coule


ALORS elle a le rhume.
La question La personne a-t-elle le rhume ? correspond la conclusion Elle a le rhume. .
La personne a le nez qui coule. fait partie de la base des faits. Donc l'ordinateur rpond Oui. .
Par contre, si on ne l'avait pas trouv dans la base des faits, on aurait cherch montrer La personne
a le nez qui coule. partir des rgles de la mme faon que l'on a montr Elle a le rhume. .

18

Bruno Delb

http://www.brunodelb.com

Date : 27/10/1999

Les systmes experts


Ce qui donne lalgorithme :
SI La question est dans la base des faits
ALORS Elle est vraie
SINON DEBUT
Crer une base vide de questions;
POUR Toutes les rgles de la base des rgles
SI La question figure dans une conclusion
ALORS Ajouter les hypothses la base des questions;
SI La liste des questions n'est pas vide
ALORS Vrifier toutes les questions figurant dans la liste des questions
SINON Demander l'utilisateur si la question est vraie ou non;
FIN;

Quels rapports entre le chainage avant et le chainage arrire ?


Chainage avant

Chainage arrire

Cherche tre exhaustif.

Limite du champs d'investigation.

Plus simple.

Plus compliqu.

Itratif.

Rcursif.

Semble tenir compte de la chance et du hasard.

Semble suivre un raisonnement prcis.

Interface en langage naturel difficile.

Interface en langage naturel plus facile.

Quelles sont les rgles de dduction ?


Quest-ce que la rgle du modus ponens ?
Pi ^ Pj ^ Pk -> Pz ^ Pl => Pz ^ Pl

Si tous les prmisses sont vrais, alors les consquents sont vrais.

Quest-ce que la rgle du modus tollens ?


Pi ^ Pj ^ Pk -> Pz ^ Pl => Non (Pi ^ Pj ^ Pk)

19