Vous êtes sur la page 1sur 47

Chapitre 3:

Systèmes experts
Objectif du cours: aborde des définitions d’un système expert, son
architecture, le chainage avant et le chainage arrière, les avantages et les
inconvénients des systèmes experts.

Dr. Ouarda ZEDADRA


Maître de Conference Habilité au Département d’Informatique
Membre au LabSTIC- Equipe ML
Bureau au Département : E8.2 ou au LabSTIC
zedadra.ouarda@univ-guelma.dz
zedadra_nawel1@yahoo.fr

Dr. Ouarda ZEDADRA IA 1


Introduction

• Bien souvent, on aimerait qu’un ordinateur soit capable de nous


donner une information que l’on ne connait pas à partir de faits
connus.
• Les êtres humains eux-mêmes ne savent pas toujours déduire de
nouveaux faits à partir d’autres faits qui leur sont connus et
nécessitent l’aide d’un expert. Exemple: dans le cas d’une panne automobile, la
majorité des personnes ne peuvent pas déterminer l’origine de celle-ci et se tourne
alors vers le garagiste (l’expert), ce dernier, grâce a ses connaissances, va pouvoir
trouver la panne et la réparer.

• Exemples d’emplois constitués de ces experts: les médecins, les


assureurs ou les agents immobiliers…etc

Dr. Ouarda ZEDADRA IA 2


Introduction

• L’IA peut nous aider, en créant un programme informatique appelé


système expert qui jouera le rôle de ce professionnel.
• Dans les domaines vastes comme par exemple la médecine, cet outil
pourra devenir une aide au spécialiste lui-même.
• Dans la majorité des cas, le système expert est suffisant, mais c’est
rare que l’expert humain puisse être complètement remplacé:
• Il sera souvent là pour confirmer la conclusion du système, en lui faisant tout
de même gagner un temps précieux.
• Complété le premier diagnostic donné par les système expert. Les pannes très
rares par exemple.

Dr. Ouarda ZEDADRA IA 3


Introduction

• Les systèmes experts ont été parmi les premières applications


réussies de d'IA.
• Les systèmes experts sont le résultat d'une nouvelle approche de
l'IA appelée système a base de règles.
• Les systèmes experts sont également connus sous: système a base
de connaissances, ou systèmes à base de règles

Dr. Ouarda ZEDADRA IA 4


Définitions [Systèmes experts]
• Un système expert est un système informatique qui simule la capacité de
prise de décision d'un expert humain. Conçu pour résoudre des
problèmes complexes en raisonnant sur les connaissances comme un
expert.

• Typiquement, un tel système contient une base de connaissances


contenant l'expérience accumulée et un ensemble de règles pour
appliquer la base de connaissances à chaque situation particulière qui est
décrite au programme.

• Ce sont des programmes intelligents qui ont la capacité de fournir une


expertise dans la résolution de problèmes en utilisant les connaissances
spécifiques au domaine d'un expert humain.

• Les systèmes experts sophistiqués peuvent être améliorés par des ajouts à
la base de faits ou à l'ensemble de règles.

Dr. Ouarda ZEDADRA IA 5


Objectifs des systèmes experts

• Capturer aisément les unités du savoir: Faciliter l’expression des règles


p/p à leur forme d’émergence chez les experts.
• Exploiter l’ensemble des unités du savoir faire:
– Combiner et/ou chaîner des groupes de règles pour inférer des
connaissances : preuves, prise de décisions, modèles de prédictions,
diagnostic, découverte de nouvelles règles, etc.
– Rendre compte de la manière dont les nouvelles connaissance ont été
inférées.
• Supporter aisément la révision de l’ensemble des unités du savoir
faire: Offrir des facilités pour les ajouts et suppression de règles.
• Informatisation de tâches intellectuelles assurées par des Experts
dans leurs domaines: ingénieurs, etc.
• Extraire des SE les mécanismes universels de raisonnement
réutilisables d’un domaine à l’autre.
Dr. Ouarda ZEDADRA IA 6
Architecture et composants d’un système expert
• Un système expert est constitué de différentes parties liées entre elles:
1. Base de connaissance: composé d’une base de règles qui représente les
connaissances de l’expert, d’une base de faits qui représente les
connaissances actuelles du système sur un cas précis.
2. Un moteur d’inférence pour appliquer les règles.
3. Une interface avec l’utilisateur.
• Le schéma suivant montre les liens entre ces différentes parties, qui
seront détaillées ensuite:

