Systèmes à base de connaissance

publicité
Système à base
de connaissance
Système à base de
connaissance
 L’intelligence artificielle
– Définition IA
• Artificiel. désigne ce qui n'est pas un produit de la nature.
• Intelligence. "Faculté de connaître, de comprendre et de
s'adapter [...]". Jean-Pol Tassin (Pour la Science, Décembre
1998).
• Produire une IA consisterait donc à utiliser une technique
(informatique) pour concevoir un système capable de
raisonnement (résoudre un problème, s'adapter à des situations
nouvelles,...).
• L’IA est une discipline de l’informatique dont le but est que les
ordinateurs puissent raisonner comme les humains.
• Elle s’adresse à une classe de problèmes exponentiels.
Système à base de
connaissance
 L’intelligence artificielle
– 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
 L'IA est une conception différente de la résolution de problèmes.
 D'après JL. Laurière, "Tout problème pour lequel aucune
solution algorithmique n'est connue relève a priori de l'IA".
Système à base de
connaissance
 L’intelligence artificielle
– Reprenons la phrase de Marvin Minsky, figure
célèbre de l'IA des années 50 :
 "[...] the science of making machines do things that
would require intelligence if done by humans".
 L'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.
Système à base de
connaissance
 Débuts de l’IA
– 1950 : le mathématicien britannique Alan Turing publie, dans le
journal philosophique Mind, un article intitulé Computing Machinery
and Intelligence. Dans cet article, il décrit le test de Turing.
– 1955 - 1956 : Allen Newell, John Shaw, et Herbert Simon créent le
"Logic Theorist", considéré comme le premier programme d'IA.
– 1956 : John McCarthy, considéré comme le père de l'IA, organise
"The Dartmouth summer research project on Artificial Intelligence".
– 1959 : élaboration du GPR (General Problem Resolver), qui
consiste à définir un état initial, un ou plusieurs états finaux, et des
opérateurs de transition entre les états.
Système à base de
connaissance
 Débuts de l’IA
– 1967 : Echec et abandon du GPR
– 1972 : Hubert Dreyfus, un des détracteurs de l’IA, écrit
"What Computers Can't Do" dénonçant les sommes
importantes dépensées par le gouvernement US pour le
développement de l'IA.
– Problèmes des premiers systèmes en IA :
 incapacité à imiter la capacité de l'homme à utiliser le
contexte d'un problème pour déterminer le sens des mots
et des phrases.
Système à base de
connaissance
 Débuts de l’IA
– Années 70 : de nombreuses nouvelles méthodes de
développement de l'IA sont testées. En 1971, le langage PROLOG
est créé par Colmerauer.
– 1974 : verra l‘arriver des premiers systèmes experts.
 dont le plus célèbre MYCIN (Edward H. Shortliffe), conçu pour
l'aide au diagnostic et au traitement de maladies bactériennes
du sang. En 1979, Mycin sera considéré par le "Journal of
American Medical Assoc" comme aussi bon que les experts
médicaux.
 La même année, le premier robot piloté par ordinateur est
conçu.
 On notera également dans les années 70, l'abandon des
subventions versées par les gouvernements (US pour la
plupart) pour quelques programmes de recherche en IA.
Système à base de
connaissance
 Débuts de l’IA
– 1980-1990 : Accélération du mouvement.
 Avec l'efficacité prouvée des systèmes experts, les
ventes de matériels IA (hardware ou logiciel)
grimpent en flèche.
 L'IA commence à intéresser les grandes firmes
(Boeing, General Motors, etc).
 Face aux détracteurs, les "pro-IA" se défendent : en
1982, Minsky écrit "Why People Think Computers
Can't", en réponse notamment aux critiques de
Dreyfus.
Système à base de
connaissance
Les systèmes experts
Système à base de
connaissance
 Les systèmes experts
– Un système expert est un outil capable de
reproduire les mécanismes cognitifs d'un
expert, dans un domaine particulier.
– 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.
Système à base de
connaissance
 Les systèmes experts
– Un système expert se compose de 3 parties :
 une base de faits ;
 une base de règles ;
 Un moteur d’inférence :
– Le moteur d'inférence est capable d'utiliser faits et règles
pour produire de nouveaux faits, jusqu'à parvenir à la
réponse à la question experte posée.
Système à base de
connaissance
 Les systèmes experts
Système à base de
connaissance
 Mécanismes de raisonnement
