Vous êtes sur la page 1sur 101

Chapitre 2

Les systèmes à base de connaissances

Safa BEN SALEM


2023-2024
Introduction

L’intelligence artificielle (IA) est la branche de l'informatique qui


consiste à concevoir des systèmes intelligents, c'est-à-dire qui soient
capables de produire un raisonnement proche de celui de l'être
humain. Ces systèmes intelligents sont en général à base de
connaissances.

Intelligence: Faculté de connaître, de comprendre et de s'adapter…

Artificiel: désigne ce qui n'est pas un produit de la nature.

2
Introduction

Exemple du jeu d’échec:

La programmation classique utilise l'algorithmique pour calculer et


analyser tous les coups possibles à chaque étape du jeu.

L‘IA, quant à elle, introduit une nouvelle vision du jeu :chaque coup
joué fait maintenant partie d'une tactique qui consiste à réaliser un
objectif : la victoire.

L'IA a donc une vision globale du jeu, élabore des stratégies,


s'adapte aux coups joués par l'adversaire, etc.

L'IA est une conception différente de la résolution de problèmes.

3
Introduction

La problématique des systèmes à base de connaissances repose sur


de tels constats :

Comment procéder pour qu’un système informatique s’appuyant


sur des connaissances puisse résoudre des problèmes dans un
domaine donné ?

Faire preuve d’une certaine forme d’intelligence, à être capable


de mettre en œuvre des stratégies et à faire des choix judicieux
lorsque c’est nécessaire.

4
Définitions

Différence entre donnée, information et connaissance

- Une donnée transporte l'information (un signal non interprété).


- L'information est une interprétation de la donnée (par exemple, la
donnée "!" transporte l'information (interprétation) "point
d'exclamation"): (!, point d'exclamation).
- La connaissance utilise l'information dans le cadre d'actions, dans
un but précis (par exemple, écrire un “!” pour marquer une
exclamation en fin de phrase).
- Les actions peuvent être la prise de décisions, la création de
nouvelles informations, etc.

5
Définitions
Connaissance
L’inférence est l’élément de base de toute description de la cognition.

- Cognition: faculté de connaître : activité mentale (perception,


raisonnement, mémoire, apprentissage, conscience, émotions,…)
- Inférence: Production d’une connaissance
• Avec représentation de la connaissance (déclarative)
• Sans représentation de la connaissance (incorporée)
- Raisonnement : enchainement d’inférences avec un objectif

Pour être efficace, l’inférence doit être guidée par la connaissance


Connaissance => capacité à mobiliser des informations pour agir
Le passage de INFORMATION à CONNAISSANCE est lié à l’expérience
de l’action => pas de frontière parfaitement définie.
➢ Connaissance = Information qui influence un processus. 6
Définitions

La qualité du processus exige le couplage des données et des


connaissances.
Les connaissances: Guides de bonne pratique, standards, protocoles,…
7
Définitions

Raisonnement = processus de
• Faire coopérer connaissances, faits, et stratégies de résolution
de problèmes, dans le but d’atteindre des conclusions.

• Comprendre comment un expert humain raisonne lors de la


résolution d’un problème.

8
Types de raisonnements
Raisonnement
• A est vrai
• A B est vrai
• On en déduit que : B est vrai

Raisonnement

• Un ensemble d’objets {a, b, c, d, …}


• Une propriété P vraie pour les objets a, b, c, … de l’ensemble
• On induit que P est vraie pour tout x de l’ensemble.

Raisonnement
• C’est une inférence plausible.
• B est vrai
• A B est vrai
• on abduit que A est vrai 9
Types de raisonnements

Raisonnement
• Faire une analogie entre 2 situations, rechercher les similarités et
différences, etc.
• Les A’ sont à B’ ce que sont les A sont à B (A’ est similaire à A : B’ est
similaire à B).

Raisonnement

• S’appuie sur l’expérience de l’expert, sur la notion de « bon »


jugement, plus que sur la logique. Notion d’heuristique.
Heuristique : Technique consistant à apprendre petit à petit, en tenant
compte de ce que l'on a fait précédemment pour tendre vers la
solution d'un problème.

10
Caractéristiques de raisonnements

Raisonnement monotone vs. non monotone

11
Définitions