Dr. Ouarda ZEDADRA IA 7


Composants d’un système expert
Interface utilisateur

• Elle assure l'échange (communication) entre l'utilisateur et le système.

• L'interface utilisateur peut être une interface orientée texte ou une


interface graphique, qui est décidée au moment de la conception du
système expert. Cependant, une interface graphique est généralement
choisie car elle est plus conviviale.

• L'utilisateur peut saisir des commandes et répondre aux questions, soit en


une seule fois avant de lancer le processus, soit au fur et à mesure des
besoins du moteur d’inférences. Le système répond aux commandes et
pose des questions pendant le processus d'inférence.

Dr. Ouarda ZEDADRA IA 8


Composants d’un système expert
Interface utilisateur
• Dans un système expert, il est primordial que les choix dont dispose
l’utilisateur soient clairs, pour qu’il puisse répondre correctement aux
questions posés, sans quoi le résultat retourné serait faux.
– Dans le cas de reconnaissances d’insectes par exemple, si le logiciel demande si celui-ci
possède des cerques (appendices situés à l'extrémité de l'abdomen de l'insecte) ou des
cornicules (est un tube que l'on trouve sur le dos de certains insectes), il y a peu de
chances qu’un utilisateur non entomologiste puisse répondre correctement. Par
contre, si on lui demande si le corps se finit par deux longues points (cerques), il y
aura moins d’erreurs ou de confusions. Une photo ou un dessin serait encore plus
parlant pour l’utilisateur.
• L’acceptabilité d’un système expert dépend de la qualité de l’interface
utilisateur. Si l’interface n’est pas agréable à utiliser ou si elle est trop
complexe, le système sera peu ou pas utilisé.
• Il est donc important de travailler sur l’ergonomie avec de futurs utilisateurs
ou des représentants des utilisateurs, de manière à savoir quels termes
seraient les plus adaptés pour limiter les erreurs.
Dr. Ouarda ZEDADRA IA 9
Composants d’un système expert
Base de règles
• Un système expert contient un ensemble de règles nommé base de règles.
Celles-ci représentent les connaissances de l’expert sur le domaine.
• C’est l’ensemble des règles de production pouvant être appliquées aux FAITS
pour déduire de nouveaux FAITS.
• Ces règles sont toujours de la forme: SI (ensemble de conditions) ALORS
nouvelle connaissance.  règle de production
• Les conditions de l’application d’une règle sont appelées prémisses. Il peut y
avoir plusieurs prémisses, elle sont alors reliées par une coordination ET,
signifiant qu’elles doivent toutes être vraies pour que la règle s’applique.
• Les nouvelles connaissances sont appelées conclusions.
• Il existe également d'autres moyens de représenter les
connaissances comme les frames, les scripts, les réseaux
sémantiques (chapitre séparé…)

Dr. Ouarda ZEDADRA IA 10


Composants d’un système expert
Base de règles
• une règle exprime l'expertise. C'est l'entrepôt des connaissances
spécifiques au domaine capturées par des experts humains via le
module d'acquisition de connaissances.
• Cinq étapes sont nécessaires pour construire une base de
connaissances:
1. Acquisition de connaissances;
2. Analyse et représentation des connaissances (quel formalisme de représentation de
connaissances utilisé!!!);
3. Validation des connaissances;
4. Conception d'inférence;
5. Explication et justification

Ce ne sont pas des étapes qui doivent se succéder - certaines d’entre


elles se dérouleront simultanément.

Dr. Ouarda ZEDADRA IA 11


Composants d’un système expert
Base de règles

• Il y a plusieurs avantages à représenter les connaissances par des


règles:
1. Acquisition et maintenance: étant donné que les connaissances
des experts du domaine sont codées sous forme de règles dans la
base de connaissances, un expert du domaine peut lui-même définir
et maintenir la règle.
2. Explication: si les connaissances peuvent être représentées sous
forme de règles, il est également possible d'expliquer aux
utilisateurs la conclusion atteinte. Par exemple, considérons une
chaîne d'inférence qui a conduit à un diagnostic. Nous pouvons
ensuite utiliser ces faits pour expliquer comment un tel diagnostic a
été atteint.

Dr. Ouarda ZEDADRA IA 12


Composants d’un système expert
Base de faits
• Les prémisses d’une règle peuvent être de deux types:
– Des connaissances sur le problème fournies par l’utilisateur du système: ce sont
les entrées.
– Des connaissances issues de l’application de règles: ce sont les faits inférés.
• Ces deux types de connaissances doivent être enregistrés dans une base de
faits qui contient donc toutes les informations sur le problème.
• Lorsqu’on lance un système expert, la base ne contient initialement que les
connaissances de l’utilisateur (les entrées) et se remplit petit à petit des faits
inférés.
• Généralement, c’est le dernier fait ajouté qui intéresse vraiment l’utilisateur: il
s’agit du but du programme.
• On peut concevoir un système expert qui permet de savoir si un fait est vrai ou
non. Dans ce cas, on regarde si le fait donné est dans la base de faits après
application des règles.

Dr. Ouarda ZEDADRA IA 13


Composants d’un système expert
Moteur d’inférence

• Le moteur d’inférence (ou système d’inférences) est le cœur du système


expert.
• Le rôle du moteur d’inférences est de simuler la réflexion de l’expert
humain.
• Permet aux systèmes experts de conduire des raisonnements logiques et de
dériver des conclusions à partir de la base de faits et de la base de
connaissances
• Exploite la BC en fonction du contenu de la BF afin de mener un
raisonnement sur le problème posé
• Indépendant de tout domaine d'application (utilisant même langage
d’expression de connaissances et les mêmes heuristiques de résolution de
conflit)
• Exploite la BR en consultant la BF, pour déduire de nouveaux faits

Dr. Ouarda ZEDADRA IA 14


Composants d’un système expert
Moteur d’inférence
• L’ajout des faits que l’on sait faux est aussi intéressant que celui des faits
que l’on sait justes. Exemple: dans un jeu, il faut retrouver un personnage
parmi plusieurs en ne posant que des questions dont les réponses sont oui ou
non, exemple ‘le personnage porte-t-il un chapeau?’. Que la réponse soit positive
ou non, cela apporte de la connaissance. En effet, savoir qu’il ne possède pas de
chapeau permet d’éliminer les personnages en possédant.
• Un moteur doit pouvoir prendre une décision importante: celle de s’arrêter
pour présenter à l’utilisateur la réponse à sa question. Il doit donc savoir quand
un but est atteint, ou quand il ne le sera jamais.
• Les moteurs implémentent un mécanisme permettant de retrouver toutes les
règles utilisées pour arriver à un fait donné. L’utilisateur obtient le
raisonnement en plus du résultat, ce qui peut être très important dans certains
domaines.
• De nombreux moteurs d’inférence sont disponibles ou peuvent être codés dans
n’importe quel langage de programmation. Certains langages ont cependant été
créés dans le but d’implémenter des moteurs d’inférences. Ils correspondent à
la famille des langages de programmation logique comme Prolog.
Dr. Ouarda ZEDADRA IA 15
Composants d’un système expert
résolution d’un conflit par le moteur d’inférence
• Le Moteur d’Inférence choisit les Règles qui doivent être effectivement
déclenchées selon une stratégie : heuristiques
• Pour résoudre le conflit, entre plusieurs règles à priori applicables suivant
une configuration de la BF, le système doit choisir une ou plusieurs Règles
suivant certaines heuristiques :
– La première règle qui s’applique au contrôle;
– La règle la plus propriétaire suivant un ou plusieurs critères définis par
l’expert;
– La règle se référant à un élément le plus récemment ajouté;
– Déclenchement prioritaire des règles amenant le plus grand nombre de
conclusions;
– Ne pas choisir, explorer toutes les règles applicables en parallèle;
– Arbitrairement ;

Dr. Ouarda ZEDADRA IA 16


Composants d’un système expert
Types d’inférences

• Un moteur d'inférence est un algorithme d'exploration d'un espace


d‘états utilisé par un système expert.
• Vu que les règles de la base de connaissances peuvent contenir des
variables, le moteur d’inférence utilise un algorithme d’unification.
• Les moteurs d’inférences peuvent enchaîner les règles de différentes
façons: chainage avant et chainage arrière, mais il existe des
moteurs possédant un chainage mixte.

Dr. Ouarda ZEDADRA IA 17


Types d’inférences
Chainage avant/ définition et principe

• Un moteur à chainage avant est aussi appelé à inférences dirigé par les
données.
• Pour déduire un F particulier, on déclenche les Règles dont les prémisses
sont connues jusqu‘à ce que le F à déduire soit connu ou qu'aucune
Règles ne soit plus déclenchable.
• Utilise la règle d’inférence: le modus Ponens : de P et de si P  Q alors Q
est (on déduit Q).
• Le système n’a pas de but, il déclenche des règles jusqu’à épuisement ou
arrêt.
• Le fait à établir peut ne pas être connu, saturation de la BC (déduire tous
les faits déductibles).

Dr. Ouarda ZEDADRA IA 18


Types d’inférences
Chainage avant/ algorithme
ceci consiste à trouver parmi
toutes les règles celles dont la
partie condition est vraie et à en
choisir une à l'aide d'une
fonction de choix.

une fois la règle choisie, le


programme exécute sa partie
action ou conclusion.

en logique des propositions, il est


inutile d'appliquer plus d'une fois
la même règle. Ainsi, les règles
utilisées sont rendues inactives.

• Le but souhaité est-il démontré ? : cet algorithme suppose que l'utilisateur du moteur veut obtenir une
proposition particulière, but du problème. Si ce fait vient d'être obtenu, il est inutile de poursuivre le
travail.
• Dans le cas où aucun but particulier n'est demandé, le moteur fonctionne jusqu'au moment où
aucune règle n'est applicable (condition d'arrêt). On dit alors que le moteur fonctionne par saturation.