– La plupart des systèmes experts existants reposent sur des
mécanismes de logique formelle (logique aristotélicienne) et
utilisent le raisonnement déductif.
– Pour l'essentiel, ils utilisent le syllogisme :
si P est vrai (fait ou prémisse) et si on sait que P  Q (règle)
alors, Q est vrai (nouveau fait ou conclusion).
– Les plus simples des systèmes experts s'appuient sur la logique
des proposition (dite aussi « logique d'ordre 0 »).
 Dans cette logique, on n'utilise que des propositions, qui sont
vraies, ou fausses.
– D'autres systèmes s'appuient sur la logique des prédicats du
premier ordre (dite aussi « logique d'ordre 1 »), que des
algorithmes permettent de manipuler aisément.
Système à base de
connaissance
 Historique
– Les premiers systèmes experts voient le jour aux USA dans les
années 1970.
– MYCIN, qui manipulait de l'expertise dans le domaine médical, est
l'un des plus connus.
 Dans les années 1970, une équipe de Stanford University, sous
la direction d'Ed Feigenbaum, a fait l’hypothèse que
l’intelligence repose sur le stockage des grandes quantités de
connaissance.
 Connaissances représentées sous forme de règles.
 En 1973, ils ont cherché un nouveau domaine pour refaire une
étude. Ils ont retenu le domaine de “Thérapie Anti-Biotique”.
 Résultat = MYCIN (500 règles avec des faits fortement typés).
Système à base de
connaissance
 MYCIN
– Qu’est-ce que c’est?
 C’est un "programme de consultation" qui donne des avis aux
médecins concernant les thérapies anti-microbiennes.
– Domaine
 anti-microbien ou antibiotique
– Principe
 Il existe un grand choix de médicaments anti-microbiens ainsi
qu'un grand nombre de microbes.
 Chaque antibiotique agit différemment avec chaque microbe.
 À cause de cette grande variété, seuls certains médecins
spécialisés connaissent bien ce domaine.
Système à base de
connaissance
 MYCIN
– La séquence de tâches
1) Demande des informations sur le cas.
2) Applique ses connaissances.
3) Donne son jugement et conseille.
4) Répond aux questions sur son raisonnement.
– Buts à atteindre
 Facile à utiliser
 Fiable
 Manipule un grand nombre de connaissances
 Utilise des renseignements inexacts ou incomplets
 Explique et justifie ses conseils
Système à base de
connaissance
 MYCIN
– Répond à 4 questions
1) Quelles infections importantes existent ?
2) Quel microbe est la cause de chaque infection ?
3) Quels médicaments sont efficaces ?
4) Quel est le meilleur traitement ?
– A tout instant, l'utilisateur peut demander :
 Pourquoi ?
– Trace de la chaîne de raisonnement en cours.
 Comment ?
– Trace la source d'un fait.
Système à base de
connaissance
 Raisonnement dans MYCIN
– Chaînage arrière, dirigé par un but
– Règles sous forme d’abduction
Infection
streptocoque de
la gorge ?
 ABC
 Pour prouver C, il faut
prouver A et B.
12
1
4
5
Signes d’infection
de la gorge
Organisme =
streptocoque
6
7
2
3
Gorge rouge
Tâche en
Grampos
8
9
10
11
Morphologie
coccidie
Croissance
en chaîne
Système à base de
connaissance
 Raisonnement dans MYCIN
– La base de connaissance statique comporte des règles :
– On dispose donc d’un ensemble de règles (ici, déduction),
approximatives.
Système à base de
connaissance
 Les inférences
– Moteur d'inférence : déduit des faits à partir de faits initiaux et
des règles.
– Deux approches de base :
 A partir de ce qu'on veut trouver et remonter vers les faits
(chaînage arrière) ;
 A partir des faits et aller vers ce qu'on veut trouver
(chaînage avant).
– La structure classique des systèmes experts utilisaient
toujours un ensemble de règles de production.
Système à base de
connaissance
 Evaluation de MYCIN
– En 1979 : MYCIN en compétition face à 8 médecins sur
10 cas réel, MYCIN arrive premier.
– Limites de MYCIN
 Peu de flexibilité (adapté à un problème précis) ;
 Connaissances difficiles à entrer :
– beaucoup de règles ;
– dépendantes du système d'inférence.
 Manque d'explications sur le résultat.