Base de connaissances
C'est un ensemble de connaissances dédié à un domaine particulier
(c'est un ensemble de faits et de règles).

Système à base de connaissances


Un système à base de connaissances (SBC) est un programme
construit pour modéliser les compétences de résolution de
problèmes des humains. C'est à dire, avoir la même performance
que les humains (Test de Turing).

C’est un système informatique fonctionnant avec une base de


connaissances explicite sur un sujet donné.

12
Définitions
Système à base de connaissances
Concevoir un SBC consiste à modéliser puis à représenter des
connaissances propres à un domaine à l’aide d’un formalisme de
représentation, puis à manipuler les connaissances par
l’intermédiaire de règles d’inférence pour résoudre les problèmes
posés.

La connaissance est alors considérée comme une entité calculable,


ce qui pose un certain nombre de problèmes, en particulier :

• Sous quelle forme doivent s’exprimer les connaissances ?

• Comment un mécanisme de raisonnement peut-il exploiter au


mieux un ensemble de connaissances forcément limité et
comment peut-il tirer de cet ensemble toutes les connaissances
implicites qu’il renferme ? 13
Définitions
Système à base de connaissances

• Comment les connaissances inférées influent-elles sur le


comportement du système ?

• Comment raisonner avec des informations incomplètes ou


bruitées ?

• Comment faire aboutir un raisonnement alors que l’éventail des


possibilités de recherche d’une solution est virtuellement infini ?

14
Définitions
Un SBC…
• Inscrit des connaissances issues de l’expertise ou/et de la
pratique (on dit que les connaissances sont « représentées »
dans un système informatique.

- Est spécialisé sur une expertise ou une pratique donnée.

• Intègre une représentation symbolique (formules bien


formées).

• Autorise parfois une certaine prise en compte de


l’incertitude. On peut reconnaître globalement un objet sans
être capable d'identifier à 100% chacun de ses détails.

15
Définitions

Un SBC…

• Fonde le « raisonnement » sur des mécanismes d’inférence


logique ou analogique.

• Se fonde sur l’existence d’heuristiques (connaissances


spécifiques au domaine qui guident la recherche de
solutions).

• Est orienté décision, résolution de problème et doit fournir


des explications.

16
Objectifs, attentes d’un SBC

Inscrire les connaissances en tant que connaissances (pas seulement


en tant qu’information) dans un système :
• Pour « conserver » des savoirs, des savoir-faire.

Disposer d’un « moteur » permettant d’enchaîner des inférences sur


les connaissances ainsi inscrites :
• Pour « exploiter » les savoirs et savoir-faire ainsi « conservés »

17
Objectifs, attentes d’un SBC

Pourquoi utiliser un SBC ?

Remplacer un expert
• Automatiser une tâche routinière nécessitant un expert ;
• Un expert quitte la compagnie ;
• Besoin d’une expertise dans un environnement hostile.

Assister un expert
• Améliorer la productivité ;
• Gérer la complexité.

18
Utilisation des SBC

• Agriculture
• Affaires • Météorologie
• Chimie • Militaire
• Communications • Prospection et exploitation
• Informatique minière
• Éducation • Production d’énergie
• Électronique • Hydrologie / hydroélectricité
• Ingénierie • Espace
• Géologie
• Domaine juridique
• Manufacture
• Mathématiques
• Médecine

19
Architecture d’un SBC

20
Architecture d’un SBC
La base de règles
Règles: Connaissance servant à faire le lien entre des informations
connues et d’autres informations que l’on peut déduire ou inférer.
• La base de règles rassemble la connaissance et le savoir-faire
de l’expert. Elle n’évolue donc pas au cours d’une session de
travail.
• Les connaissances expertes sont représentées par des règles
de la forme « si X alors Y ».

o X est la prémisse: C’est une conjonction de conditions, i.e.


une suite de comparaison d’attributs et de valeurs à l’aide
d’opérateurs.

o Y est la conclusion: La conclusion est une affectation.


21
Architecture d’un SBC
La base de règles

Si (prémisses) Alors (conclusions)

▪ Prémisses = conditions de déclenchement de la règle


▪ Conclusions = effet du tirage de la règle

22
Architecture d’un SBC
La base de règles

Le langage de description des règles peut être plus ou moins


complexe, comporter des conjonctions, des disjonctions, des
négations, des variables, etc.

Conjonctions et disjonctions

▪ ET en conclusion :

SI a ALORS b ET c ≡ SI a ALORS b
SI a ALORS c

▪ OU en condition :

SI a OU b ALORS c ≡ SI a ALORS c
SI b ALORS c 23
Architecture d’un SBC
La base de règles

Disjonctions en conclusion

▪ OU en conclusion : plus problématique


SI a ALORS b OU c

quelle sémantique ? dans le cas où a est vrai, que faire ?


– dédoubler la base de faits : l'une avec b, l'autre avec c
– ajouter b et c ? ( alors il fallait mettre un ET )

Généralement quand un expert exprime une telle règle : OU = XOR


et alors :

SI a ALORS b OU c ≡ SI a ET ¬b ALORS c
SI a ET ¬c ALORS b 24
Architecture d’un SBC
La base de règles

Elle permet :

1. classification des faits :

• de base : n'apparaissent qu'en condition (généralement


demandable).

• intermédiaire : apparaissent en condition et conclusion de


règles, ils représentent les étapes intermédiaires du
raisonnement et permettent de l'expliquer.

• conclusifs : n'apparaissent qu'en partie conclusion se sont les


résultats possibles de l'expertise.
25
Architecture d’un SBC
La base de règles
2. prévision d’efficacité
• Plus le nombre de prémisses dans une règle est important,
plus la déduction de nouveaux faits risque d'être longue (base
large).
• Plus le nombre de règles permettant de passer d'un fait de
base à un fait conclusif est élevé, plus l'expertise risque d'être
longue (base haute).
Exemple base de règle

• si l’âge du patient < 18 et


• si il a de la fièvre > 39° et
• si présence d’un germe X

• alors le patient a peut-être une méningite. 26


Architecture d’un SBC

Raisonnement à base de règle


- Principe de fonctionnement :
• Trouver parmi les règles celles candidates.
• Choisir une de ces règles.
• Exécuter la règle.

- Résolution de conflits

• Si plusieurs règles satisfaites, choisir laquelle déclenchée.

- Critère d’arrêt

• Pour déterminer la fin du processus d’inférence (plus aucune


règle n’est déclenchée, une solution acceptable a été trouvée,
impossibilité de trouver une solution, etc.) 27
Architecture d’un SBC
La base de faits
- Les faits décrivent ce qui est vrai dans la situation d’exploitation
de la base de règles .
- La base de faits constitue la mémoire de travail du SBC (mémoire à
court terme).
- Elle est variable au cours de l’exécution et vidée lorsque l’exécution
se termine.
- Au début de la session, elle contient tout ce qu’on sait à propos
du cas examiné avant toute intervention du moteur d’inférence.
- A la fin, elle est complétée par les faits déduits par le moteur ou
demandés à l’utilisateur.
Exemple base de faits
- Âge est 6
- Fièvre est 40°
- Germe X
- Sexe féminin 28
Architecture d’un SBC
Exemple de base de règles

Exemple de base de faits

29
Architecture d’un SBC

Interface

- À ces deux composantes essentielles s' ajoutent des modules


d'interface eux aussi indépendants du domaine de
connaissance.
- Grâce à eux, l'expert peut accéder facilement à la base de
connaissances, la modifier en rectifiant une information inutile
ou erronée, ou en ajoutant une précision.
- L'utilisateur peut quant à lui suivre le raisonnement du
système dans un langage qui lui est naturel, poser des
questions, demander des explications, sans avoir besoin
d'acquérir une connaissance approfondie des systèmes
experts ou de l'informatique.
30
Architecture d’un SBC

Moteur d'inférence (MI)

• Le moteur d'inférence est le programme qui construit les


raisonnements en puisant ses matériaux dans la base de
connaissances et la base de faits.
• En examinant la base de faits, il détecte les connaissances
intéressantes pouvant s'appliquer à certains faits, les enchaîne et
construit un plan de résolution.

• Il déduit de nouveaux faits de ceux fournis au départ ou en cours


d'interaction par l'usager.

• Indépendant du domaine, le moteur d'inférence rassemble les


mécanismes de raisonnement qui vont exploiter la base de
connaissances. 31
Architecture d’un SBC

Gérer les contradictions

32
Architecture d’un SBC

Fournir des « explications »

• Le SBC peut « expliquer » chaque fait produit par la trace de son


exécution.

• Les règles et les faits étant exprimés à un haut niveau


d’abstraction (symbolique), ces explications sont réputées «
lisibles » par les opérateurs humains.

• Certains systèmes donnent la possibilité d’accéder aux «


documents » justifiant l’inscription de telle ou telle
connaissance.

33
Architecture d’un SBC
Régime de contrôle de MI
• Régime irrévocable
o Pour des MI très simples.
o Le MI s’arrêtera dès qu’il atteint la Saturation de la Base de
Règles déclenchables.
• Régime par tentative (Backtracking)
o Le MI examine la possibilité de déclencher d’autres règles
déclenchables.
o Le MI opère par un retour arrière et remet en cause les règles
déclenchées précédemment.
• Monotonie
o Le MI ne fait qu’ajouter des faits à la BF.
• Non Monotonie
oLe MI peut supprimer des faits qui peuvent se révéler
contradictoires (Robotique, diagnostic, etc.)
34
Architecture d’un SBC

35
Architecture d’un SBC

Types de moteurs d’inférence

Il existe de nombreux types de moteurs, capables de traiter


différentes formes de règles logiques pour déduire de nouveaux
faits à partir de la base de connaissance.
On distingue 3 catégories, basées sur la manière dont les
problèmes sont résolus :

• Les moteurs à « chaînage avant »


• Les moteurs à « chaînage arrière »
• Les moteurs à « chaînage mixte »

Certains moteurs d’inférence peuvent être partiellement pilotés ou


contrôlés par des méta-règles qui modifient leur fonctionnement
et leurs modalités de raisonnement.
36
Architecture d’un SBC

Types de moteurs d’inférence

Méta-règles

• Règles sur la manière d'utiliser les règles.


• Traduisent une connaissance sur l’utilisation et le contrôle de
la connaissance du domaine.
• Disent comment utiliser les autres règles.

Exemple
Si auto ne démarre pas & système électrique normal
alors exploiter les règles concernant le système d ’alimentation
en essence .

37
Architecture d’un SBC

Types de moteurs d’inférence

• Les moteurs à « chaînage avant » - qui partent des faits et règles


de la base de connaissance, et tentent de s'approcher des faits
recherchés par le problème.

• Les moteurs à « chaînage arrière » - qui partent des faits


recherchés par le problème, et tentent par l'intermédiaire des
règles, de « remonter » à des faits connus.

• Les moteurs à « chaînage mixte » - qui utilisent une combinaison


de ces deux approches chaînage avant et chaînage arrière.

38
Architecture d’un SBC

Types de moteurs d’inférence


Chaînage avant

Mécanisme simple : pour


déduire un fait particulier, on
déclenche les règles dont les
prémisses sont connues jusqu’à
ce que le fait à déduire soit
également connu ou qu’aucune
règle ne puisse être déclenchée.

39
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

• On va analyser chaque fait, et on va examiner toutes les règles où


ce fait apparaît en prémisse.

• Pour les règles déclenchées, on va affecter les attributs en


conclusion des valeurs qui leur correspondent.

• Ces attributs affectés feront partie du résultat final de l’expertise,


et en même temps, ils seront eux-mêmes propagés.

• On fait cela jusqu’à l’épuisement des faits, et on communique le


résultat à l’utilisateur.

40
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

• Un mécanisme de règles guidée par les faits.

• C’est une traduction du Modus Ponens :


• si f1 -> f2 et f1 est vrai alors f2 est vrai.

o de f1 sont déduits f2 et f3
o de f2 sont déduits f4 et f5
o etc ...

• Le chaînage avant traduit un raisonnement déductif. 41


Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

• Existe-t-il une règle applicable ? : 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.

• Appliquer cette règle : une fois la règle choisie, le programme


exécute sa partie action ou conclusion.

• Désactiver cette règle : 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.

42
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

• 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.

43
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

Description de l'algorithme 44
Architecture d’un SBC

Types de moteurs d’inférence


Chaînage avant
Stratégies de résolution de conflits :

• Première règle qui s’apparie avec les faits avérés ;


• Règle ayant la plus haute priorité ;
• Règle la plus spécifique (la conditions la plus détaillée qui
s’applique à la BF) ;
• Règle faisant référence aux faits les plus récemment
introduits dans la base de faits ;
• Ne pas déclencher à nouveau une règle l’ayant déjà été ;
• Arbitrairement
• etc.
45
Architecture d’un SBC

Types de moteurs d’inférence


Chaînage avant

Exemple 1

46
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant
Exemple 2
BR:
• R1: SI animal vole ET animal pond des oeufs ALORS animal est un
oiseau
• R2: SI animal a des plumes ALORS animal est un oiseau
• R3: SI animal est un oiseau ET animal a un long cou ET animal a de
longues pattes ALORS animal est une autruche

BF:
• F1 : animal a des plumes
• F2 : animal a un long cou
• F3 : animal a de longues pattes

• Qu'obtient-on avec la base de faits initiale F1, F2 et F3? 47


Architecture d’un SBC
Types de moteurs d’inférence
Chaînage avant

Exemple 2

48
Architecture d’un SBC

Types de moteurs d’inférence


Chaînage arrière

Mécanisme consistant à partir du fait que l’on souhaite établir, à


rechercher toutes les règles qui concluent sur ce fait, à établir la liste
des faits qu’il suffit de prouver pour qu’elles puissent se déclencher,
puis à appliquer récursivement le même mécanisme aux faits
contenus dans ces listes.

Le chaînage arrière est clairement un mécanisme d’induction : on


vérifie les hypothèses en remontant depuis l’objectif. On cherche
ainsi à vérifier si un fait est possible.

49
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière

• Pour prouver une hypothèse en recherchant les informations


pouvant la supporter.

• On sélectionne alors les règles ayant ce but comme


conclusion, et on vérifie si les prémisses de ces règles font
partie de la base des faits.

o Les prémisses n’appartenant pas à la base de faits


deviennent à leur tour des buts à prouver de la même façon.

• Le raisonnement se fait des solutions vers les faits initiaux.

50
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière
• Le système recherche si le but souhaité peut être démontré
à l’aide des règles présentes dans la base des règles .

• C’est une traduction du Modus Tollens: Si q est non vrai et


si p implique q alors p est non vrai.

o de f4 est déduit f3
o de f3 est déduit f1

• Le chaînage arrière traduit un raisonnement déductif.


51
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière

Description de l'algorithme
52
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière
Avec comme définition de VERIFIER (fait)

53
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière
Avec comme définition de PROUVER (fait)

54
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière
• Un but est assigné au système.
• La partie « conclusions » des règles est unifiée avec ce but. En
cas de succès, les prémisses de la règle unifiée sont les
nouveaux buts assignés.
o Il s’agit donc d’un arbre ET/OU de buts dont les feuilles sont
vérifiées ou non par les faits.
• Stratégies :
o Production de buts en profondeur.
o Profondeur d’abord sauf si une règle conclue immédiatement.
• Cas de feuilles non vérifiables
o Poser la question à l’utilisateur.
o Formuler une hypothèse jusqu’à vérification ou contradiction.

55
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière

Exemple

On cherche à démontrer C.

56
Architecture d’un SBC
Types de moteurs d’inférence
Chaînage arrière
Exemple
On cherche à démontrer C.

•E, F, A, B avec R1
•E, F, D, B avec R2
•E, F, D avec R3
Base finale :
E, F
Il y a réussite, il n'y a plus de faits à démontrer en base de fait. 57
Architecture d’un SBC

Types de moteurs d’inférence


Comparaison

58
Architecture d’un SBC

Types de moteurs d’inférence

Chaînage mixte

• Les mêmes règles sont utilisées an chaînage avant et arrière,


selon que des faits nouveaux arrivent ou que l’on ait des faits à
établir.

• On peut alors aussi bien raisonner à partir des faits que l’on
connaît comme prédicats ou comme objectifs.

59
Architecture d’un SBC

Types de moteurs d’inférence

Chaînage mixte

• Tant que des règles sont déclenchables :chaînage avant


• Puis, on choisit une règle « presque » déclenchable et on essaie
de vérifier les prémisses inconnues par chaînage arrière.
• En cas de succès, on repart en chaînage avant.

60
Architecture d’un SBC

Types de moteurs d’inférence


Modes de raisonnement

61
Architecture d’un SBC

Types de moteurs d’inférence

Quel chaînage utiliser ?


Ce sont les caractéristiques du problème qui vont conditionner le
chaînage qu’il est judicieux d’utiliser .

• Ainsi, lorsque les faits sont peu nombreux ou que le but est
inconnu : chaînage avant.
• Par contre, dans les cas où les buts sont peu nombreux ou
précis :chaînage arrière.

62
Architecture d’un SBC
Types de moteurs d’inférence
Stratégies de parcours d’arbre

Notion de réseau d’inférences et


de parcours dans le réseau.

Exemple:
•Si P1 alors C1 ;
•Si P2 alors C2 ;
•Si P3 & P4 alors P2 ; Différentes stratégies
•Si P5 & P6 alors P1 ; de parcours de
•Si P7 alors P6 ; l’espace !
•Si P8 alors P4 ;
•Si P9 alors C2 ;

63
Architecture d’un SBC
Types de moteurs d’inférence
Stratégies de parcours d’arbre
Parcours en largeur d’abord:

Parcourir d’abord les nœuds d’un même


niveau, avant de considérer les nœuds du
niveau inférieur. Si la solution se situe
profondément dans l’espace de recherche,
cette stratégie n’est pas payante. Les
interactions avec un utilisateur sont
difficiles en raison de l’exploration de
chemins nombreux (manque de
focalisation).

64
Architecture d’un SBC
Types de moteurs d’inférence
Stratégies de parcours d’arbre
Parcours en profondeur d ’abord:

Parcourir le graphe verticalement d’abord,


pour ensuite explorer d’autres nœuds (de
gauche à droite).Lorsqu’il est connu que
l’espace de recherche est profond, la
stratégie en profondeur d’abord est un bon
choix. De plus, cette stratégie se focalise
sur une solution et est donc à même d’être
comprise par un utilisateur qui interagit
avec le système, car les questions sont
relatives à un même chemin.
65
Exemple : Le problème des seaux à remplir

Prenons le problème suivant : deux seaux A et B contiennent


respectivement 9 et 4 litres. Une personne a un tonneau de douze
litres d'huiles ; elle veut en donner 3 litres à un ami. Pour les
mesurer, elle n'a que ces deux seaux A et B, A contient 9 litres et B
contient 4 litres. Comment doit-elle opérer pour avoir les 3 litres
dans le seau A?

Peut-on obtenir exactement 3 litres dans le contenant A,


uniquement en remplissant ou en vidant les seaux ou en les versant
l'un dans l'autre?

66
Exemple : Le problème des seaux à remplir

On peut représenter les connaissances nécessaires pour résoudre


ce problème à l'aide d'états et d'opérateurs comme suit :
- Les états sont de la forme [A] [B] où A et B sont le nombre de
litres de chaque récipient; par exemple, [4] [5] signifie que le
récipient A contient 4 litres et le récipient B, 5 litres.

67
Exemple : Le problème des seaux à remplir

Signification des opérateurs

- La présence de deux opérateurs pour le versement tient compte du


fait que le calcul sera différent si on peut verser complètement un
récipient dans un autre ou seulement une partie.

- Par exemple, l'avant-dernier opérateur signifie que si le total des


deux récipients est inférieur ou égal à 4 litres, on peut verser tout le
contenu de A dans B, lequel contient alors A + B litres, alors que A
est devenu vide.

68
Exemple : Le problème des seaux à remplir

Signification des opérateurs


- Dans le cas contraire, l'autre opérateur affirme que l'on pourra
remplir B jusqu'à 4 litres et que dans A, on ajoutera B - 4 litres à A
qui contiendra alors A + B - 4 litres.

- Pour utiliser ces connaissances, le programme devra contenir un


moteur d'inférence qui « instancie » les variables A et B c'est-à-dire
leur donne des valeurs particulières correspondant à un état déjà
obtenu.

69
Exemple : Le problème des seaux à remplir

Résolution du problème
- Le problème se présente donc comme une suite d'états
obtenue en appliquant une suite d'opérateurs (instanciés
correctement) à partir de l'état initial jusqu'à l'état final soit
[0][0]; puis remplir A [9][0]; puis vider A dans B [5][4].
- Le problème « obtenir 3 litres dans A » n'est pas aussi simple et
nécessite d'essayer divers chemins en appliquant tous les
opérateurs possibles à une situation avant de trouver un
chemin-solution.
La résolution de ce
problème est un
graphe (arbre) : les
nœuds représentent
les états et les arcs
représentent les
70
opérations.
Exemple : Le problème des seaux à remplir
Démarche de résolution

