Vous êtes sur la page 1sur 56

Système expert

Système expert

Définition et rôle d’un SE

Quelques exemple d’un SE

1
2
L’ère des « systèmes experts »
• Les années 70 et 80 virent un véritable engouement
pour les systèmes experts:
– DENDRAL (en chimie : analyse chimique)
– MYCIN (en médecine : diagnostic médical)
– Hersay II (en compréhension de la parole)
– Prospector (en géologie)
– R1/XCON (Digital Equipment Corporation) :
configuration optimale d’une machine

• Générateurs de systèmes experts


– NEXPERT System
– CLIPS
3
Langages de programmation pour l’IA ?

• LISP (origine américaine)


• PROLOG (France ! Colmerauer)
• SmallTalk (Langage objet)

• Les langages de Frame


– YAFOOL (Yet Another Frame based Object
Oriented Language)
– KL-ONE (Knowledge Language)
• Langage de logique de description

4
Définition d’un système expert
 Pour Edward Feigenbaum ( Stanford ), les systèmes
experts sont des “ programmes conçus pour raisonner à
propos de tâches dont on pense qu'elles requièrent une
expertise humaine considérable.”

L'expertise humaine n'est pas toujours accessible (exemple


de la médecine d'urgence).

 Plus précisément, un système expert est un logiciel


capable de répondre à des questions, en effectuant un
raisonnement à partir de faits et de règles connus. Il peut
servir notamment comme outil d'aide à la décision.
5
Définition d’un système expert
 1. Un SE est un système logiciel informatique particulier, qui est
capable de donner sur un sujet particulier un conseil égal en
qualité à celui qui pourrait être donnée par un expert humain
reconnu.

 2. Les systèmes experts sont des programmes conçus pour


raisonner habilement à propos de tâches dont on pense qu’elles
requièrent une expertise humaine considérable.

 3. Les systèmes experts sont des programmes résolvant des


problèmes qui sont habituellement résolus par des experts
humains. Pour cela, ils requièrent un accès à une base de
connaissances conséquente qui doit être construite de façon
efficiente. Ils doivent même fournir divers modes de
raisonnement et de justifier les conclusions auxquelles ils
aboutissent. 6
Définition d’un système expert

4. “un logiciel intelligent qui utilise des connaissances et des


inférences logiques pour résoudre des problèmes qui sont
suffisamment difficiles pour nécessiter une expertise humaine
important pour trouver une solution” (Feigenbaum 1982).

un système expert est un logiciel qui sait donner des


recommandations, pour un domaine et une application bien
défini, au même niveau d’un expert humain de ce domaine.

7
Définition d’un système expert

 Ils ressort des définitions précédentes qu’un système expert :

• est un logiciel qui contient une base de connaissances sur un

sujet particulier, et

• qu’il est capable de fournir sur ce sujet un conseil égal en qualité

à celui que pourrai donner un expert humain reconnu.

8
Définition d’un système expert

• Dans quelles situations peut-on utiliser des systèmes

experts?

• Quand on peut résoudre le problème par un appel

téléphonique à un expert en moins que 15 minutes.

9
Définition d’un système expert
 But du SE = reproduire le comportement d’un expert humain
(d’un domaine particulier).

 Objectifs : Classification, aide à la décision.

 Nécessite qu’un expert l’alimente en faits et en règles (voir la


partie 2).

10
Exemples de système expert

1. Diagnostic : dans le domaine médical, mais aussi en informatique.

2. Surveillance : Détection de fraudes avec cartes de crédit et téléphones,


aide au surveillance continu des patients.

3. Planning/Scheduling : gestion de personnel, machines, ressources.

4. Finance : aide à l’affectation du crédit immobilier ou du crédit à une


entreprise, calcul des risques pour assurances, prédiction des
marchés.

11
Les systèmes experts sont utiles dans un grand nombre de
situations :
• Besoin de faire le diagnostic de problèmes dans un contexte
donné.
• Besoin de comprendre la nature d'une situation en particulier.
• Besoin de prédire les répercussions d'un événement courant ou
futur.
• Besoin de contrôler un processus ou une activité particulière.
• Besoin de recommandations ou d'une solution pour un problème
particulier.
12
Les bénéfices de l'utilisation de ce type de système sont
nombreux :
• Augmente la rapidité dans la prise de décision.
• Augmente la productivité des experts humains.
• Améliore la consistance dans les décisions.
• Améliore la compréhension des décisions à l'aide d'explication.
• Améliore la gestion de l'incertitude dans les décisions.
• Formalisation de la connaissance sur le domaine du système
expert.
13
Composition d’un système expert

 SE = base de connaissances + moteur d’inférences.

 SE = base de faits + base de règles + moteur


d’inférences.

14
 Un système expert est principalement composé :

 D’une base de connaissances

 D’un moteur d’inférence

 La base de connaissance, constituée de base de faits et de bases


de règles, permet d’accueillir la connaissance spécifique d’un
domaine d’application, qu’elle soit directement fournie par des
experts ou qu’elle soit accumulée par le système lui-même au fil
des expérimentations. 15
 Un système expert est principalement composé :

 d’une base de connaissances

 d’un moteur d’inférence

Le système d’inférence établit une


conclusion grâce à l’information fourni
par l’utilisateur et la base des
connaissances.

16
1. La base des faits
1.1. Faits : Les faits sont des connaissances assertionnelles (expressions très
variées) utilisables pour conditionner, puis réaliser l’exploitation de
connaissances opératoires.

Les faits constituent en général les conditions initiales de résolution,

à partir desquelles des connaissances pourront être utilisées

 Exemple:

- Yasmine habite à Bouira.

- Cette huile a un arrière goût.

17
Les faits sont des faits vérifiés qui sont utilisés pour l'inférence (le

raisonnement).