Dr. Ouarda ZEDADRA IA 19


Types d’inférences
Chainage avant/ application à un exemple

• Soit la base de connaissances suivante:


– Base de faits initiale (BF): {H, K}.
– Base des règles :
R1: A --> E
R2: B --> D
R3: H --> A
R4: E et G --> C
R5: E et K --> B
R6: D et E et K --> C
R7: G et K et F --> A
• Prouver le but C en appliquant un chainage avant.

Dr. Ouarda ZEDADRA IA 20


Types d’inférences
Chainage avant/ application à un exemple

• on part de la base de faits initiale; on déclenche toutes les


règles dont les prémisses sont satisfaites ; on ajoute les faits
ainsi obtenus ; on poursuit jusqu'à ce que le but est atteint ou il
y a "saturation" .
• la chaîne de dérivation obtenue est la suivante :
• H --> A, R3 et la base de faits BF devient ; BF = {A,H,K}
A --> E, R1 et BF= {A,E,H,K}
E et K --> B, R5 et BF = {A,B,E,H,K}
B --> D, R2 et BF = {A,B,D,E,H,K}
D et E et K --> C, R6 et BF = {A,B,C,D,E,H,K}

Dr. Ouarda ZEDADRA IA 21


Types d’inférences
Chainage avant/ application à un exemple