- Cette démarche peut être faite par un moteur d'inférence


capable d'instanciation de variables.

- À partir d'un fait initial [0][0], on applique systématiquement les


règles permises (les opérateurs) en déduisant toujours des faits
nouveaux jusqu'à déduire la solution, un fait du type [3][B].

- On s' aperçoit qu'il y a plusieurs façons de parcourir l'arbre des


possibilités. Notamment, l'ordre dans lequel on applique les
opérateurs est critique. Ici, on perd beaucoup de temps à
développer la « branche » [5][4], alors que la « branche » [0][4]
conduit deux fois plus rapidement à une solution.

71
Exemple : Le problème des seaux à remplir

Démarche de résolution
- L'étude des méthodes les plus efficaces de recherche dans un
arbre des possibilités sert à la fois à trouver de bonnes
méthodes de déduction ou d'inférence et de bonnes méthodes
de résolution de problèmes.

- L'inférence, tout comme la résolution d'un problème, sont tous


deux des mécanismes de recherche dans un arbre des
possibilités qui peuvent être décrits ainsi : En partant d'une
situation initiale connue (les faits), atteindre une des situations
finales (fait conclusion, fait-solution) désirées en appliquant une
suite finie d'opérateurs à la situation initiale ou aux situations
déjà obtenues de celle-ci.