– MYCIN était un programme de recherche et n'a jamais
été réellement utilisé à l'hôpital, car :
 incomplet, difficile à évaluer, mauvaise interface...
 Mais il a montré qu'on peut approcher un domaine d'expertise.
Système à base de
connaissance
Systèmes à base de connaissance
Système à base de
connaissance
 Qu’est-ce qu’un SBC ?
– Un programme construit pour :
 modéliser les compétences de résolution de
problèmes des humains.
 avoir la même performance que les humains (Test de
Turing).
Human
Human
interrogator
Système à base de
connaissance
 SE vs. SBC
– Système expert (SE) : Système informatique permettant
de résoudre les problèmes dans un domaine
d'application déterminé à l'aide d'une base de
connaissances établie à partir de l'expertise humaine.
– Système à base de connaissances (SBC) : Système
informatique fonctionnant avec une base de
connaissances sur un sujet donné.
Système à base de
connaissance
 SE vs. SBC
– Les systèmes experts classiques seraient un
cas particuliers des systèmes à base de
connaissances.
– Tout système informatique utilise de la
connaissance, mais dans un système à base de
connaissances, celle-ci est représentée de
façon explicite.
Système à base de
connaissance
 Connaissance
– Différence entre donnée, information, connaissance :
• Une donnée transporte l'information. Ce sont des signaux non interprétés.
Exemple. ! ...- - -... C
• L’information est une interprétation de la donnée.
Exemple. (!, point d’exclamation), (...- - -..., SOS), (C, lettre) ou (C, note)
• La connaissance utilise l'information dans le cadre d'actions, dans un but
précis. Les actions peuvent être la prise de décisions, la création de
nouvelles informations, etc.
Exemple.
• écrire un “!” pour marquer une exclamation en fin de phrase
• si le signal ...- - -... reçu alors déclencher l’alerte et envoyer des secours
• si C apparaît sur une partition alors la référence est la gamme de Do, jouer dans la
gamme associée.
Système à base de
connaissance
 Tâches utilisant des connaissances
– Classement issu de la méthodologie CommonKADS :
 Tâches d'analyse
– classification, diagnostique, évaluation, supervision,
prédiction.
 Tâches de synthèse
– conception/configuration, modélisation, planification,
ordonnancement, répartition.
– Ce classement se veut relativement exhaustif des différentes
tâches demandant de la connaissance.
Système à base de
connaissance
 Types de problèmes résolus par les SBC
–
–
–
–
–
–
–
–
–
–
–
Contrôle
Conception
Diagnostic
Instruction
Interprétation
Monitoring
Planification
Prédiction
Prescription
Sélection
Simulation
30
25
20
% applications
15
10
5
0 Contrôle
Instruction
Planification
Sélection
Système à base de
connaissance
 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é
Système à base de
connaissance
 Utilisation des SBC
–
–
–
–
–
–
–
–
–
–
Agriculture
Affaires
Chimie
Communications
Informatique
Éducation
Électronique
Ingénierie
Géologie
Domaine juridique
 Manufacture
 Mathématiques
 Médecine
 Météorologie
 Militaire
 Prospection et exploitation
minière
 Production d’énergie
 Hydrologie / hydroélectricité
 Espace
Système à base de
connaissance
 Exemple de problèmes
Le problème des seaux à remplir
– On dispose de deux seaux, l’un de trois litres et l’autre de 4 litres.
– Comment mesurer 2 litres dans le seau de 4 litres ?
3 litres
4 litres
2
litres
– Variante :
 Une personne a une bonbonne de douze litres de vin ; elle veut
en donner 6 litres à un ami. Pour les mesurer, elle n’a que deux
autres bouteilles, l’une contenant 7 litres et l’autre contenant 5
litres. Comment doit-elle opérer pour avoir les 6 litres dans la
bonbonne de 7 litres ?
Système à base de
connaissance
 Exemple de problèmes
Le problème du taquin
– Trouver la séquence de déplacements la plus courte qui
permet de passer de l’état initial à l’état final.
2
1
7
8
6
*
3
4
5
1
8
7
2
*
6
3
4
5
Système à base de
connaissance
 Exemple de problèmes
Un problème de crypto-arithmétique
– Une lettre correspond à un nombre (entre 0 et 9) et un
seul, décrypter l’addition.
S
E
N
D
M
M
O
R
E
O
N
E
Y
Système à base de
connaissance
 Exemple de problèmes