Exemple: L'âge moyen des stocks de l'entreprise X est de 38 jours.

18
1.2. La base des faits, appelée aussi mémoire de travail, contient les
hypothèses de départ à savoir les données propres au problème à
résoudre.
 Les hypothèses mathématiques d'un problème à résoudre.
 Les éléments permettant de découvrir une maladie.
 etc...

19
 Ces hypothèses peuvent être formalisées différemment suivant les
systèmes.

o Exemple 1.1 :
système expert SPHINX.
FAITS : (fièvre 40°, boutons, amaigrissement ).
o Exemple 1.2 :
système expert EXPERT.
FAITS : (ANIMAL a des plumes),
(ANIMAL vole)

20
 La base des faits s'enrichira progressivement à la demande du
système expert pour qu'il puisse progresser vers la solution.

 Par exemple, avec les faits initiaux de l'exemple 2, le système expert


trouve le fait que ANIMAL est oiseau. La base des faits contiendra :
(ANIMAL a des plumes), (ANIMAL vole), (ANIMAL est oiseau).

 Cette base des faits peut jouer le rôle de mémoire auxiliaire, en


mémorisant tous les résultats intermédiaires.
Ils permettent de conserver une trace des raisonnements effectués
par le système.
Ils peuvent expliquer l'origine des connaissances déduites par le
système expert.
21
La base des Faits

1.3. Type de faits :

 Booléens : vrai, faux


Exemple : activé
 Symboliques : appartenant à un domaine finis de symboles
Exemple : enfant, oiseau
 Réels : représentation des faits continus
Exemple : température.

22
2. La base des règles

 Règle : Une règle contient généralement 02 parties:

 Une partie déclencheur de la règle: ce sont les conditions de


déclenchement de la règle, et

 Une partie effets de la règle.

23
2. La base des règles
En I.A, une règle peut être représentée comme suit:

 Règle = Si <X> alors <Y> (règle de production)

 X = prémisse = conjonction de conditions,


• Condition = « température > 100 » ᴧ « liquide = eau »
 Y = conclusion = (fait = valeur),
• Exemple: « interrupteur = off »

24
2. La base des règles

 Autres exemples:
– Si la température du réacteur dépasse 800° alors descendre les
barres de contrôle

– Si X est un chien alors X est un mammifère

25
2. La base des règles

 Règles : Pour sélectionner une règle particulière, on ne fournit pas un


nom propre individuel à cette règle, mais un groupe de faits
susceptibles d’être compatibles avec les conditions de déclenchement
de la règle.

 la base de règles n’évolue pas au cours des sessions.

 De plus, dans une règle, on ne désigne jamais une autre règle par un
nom individuel.

 Exemple:
26
Composition d’un système expert
 Règles : Pour sélectionner une règle particulière, on ne fournit pas un
nom propre individuel à cette règle, mais un groupe de faits
susceptibles d’être compatibles avec les conditions de déclenchement
de la règle.
De plus, dans une règle, on ne désigne jamis une autre règle par un
nom individuel.
 Exemple:

27
2. La base des règles

A partir d’entretiens avec des experts, on extrait un base de données


avec des connaissances spécifiques à ce domaine.

Généralement, ce sont des règles du type:


Exemple 1:
Si on affecte du personnel pour la garde de nuit et si c’est la soirée d’une
fête nationale alors assurer la présence d’un médecin en plus que pour
une nuit normale.

28
2. La base des règles