72
Système Expert

Un système expert est :

• Un outil informatique d’intelligence artificielle.


• Conçu pour simuler le savoir-faire d’un spécialiste, dans un
domaine précis et bien délimité, grâce à l’exploitation d’un
certain nombre de connaissances fournies explicitement par des
experts du domaine.
• Permet de modéliser le raisonnement d’un expert, de manipuler
des connaissances sous forme déclarative, d’en faciliter
l’acquisition, la modification et la mise à jour et de produire des
explications sur la façon dont ont obtenus les résultats d’un
expertise.
• Les systèmes experts classiques sont un cas particuliers des
systèmes à base de connaissances.
73
Système Expert
Un expert doit :

• Posséder un savoir spécialisé qui regroupe de vastes


connaissances dans un domaine donné. Ce savoir ne se limite pas
à des connaissances factuelles, mais il comprend un réseau de
concepts, de règles, de méthodes qui forment l'expertise.

• Savoir utiliser les connaissances efficacement. Il ne suffit pas à


l'expert de posséder de vastes connaissances, il doit pouvoir les
utiliser rapidement et avec succès. Pour cela, il doit savoir poser
les bonnes questions au client de façon à repérer les
connaissances qui s' appliquent dans son cas.

• Connaître ses limites de façon à ne pas s' occuper de questions


