Vous êtes sur la page 1sur 38

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance

Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts


Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 1

Systmes Experts
Cours de M. Abdellah AZMANI
Master Systme Info et Rseau
et Master Systme et Rseau (Offshoring)
Filire Ingnieurs Logiciel et Systmes Informatique
Filire Ingnieurs EEA
Dpartement Gnie Informatique
Facult des Sciences et Techniques de Tanger

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 2

Sommaire
1. Introduction.................................................................................................................................................... 3
2. Principe de fonctionnement dun systme expert ........................................................................................ 4
a. Base de connaissances ............................................................................................................................... 4
b. Base de faits ............................................................................................................................................... 4
c. Base de rgles ............................................................................................................................................ 5
d. Le moteur dinfrence ............................................................................................................................... 7
e. Chanage avant : ......................................................................................................................................... 8
f. Problmatique : ......................................................................................................................................... 8
g. Chanage arrire : ....................................................................................................................................... 8
3. TRAITEMENT DE L'IMPRECIS ET DE L'INCERTAIN ......................................................................................... 11
4. TRAITEMENT DE LANGAGE NATUREL ........................................................................................................... 14
a. CONCEPTS ELEMENTAIRES DU LANGAGE ................................................................................................ 15
b. Types danalyseurs : ................................................................................................................................. 16
c. Analyseur de bruits de fond : ................................................................................................................... 16
d. Cration d'analyseur de bruits de fond: .................................................................................................. 17
e. Inconvnients de l'analyseur de bruits de fond: ...................................................................................... 17
f. Analyse par graphes d'tats: .................................................................................................................... 17
h. Analyse par formes grammaticales .......................................................................................................... 19
i. Cration d'analyseur grammatical ........................................................................................................... 19
5. Modlisation Objet d'un Systme Expert ..................................................................................................... 21
a. Spcification fonctionnelles ..................................................................................................................... 21
b. Packages ................................................................................................................................................... 22
c. Cas d'utilisation ........................................................................................................................................ 22
Diagramme de UseCase de gestion du moteur d infrence ......................................................................... 23
Diagramme de UseCase de gestion des coefficients .................................................................................... 23
d. Diagrammes de scnarios ........................................................................................................................ 24
Diagramme de scnario dajout dune rgle ................................................................................................ 24
Diagramme de scnario de modification dune rgle .................................................................................. 24
Diagramme de scnario de recherche dune rgle ...................................................................................... 25
Diagramme de scnario de suppression dune rgle ................................................................................... 25
e. Diagramme d'activit ............................................................................................................................... 26
Diagramme d'activit de la gestion de la base de connaissance ................................................................. 26
Diagramme d'activit de la gestion des coefficients .................................................................................... 27
Diagramme d'activit du moteur d infrence .............................................................................................. 27
f. Diagrammes d'objet ................................................................................................................................. 28
Diagramme dobjet : ..................................................................................................................................... 28
g. Diagrammes de squence ........................................................................................................................ 28
Diagramme de squence dajout dune rgle .............................................................................................. 28
Diagramme de squence de modification dune rgle ................................................................................ 29
Diagramme de squence de recherche dune rgle .................................................................................... 29
Diagramme de squence de suppression dune rgle ................................................................................. 30
h. Modle dynamique : ................................................................................................................................ 30
i. Diagramme de classe ............................................................................................................................... 31
6. Algorithmes .................................................................................................................................................. 32
a. Le chanage avant .................................................................................................................................... 32
b. Le chanage arrire ................................................................................................................................... 33
c. Le chanage mixte .................................................................................................................................... 34
7. Exemples d'applications ............................................................................................................................... 35
a. Application pour un diagnostique mdical .............................................................................................. 35
b. Application sur a base d'arbre de dcision .............................................................................................. 36
8. Projet de ralisation de Systmes Experts ................................................................................................... 38

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 3

1. Introduction
Impossibilit actuelle programmer des systmes informatiques capable de mimer un
comportement intelligent gnral (comme nous en avons tous un !)
=> Cration de programmes ne visant qu'un domaine limit et facile mettre sous forme
symbolique.
Ces programmes qui concentrent en eux les connaissances d'une discipline restreinte de
telle faon qu'elles soient utilisables, sont appels des systmes experts : ils sont destins
remplacer des experts humains ou les aider.
Les premiers et plus clbres sont :
DENDRAL :
chimie molculaire, STANFORD.
MYCIN :
diagnostic des infections bactriennes et indications thrapeutiques, STANFORD.
PROSPECTOR :
aide la recherche en exploitation minire.
FAULTFINDER :
diagnostic de panne d'quipement.
PEACE :
modlisation de circuits lectroniques.
MECHO :
rsolution de problmes en mcanique.
ORBI :
valuation de ressources pour la planification de l'environnement.
KBOI
expertise en jardinage.
ORIENT EXPERT :
orientation et laboration de projet professionnel.
Il existe aujourd'hui des milliers de systmes experts utiliss et en dveloppement.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 4

2. Principe de fonctionnement dun systme expert