Dr. Ouarda ZEDADRA IA 22


Types d’inférences
Chainage avant/ application à un exemple

Cycle Règles de conflit Règle a appliquée B.F


1 R4, R5, R8 R4, R5, R8 {A,D,E,G,C,B,T}
2 R1, R3 R1, R3 {A,D,E,G,C,B,T,H,S}
3 R7 R7 {A,D,E,G,C,B,T,H,S,R}
4 R9 R9 {A,D,E,G,C,B,T,H,S,R,F}

Dr. Ouarda ZEDADRA IA 23


Types d’inférences
Chainage arrière/ définition et principe

• Dits aussi dirigés par le but.


• Dans ce mode de chainage, on part des faits que l’on souhaiterait obtenir et on
cherche une règle qui pourrait permettre d’obtenir ce fait. On rajoute alors
toutes les prémisses de cette règle dans les nouveaux buts à atteindre.
• On répète, jusqu’à ce que la liste des buts est vide ou on arrive a un échec.
• Ces mécanismes ont donc un mécanisme (le backtracking) leur permettant de
passer à une nouvelle règle, qui serait un nouveau moyen de prouver le fait.
• Si plus aucune règle ne peut mener au but recherché, alors celui-ci est
considéré comme faux.
• Ce mode de chainage est celui présent par défaut dans le langage Prolog, dédié
aux systèmes experts.