Un problème logique
– Bernard, Jacques et Sylvain sont prévenus de fraude
fiscale et déclarent :
 Bernard : « Jacques est coupable et Sylvain est innocent ».
 Jacques : « Si Bernard est coupable alors Sylvain est
coupable ».
 Sylvain : « Je suis innocent mais au moins un des deux
autres est coupable ».
– Qui est coupable ?
Système à base de
connaissance
 Exemple de problèmes
Un problème de contrainte
– Patrick, Antoine et Émilie sont musiciens ; il y a un
saxophoniste, un guitariste, et un violoniste :
 Une personne a peur du chiffre 13, une autre des chats, et une
autre a le vertige.
 Patrick et le guitariste font de la montagne ;
 Antoine et le saxophoniste aiment les chats ;
 Le violoniste habite l’appartement 13 au 13ième étage.
– Qui est qui ?
Système à base de connaissance
 Exemple de problèmes
Les tours de Hanoi
– L’univers du problème consiste en un ensemble de trois piliers
notés de la gauche vers la droite, p1, p2 et p3, et de deux disques,
notés d1 et d2, où le premier est plus petit et posé sur le second.
•
Le problème consiste à faire passer
les deux disques, d1 et d2, du pilier
p1 au pilier p3 en se servant du pilier
intermédiaire p2 en respectant la
règle ci-dessous :
Le petit disque d1 ne peut jamais
être sous la grand disque d2.
•
Le problème se généralise à un
nombre quelconque de disques.
Système à base de
connaissance
 Architecture d’un SBC
Interface
Base de connaissances
Moteur
d’inférence
Base de faits
Utilisateur
Architecture d’un SBC
Système à base de
connaissance
Caractéristiques majeures







Séparation de la connaissance et du raisonnement
Contient de la connaissance experte
Se focalise sur une expertise donnée
Raisonne avec des symboles
Raisonne avec des heuristiques
Permet le raisonnement « incertain »
Résout des problèmes pour lesquels il existe des
experts
Système à base de
connaissance
Représentation des connaissances
Système à base de
connaissance
 Connaissance
– Donnée  information  connaissance
– La représentation des connaissances est le
problème clé en IA.
– Les objets, actions, concepts, situations,
relations, etc. sont représentés selon certains
formalismes (cerveau vs. mémoire de
l’ordinateur).
Système à base de
connaissance
 Représentation des connaissances
– C’est le transfert des connaissances d’un expert
vers une machine  Psychologie cognitive
 Changement de media
 Changement de forme de représentation
– C’est une tâche de modélisation linguistique :
 puissance expressive
 applicable pour le raisonnement
 efficace
Système à base de
connaissance
 Types de connaissance
Système à base de
connaissance
 Représentation des connaissances
– Triplets <objet, attribut, valeur>
– Réseaux sémantiques
– Frames
– Logique
– Règles
Système à base de
connaissance
 Triplets <objet, attribut, valeur>
– Syntaxe
 Objet (sujet) = la ressource (URL ou nœud local)
 Attribut (prédicat) = la propriété
 Valeur (objet)
– Exemple.
 la ressource http://www.w3c.org/ a un propriété
titre dont la valeur est World Wide Web
consortium.
http://www.w3c.org
titre
World Wide Web Consortium
Système à base de
connaissance
 Réseaux sémantiques
– Il s'agit de réseaux dont les nœuds représentent les
concepts et les arcs représentent les relations.
– Le but des réseaux sémantiques est de fournir une
représentation souple des connaissances.
Moyen de
transport
sorte-de
sorte-de
Avion
sorte-de
Voiture
est-un
Citroën C4
possède
est-un
Airbus A380
Avion de
chasse
Aile
Système à base de
connaissance
 Frames
 L’origine des langages de frames peut être
trouvée dans les RS. En fixant une relation
hiérarchique de base (est-un) et une relation
d'appartenance (appartient-à), on a la
structure d'un langage de frames. Les
autres relations se cachent dans les
attributs des entités.
 Les entités hiérarchisées sont les classes
(avec au sommet une classe racine souvent
appelée OBJET). Les autres entités, les
objets proprement dits, appartiennent aux
différentes classes.
Système à base de connaissance
 Logique (Calcul des propositions et prédicats)
– On peut représenter la situation de la figure de la manière suivante
en utilisant les prédicats 'sur', 'surtable', 'libre‘ :





