Vous êtes sur la page 1sur 6

Intelligence Artificielle NFP106 Anne 2011-2012

Systmes Experts
"Un systme expert est un programme conu pour simuler le comportement d'un humain qui est un spcialiste ou un expert dans un domaine trs restreint" P. Denning!(1986)

Systme expert est un programme : ! Incorporant la fois des connaissances formelles des jugements personnels de l'expert (sous forme d'heuristiques)

Systmes experts
F.-Y. VILLEMIN ! CNAM-CEDRIC
http://deptinfo.cnam.fr

! Expliquant la fois le raisonnement conduisant aux rponses aux questions le savoir qu'il contient ! Capable d'incorporer du nouveau savoir dans le savoir existant de manire incrmentale ! Sparant !les connaissances, !le contrle (moyen d'utiliser les connaissances) ! "Dialoguant" (systmes volus) avec l'utilisateur dans un langage proche du sien (langue naturelle, "jargon" du domaine)
F.-Y. Villemin 2011! 2!

Principes actuels de construction


Credo de E. Feigenbaum (1977) :
! la puissance du systme rside dans son savoir ! le savoir est souvent inexact, incomplet ! le savoir est souvent mal-spcifi ! les amateurs deviennent des experts incrmentallement ! les systmes experts doivent tre flexibles ! les systmes experts doivent tre transparents
UTILISATEUR EXPERT

Schma d'un systme expert

Connaissances

INTERFACE : LANGAGE EXTERNE / LANGAGE INTERNE

Rponses et explications Donnes et questions

Principes architecturaux :
! sparer le moteur d'infrence de la base de connaissances ! utiliser le mode de reprsentation le plus uniforme possible ! garder le moteur d'infrence simple ! exploiter la redondance
F.-Y. Villemin 2011! 3!

Rponses et explications

RESOLUTION DES PROBLEMES + EXPLICATION

F.-Y. Villemin 2011!

BASE DE CONNAISSANCES
4!

Donnes et questions

ACQUISITION DE CONNAISSANCES

!!Donnes non sres ou incompltes !!Savoir non sr ou incomplet !!Donnes variant avec le temps

Types de problmes traiter

Exemple d'un systme expert (1)


(N.B. cet exemple, de H. Gallaire, n'a pas la prcision d'une expertise mdicale) MR1!!S'il y a des ruptions ou des rougeurs alors envisager: R1, R2, R3, R4 MR2!!Si le patient est une femme adulte et si R1, R2, R3, R4 sont envisages alors R1 est prioritaire MR3!!Si le patient est un adolescent ou un enfant et si R1, R2, R3, R4 sont envisages alors R4 est peu probable MR4!!Si deux rgles sont galement probables alors prendre en priorit celle qui a le plus de conditions R1!!Si la fivre est faible, la peau sche, s'il y a des ganglions, pas de pustules ni de rhume alors envisager la rubole R2!!Si les boutons sont isols et dmangent beaucoup avec une faible fivre, et si la crote apparat vite sur les pustules ou les vsicules alors envisager fortement la varicelle R3!!S'il y a rhume, mal aux yeux, taches roses dans la gorge, boutons en taches, fivre forte alors envisager la rougeole R4!!S'il y a amygdales rouges, desquamation, forte fivre, taches rouge vif alors envisager la scarlatine
F.-Y. Villemin 2011!

!!Trs nombreuses solutions plausibles !!Interaction de sous-problmes !!Besoin de plusieurs reprsentations !!Connaissances de divers types !!Besoin d'inventer des tats !!Plusieurs raisonnements envisager

F.-Y. Villemin 2011!

5!

6!

Exemple d'un systme expert (2)


Moteur
BASE DE FAITS R1 R2 R3 R4 .... MR1 MR2 MR3 MR4 .... BASE DE CONNAISSANCES

Exemple d'un systme expert (3)


cycle! Dtection des mtargles applicables, puis les rgles applicables (par mtargles)! Choix d'une rgle!

INTERPRETE

Application! Excution! Base de faits: patient adulte femme, rougeurs, fivre faible Pas 1 : mtargles intressantes : MR1, MR2, MR4; slectionner MR1 Pas 2 : par MR1 l'interprte slectionne R1, R2, R3, R4 Pas 3 : la base de faits est utilise pour prslectionner: R1 et R2 Pas 4 : MR2 suggre d'utiliser R1(mais R2 reste slectionnable) question pose l'utilisateur : pustules ? supposons une rponse positive : R2 reste slectionnable, mais R1 est limine !! varicelle
F.-Y. Villemin 2011!

F.-Y. Villemin 2011!

7!

8!

Exemple d'un systme expert (4)


fievre forte patient adulte femme oui demangeaison forte oui non oui mal aux yeux non non faible boutons ou taches taches rhume non boutons

Critiques des systmes experts actuels


Critres de R. Davis (1982) ! Caractristiques attendues d'un systme expert!: ! rsoudre le problme ! expliquer le rsultat ! apprendre ! restructurer son savoir ! "casser" les rgles ! dterminer la pertinence de ses rponses ! se dgrader lentement aux limites de son domaine Bilan de B. Buchanan (1982) : ! domaine d'expertise trs troit ! comportement "fragile" aux frontires du domaine ! langage de reprsentation de connaissances trs limit ! entre-sortie limites ! explications rduites ! base de connaissances fonde sur un seul expert ("knowledge czar")
9! F.-Y. Villemin 2011! 10!

oui

rougeole

F.-Y. Villemin 2011!

Typologie des systmes experts


Systmes superficiels ! conus pour avoir grande vitesse d'excution (conclusions en un petit nombre d'tapes) ! connaissances principalement empiriques ou compiles ! bon rsultat dans leur domaine propre, mauvais rsultats en dehors Exemple : MYCIN (fonctionnement simulant le comportement d'un mdecin face un malade et des rsultats d'analyses) Systmes profonds ! conclusions drivant des principes premiers d un modle des phnomnes et du domaine ! solutions sont gnralement longues obtenir (rsultats paraissant souvent non-triviaux aux observateurs) Exemple : SOPHIE de J. S. Brown & de J. Kleer (utilise la physique qualitative pour prdire le comportement rel d'un systme physique)
F.-Y. Villemin 2011! 11!

Systmes experts gnriques


"Les bons travaux en IA concernent l'automatisation des choses que nous savons faire, et non l'automatisation de choses que nous aimerions savoir faire" D. Perlis (1986) Intuitivement, pour tout domaine, types de connaissances et des mcanismes de raisonnement communs en : ! !diagnostic ! !conception ! !identification ! !classement de donnes... !!notions de: ! !Tches gnriques (Chandrasekaran) ! !Structures d infrence (Clancey) But: ! !Dterminer les invariants ! !Programmer d'avance ces invariants ! !Mthodes de vrification des systmes en rfrence au modle
F.-Y. Villemin 2011! 12!

Problmes relevant des systmes experts


D'aprs Hayes-Roth, Waterman et Lenat: Building Expert Systems Interprtation:!Identifier des donnes partir de leurs descriptions: DENDRAL (Buchanan-Feigenbaum) Diagnostic:!Dterminer les fautes partir de donnes: MYCIN (Shortliffe) Prdiction:!Dterminer les consquences plausibles en fonction du prsent et du pass Monitoring:!Dterminer si des donnes sont nominales: VM (Fagan) Planification:!Concevoir une suite d'actions: MOLGEN (Stefik) Conception: Spcifier un objet tant donnes des contraintes: ISIS (Fox) Dbogage:!Prvoir la rectification d'une erreur: PROUST (Kant) Rparation:!Planifier une solution de secours Instruction:!Diagnostiquer, dboguer et rparer l'attitude d'un tudiant Contrle:!Interprter, prdire, rparer et guider le comportement d'un systme

Analyse et synthse des systmes !


! ! !
Interprter ANALYSE Identifier / Reconnatre

Prdire / Simuler Diagnostiquer / Dboguer


Construire

Contrler

Monitorer / Auditer / Vrifier

SYNTHESE

Spcifier / Contraindre

Concevoir

Assembler / Fabriquer Modifier / Rparer Planifier (processus)

F.-Y. Villemin 2011!

13!

F.-Y. Villemin 2011!

Configurer (structure)

14!

Analyse et synthse des systmes


Conguration! Entre! ! Systme comme! objets en interaction! Sortie!

Algorithme gnrique de diagnostic GSC


R. Reggia, D. Nau & H. Wang (1983) Soit un systme avec: ! M!"!ensemble de toutes les manifestations observables ! F!"!ensemble de toutes les fautes (pannes, disfonctionnements) possibles ! C, (C # F $ 2M), l'ensemble de toutes les causes

!
Sortie Systme transform

Entre

Planification

cause c!%!C c!=!<f,!{m1,!,!mn}> avec f!%!F et m1, , mn!%!M fonction Manif , Manif : 2F!!!2M, ensemble des manifestation associes un ensemble de fautes par C fonction Cause , Cause : 2M!!!2F ensemble des fautes tel que l'une puisse causer au moins l'une des manifestations
15! F.-Y. Villemin 2011! 16!

Systme Transformation comme une suite d'actions

Configuration (statique) et planification (dynamique)


F.-Y. Villemin 2011!

Diagnostic de Fautes Multiples


Problme du diagnostic d un systme: !S, (S!#!M), ensemble de tous les symptmes & &!!dterminer D, (D!#!F), tel que: ! D est tel que S # manif (D) ! D!#!Cause (S) ! D est de cardinalit minimale Principe du Rasoir d'Occam: "ne rien supposer qui ne soit strictement ncessaire" !D!"!diagnostic du systme {F, M, C} pour S
F.-Y. Villemin 2011! 17!

Algorithme GSC
Procdure GSC (in S : ensemble de manifestations observables, ex D : ensemble de fautes);! Var Obs : ensemble de manifestations observables, m : manifestation observable;! Fautexclues, Hypothses, Explic : ensemble de fautes;! Dbut! Obs := ; /* Obs est le sous-ensemble de S examin*/! Causexclues := ; /* Fautexclues sous-ensemble de F qui ne peut tre retenu */! Hypothses := ; /* Hypothses sous-ensemble de F */! tantque Obs S faire! prendre une manistestation m dans S - Obs; ! ajouter m Obs; /* m peut ne pas tre un disfonctionnement */! dterminer Explic = Cause (m); ! si panne(m) alors ajouter Explic Fautexclues is;! ajuster Hypothses Explic et m! fait;! D:= premier lment de Hypothses !/* D ! diagnostic */! Fin!

F.-Y. Villemin 2011!

18!

Algorithme GSC
Les auteurs ont remarqu que les experts savent que : certaines fautes s'excluent les unes les autres hypothse H: soit f1, soit f2 est vraie et combine soit f3, soit f4 &!!hypothse H est crite en utilisant des gnrateurs: H = {{f1, f2}X{f3, f4}} {f1, f2} signifie soit f1, soit f2

Exemple

" " "


Ai!"!additionneurs Mj!"!multiplicateurs

! A1 !

certaines fautes sont plus probables que d'autres &!!fautes ordonnes dans les gnrateurs (les plus probables d'abord) Exemple d'ajustement de l'hypothse H: hypothse H = {{f1, f2, f3, f4}} lment accommoder {f1, f3, f5} !!H devient: (cas faute) H = {{f1, f3} et {f2, f4}X{f5}} (ici f1 prfre f3) (cas normale) H = {{f2, f4}} (f1 et f3 exclus)
F.-Y. Villemin 2011! 19!

Mesures aux bornes supposes correctes : ! 3, " 4, # 5, $ 32, % 61, &!29, ' 27, ( 20 Pas de problme de fils
F.-Y. Villemin 2011! 20!

Exemple
Ensemble F des malfonctions possibles (X!"!circuit X dfectueux): { M1, M2, M3, A1, A2, A3, A4} Ensemble S des disfonctionnement observable (X!"!sortie X dfectueuse): {{ 4} { 5} { 6} { 7} {8}} Table des causes M1 M2 M3 A1 A2 A3 A4 C | | | | | | | ou fonction Manif (","!"!ou): 4 & 5 & 6 & 7 5 & 6 & 7 4 & 5 & 7 & 8 4 & 5 5 & 6 & 7 7 5 de la M3}, M2}, M2}, M2}, prcdente) ou fonction Cause : { A1} { M3}, { A1}, { A2}, { A4} { A2} { M3}, { A2}, { A3}

Fonctionnement
Au dbut : Obs = {}; Fautexclues = {}; Hypothse = {} (1) Sortie 4 correcte !!Obs = { 4}; Cause(4) = {M1 & M3 & A1} (ngation de la cause); Fautexclues = {M1, M3, A1}; Hypothse = {} (2) Sortie 5 incorrecte !!Obs = { 5}; Cause( 5) = { M1, M2, M3, A1, A2, A4}; Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2, A4}} car M1 & M3 & A1 (3) Sortie 6 incorrecte !!Obs = { 6}; Cause( 6) = { M1, M2, A2}; Fautexclues = {M1, M3, A1}; Hypothse = {{!M2, A2} & {!M2, A2}X{ A4}} (4) Sortie 7 incorrecte !!Obs = { 7}; Cause( 7) = { M1, M2, M3, A2, A3}; Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2} & { M2, A2}X{!A4}X{ A3}} (5) Sortie 8 correcte !!Obs = { 8}; Cause(8) = {M3} (ngation de la cause, aucune information nouvelle); Fautexclues = {M1, M3, A1}; Hypothse = {{ M2, A2} & { M2, A2}X{!A4}X{ A3}} Interprtation, deux diagnostics minimaux: soit A2 est en panne soit M2 est en panne
21! F.-Y. Villemin 2011! 22!

Table de causalit (transpose 4 | { M1}, { 5 | { M1}, { 6 | { M1}, { 7 | { M1}, { 8 | { M3}


F.-Y. Villemin 2011!

Vous aimerez peut-être aussi