hors du cadre de sa compétence.
74
Système Expert

Un expert doit :

• Fournir des explications appropriées sur les informations qu'il


donne ou les solutions qu'il propose. Généralement, ce n'est pas
l'expert qui décide, mais celui qui demande conseil. Il est donc un
conseiller qui doit être capable de convaincre le client que sa
solution est bonne.

75
Système Expert

Ce schéma illustre les forces respectives que possèdent les humains


et les ordinateurs. Les bénéfices espérés de l’association de ces deux
facteurs sont incontestables, mais encore faut-il qu’il y ait une bonne
adéquation. 76
Système Expert

Exemples

77
Système Expert

Difficultés

• Comment programmer une machine pour en faire un expert ?

• Comment gérer les contradictions éventuelles entre différents


experts?

• Comment faire évoluer un tel système sans que ses


compétences ne se dégradent (le paradoxe du trop-plein de
connaissance)?

• Néanmoins, les SE sont l’un des rares succès industriels de


l’Intelligence Artificielle.
78
Système Expert

Avantages

Les systèmes experts ont plusieurs caractéristiques attrayantes :

• Grande disponibilité : l’expérience est disponible pour tout


traitement adéquat.

• Coût réduit : le coût de mettre l’expérience à la disposition de


l’utilisateur est réduit énormément.