Dr. Ouarda ZEDADRA IA 24


Types d’inférences
Chainage arrière/ algorithme

Dr. Ouarda ZEDADRA IA 25


Types d’inférences
Chainage arrière/ application à un exemple

• Soit la base de connaissances suivante:


– Base de faits initiale (BF): {H, K}.
– Base des règles :
R1: A --> E
R2: B --> D
R3: H --> A
R4: E et G --> C
R5: E et K --> B
R6: D et E et K --> C
R7: G et K et F --> A
• Prouver le but D en appliquant un chainage arrière.

Dr. Ouarda ZEDADRA IA 26


Types d’inférences
Chainage arrière/ application à un exemple
• on cherche à démontrer si le fait D est vérifié (but recherché);
• On regarde toutes les règles qui ont le but dans leurs conséquences.
Chacune de ces règles est considérée : si toutes ses prémisses sont
satisfaites dans la base de faits initiale, le but est atteint, sinon on
enregistre les prémisses inconnues comme autant de nouveau buts
et on recommence le cycle sur chacun d'eux.
– On considère la règle R2 et on définit B comme nouveau but.
– On considère alors la règle R5 et on définit E comme nouveau
but (puisque K est dans la base des faits).
– On considère alors la règle R1 et on définit A comme nouveau
but.
– On considère alors les règles R3 et R7. R3 permet de conclure.

Dr. Ouarda ZEDADRA IA 27


Types d’inférences
Chainage arrière/ application à un exemple

Dr. Ouarda ZEDADRA IA 28


Types d’inférences
Chainage arrière/ application à un exemple

Dr. Ouarda ZEDADRA IA 29


Domaines d’application des systèmes experts

• Aide au diagnostic: grâce a leur base de règles, ils vont pouvoir tester et
éliminer différentes possibilités jusqu’à en trouver une ou plusieurs probables.
On les retrouve ainsi dans les applications médicales pour aider au diagnostic
de certaines maladies.
• On peut citer MYCIN qui permet de déterminer quelle bactérie se trouve dans le
corps d’un patient et quel traitement (type d’anti biotique et posologie) lui
administrer pour l’aider a guérir. CADUCEUS, une extension de MYCIN
permettant de déterminer plus de 1000maladies du sang.
• On les retrouve aussi dans nos ordinateurs lorsqu'une panne ou un défaut est
détecté et que le système nous pose différentes questions avant de nous donner
une procédure à suivre pour tenter de réparer cette panne (l’assistant de
Microsoft Windows en est un bon exemple).

• Utilisés aussi dans les objets connectés que l’on utilise dans la vie quotidienne
(bracelets permettant de suivre notre santé en temps réel)
Dr. Ouarda ZEDADRA IA 30
Domaines d’application des systèmes experts

• Estimation des risques: à partir des différentes règles de l’expert,


le logiciel pourra estimer les risques, de manière à pouvoir y faire
face ou tenter de les éviter.
• Exemples de systèmes experts capables de déterminer les risques
sur les constructions: Mistral, Damsafe et Kaleidos.
• Dans le domaine médical, il existe aussi des systèmes experts pour
déterminer les populations à risque, par exemple pour déterminer la
probabilité d’une naissance prématurée lors d’une grossesse.
• Ils sont utilisés aussi en détection des fraudes en retrouvant les
transactions qui paraissent anormales (par exemple pour
déterminer si une carte bleue a été volée).

Dr. Ouarda ZEDADRA IA 31


Domaines d’application des systèmes experts

• Planification et logistique: les systèmes experts permettant de