Elaborer un ensemble de connaissances. Celles-ci correspondent des rgles de
raisonnement qui ont t titres dun certain domaine de connaissances :
Diagnostic mdical, analyse de circuit, exploration minire, etc.
a. Base de connaissances
La base de connaissances contient toute l'information dont un expert humain aurait
besoin pour s'acquitter de son travail, ceci dans un domaine donn. C'est la seule
composante du systme qui contienne les connaissances propres au domaine quil
est cens recouvrir. Cette base de connaissances est elle-mme divise en deux
composantes. La premire partie contient des faits spcifiques du domaine, les
connaissances factuelles. On parle alors de base de faits.
La base de rgles, contient les rgles qui vont permettre au systme de raisonner
partir des faits. Ces connaissances dductives sont reprsentes par des rgles
appeles rgles de production.

b. Base de faits
La base de faits est la mmoire de travail du systme expert. Elle est variable au
cours de l'excution et vide lorsque l'excution se termine. Au dbut de la session,
elle contient ce que l'on sait du cas examin avant toute intervention du moteur
d'infrences. Puis elle est complte par les faits dduits par le moteur ou demands
l'utilisateur. Par exemple, dans le domaine mdical, la base de faits pourra contenir
une liste de symptmes en dbut de session et un diagnostic lorsque celle-ci se
terminera.
Le type de faits :
Les faits peuvent prendre des formes dont les valeurs possibles sont :
boolennes : vrai, faux
symboliques : c'est--dire appartenant un domaine fini de symboles
relles : pour reprsenter les faits continus.

Un systme expert qui n'utilise que des faits boolens est dit d'ordre 0. Un systme
expert qui utilise des faits symboliques ou rels, sans utiliser de variables, est d'ordre
0+ et un systme utilisant toute la puissance de la logique du premier ordre est
d'ordre 1.

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 5


c. Base de rgles
Elle rassemble la connaissance et le savoir-faire de l'expert. Elle n'volue donc pas au
cours d'une session de travail.
Une rgle est de la forme :
Si <conjonction de conditions> alors <conclusion>
o Cest dire une suite de comparaison dattribut pour la conjonction de
condition (appele aussi prmisse) et o les conclusions sont de la forme :
<Fait> = <valeur>.
o Exemple :
o SI <voiture_couleur = rouge ET voiture_marque = Ferrari> ALORS
<conducteur = heureux>
On va prendre les attributs en prmisse, et on va voir si la prmisse est vrifie. Par
exemple, on va comparer voiture_couleur rouge, et si c'est le cas, c'est--dire si la
voiture dont on dispose est effectivement rouge, alors on passe la prmisse
suivante. Si la marque de la voiture dont on dispose est effectivement Ferrari, alors la
rgle se dclenche.
Le dclenchement de la rgle conduit l'excution des affectations de valeurs aux
attributs prsents en conclusion. Cela veut dire que l'on va pouvoir en tirer les
conclusions. On va affecter les valeurs en conclusion leurs attributs respectifs.
Par contre, si l'une des prmisses n'avait pas t vrifie alors la rgle sera
abandonne.


Exemple de Base de connaissance :
R1 : si B et D et E alors F
R2 : si G et D alors A
R3 : si C et F alors A
R4 : si B alors X
R5 : si D alors E
R6 : si X et A alors H
R7 : si C alors D
R8 : si X et C alors A
R9 : si X et B alors D

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 6

Exemple dune rgle de la base animal :
Si (est mammifre)
et (est carnivore)
et (a des rayures noires)
et (est de couleur fauve)
alors (est tigre).

La mise au point de ces rgles est une partie trs dlicate et trs longue dans la constitution
des systmes experts.
1. Les experts humains quon interroge pour laborer ces bases de connaissances, en
gnral, nont pas formalis sous forme de rgles (comme celles indiques) tout ce
quils savent de leur domaine.
2. Certaines rgles sont utilises inconsciemment et

il est donc ncessaire de rflchir
en profondeur tout ce qui constitue le savoir de l'expert.
En mdecine, il est souvent ncessaire d'noncer les rgles sous des formes non
catgoriques, par exemple :
Si le site de culture est le sang
Et si l'organisme est gram ngatif
Et si l'organisme est.esf de forme btonnet
Et si le patient est un hte risque
Alors
il est vraisemblable 0,6 que l'organisme est le pseudomonas aeroginosa.
(Extrait de MYCIN).
Exemple de Base de connaissance :
R1 : si B et D et E alors F
R2 : si G et D alors A
R3 : si C et F alors A
R4 : si B alors X
R5 : si D alors E
R6 : si X et A alors H
R7 : si C alors D
R8 : si X et C alors A
R9 : si X et B alors D
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 7

d. Le moteur dinfrence
En plus de l'ensemble de connaissances, on donne une base de faits connus initialement :
B, C !
Ce qui correspond par exemple des rsultats d'analyses pour un patient donn.
Ensuite on pose une question :
Le but a atteindre est le fait H
=> On se demande si H rsulte des faits par application des rgles donnes dans la base de
connaissance.
C'est l qu'intervient ce qu'on appelle le moteur d'infrences du systme expert, c'est--dire
le mcanisme (algorithme) qui va tenter de rsoudre le problme pos.
Il y a deux types de fonctionnement pour un moteur d'infrences : le chanage avant et le
chanage arrire.
Pour exploiter cette connaissance, un moteur d'infrences est ncessaire pour relier
la description d'un problme aux capacits d'analyse d'une situation donne. De
faon gnrale et grce la structuration de la base de connaissances, le moteur
d'infrences sera capable de rpondre des questions, de raisonner et de tirer les
consquences impliques par la connaissance incluse dans le systme.
Le moteur dinfrence va enchaner les rgles c'est--dire quil va effectuer un
chanage. Il en existe trois catgories, bases sur la manire dont les problmes sont
rsolus ou types de raisonnement :
le moteur dinfrence, dit chanage avant , qui part des faits et rgles
de la base de connaissance, et tente de s'approcher des faits recherchs par le
problme ;
le moteur dinfrence, dit chanage arrire , qui part des faits
recherchs par le problme, et tente par l'intermdiaire des rgles, de
remonter des faits connus;
le moteur dinfrence, dit chanage mixte , qui utilise une combinaison
des deux approches chanage avant et chanage arrire, prcdemment
cites.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 8