Exemple 2:
Si plusieurs retraits de plus de 100 dollars chacun sont fait et si
ces retrait sont fait dans des différents pays alors une
utilisation frauduleuse est très probable (probabilité 0.9)

Généralement, ce sont des règles du type:


si p et q alors r

C’est à dire des formules logiques éventuellement avec des probabilités

29
3. Les connaissances :
3.1. Les types des connaissances :

• Une description des objets constituant le contexte du domaine du


système en I.A., et ceci sous plusieurs formes :
• Description-classification :
"le canari est un oiseau".
• Description-structure :
"le part-brise est un élément de la carrosserie d'une voiture,
d'un camion, d'un car".
• Description-définition :
"une chaise est un meuble qui a 4 pieds, 1 dossier et 1
siège".

30
3. Les connaissances :
3.1. Les types des connaissances :

• Des connaissances opérationnelles sur les objets décrits


précédemment ; elles indiquent :
• Des lois, des théorèmes :
"la vitese est donnée par la distance parcourue sur le temps mis
pour la parcourir".

• Des règles d'expertise :


"si un oiseau est jeune, alors c'est un canari".

• Des stratégies :
"si golf alors consulter les sports individuels". 31
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

Tous les types de représentations des connaissances partagent deux


caractéristiques:
 Elles peuvent être programmées à l'aide d'un langage de
programmation courant et elles peuvent être stockées en
mémoire.

 Leur modélisation permet d'utiliser les connaissances afin de


faire du raisonnement.

32
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

 Pour exprimer ces connaissances, il conviendra de choisir un


formalisme, c-à-d un mode de représentation.

 Le choix du formalisme à utiliser dépend à la fois :


- du domaine d'application,
- des opérations à mettre en œuvre sur ces
connaissances (type de problème à résoudre) et
- des pré-requis du modélisateur.

33
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

 Il existe une pléthore de formalismes.

Formalisme

Approches non logiques Approches


(structures de données) logiques

Logiques Logiques de
Réseaux Graphes classiques
conceptuels description (famille
sémantiques (propositionnel, des logiques modales)
1er ordre, 2ème
34
ordre)
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
Les formalismes les plus répandus sont:

 Représentations à base de règles de productions

• La logique des prédicats du 1er ordre, etc.

 Représentations à base de schémas


• Notion d’ontologie
– Catégories. Héritage. Notion de généralité. …

35
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
 Représentations à base des objets

 Représentations à base des réseaux de neurones.

36
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
Possède
• Réseaux sémantiques : Est une sorte de
Est un

ORGANES CHEVEUX

HUMAIN

HOMME FEMME

37
RAYANE ANIS YASMINE SABRINE
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

• Sous forme d'objet, frame, schémas :


« Frames »: La représentation « frames» est une application de la
programmation orientée objet.

Il s'agit de représenter chaque objet dans la base de connaissances


par un «frame ».

Les connaissances dans un «frame» sont divisées en «slots».


Chaque «slot» peut contenir des connaissances déclaratives (faits)
38
ou bien des connaissances procédurales.
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

• Sous forme d'objet, frame, schémas :

On peut donc dire que les «slots » sont les attributs qui décrivent
l'objet qui est représenté par le « frame ».
De plus, chaque « slot » peut contenir une ou plusieurs facettes.
Les facettes servent à décrire les connaissances sur les attributs
(« slots »).
De plus, comme cette représentation est directement influencée de
l'orienté objet, il est possible de créer une hiérarchie de « frames ».
39
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
• Hiérarchie de « frames » (base de connaissances sur des Véhicule).

40
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

 La plupart des systèmes experts utilisent une représentation des


connaissances à règles de production.

• N.B. : Certains S.E. combinent plusieurs formalismes.

41
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
Règles de production (Production rules) :
Les connaissances y sont représentées sous la forme de pairs condition-
action

SI une condition survient ALORS une action doit être déclenchée


Exemple: si Thomas est un homme alors Thomas est mortel.

Employé pour représenter des connaissances très variées:

42
3. Les connaissances :
3.2. La représentation des connaissances en I.A :
Expressivité des règles

 Ordre 0 : logique des propositions


 Si Ferrari et Rayane alors rapide

 Ordres 0+ : logique des propositions typée (attribut-valeur)


 Si voiture = Ferrari et pilote= Rayane alors vitesse = rapide

 Ordre 1 : logique des prédicats


 X,Y : Si voiture(X) et X= Ferrari et pilote(X,Y) et Y= Rayane alors rapide(X)

 Ordre 2 : logique d’ordre 2


∀R, X,Y : Si type(R)=symétrique et R(X,Y) alors R(Y,X) 43
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

La logique
 Les logiques se définissent par :

 leur syntaxe
 leur règles d’inférence
 leurs sémantiques (de la vérité, de la preuve)