tester plusieurs possibilités en suivant des règles sont très adaptés
à la création de plannings devant respecter différentes contraintes
imposés.
• On les retrouve ainsi dans tous les domaines nécessitant de la
planification: pour les emplois du temps dans les écoles, pour les
vols dans les aéroports, pour l’utilisation des salles d’opération
dans les hôpitaux.
• Ils permettent d’optimiser le rangement dans les entrepôts ou les
tournées de livraison en logistique.

Dr. Ouarda ZEDADRA IA 32


Domaines d’application des systèmes experts

• Transfert de compétences et connaissances : les systèmes


experts manipulent des connaissances, et c’est intéressant de les
utilisés pour le transfert de compétences.
• Les systèmes experts peuvent manipuler les connaissances d’un
expert pour en faire de nouveaux faits, inconnus jusqu’alors. La
démonstration automatique consiste donc à donner au système des
faits (mathématiques par exemple) et des règles indiquant comment
les combiner. On laisse alors le logiciel trouver de nouvelles
démonstrations pour des théorèmes connus, ou cherche de
nouveaux théorèmes.

Dr. Ouarda ZEDADRA IA 33


Domaines d’application des systèmes experts

• S’applique aussi à d’autres domaines: comme les outils actuels de


traitement de texte proposent tous des correcteurs orthographiques
et grammaticaux. Si l’orthographe se base seulement sur la
connaissance ou non des mots tapés, la grammaire est beaucoup
,plus complexe et demande un expert contenant les différentes
règles.
• Les systèmes experts peuvent donc se retrouver dans tous les
domaines où un expert humain est utile, ce qui leur donne une
grande capacité d’adaptation et de nombreuses applications.

Dr. Ouarda ZEDADRA IA 34


Avantages des systèmes experts
• Disponibilité rapide et possibilité de se programmer: un
système expert peut être écrit beaucoup plus rapidement qu'un
programme conventionnel, par des utilisateurs ou des experts.
• Capacité à exploiter une quantité considérable de
connaissances: Le système expert utilise une base de règles, ce qui
signifie que le volume de connaissances à programmer n'est pas
une préoccupation majeure. Que la base de règles comporte 10
règles ou 10 000, le fonctionnement du moteur est le même.
• Évolutivité: Faire évoluer un système expert signifie ajouter,
modifier ou supprimer des règles. Étant donné que les règles sont
rédigées dans un langage simple, il est facile d'identifier celles qui
doivent être supprimées ou modifiées.

Dr. Ouarda ZEDADRA IA 35


Avantages des systèmes experts

• Préservation et amélioration des connaissances: Des


connaissances précieuses peuvent disparaître avec le décès, la
démission ou le départ à la retraite d'un expert. Enregistré dans un
système expert, il devient éternel. Développer un système expert
implique d'interroger un expert et de faire prendre conscience au
système de ses connaissances. Ce faisant, il reflète et enrichit les
connaissances des experts.
• Transparent: Un système expert est transparent, c'est-à-dire qu'il
peut expliquer ou justifier naturellement son raisonnement. La
connaissance peut être représentée de manière déclarative sans
affecter son utilisation.

Dr. Ouarda ZEDADRA IA 36


Avantages des systèmes experts

• La pédagogie: Les moteurs qui fonctionnent selon la vraie logique


sont capables d'expliquer à l'utilisateur dans un langage clair
pourquoi il pose une question et comment il est arrivé à chaque
déduction. Ils montrent les connaissances de l'expert contenues
dans le système expert. Ainsi, l'utilisateur peut apprendre cette
connaissance dans son contexte. De plus, ils peuvent communiquer
leurs déductions étape par étape. L'utilisateur a des informations
sur son problème avant même que la réponse finale ne soit donnée
par le système expert.

Dr. Ouarda ZEDADRA IA 37


Inconvénients des systèmes experts

• Les inconvénients de l'utilisation de systèmes experts incluent


qu'ils ne couvrent généralement qu'un spectre étroit.
• Ils ne peuvent pas répondre de manière créative. Les systèmes
experts ne peuvent pas tirer d’analogies à partir d’autres sources
pour résoudre des problèmes nouvellement rencontrés comme le
ferait un humain.
• Des erreurs peuvent survenir dans la base de connaissances et
conduire à de mauvaises décisions.

Dr. Ouarda ZEDADRA IA 38