• Danger réduit : les systèmes experts peuvent être utilisés dans


des environnements qui pourraient être dangereux pour un
être humain.

79
Système Expert

Avantages

• Permanence : l’expérience est permanente. Contrairement aux


spécialistes humains qui peuvent se retirer, renoncer ou
mourir, la connaissance d’un système expert durera
indéfiniment.

• Métissage d’expériences : les connaissances de plusieurs


spécialistes peut être disponible pour travailler simultanément
et continuellement sur un problème à toute heure de la nuit
ou du jour.

80
Système Expert

Inconvénients

Les deux principaux inconvénients des systèmes experts sont :

• La créations du chômage car les SE émulent les humains.

• Il font inférence à des connaissances même si elles sont


dépassées.

81
Système Expert

Composants d’un système expert

82
Système Expert

Composants d’un système expert

Participants au développement

• Un ou plusieurs experts du domaine, capable(s) et intéressé(s)


à formaliser les procédures d'analyse et de prise de décisions.

• Un ou plusieurs "ingénieurs de la connaissance", capable(s) et


intéressé(s) à formaliser les connaissances sous forme d'un
système expert.

83
Système Expert
Différents rôles
• Informaticien:
- Construction du moteur d’inférences et de l’interface utilisateur.

• Ingénieur de la connaissance (cogniticien):