sur(C,A)
surtable(A)
surtable(B)
libre(C)
libre(B)
– Par ailleurs, à l'aide d'opérateurs de la logique du premier ordre, il
est possible de définir de nouveaux prédicats: ‘ôter', 'empiler' et de
donner des équivalences :
1) libre(x)  ¬ (y sur(y,x)) (il n'existe pas de y sur x)
2) sur(y,x)  oter(y,x)  libre(x)  ¬ sur(y,x)
3) libre(x)  libre(y)  empiler(x,y)  sur(x,y)
– Il est possible de donner un but à atteindre (par un robot) de la
même façon.
Système à base de
connaissance
 Règles
– Connaissance servant à faire le lien entre des
informations connues et d’autres informations
que l’on peut déduire ou inférer.
 Exemple.
– Si <balle, couleur, rouge> alors j’aime la balle
– Si j’aime la balle alors j’achète la balle
– Peut exécuter des procédures.
 Si délai<30 et âge_étudiant<28 ="oui"
et présent_communication = "oui"
alors réduction_congrés = 50%
Système à base de connaissance
 Règles
– Représentent des formes de connaissances variées :
 Relation
Si batterie morte
alors l’auto ne démarrera pas
 Recommandation
Si l’auto ne démarre pas
alors prendre un taxi
 Directive
Si l’auto ne démarre pas & le système d’alimentation en essence est ok
alors vérifier le système électrique
 Stratégie
Si l’auto ne démarre pas
alors vérifier le système d’alim. en essence puis le système électrique
 Heuristique
Si l’auto ne démarre pas & l’auto est une Ford de 1962
alors vérifier le radiateur
Système à base de
connaissance
 Règles avec variables
– Réaliser la même opération sur un ensemble
d’objets.
– Exemple.
Si Toto est employé & Toto âge > 65
alors Toto peut prendre sa retraite
Système à base de
connaissance
 Règles incertaines
– Traduisent des associations incertaines entre
prémisses et conclusions.
– Exemple.
Si inflation élevée
alors taux d’intérêt élevé
Système à base de
connaissance
 Méta-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 ’alim. en ess.
Système à base de
connaissance
 Ensemble de règles
– Les règles sont divisées en ensembles.
– Chaque ensemble est applicable à un problème
donné.
Panne auto
Système
électrique
Système alim.
en essence
Système à base de
connaissance
Raisonnement dans les SBCs
Architecture d’un SBC
Système à base de
connaissance
 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.
Système à base de
connaissance
 Types de raisonnements
Raisonnement
Déductif
Inductif
Du sens commun
Abductif
Analogique
Système à base de
connaissance
 Types de raisonnements
– Raisonnement Déductif
 A est vrai
 A  B est vrai
 On en déduit que : B est vrai
– Raisonnement Inductif
 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 Abductif
 C’est une inférence plausible.
 B est vrai
 A  B est vrai
 on abduit que A est vrai
Système à base de connaissance
 Types de raisonnements
– Raisonnement
Analogique
 Faire une analogie entre 2 situations, rechercher les
similarités et différences, etc.
 Exploite par exemple la notion de frame pour
raisonner.
– Raisonnement
Du sens commun
 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.
Système à base de
connaissance
 Raisonnement à base de règle
– 3 composants essentiels :
 un ensemble de règles ;
 un ensemble de faits ;
 un moteur d’inférence ;
Base de
connaissance
Base de faits
initiale
Moteur
d’inférence
– Avantages :
 Facile à comprendre, naturel, modulaire.
Base de faits
enrichie
Système à base de
connaissance
 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.)
Système à base de connaissance
 Base de règles
– 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.
– Une règle se présente sous la forme : si X alors Y
 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.
 Y est la conclusion
– La conclusion est une affectation.
– Exemple base de règles




si
si
si
alors
l’âge du patient < 18
et
il a de la fièvre > 39°
et
présence d’un germe X
le patient a peut-être une méningite
Système à base de connaissance
 Base de faits
– La base de faits constitue la mémoire de travail du SBC.
– 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
Système à base de connaissance
 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.
Système à base de
connaissance
 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.
Base de faits
initiale
Considérer la
première règle
Considérer la
règle suivante
T
Ajouter la
conclusion à la
base de faits
T
Appariement
base de faits
– prémisses ?
F
Il reste des
règles ?
F
STOP
Système à base de
connaissance
Base de faits
initiale
 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.
