SNAHK, a
SIMULATION DU RAISONNEMENT PAR
SYSTEME EXPERT
Monique RENAUD
Laboratoire Informatique des Sciences de l'Homme,
CNRS Paris
Mors CLEFS; Systèmes experts, SNARK, programmation déclarative, étude de raison-nement, pédagogie.
RESUME: La technique des systèmes experts dont on donne ici un exemple de grandes qualités pédagogiques,
- Pour l'accès à l'informatique car la programmation déclal'ative est particulière-ment facile.
- Pour l'expert qui souhaite automatiser son raisonnement.
- Pour l'utilisateur d'expert artificiel qui peut multiplier les études de cas.
ABSTRACT: Expert Systems techniques, a sample of which is bereby given with SNAHK. are highly pedagogieal:
- As an introduction ta computer use, since declarative programing is particularly easy
- For the speeialist who wishes to formatize his reasoning,
Il n'est pas question dans ces quelques pages de définir précisément l'intelligence artificielle (I.A.) et les systèmes experts. Il existe maintenant une littérature
abondante sur le sujet et en parti culier le lecteur intéressé pourra consul ter
Gondran, 1984, L'Intelligence Artificielle, 1985.
1. Les systèmes experts
Disons en simplifiant, c'est-à-dire en déformant, que le terme intelligence arti-ficielle a été créé lorsque les informaticiens, ayant constaté que dans certains domaines l'intelligence humaine était plus efficace que la puissance de calcul des ordinateurs (jeu d'échecs, bridge, etc.l, ont voulu créer des programmes simulant le comportement humain.
Parmi les diverses branches de l'I.A. les systèmes experts ont été développés pour simuler le raisonnement et produire les diagnostics d'un expert. Une technique informatique particulièrement adaptée à ce domaine a maintenant monopolisé ce nom. Ces systèmes ont pour caractéristique l'indépendance entre la connaissance et le raiaonnement.
La connaissance comporte deux p~rties :
- un savoir, celui de l'expert, ayant une certaine stabilité et généralement
ex-primé sous la forme de règles de production du type si "candi tians" alors
"ac tionsll ;
- un fait ou un évènement particulier (par exemple le dossier d'un maladel décrit dans la baae de faits.
La base de règles et la base de faits sont écrites dans le format exigé par le moteur d'inférences. L.. moteur d'inférences est un programme écrit dans un langage de programmation: Pascal, PLI, LISP, PHULOG, etc.
Le moteur d'inférences inclue le mode de raisonnement que l'on désire utiliser, par exemple le "modus ponens" (si p, et si p--) q, alors q.), et le type de fonction-nement : chatnage avant ou alTière. Le chaînage avant part des données (la base de fai ts) eL va vers le liiagnostic, le chaînage arrière part d'un but (généralement une question) et remonLe jusqu'aux données pour savoir si le but p.. ut être atteint. La stratégie, c' est-à-di r .. l ' ordl'e de déclenchement des règles appl icables (règles dont les conditions sont satisfaites) est incluse dans le moteur. Dans les sys-tèmes évolués, cette stratégie peut être améliorée ou modifiée par l'utilisation de méta-règles qui font partie de la base de connaissances. On appelle unification la rechel~che Vé:ir le muteur dlinfél't:mces des raits de la base d~ raits qui cofnciùent
avec les conditions (ou prémisses) d'une règle. Dans le cas des systèmes avec
variable, l'uni fication compol'te l'instanciation qui est la mise en concordance d'une variable et d'une entité.
2. SNARK
Depuis de nombreuses années, Marie-Salomé Lagrange, Ingénieur de Rechel'che dans un labOl"atoire d'archéologie, (E.R. 315 CNRS Paris), faisait, sous la direction de
J.-C. Gardin, de l'analyse du discours archéologique. Cette analyse dile logicisLe permet de mettre de l'ordre dans le discours archéologique en précissnt quels sont les faits de départ, les conclusions et les raisonnements qui permettent de passer de l'un à l'autre (Gardin et Lagrange, 1975). En 1982, M.-S. Lagrange et moi-même avons eu l'idée de nous servir de la technique des systèmes experts pour autom,,-tiser les produits de ces analyses. C'est JelOn-Louis Laurière, Professeur à Pal'is VI, qui, en metlant à notre disposition SNARK, le moteur d'inférences qu'il venait de réaliser, nous a permis la concréti6ation de ce projet.
SNARK est un moteur d'inCérences avec variable, fonctionnant en cha[nage avant (dans la dernière version le chafnage arrière est également possible), dont le mode de raisonnement est le "modus ponens". Il est dit non monotone car il possède des ordres pouvant détruire des faits de la base de faits.
La stratégie de SNARK est très efficace et peut être améliorée en fonction du domaine par des méta-règles.
- Le système de l'eprésentation de la connaissance sur lequel SNARK opère est un triplet "objet, objet, objet" que l'on désigne parfois sous le nom de relation binaire a R b, ou a est une entité, R une relation, et b une enlité ou une valeur. Exemple (1) LA-Sl'ELE (2) LA-STE LE (3) LA-SCENE NATURE DIM-LONG APPAR PIERRE-fIGURATIVE 55 LA-STE LE
LA-STE LE el LA-SCENE sonl des noms d'entités, NATURE, DIM-LONU et APPAH des
rela-tians, PIERRE-fIGURATIVE el 55 des valeurs,
(1) est un triplet "entité, relation, valeur (alphabétique)" (2) est un triplet lIentité, relation, valeur (numérique)"
(3 ) est un tr iph.t "entité. r~lation, entité,1I
- La description du sujet de l'expertise (objet, individu, situ.. tion, etc.)est réalisée sous la forme d'un ensemble de triplets et constitue la base de faits.
Exemple : LA-STELE LA-STELE LA-STELE I.A-SCENE LA-SCEN~ NATURE UlM-LONG IJJM-LAHG NATURE APPAH PIERRE-fiG 55 50 SCENE LA-S'l'ELE C'est-à-dire
LA-STELE est une pierre figurative de dimension en longueur 55cm de dimension en larg~ur 50cm
LA-SCENE est ulle scène '1"i apparlient à LA-STE LE
PERSONNl PERSONNI PERSONNI PERSONN2 PERSONN2 PERSONN2 NATURE APPAR POSTURE NATURE APPAR POSTURE PERSONNAGE LA-SCENE ASSIS PEHSONNAGE LA-SCENE DEBOUT
PERSONNI est un personnage qui appartient à LA-SCt::NE
et qui a pour posture : assis
PERSONNZ est un personnage qui appartient à LA-SCENE et qui a pour posture : debout
- Les règles de productions représentent le savoir, elles expriment de queUes conditions dépendent une ou plusieurs actions.
Exemple :
SI NATURE (X) SCENE c'est-à-dire Si dans une scène (X)
SI APPAR (y) (X) i l existe
SI NATUHE (y) PERSONNAGE un personnage (Y)
SI POSTURE (y) ASSIS qui est assis
SI APPAR (z) (X) et
SI NATURE (z) PERSONNAGE un autre personnage (z) SI POSTURE (z) DEllOUT qui est debout
ALORS Alors
RANG-SUP (y)
<--
(Z) (Y) est de rang supérieur à (z)FR Fin de règle
Lorsqu'une ,-ègle trouve pour un système d'instanciation, par exe",ple x ~ LA-SCENE Y~ PERSONNl
z
PERSONN2toutes ces conditions satisfaites dans la base de faits, alors la règle est appli-quée et l'action de cette règle devient généralement un fait qui vient s'ajouter à
la base de faits. Vans l'exemple cité, le fait ajouté à la base de faits sera:
PERSONNI RANG-SUP PERSONN2
Avec un moteur comme SNARK, l'ordre des fai ts ainsi que l'ordre des règles est indifférent, les règles s'appliquent ou non en fonction du contenu de la base de faits. Chaque règle appliquée modifie le contenu de la base de faits et permet éventuellement à d'autres règles de devenir applicables.
Nous n'avons donné ici qu'un aperçu des possibilités de SNARK, le lecteur intéressé pourra consulter Laurière et Vialatte, 191;l5 et Laurière J.-L. 1985.
3. Impact des Systèmes Experts
Après cette description succinte des systèmes experts et de SNARK en particulier,
je voudrais examiner l'impact de ces techniques sur;
- (a) le programmeur, (b) l'expert, et (c) l'utilisateur.
a. La programmation sous forme de règles de production dite programmation
déclara-tive est urw ri:vülutioll. La façon d'aborder et de résoudre les problèmes diffère
habitués de FORTRAN, PLI, PASCAL, etc. Mais une fois le petit handicap de départ franchi, on trouve une telle facilité d'écriture, de mise au point et de mainte-nance que ml!me pour les problèmes qui poulTaient se résoudre en algorithmique on
n'a plus envie de revenir aux "vieux" langage. A titre d'exemple, SU," une base de faits décrivant une série de tiroirs numérotés contenant des valeurs mises dans le désordre
FR
(le tiroir 1 a pour contenu 20)
ALORS
CONTENU (A) ( - - (y) CONTENU (8) (-- (X) CONTENU 20 2 CONTENU 5 3 CONTENU 22 etc. La règle REGLE : DELORDRE SI (A) ( (B) CONTENU (A) CONTENU (B) (X)
:>
(Y) (X) ( y) C'est-à-direSi le nO du tiroir A est inférieur à celui de B Si A a pour contenu X
Si Ba pour contenu Y
et Si Xest plus grand que y
Alors
Mettre Ydans A
et Xdans B
Fin de règle
suffit pour effectuer un tri par permutation et retrouver dans l'ordre des tiroirs
une sui te monotone crofssante. C'est le moteur d'inférences qui en effectLAant toutes les instanciations possibles de cette règle évite l'écriture des différentes itéraLiunti.
b. L'expert qui veut bien fournir son savoir va probablement découvrir à quel point il est difficile d'exprimer ce que l'on sait. Il arri ve que la mise sous
forme de règles de production d'une pratique amène l'expert à s'interr0ger sur les fondements de cette pratique et parfois à la remettre en cause. Il faut savoir que l'expression de la connaissance est un travail long et difficile, mais taLAS les experts qui ont subi cette épreuve sont d'accord pour estimer très importante la progression de leur connaissance. Dt autre part. lorsque le savoir esl ain~ii
ex-primé il devient transmissible et enseignable.
Devenu transparent, le raisonnement devient criticable - au sens constructif du terme - ce qui est indispensable à la progression d'LAne discipline. Depuis le début de ces études nous avons mis l'accent sur ce rôle fOl"lnateur des systèmes experts (M.-S. Lagrange et M. Renaud, 19B4; J.-C. Gardin et al. 19B7).
c. Quel est l'intérêt pour un utilisateur de consul ter un expert artificiel ? C'est un expert toujours disponible, d'égale humeur. donnant toujours la même réponse à la même question, et justifiant dans le détail son diagnostic si on le lui demande. Voilà déjà quelques boom"s raisons
- si l'expert humain qui a conçu le système est présent il est souvent plus rapide que l'artificiel auquel il faut fournir une description détaillée du sujet de
l'expertise;
- si l'expert humain est absellt, alûs Be pose dans bien des doolaines le proLlême de
la responsabilité de l'expertise (par exemple le domaine médical, juridique, etc.). Ce que l'on peut constater c'est que les systèmes experts existants sont de mer-veilleux outils pédagogiques, ils permettent aux étudiants de soumettre à l'expert de nombreux cas, de confronter leur propre diagnostic à celui de l'expert, et en
cas de divergence de demander le détail du raisonnement qui a conduit à ce
diagnostic.
De toute façon l'utilisateur ne se tI'ouve jamdis devant Ulle boite noire, ce qui
était souvent la cas en algorithmique; dans le cas où l'utilisateur est aussi
l 'exper't on peut mênle dire qu'il se trouve devant un miroir.
CONCLUSION
Les systèmes experts sont à leur début, mais si l'on en juge par la littérature leur puissance de développement est très grande. Il serüit dommage que leurs qualités pédagogiques
a) pour l'enseignemerll de la programmation (prograrwndtion déclarative), b) pour l'expert qui met en forme son raisonnement,
c) et pour l'utilisateur
ne soient pas pleinement utilisées.
REFERENCES
GONDRAN, M. - 1984 - Introduction aux systèmes experts. Eyrolles; Paris.
L'INTELLIGENCE ARTIfICIELLE - 1985 - La Recherche, Numéro spécial, n'170, octobre. GARDIN, J.-C., O. GUILLAUME, P. Q. RERMAN, A. HESNAHD, M.-S. LAGRANGE, M. RENAUD,
E. ZADORA-RIO - 1987 - Sy..tèmes experts et sciences humaines, Ed. Eyrolles, Paris.
GARDIN, J.-C., LAGRANGE, M.-S. - 1975 - Essais d'analyse du discours archéologique.
Notes. et monographies techni4ues du Centce de Recherches Archéologiques
7, Ed. du CNRS, Paris.
LAGRANGE, M.-S., RENAUD M. - 1984 - SNARK, un archéologue et douze vases grecs,
Eliucation &Informatiqlle. Nov.Déc., Paris.
LAURIERE, J.-L" 1985 - Un langage déclaratif SNAHK. Technique et Science
Illfurmatiques, A~'C~T-Gauthier-Villal's,Paris.
LAURIERE, J.-L., VIALATTE, M. - 1985 - Manuel d'utilisation de SNARK. Institut de