- Consultation des experts du domaine
- Design, construction et débogage de la BDC

• Experts du domaine:
- Connaissance « sémantique » du domaine en terme de
relation entre faits et événement (pas de connaissance
procédurale).

• Utilisateur:
- Information sur le problème individuel à résoudre mais pas sur
le domaine (il ne connaît pas quelles informations sont utiles).
84
Système Expert

Architecture d’un système expert

85
Système Expert

Domaine d’application industrielle d’un système expert

• Aide à la maintenance et au dépannage dans les centrales


nucléaires.
• Aide au pilotage d’atelier.
• Chaque réalisation d’un SE s’intègre dans un environnement
particulier de développement et doit être adaptée au cadre
d’utilisation:
- sauvegarder une expertise accumulée ;
- la diffuser dans le temps ;
- la diffuser dans l’espace ;
- formaliser une connaissance de conception.

86
Exercices

Comment exploiter ce système expert?

Démarche 1: Chainage avant


- Avec les ingrédients (les faits), qu’est-ce que je peux faire?

Démarche 2: Chainage arrière


- Est-ce que je peux faire une tarte aux abricots?
87
Exercices

Démarche 1 : chainage avant


Avec les ingrédients (les faits), qu’est-ce que je peux faire?

88
Exercices

Démarche 1 : chainage avant