Considérer la
première règle
Considérer la
règle suivante
T
Ajouter la
conclusion à la
base de faits
T
Appariement
base de faits
– prémisses ?
F
Il reste des
règles ?
F
STOP
PRECISION
Système à base de
connaissance
 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.
Infection
streptocoque de
la gorge ?
12
1
4
5
Signes d’infection
de la gorge
Organisme =
streptocoque
6
7
2
3
Gorge rouge
Tâche en
Grampos
8
9
10
11
Morphologie
coccidie
Croissance
en chaîne
Exemple. MYCIN
Système à base de
connaissance
 Chaînage arrière
Infection
streptocoque de
la gorge ?
• 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.
• 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.
12
1
4
5
Signes d’infection
de la gorge
Organisme =
streptocoque
6
7
2
3
Gorge rouge
Tâche en
Grampos
8
9
10
11
Morphologie
coccidie
Croissance
en chaîne
Exemple. MYCIN
Système à base de
connaissance
 Comparaison
Système à base de
connaissance
 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.
Faits
initiaux
Solutions
possibles
Système à base de
connaissance
 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.
Système à base de
connaissance
 Raisonnement monotone vs. non monotone
Non monotone
information dynamique ;
l’état de véracité de l’information
change.
Sauvegarder les dépendances
logiques entre faits.
Si on retire un fait A dont dépend
un autre fait B, on doit retirer aussi
le fait B.
Monotone
information statique ;
l’état de véracité de l’information ne
change pas.
Exemple. Si Il pleut alors j’ouvre mon
parapluie
Système à base de
connaissance
 Stratégies de parcours d’arbre
Problème
• Notion de réseau d’inférences
et de parcours dans le réseau.
• Exemple.
C1
C2
P1
P2
Si P1 alors C1 ;
Si P2 alors C2 ;
Si P3 & P4 alors P2 ;
Si P5 & P6 alors P1 ;
Si P7 alors P6 ;
Si P8 alors P4 ;
Si P9 alors C2 ;
Différentes stratégies
de parcours de
l’espace !
P5
P6
P7
P3
P9
P4
P8
Système à base de
connaissance
 Stratégies de parcours d’arbre
Problème
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.
P5
C1
C2
P1
P2
P6
P7
P3
P9
P4
P8
Système à base de
connaissance
 Stratégies de parcours d’arbre
Problème
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).
P5
C1
C2
P1
P2
P6
P7
P3
P9
P4
P8
Système à base de
connaissance
 Stratégies de parcours d’arbre
Parcours « meilleur » d’abord
• C’est une solution non aveugle.
• Elle exploite des connaissances du
problème pour guider la recherche.
• À chaque nœud, la technique juge du
meilleur chemin à emprunter, suivant
une heuristique donnée.
Exemples d ’heuristiques
• Ordonner les buts
• Ordonner les prémisses
• Utiliser des méta-règles
• Attribuer des priorités aux règles
• Utiliser des facteurs de confiance
• etc.
Bibliographie

L’IA
– Arsac, Jacques : Les machines à penser, Le Seuil, Paris, 1987.
– Crevier, Daniel : A la recherche de l'IA, Flammarion, collection «champs»,
Paris, 1999.

Les SBC
– C. L. Paris. Systèmes Experts Explicatifs. In EXPL 92 pp 3-23.
– D. Kayser, La représentation des connaissances, Hermès
– (Paris), 1997.
– J.L. Laurière, Intelligence Artificielle (résolution de problèmes par l’homme
et la machine), Eyrolles, Paris, 1987.
– M. Stefik, Introduction to Knowledge Systems, Morgan Kaufmann
Publishers, San Francisco (CA), 1995.
– A. Thayse et al., Approche logique de l’Intelligence Artificielle (5 tomes),
Dunod Informatique (Paris), 1988.
– P.H. Winston, Artificial Intelligence, Addison-Wesley, Reading (MA), 1982.
– E. Rich, Artificial Intelligence, Mac Graw Hill (New York), 1983.
– Systèmes Experts : Méthodes et outils", J.M. Chatain et A. Dussauchoy.
Eyrolles 1987
EXEMPLE








Soit la base de connaissances :
• R1 : si B et D et E alors F
• R6 : si A et X alors H
• R2 : si D et G alors A
• R7 : si C alors D
• R3 : si C et F alors A
• R8 : si X et C alors A
• R4 : si B alors X
• R9 : si X et B alors D
• R5 : si D alors E
Base de faits : B, C
But : H
Téléchargement