e. Chanage avant :
On part de la base de faits connus initialement et on dclenche des rgles dont les
prmisses sont entirement contenues dans cette base de faits. On obtient ainsi une
nouvelle base de faits et on poursuit jusqu' ce que ou bien, on tombe sur le but recherch
H ou bien, on sature la base de connaissance :
plus aucune rgle ne puisse s'appliquer.

f. Problmatique :
Lorsque plusieurs rgles peuvent s'appliquer, le moteur d'infrence choisit l'une d'elles,
application des rgles de choix :
Les mtargles.
Lorsqu'on a affaire de vastes ensembles de rgles, la croissance des faits dduits est
souvent exponentielle et donc, la dfinition et la mise en place de ces mtargles est
fondamentale.
Retour notre exemple :
Base de faits initiale : B, C
Applications de rgles :
R4 donne X : B, C, X
R8 donne A : A, B, C, X
R6 donne H : A, B, C, X, H succs

Notre mtargle pour choisir parmi plusieurs rgles : prendre celle de plus petit numro.
g. Chanage arrire :
On regarde les rgles qui ont le but fix dans leurs consquences.
On considre chacune de ces rgles,
si l'une d'elles a toutes ses prmisses dans la base de faits, on a un succs,
sinon on considre les prmisses comme de nouveaux buts et on recommence.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 9

On est ainsi amen explorer un arbre qui,
dans les cas simples, est fini (comme pour
notre exemple).














Exemple : But H
Seule la rgle R6 possde H comme consquence, donc : nouveaux buts X, A
La rgle R4 possde X comme consquence, donc : nouveaux buts A, B
B est un fait dj connu, donc : nouveaux but A
3 rgles possdent A comme consquence, ce qui dtermine 3 branches dans l'arbre
d'exploration.
Branche 1 application de R2 : nouveaux buts G, D
G n'est jamais consquence donc chec Branche 2 application de R3 : nouveaux
buts C, F
C est un fait connu, donc : nouveaux but F
R1 donne nouveaux buts B, D, E B est un fait connu, donc : nouveaux buts D, E
R7 donne nouveaux buts C, E
C est un fait connu, donc : nouveau but E
R5 donne : nouveau but D
R7 donne : nouveau but C
C est fait donc succs
=> il est inutile d'essayer la branche 3.

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 10

Remarques :
lorsqu'on utilise un procd de chanage arrire, on dit qu'on cherche effacer les
buts.
Les mthodes de chanage avant et de chanage arrire ont chacune leurs intrt
propres, selon la structure des problmes l'une peut tre plus intressante que
l'autre.
Beaucoup de rgles avec les mmes prmisses pnalisent le chanage avant et
inversement beaucoup de rgles avec les mmes conclusions pnalisent le chanage
arrire.
Le principe du chanage avant repose sur ce qu'on appelle en logique le modus
ponens :
si A => B et A, alors B
Le principe du chanage arrire repose sur ce qu'on appelle en logique le modus
tollens :
si A => B et non B, alors non A
On considre que la ngation du but est ajoute aux faits et on recherche par application
successives du modus tollens la ngation d'un fait, ce qui donnera une contradiction et donc
la "dmonstration" du but.

Indiquons encore qu'en gnral un systme expert est conu de manire :
1. pouvoir tre mis jour en permanence : modification de la base de connaissances.
2. pouvoir indiquer en clair quel raisonnement il a utilis : Explication des rsultats
fournis.




Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 11

3. TRAITEMENT DE L'IMPRECIS ET DE L'INCERTAIN

Le savoir humain, que l'on cherche reprsenter dans un systme expert, est souvent
entach d'incertitude et d'imprcision.
- L'incertitude porte sur la vrit ou la fausset d'une affirmation.
- L'imprcision porte sur une affirmation exprime l'aide de quantificateurs
vagues.
la question :
"Quel pourcentage de pices dfectueuses pensez-vous avoir ce mois-ci ?",

Rponse 1 : 2,371289 % Rponse 2 : entre 0% et 80%
La rponse est trs prcise,
mais on n'est pas certain qu'elle soit
vraie (incertitude).
La rponse est certainement vraie, mais
elle est trs imprcise (imprcision).

Il est courant pour un expert de traiter ce type d'informations parce qu'il les obtient des
capteurs physiques ayant une prcision limite ou d'observations humaines souvent trs
subjectives.
La faon de combiner des coefficients varie d'un systme expert l'autre.
Exemple : dans le systme MYCIN, les coefficients de vraisemblance sont compris entre :
L'expert travaille, parfois, avec des informations dgrades :
observation impossible, appareil de mesures en panne...
Une autre source d'incertitude lors du raisonnement d'un expert est son propre savoir-faire,
issu d'expriences et donc empirique (vague, floue).
Il y a donc trois sources d'incertitude :
observations imprcises,
observations absentes,
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 12