44
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

Il y a plusieurs avantages à utiliser les règles de productions :

- Les règles sont facilement compréhensibles.


- L'inférence y est facilitée.
- Les modifications et la maintenance sont relativement faciles.
- Bien souvent, les règles sont indépendantes les unes des autres.

45
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

Il Y a aussi des limitations à utiliser les règles de productions :

- Lorsque l'on est en présence de connaissances plus complexes qui


requièrent un très grand nombre de règles, l'utilisation et la
maintenance du système peuvent y être plus difficiles.

- Comme elles sont faciles d'utilisation, les concepteurs de base de


connaissances ne considèrent pas assez les autres types de
représentations dans leur choix de représentation.

46
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

 La représentation des connaissances est liée au sujet traité.


 La logique propositionnelle pour la démonstration automatique
de théorèmes mathématiques...

 Les réseaux sémantiques pour l'analyse du langage naturel,


la traduction automatique.

 Les règles de production pour la description d'un domaine


circonscrit parfaitement connu par un expert.
 etc... 47
3. Les connaissances :
3.2. La représentation des connaissances en I.A :

 C'est dans la base de connaissance que seront stockées les


connaissances ou le savoir qui nous permettront par exemple :

 de jouer aux échecs,


 de traduire du français en anglais et vice-versa,
 de reconnaître des profils d'avions , de bâteaux...,
 de résoudre des problèmes mathématiques.

48
4. Moteur d’inférence
 Le moteur d’inférence est un programme indépendant chargé d’exploiter les
connaissances et les faits pour mener un raisonnement. Il s’arrêtra lorsqu’il aura
acquis les faits nécessaires pour aboutir à une conclusion.

 C’est un module qui implémente des algorithmes capables de raisonner à


partir des informations contenues dans la base de connaissances, de faire des
déductions, d’induire de nouveaux faits,…etc.

 Le moteur d’inférence est le cœur de tout système expert.

49
4. Moteur d’inférence

But du moteur d’inférence : inférer de nouvelles connaissances à


partir de la base de connaissance.

Un moteur d’inférence est caractérisé par les éléments suivants:

 Un cycle de base.

 Des méthodes de chaînage (à détailler ce point plus tard).

 Une stratégie de recherche.

50
4. Moteur d’inférence
Le cycle de base d’un moteur d’inférence est dit cycle d’évaluation-
exécution

 La phase d’évaluation comprend trois étapes:


- La sélection (restriction) : d’un ensemble de règles pouvant s’appliquer à la
base de faits actuelle.
- Le filtrage
- La résolution de conflit : choix de la meilleure à appliquer.

51
4. Moteur d’inférence
• L’étape de sélection (ou de restriction) détermine, à partir d’un état présent ou

passé de la base des faits et d’un état présent ou passé de la base des règles, un

sous ensemble de faits F1 et un sous ensemble de règles R1 qui, à priori,

méritent d’être comparé lors de l’étape de filtrage qui suit.

• Cette étape de restriction permet une économie de temps au profit de l’étape

suivante.

52
4. Moteur d’inférence
• L’étape de filtrage, au cours de laquelle le moteur d’inférence compare la

partie prémisse de chacune des règles du sous ensemble R1 par rapport au sous

ensemble F1 des faits afin de déterminer l’ensemble R2, sous ensemble de R1,

des règles applicables.

53
4. Moteur d’inférence
• L’étape de résolution de conflits qui se concrétise par le choix de la (ou les)

règle(s) à appliquer. Ce choix peut se faire selon des critères simples et sans

rapport avec le contexte:

 Les premières règles d’une liste de règles, ou

 Les règles ayant le plus grand nombre de prémisses, ou

Les règles ayant le moins de conditions à vérifier,

 Etc.

Donc c’est une heuristique 54


4. Moteur d’inférence
Qu’est ce qu’une heuristique?

Par exemple, il faut calculer le nombre de conditions (prémisses) dans cette


règle et comparer toutes les règles de conflits ou bien applicable dans un
cycle donné, les comparer à base de son nombre de prémisses, donc
prendre celle qui a le plus grand nombre.

En cas d’égalité, la priorité est à la règle ayant le plus petit indice.

Donc, avec cette technique, on résout les conflits entre les règles.

55
4. Moteur d’inférence
 La phase d’exécution (2ème partie) de chaque cycle, comprend une étape :

- Déclenchement : exécution de la règle .

 Elle consiste à activer la règle choisie lors de la phase précédente.

 Cette action permet généralement d’ajouter un ou plusieurs faits à la base

de faits.

56

Vous aimerez peut-être aussi