• R1 Appliquée, ajouter pâte à la base des faits (BF).


• R1 est ensuite supprimée.

89
Exercices

Démarche 1 : chainage avant

• R2 Appliquée, ajouter pommes sucrées à la BF.


• R2 est ensuite supprimée.

90
Exercices

Démarche 1 : chainage avant

• R3 Appliquée, ajouter tarte aux pommes à la BF.


• R3 est ensuite supprimée.

91
Exercices

Démarche 1 : chainage avant

• R4 Appliquée, ajouter tarte aux abricots à la BF.


• R4 est ensuite supprimée.

92
Exercices

Démarche 1 : chainage avant

• R5 Appliquée, ajouter tarte aux poires à la BF.


• R5 est ensuite supprimée.

93
Exercices

Démarche 1 : chainage avant

• R6 n’est pas applicable (pas de cerises dans BF).


• Arrêt et sortir avec la base des faits BF.

94
Exercices

Démarche 1 : chainage avant

Le moteur d’inférence part des faits pour arriver au but.

1. Il ne sélectionne que les règles dont les conditions de la partie


gauche (prémisse) sont vérifiées.

2. Ensuite, il applique une de ces règles qui ajoute des faits à la


base.

➢ Ce processus est réitéré jusqu’à ce qu’il n’y ait plus de règles


applicables ou que le but soit atteint.

95
Exercices

Démarche 2 : chainage arrière

Est-ce que je peux faire une tarte aux abricots?

96
Exercices

Démarche 2 : chainage arrière

• Considérons R4 (sa conclusion est égale à notre but).


• La première prémisse de R4 (abricot) est présente dans la BF
et donc vérifiée.

97
Exercices

Démarche 2 : chainage arrière

• Considérons R4 (sa conclusion est égale à notre but).


• La deuxième prémisse de R4 (pâte) doit être vérifiée, on
vérifie s’il existe une règle dont la conclusion est pâte.
• Oui c’est R1 et ses prémisses sont vérifiées.
• On peut conclure tarte aux abricots est vérifiée.

98
Exercices

Démarche 2 : chainage arrière

Le système part du but et essaie de remonter au faits pour le


démontrer.

1. Les règles sélectionnées sont celles dont la partie droite


(conclusion) correspond au but recherché.

2. Les conditions inconnues (prémisse) de ces règles deviennent


autant de sous-but à démontrer.

3. Ce processus est répété jusqu’à ce que tous les sous buts soient
démontrés.

99
Exercices
La base de règles :
R1: Losange→Parallélogramme
R2: Parallélogramme et les diagonales sont perpendiculaires→
Losange
R3: Parallélogramme→ Trapèze
R4: Deux côtés adjacents sont égaux et Rectangle → Carré
R5: Carré→ Rectangle
R6: les 4 côtés sont égaux → Losange
R7: Deux côtés adjacents sont égaux et les diagonales sont
perpendiculaires → Cerf-volant
R8: Il y a un angle droit et les 4 côtés sont égaux et Trapèze →
Rectangle
R9: Deux côtés adjacents sont égaux et Parallélogramme et les
diagonales sont perpendiculaires → Losange
R10: Les 4 côtés sont égaux→ Deux côtés adjacents sont égaux

1) Modéliser le système expert suivant. 100


Exercices

Le dictionnaire utilisé : La base de règles :


L losange R1: L →P
P parallélogramme R2: P et X → L
R rectangle R3: P → T
T trapèze R4: A et R → C
S les 4 côtés sont égaux R5: C → R
X les diagonales sont R6: S → L
perpendiculaires R7: A et X → V
D il y a un angle droit R8: D et S et T → R
A deux côtés adjacents sont égaux R9: A et P et X → L
C carré R10: S → A
V cerf-volant

2) Qu'obtient-on avec la base de faits initiale (S, D) ?

3) Montrer C ? 101

Vous aimerez peut-être aussi