connaissances incertaines.
C'est pour ces raisons que certains systmes experts traitent l'incertitude.
La plupart utilisent un traitement numrique et associent chacune des rgles et chacun
des faits des coefficients de vraisemblance (CV).
-1 => faux de faon certaine
+1 => vrai faon certaine,
0 => absence d'information.

L'expert affecte chaque rgle un coefficient de confiance (CCR) qui exprime la confiance
qu'il accorde la rgle.
Le coefficient associ au fait conclusion d'une rgle se calcule de la faon suivante :
- si aucun coefficient n'avait encore t affect au fait conclusion, alors on utilise la
formule :
CV conclusion = CCR* minimum des CV des prmisses.
- si le fait conclusion avait dj un coefficient de vraisemblance initial CV1 et qu'il
reoive le coefficient CV2, alors son coefficient final CVf sera calcul de la faon
suivante :
CVf = CV 1 + CV2 - CV 1 *CV2 si CV1 et CV2 > 0.
CVf = CV 1 + CV2 + CV 1 *CV2 si CV 1 et CV < 0.
CVf = (CV1 + CV2) / (1 - min (CV 1, CV2)) sinon.
Ces formules permettent de garantir un coefficient entre -1 et +1 et de renforcer ou affaiblir
un coefficient de vraisemblance selon les nouveaux rsultats acquis.
Exemple : Soit la rgle R1 (CCR = 0.7) dont les prmisses ont les coefficients de
vraisemblance suivants :
R1 : Si la voiture a du mal dmarrer (0.6) et l'air est humide (0.5)
Alors il faut changer les bougies

Remarquons tout d'abord qu'une rgle aussi simple peut poser des problmes :
- A partir de quel taux d'humidit peut-on affirmer que l'air est humide ?
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 13

- A partir de combien d'essais infructueux doit-on dire qu'une voiture dmarre
mal ?
- Quelle confiance accorder une telle rgle ?
Si on ne sait rien du fait "il faut changer les bougies", l'application de la rgle va lui affecter le
coefficient de vraisemblance :
CV = 0.7*0.5 = 0.35
Si on savait dj que "il faut changer les bougies" (0.30), le coefficient de vraisemblance de
ce fait va devenir :
CVf= 0.3 +0.35 - 0.3* 0.35 = 0.54
Le dclenchement de la rgle a donc renforc la suspicion d'un problme de bougies.
Il est parfois difficile de savoir partir de quel seuil de vraisemblance il faut considrer un
fait.

Dans MYCIN, tout fait dont le coefficient de vraisemblance est infrieur en valeur absolue
0.2 est considr comme peu crdible et est limin de la base des faits.

Les inconvnients
Si l'ide de traiter l'incertain et l'imprcis est sduisante a priori, elle prsente nanmoins de
nombreux inconvnients :
La prsence de coefficients de vraisemblance implique de srieuses modifications
apporter un systme fonctionnant en logique pure.
L'explication du raisonnement est plus complexe car, pour un fait donn, plusieurs
chemins ont pu tre emprunts pour confirmer ou infirmer ce fait.
Il est difficile et parfois impossible un expert de chiffrer la confiance qu'il accorde
une connaissance.
Donner une confiance de 0.5 ou 0.6 une rgle, peut lui sembler compltement artificiel.
Il est de plus dans l'impossibilit de connatre l'avance les rpercussions de la modification
d'un coefficient sur le systme.
A partir de quel coefficient de vraisemblance doit-on considrer qu'un rsultat est
acquis?
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 14

Enfin, il existe souvent des cas limites pouvant avoir des consquences dsastreuses.

Prenons pour exemple l'application des calculs prcdents sur les deux rgles suivantes :
- R1 (0.7) Si je me rase avec un rasoir lectrique, alors je ne fais pas une action
dangereuse.
- R2 (0.5) Si je prends un bain, alors je ne fais pas une action dangereuse.
Si je prends mon bain tout en me rasant avec un rasoir lectrique.
les deux prmisses des rgles sont vraies et donc on a 1 pour coefficient de
vraisemblance.
Le systme va appliquer R1 et dduire "je ne fais pas une action dangereuse (0.7)" puis va
appliquer R2 et dduire "je ne fais pas une action dangereuse (0.5)" !
Pour le systme, afin d'tre sr de ne pas faire une action dangereuse, il faut prendre
son bain tout en se rasant avec un appareil lectrique !
Il faut donc tre particulirement prudent dans l'utilisation de telles mthodes et certains
n'hsitent pas dire qu'il est prfrable d'en viter l'usage.

4. TRAITEMENT DE LANGAGE NATUREL
Le traitement du langage naturel = crire des programmes qui interprtent les expressions
crites dans une langue pour les convertir en une autre.
Langage naturel = proche du langage humain normal.
Applications typiques :
L'interprtation des phrases humaines en commandes informatiques
comprises par une machine. La conversion du langage informatique en
phrases naturelles, comprises par un humain. La traduction d'un langage
humain en un autre.
Le contrle syntaxique ou grammatical des phrases :
Vrificateurs orthographiques avec analyse des phrases pour corriger en
fonction du contexte.
Exemple : la phrase "le petite maison" serait corrige en "la petite maison"
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 15