Inconvénients des systèmes experts

• Les experts humains s'adaptent automatiquement aux


environnements changeants; les systèmes experts doivent être
explicitement mis à jour.
• Les experts humains ont à leur disposition un large éventail
d'expériences sensorielles; les systèmes experts dépendent
actuellement d'une entrée symbolique.
• Bien que peu coûteux à exploiter, les systèmes experts sont
coûteux à développer et à entretenir.

Dr. Ouarda ZEDADRA IA 39


Rôles des personnes qui interagissent avec le
système
• L'équipe de développement d'un système expert compte cinq
membres: l'ingénieur des connaissances, l'expert du domaine,
l'utilisateur final, le programmeur et le chef de projet.

Dr. Ouarda ZEDADRA IA 40


Rôles des personnes qui interagissent avec le
système
• Ingénieur de connaissance: La responsabilité de l’ingénieur de
connaissance est d’interagir avec l'expert et la base de
connaissances.
• L'ingénieur de connaissances, après avoir acquis des
connaissances, décide du schéma de représentation de ces
connaissances et décide également du langage de programmation
pour l'encodage des connaissances. Le rôle de l’ingénieur des
connaissances ne se limite pas à l’acquisition et à la représentation
des connaissances. Il est également responsable des tests et de la
révision du système expert.

Dr. Ouarda ZEDADRA IA 41


• Programmeur: Le programmeur est responsable de l'utilisation
du langage de programmation choisi par l'ingénieur des
connaissances pour encoder les connaissances. Les langages de
programmation AI sont LISP et PROLOG, le programmeur doit
donc avoir de solides compétences dans ces langages, en plus
d'autres langages comme C, C ++ et Java.
• Chef de projet: Le chef de projet est responsable de la gestion du
développement global du système expert. Il maintient le projet sur
la bonne voie et coordonne avec le reste des membres de l'équipe.
• Utilisateur: L'utilisateur final est la personne qui utilise
finalement le système expert développé. C'est lui qui consultera le
système pour obtenir des conseils qui auraient été fournis par
l'expert. L'utilisateur doit sentir que le système est convivial.
• Expert de domaine: c’est la source de la connaissance, il doit
savoir comment transférer et utiliser la connaissance.

Dr. Ouarda ZEDADRA IA 42


Exercices
Chainage avant/ Chainage arrière

• A partir de la base de faits : B, C et des règles suivantes, cherchez le but H en


chainage avant et en chainage arrière:
 R1: B, D, E F
 R2: G, D  A
 R3: C, F  A
 R4: B  X
 R5: D  E
 R6: X, A  H
 R7: C  D
 R8: X, C  A
 R9: X, B  D
• Lorsque plusieurs règles sont en compétition, on prendra la première.
Dr. Ouarda ZEDADRA IA 43
Exercices/ Chainage arrière

• Résoudre le problème suivant par chaînage arrière : Base de faits initiale E,F
• On cherche à démontrer C.
• Base de règles
 R1 : E,B  C
 R2 : B,D  A
 R3 : J,H  B
 R4 : D,E  B
 R5 : B,D  F
 R6 : E,F  D

Dr. Ouarda ZEDADRA IA 44


Exercices/ Chainage avant Profondeur
• Base de faits initiale : I, L, M
• Base des règles
 R1 : A → B
 R2: A → C
 R3 : C → E
 R4 : M → C
 R5 : I,K → A
 R6 : M,L → A
 R7 : I,B → D
 E, D  F
 K, F  M
 L,E  F
• Chaînage avant en profondeur jusqu’à saturation.
• Chaînage avant largeur avec le but F.

Dr. Ouarda ZEDADRA IA 45


Exercices/ Chainage avant largeur

• Base de faits initiale : I, L, M


• Base des règles
 R1 : A → B
 R2: A → C
 R3 : C → E
 R4 : M → C
 R5 : I,K → A
 R6 : M,L → A
 R7 : I,B → D
 E, D  F
 K, F  M
 L,E  F
• Chaînage avant largeur avec le but F.

Dr. Ouarda ZEDADRA IA 46


Merci !!

Commentaires et questions

Dr. Ouarda ZEDADRA IA 47

Vous aimerez peut-être aussi