Ici le programme trouve deux valeurs fminines pour le nom et l'adjectif =>
correction de l'article.
Nous allons nous intresser particulirement aux deux premiers systmes. Dans ces
systmes, l'analyse syntaxique est le cur du programme = similitude avec le systme
d'exploitation d'un ordinateur.
Exemple d'utilisation d'une interface en langage naturel :
Quel est votre problme ?
J'ai de l'acn.

Avez-vous d'autres symptmes ?
Mes yeux sont lgrement congestionns.

Rien d'autre ?
Non.

Vous avez probablement une carence en Vitamine C, E et A.
Essayez de complter l'apport de ces lments.
Des pommades aux vitamines E et A peuvent traiter localement votre acn.

Les interfaces en langage naturel (ILN) ne prennent pas en compte les diffrents aspects de
la reconnaissance ou de la synthse Vocable. Leur but est de rendre convivial le dialogue
entre l'Homme et la Machine.
a. CONCEPTS ELEMENTAIRES DU LANGAGE
Une expression d'une smantique.
La syntaxe = rgles des symboles.
Exemple : un article en franais.
Le langage est compose de syntaxe et de langage dterminant l'ordre et l'criture des
prcde toujours le groupe nominal en franais
La smantique = les ides exprimant le fond d'un texte. Programmer une syntaxe est chose
facile. En revanche faire comprendre le sens et la porte d'une expression ou d'une phrase
reste encore une tche difficile pour un ordinateur.
Exemple : la phrase "le fermier a du veau"
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 16

=> le fermier possde un veau
Ou
=> le fermier est devant une assiette de veau.
Actuellement les analyseurs ne sont pas capables de rsoudre des analyses smantiques
complexes. Un analyseur coupe une phrase en blocs de symboles et dtermine la syntaxe.
b. Types danalyseurs :
Il existe trois diffrents types d'analyseurs en ILN
Les analyseurs de bruits de fond ;
Les analyseurs graphes ;
Les analyseurs base de rgles grammaticales.

c. Analyseur de bruits de fond :
Analyse simpliste, son principe balayer une phrase pour identifier certains mots cls. Le reste
de la phrase est simplement ignor ; ce sont les bruits de fond.
Exemple :
Un utilisateur entre la phrase "Vider les donnes de la base"
=> l'analyseur va retenir les mots "vider" comme verbe et "donnes", comme objet.
l'interprteur donne la commande CLEAR DATA l'ordinateur.

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 17


d. Cration d'analyseur de bruits de fond:
L'analyseur utilise un vocabulaire rduit et bien dfini.
Conservation du vocabulaire dans des listes ou des bases dynamiques.
Chaque mot entr par l'utilisateur est traduit en symbole.
Ce dernier sera utilis pour activer la commande demande.

Exemple :
Pour dclencher une commande permettant de vider une base de donnes.
On entre une phrase contenant les mots "vider" ou "initialiser " avec les mots "base" ou
"donnes", par exemple : "initialiser la base". Pour dcouper les phrases on utilise, par
exemple, le prdicat Turbo Prolog fronttoken.
Il faut crer une routine qui prend chaque mot de la phrase entre et cherche une
correspondance avec un mot cl.
e. Inconvnients de l'analyseur de bruits de fond:
=>Utiliser pour des environnements restreints impliquant un vocabulaire limit et peu de
commandes associes.
=>Principal inconvnient = impossibilit d'analyser une phrase ambigu.
Exemple :
La phrase "Vider le haut de l'espace de donnes" pourra tre interprte comme une
demande pour vider les donnes. Cela montre la diffrence entre la smantique et la
syntaxe et l'insuffisance des analyseurs simples.
f. Analyse par graphes d'tats:
Une machine graphes voit la phrase comme une suite d'automates finis. Le traitement
consiste se dplacer dans l'espace dfini, en passant d'un nud un autre. Le programme
commence en reconnaissant un nud ou un tat donn. Il lit ensuite le premier mot qui lui
permet de parcourir un chemin vers un autre nud en dclenchant une action donne. Le
traitement s'arrte lorsque le nud terminal ou tat final est atteint.

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 18

Exemple d'analyse par graphes:
Soit l'automate tats finis suivant :








Le rle de cet automate est de reconnatre la bonne syntaxe d'une rgle de production. Il
possde 7 tats dont un tat initial et un tat final.
Exemple d'une phrase :
Si bouton appuy = 2 et position ascenseur = 4
alors descendre 2 tages et ouvrir les portes.
Les mots cls sont : "Si", "et", "alors".
Le premier mot d'une phrase qui pourra tre reconnue par cet automate est forcment un
"Si". Le programme doit lire les mots suivants et former par concatnation une chane de
caractres jusqu' la rencontre d'un mot cl "et" ou "alors". La chane forme est vrifie
par rapport un dictionnaire de faits possibles.
La rencontre du mot cl "et" quand doit absolument rencontrer un autre fait appartenant
la mme partie "condition" ou "conclusion".
Le programme s'arrte quand on a plus de mots lire ou quand on rencontre une erreur
(tat puits). On pourra envisager de terminer l'criture d'une rgle par un caractre spciale
";" par exemple.
1
2
3 4 5 6
Si
Alors <Fait Conclusion>
;
<Fait Condition>
et et
Etat : Puits
ou tat qui capte les erreurs
ou
erreur si "Si"
erreur si Fait
erreur si
"Alors"
ou "et"
erreur si Fait
erreur si
"et" ou ";"
tat initial
tat final
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 19

Exercice :
Ecrire un programme qui permet de reconnatre et d'excuter des commandes Linux crites
en Franais. Ce programme doit entre autres reconnatre des phrases, contenant des
prpositions, de type :
"Copie de TEST.DAT dans FINAL.DAT"
"Dplace FINAL.DAT vers Rpertoire de TRAVAIL"
Les nuds de l'automate doivent tre reprsents par des tats spcifiques de la machine.
Les liens doivent reprsenter les mots entrs pouvant dclencher une action systme. Les
liens vont permettre de passer dans le rseau d'un nud l'autre.
Inconvnient des automates :
Les analyses par automates d'tats fonctionnent parfaitement lorsque le nombre de phrases
types est limit.
Pour rendre un systme efficace, il faut limiter le nombre de mots et de types de phrases
accepts, d'o la ncessit de faire une tude srieuse du domaine et de sa limitation.
h. Analyse par formes grammaticales
L'analyseur par formes grammaticales est probablement le plus universel pour les
traitements et interfaces en langages naturels. Puissant et complexe Prolog est prvu
d'origine pour tenter d'utiliser la logique afin de formaliser les rgles grammaticales.
Les rgles de ce langage peuvent tre des expressions crites connues sous le nom de
formes grammaticales. Ces formes peuvent tre employes pour interprter les Expressions
de tous les langages, humain ou non.
Pour une telle tude, il faut structurer le langage selon ces rgles.
Pour une tude simple, on utilisera un analyseur rcursif descendant et libre du contexte (ne
tient pas compte du sens de la phrase).
i. Cration d'analyseur grammatical
Le traitement commence par couper les phrases en composants. Il commence par le groupe
nominal et le groupe verbal. Poursuit l'analyse en cherchant les constituants de chaque
groupe :
Noms, adjectifs, prpositions, verbes, etc.
L'opration se fait de haut en bas et commence par couper la phrase en deux lments :
groupe nominal, groupe verbal.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 20

Chaque groupe est ensuite tudi par ses propres constituants. Certaines formes franaises
peuvent tre exprimes ainsi :
phrase = groupe nominal + groupe verbal. groupe nominal = nom
groupe nominal = dterminant + nom
groupe nominal = dterminant + adjectif + nom groupe nominal
= prposition + groupe nominal
groupe verbal = verbe ; groupe verbal = verbe + groupe nominal
groupe verbal = verbe + adverbe + groupe nominal
Dans la ralit la liste des formes est plus importante. En Prolog, ces formes deviennent des
rgles oprationnelles dterminant le cheminement de l'analyseur.
Soit la phrase suivante : "Salim sort rapidement de la maison
Groupe nominal = "Salim
groupe verbal = "sort rapidement de la maison = verbe + adverbe + groupe nominal;
Le dernier groupe nominal = "de la maison" = prposition + groupe nominal
Notons que la construction et l'analyse sont de type rcursif.
Phrase = suite hirarchique de structures
1 tache = identification du groupe nominal et du groupe verbal.
2 tache = analyse de chaque groupe dans l'ordre d'apparition tant que les composants ne
sont pas identifis comme lments simples.
Exercice de systme grammatical :
"Traitement de demandes d'horaires pour une compagnie d'aviation"
Analyse de phrases de type :
Quel avion va Paris ?
Quel vol Royal Air Maroc va de Tanger Bruxelles ?
Ou des phrases de type : "O va Fly Emirates vol 1324 ?"

On peut utiliser dans le programme trois bases de donnes :
La premire contient les informations sur les vols, les compagnies et les villes
relies
La seconde base reoit le dictionnaire des mots connus. Il sera prsent par
un prdicat "mot".
Ce prdicat pourra permettre de reconnatre le mot entr et la dcision que l'analyseur doit
prendre.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 21

5. Modlisation Objet d'un Systme Expert
Spcification fonctionnelles
Diagramme de Cas dutilisation
Diagrammes dtat
Diagrammes de squence
Diagramme de classe


a. Spcification fonctionnelles

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 22

b. Packages
Le diagramme de package dcrit le fonctionnement d un Systme expert et ses
Sous-systmes
Moteur d'i nfrence qui trai te l es
requtes en uti l i sant l es al gori thmes
des chai nage avant et arri re
Interface homme-machi ne qui permet
l 'uti l i sateur de dfi ni r l es requtes et d'affi cher
l es resul tats dans l e l angage naturel
Base d'i nformati ons consti tues de
fai ts et de rgl es qui rgi ssents l e
phnomne tudi
Base de connai ssance
Trai tement
IHM


c. Cas d'utilisation

Diagramme de UseCase de gestion de la base de connaissances

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 23

Diagramme de UseCase de gestion du moteur d infrence



Diagramme de UseCase de gestion des coefficients

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 24

d. Diagrammes de scnarios
Diagramme de scnario dajout dune rgle

Diagramme de scnario de modification dune rgle

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 25

Diagramme de scnario de recherche dune rgle


Diagramme de scnario de suppression dune rgle


Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 26

e. Diagramme d'activit
Diagramme d'activit de la gestion de la base de connaissance

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 27

Diagramme d'activit de la gestion des coefficients

Diagramme d'activit du moteur d infrence

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 28

f. Diagrammes d'objet
Diagramme dobjet :

g. Diagrammes de squence
Diagramme de squence dajout dune rgle

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 29


Diagramme de squence de modification dune rgle

Diagramme de squence de recherche dune rgle

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 30

Diagramme de squence de suppression dune rgle



h. Modle dynamique :

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 31

i. Diagramme de classe
Ce diagramme de classe contient finalement quartes classes qui permettent de
reprsenter les donnes manipules par un systme expert.

1..1
1..*
1..1
0..*
0..*
1..1
Fai t
-
-
-
-
-
nom_fai t
operateur
type_val eur
val eur
uni te
: Stri ng
: char
: Stri ng
: Stri ng
: Stri ng
Expressi on
-
-
-
ref_fai t
l angue
val _expr
: Fai t
: Stri ng
: Stri ng
Regl e
-
-
-
-
nom_regl e
pri ori te
meta_regl e
l i ste_fai ts
: Stri ng
: i nt
: bool ean
: Vector
InstanceFai t
-
-
ref_fai t
posi ti on
: Fai t
: i nt

-

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 32

6. Algorithmes

a. Le chanage avant
Pour dduire un fait particulier, on dclenche les rgles dont les prmisses sont connues
jusqu' ce que le fait dduire soit galement connu ou qu'aucune rgle ne puisse tre
dclenche.
Plus prcisment l'utilisateur du systme expert rentre des faits. A partir de ces faits rentrs,
le systme va essayer de dduire toutes les conclusions possibles, c'est--dire tous les
attributs qui pourront tre affects. Il est clair que dans cet ensemble de conclusions
possibles, il en est qui intresseront l'utilisateur, il en est d'autres qui ne lui diront rien, il en
est enfin qui manqueront.
Les faits sont de la forme : attribut = valeur
On va prendre chaque fait et on va examiner toutes les rgles o ce fait apparat en
prmisse. Grce au mcanisme explicit plus haut, on va voir pour chacune de ces rgles si
elle est dclenche. Si elle l'est, on va affecter les attributs en conclusion des valeurs qui leur
correspondent. On dira que les faits ont t propags.
Ces attributs affects feront partie du rsultat final de l'expertise ; et, en mme temps, ils
seront eux-mmes propags.
On fait cela jusqu' l'puisement des faits, et on communique les rsultats l'utilisateur.

Algorithme du chanage avant

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 33

b. Le chanage arrire
Le mcanisme de chanage arrire consiste partir du fait que l'on souhaite tablir,
rechercher toutes les rgles qui concluent sur ce fait, tablir la liste des faits qu'il suffit de
prouver pour qu'elles puissent se dclencher puis appliquer rcursivement le mme
mcanisme aux faits contenus dans ces listes.
Le chanage arrire est un mcanisme dinduction, c'est--dire qu lon vrifie les hypothses
en remontant depuis lobjectif. On cherche ainsi vrifier si un fait est possible : celui-ci
tant choisi selon des critres extrieurs.
L'algorithme dans son principe est assez simple : pour chaque attribut, on dfinit ses sources.
Si l'attribut est initial c'est--dire s'il n'apparat qu'en prmisse de rgle, les sources sont
rduites aux questions.
Si l'attribut est final, les sources sont les rgles dans lesquelles l'attribut est en conclusion.
Si l'attribut est intermdiaire, apparaissant la fois en prmisse et en conclusion, alors les
sources peuvent tre les rgles, ou alors on peut se replier sur les questions au cas o elles
n'auraient rien donn.
Si, une fois la question pose, l'utilisateur rpond, la valeur qu'il donne est affecte
l'attribut et c'est bon. Si les sources sont les rgles, on prend chacune des rgles o l'attribut
but apparat en conclusion, et on essaye d'valuer les attributs qui sont en prmisse. Si la
rgle se dclenche, l'attribut en conclusion est valu.
L'algorithme de chanage arrire est nettement plus compliqu que le prcdent et nous
nous contenterons d'tudier un exemple.
L'excution de l'algorithme de chanage arrire peut tre dcrit par un arbre dont les noeuds
sont tiquets soit par un fait, soit par un des deux mots et, ou. On parle d'arbre et-ou.
Sur l'exemple prcdent, on obtient l'arbre de la figure de la page suivante.

Algorithme de chanage en arrire

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 34

c. Le chanage mixte
L'algorithme de chanage mixte combine, comme son nom l'indique, les algorithmes de
chanage avant et de chanage arrire. On peut alors aussi bien raisonner partir des faits
que lon connat comme des prdicats ou comme objectifs.
Cest aussi une extension du chanage arrire qui supplante ce dernier car il pallie un
problme qu'il pose. En effet, le chanage arrire pose le problme du retard l'valuation.
Lorsque l'on value un but par chanage arrire, l'valuation peut conduire des conclusions
sur d'autres attributs, qui ne sont pas faites et pour lesquelles d'autres procdures de
chanage arrire sont inutilement invoques.
De l l'ide de combiner le chanage arrire, inefficace lui seul, du chanage avant. Ainsi,
aprs chaque valuation d'une prmisse de rgle, une propagation en avant de cette
valuation est faite pour tirer l'ensemble des conclusions qu'il est possible d'en tirer.

Algorithme du chanage mixte

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 35


7. Exemples d'applications
a. Application pour un diagnostique mdical
Exemple de base de rgles :
R1 Si douleur abdominale et nauses et fivre Alors suspicion maladie de digestion
R2 Si suspicion maladie de digestion et maux de tte et fivre importante et pas de
jaunissement des yeux Alors dysenterie
R3 Si suspicion maladie de digestion et fatigue et coloration jaune de la peau Alors jaunisse
R4 Si suspicion maladie de digestion et fivre importante et douleur irradiante droite Alors
coliques hpatiques
R5 Si suspicion maladie de digestion et faible fivre et douleur vive en bas droite de
l'abdomen Alors appendicite
R6 Si maux de tte Alors suspicion maladie respiratoire
R7 Si toux Alors suspicion maladie respiratoire
R8 Si suspicion maladie respiratoire et douleur la racine du nez et fivre Alors sinusite
R9 Si suspicion maladie respiratoire et irritation de la gorge et sensation de scheresse Alors
inflammation de la gorge
R10 Si inflammation de la gorge et fivre et gorge rouge Alors angine
R11 Si inflammation de la gorge et toux rauque Alors laryngite
R12 Si suspicion maladie respiratoire et crachat mousseux aprs 1/4 h de toux
et respiration rapide Alors oedme aigu du poumon

Exemple de dialogue entre le SE et l'utilisateur:
Entrez le nom de la base : mdecin
Quoi de neuf : respiration rapide
Quoi de neuf : toux
Je dduis : suspicion de maladie respiratoire J'ai utilis la rgle : 7
Quoi de neuf : crachats mousseux aprs 1/4 h de toux
Je dduis : oedme aigu du poumon
J'ai utilis la rgle : 12
Quoi de neuf : .J

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 36

Critiques
Si le SE prcdent a le grand mrite d'tre rapidement ralis, il a en contrepartie
l'inconvnient d'tre, bien sr, trs limit. Nous allons essayer de discerner ses dfauts et de
voir comment un "vrai" systme expert pourrait y remdier.
b. Application sur a base d'arbre de dcision
Raliser un Systme Expert Chose qui devine si la Chose recherche est un animal ou un
une chose non vivante.
Larbre dcision suivante donne un exemple de raisonnement suivi. Quant aux exemples
de trace, ils refltent le dialogue naturel de lIHM entre le Systme Expert (reprsent par la
suite par : ) et lUtilisateur (reprsent par la suite par : ).

Principe d'un arbre de dcision
Exemple de dialogue entre le SE et l'Utilisateur (ex. 1)
(l'UTILISATEUR lance le chanage mixte en demandant au systme de dterminer quelle est
la chose ?)
- chose ?
- est-ce que vivant ?
- NON
- est-ce que roule ?
- NON
- est-ce que meuble ?
- NON
- chose="verre"

Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 37

Exemple de dialogue entre le SE et l'Utilisateur (ex. 2)
(l'UTILISATEUR lance le chanage mixte en demandant au systme de dterminer quelle est
la chose ?)
- chose ?
(l'UTILISATEUR lance le chanage mixte en demandant au systme de dterminer quelle est
la chose ?)

- est-ce que vivant ?
(premire question pose par le SYSTEME EXPERT)
- OUI

- est-ce que vole ?
- NON

- est-ce que domestique ?
- OUI

- est-ce que miaule ?
- OUI

- chose="chat"

Exercice
Extraire les faits et les rgles de productions afin de les utiliser dans le cadre de votre projet
d'application.
Master SIR et SR : Module Logique Infrence et Reprsentation de la connaissance
Filire Ingnieurs LSI : Module Intelligence Artificielle et Systmes Experts
Filire Ingnieurs EEA : Robotique et Intelligence Artificielle
Cours de Mr. AZMANI Abdellah 38

8. Projet de ralisation de Systmes Experts
Des sujets vous seront proposs pour raliser votre premier systme expert. Dans ce qui
suit, vous allez trouver des indications et des algorithmes qui vont vous permettre de faire
votre ralisation. Les lments abords dans cette section seront traits en cours dans le
cadre d'atelier pratiques. De mme, votre ralisation doit tre teste sur la base des deux
exemples d'applications proposs dans cette section.
Indication suivre pour la Ralisation de votre premier SE
Nous allons raliser un petit systme expert possdant les caractristiques suivantes :
architecture classique :
base de faits,
base de rgles
et moteur d'infrence possdant uniquement un chanage avant.
Langage simple et clair pour exprimer un problme diteur de rgles
un langage pour une programmation objet : C++, Java, PHP, Ruby,
Python, ...
un langage pour une programmation logique : Prolog ou Caml
Choisissez une plateforme selon la manire d'utiliser ce premier systme
expert:
Plateforme FULL Web : .Net, J2EE, Ruby On Rails, PHP
Application Desktop utilisable sur un serveur local
tapes suivre pour construire un tel systme expert :
Modliser par une reprsentation UML votre projet (amliorer celle
prsente prcdemment).
Dfinir une syntaxe et raliser un diteur de rgles
Dvelopper et dployer votre application en tenant compte :
Dvelopper une interface Homme-Machine
Gestion de la base des faits
Gestion de la base des rgles
Programmation des modules ou programmes suivants :
Filtrage, Dduction, Chanage avant et Chanage arrire
Faire des essais et apporter des amliorations