500 likes | 629 Views
Chapitre 9. Systèmes experts. Sujet: Nos ordinateurs plus performants Georges se plaint ces jours-ci d'un mal a son coude. Il en parle a son meilleur copain: - " Aiee Aujourd'hui j'ai encore mal au coude. - Qu'est-ce que tu vas faire?
E N D
Chapitre 9 Systèmes experts
Sujet: Nos ordinateurs plus performants Georges se plaint ces jours-ci d'un mal a son coude. Il en parle a son meilleur copain: - " Aiee Aujourd'hui j'ai encore mal au coude. - Qu'est-ce que tu vas faire? - Je vais aller voir le medecin, je ne peux plus tenir. - T'es dingue! A l'aube du vingt et unieme siecle, aller chez le medecin n'est plus la solution la plus pratique et la plus efficace. Maintenant on dispose de supers ordinateurs qui savent diagnostiquer toutes les maladies efficacement et pour beaucoup moins cher que le medecin. - Ah bon? - Oui. Tu vas au supermarche du coin, il y en a un d'ordinateur, tu y vas avec un flacon d'urine, une piece de 1$ et le tour est joue. Rentrant chez lui, Georges repense a ce que lui a dit son copain. Apres tout, s'il veut tenter l’experience, il n'a que 1$ a perdre. Le lendemain, Georges se rend au super marche avec un flacon d'urine. Il trouve l'ordinateur en question, pose le flacon d'urine a l'endroit indique et met 1$ dans la fente. L'ordinateur commence a s'agiter, des lumieres multicolores se mettent a clignoter. Puis, finalement, une feuille de papier sort de la machine. Georges la lit: " PROBLEME : VOUS SOUFFREZ D'UNE TENDINITE AU COUDE. SOLUTION: TREMPEZ VOTRE COUDE TOUS LES SOIRS DANS DE L'EAU CHAUDE PENDANT DEUX SEMAINES - EVITER DE PORTER DES CHARGES LOURDES". Georges est effare! Rentrant chez lui il repense a l'experience qu'il vient de vivre et admet que la science progresse. Pourtant, comme tout etre humain, il doute. Il se dit que, quand meme, un ordinateur peut etre faillible, qu'il peut etre pris en defaut. L'experience se montrant amusante, il se decide de passer a l'acte des le lendemain... Le lendemain, il prend un flacon, et le remplit partiellement avec de l'eau du robinet. Il recueille un peu de la bave de son chien, y melange un peu d'urine de sa femme et de sa fille et pour couronner le tout, se tape une petite branlette par dessus le melange afin d'en assurer l'homogeneite.. . Georges se rend au super marche avec le flacon contenant la " mixture".. Dans l'ordinateur il pose le flacon d'urine a l'endroit indique et met 1$ dans la fente. L'ordinateur commence a s'agiter, des lumieres multicolores se mettent a clignoter. L'ordinateur s'agite des plus en plus, les lumieres clignotent de plus en plus. Georges se frotte les mains: la machine risque d'exploser. Puis, finalement, une feuille de papier sort de la machine. Georges la lit: " PROBLEME : VOTRE EAU EST CALCAIRE EST IMPURE SOLUTION : INSTALLER UN PURIFICATEUR D'EAU. PROBLEME : VOTRE CHIEN A DES VERS SOLUTION : METTEZ LE SOUS VERMIFUGE PENDANT UNE SEMAINE PROBLEME : VOTRE FILLE SE DROGUE A LA COCAINE SOLUTION : METTEZ LA EN CURE DE DESINTOXICATION PROBLEME : VOTRE FEMME EST ENCEINTE. CE SONT DEUX JUMELLES. ELLES NE SONT PAS DE VOUS. SOLUTION : CONTACTER DES MAINTENANT VOTRE AVOCAT. CONSEIL DU JOUR: ARRETER DE VOUS MASTURBER, CELA NE VA PAS ARRANGER VOTRE TENDINITE AU COUDE. .. "
9- Systèmes experts • Plan • Vue d’ensemble • Architecture • Représentation des connaissances • Moteur de déduction
Découverte • Karkan & Tjoen, Systèmes experts: un nouvel outil pour l’aide à la décision, Masson, 1993. • Acheté à Paris, avril 2003 • Bonne vue d’ensemble • Couvre la plupart des principaux thèmes, mais un peu superficiellement • Giarratano & Riley, Expert Systems: Principles and Programming, 2nd Ed. PWS Publishing, 1994. • Excellente référence dans le domaine • Porte essentiellement sur les S.E. et les coquilles • 2e partie: CLIPS, coquille de SE (issue de NASA) • Rich & Knight, Artificial Intelligence, 2nd Ed., McGraw Hill, 1993. • Couvre IA symbolique surtout • Approche connexioniste - perceptron multi, Hopfield • Couvre beaucoup + large que ref. ci-haut (Giarratano) • Encyclopédique • Livre de cours
9.1 Vue d’ensemble • Un système expert est un logiciel qui tente de simuler le raisonnement humain tenu par un expert dans un domaine particulier. Les mécanismes utilisés sont généralement restreints en regard du potentiel qu’offre à cet égard notre cerveau.
Programmation de l’expertise : • Insuffisamment structurée pour être transcrite sous forme d’algorithmes • Sujette à de nombreuses révisions • Incomplète parce qu’en continuelle évolution • Sinon : • Problème mieux résolu par algos classiques • Problème hors de portée (expertise difficilement formalisable)
Domaines d’utilisation des SEs • Configuration • Diagnostic • Enseignement • Interprétation • Surveillance • Planification • Prédiction • Diagnostic médical • Commande de processus
Quelques SEs célèbres • DENDRAL (le premier, 1965) chimie interprétation de la structure moléculaire • CADHELP électronique instructions pour la CAO • MYCIN (beaucoup d’influence) médecine diagnostic pour infections bactériennes • PROSPECTOR géologie interprétation données géol. Minerais • XCON (beaucoup de succès) informatique configuration mini ordi. VAX de DEC • MACSYMA mathématique résolution symbolique de problèmes de math
Composantes de base d’un SE • Connaissances • Base de connaissances • Base de faits (mémoire de travail) • Mécanisme de raisonnement • Expertise = Savoir - Faire • Connaissances correspondent à ce que nous savons du domaine considéré • Mécanismes de raisonnement correspondent à ce que nous faisons pour obtenir une solution
Connais- Faits sances (mémoire de travail) Connais- Faits sances Module Module d’inférence d’explica- tion 10.2 Architecture Base de connaissances Moteur de déduction consultation acquisition Expert Utilisateur Interface
Systèmes de production • Architecture de SE la plus répandue • Connaissances : règles de production • Mécanisme d’inférence
Moteurs d’inférence • Cycle de base • Sélection des règles • Filtrage • Résolution des conflits • Exécution • Stratégies de recherche • Largeur d’abord • Profondeur d’abord • Stratégie irrévocable • Stratégie par tentatives • Profondeur limité • Recherche heuristique • Mode d’invocation des règles • Chaînage avant • Chaînage arrière
9.3 Représentation des connaissances • Règles de production Si (proposition logique) Alors (actions) prémisse conclusions
Caractéristiques des règles de production : • Les règles sont indépendantes • Les règles sont déclaratives • Facilité d’expression • Développement aisé et formation peu exigeante des programmeurs • Large diffusion des logiciels • Clarté de la connaissance (transparence des règles) • Mise-à-jour aisée • Vérification et validation possible de la connaissance
9.4 Moteur de déduction • Mécanisme d’inférence • Une règle se matérialise sous la forme d’une proposition logique conditionnelle • Règle Si A Alors B A B Table de vérité: A B A B 0 0 1 0 1 1 1 0 0 1 1 1
Mécanismes d’inférence • Modus Ponens (raisonnement direct) ((A B) ET A) B règle fait Permet de déduire que B est VRAI si la règle de production est vraie ET le fait A est VRAI Forme la base des systèmes à base de règles Si ma batterie est à plat Alors ma voiture ne partira pas
Modus Tollens (raisonnement indirect) ((A B) ET B) A règle action Permet de déduire que NON A est VRAI si la règle de production est vraie ET l’action NON B est VRAI Rarement utilisé même si fait appel au sens commun Si j’ai la tourista Alors je suis allé en Amérique du Sud
Moteur d’inférence • Cycles de base 1- Phase de restriction Choix du sous-ensemble de connaissances 2- Phase de filtrage Choix des règles applicables
3- Phase de sélection • Stratégies de recherche • Largeur d’abord • Profondeur d’abord • Stratégie irrévocable • Stratégie par tentatives • Profondeur limité • Recherche heuristique • Résout conflits lorsque plusieurs règles s’appliquent • Sélection simple (1ère de la liste, la + utilisée, etc.) • Sélection selon contexte (chaînage avant, arrière, la plus prometteuse, la plus fiable, etc.)
4- Phase d’exécution • Appliquer la règle sélectionnée • Modification de l’ensemble de faits (générer des états intermédiaires) • Questionner l’usager • Exécuter les actions externe
Stratégies de recherche • La recherche en largeur d’abord • La recherche en profondeur d’abord • La recherche en profondeur limitée • La recherche heuristique
Largeur d’abord • On parcourt à l’horizontal un niveau de l’arbre de décision avant d’aller au suivant • On commence par explorer toutes les possibilités présentes avant d’entrer dans les détails
Avantages : • Atteint toujours son but • Si une solution existe, c’est le chemin le + court en terme de noeuds • Inconvénient : • Pas très efficace
2 3 5 4 7 6 8 9 10 b 11 12 b 13 14 b 1 Largeur d’abord 15 16
Profondeur d’abord • On s’enfonce dans l’arbre de décision en passant d’état en état jusqu’à ce que le chemin se termine • On cherche à explorer au maximum une possibilité en appliquant les règles de façon à obtenir le plus de détails
Profondeur d’abord (suite) • Chaînage arrière : ajout du retour-arrière • Chaînage avant : imposition d’une limite de recherche (éviter voie sans issue)
2 11 3 15 12 4 13 b 16 5 b 14 6 7 b Profondeur d’abord 1 10 9 8
Profondeur limitée • La recherche en profondeur limitée combine les deux approches précédentes : profondeur d’abord et largeur d’abord. • L’arbre des états est découpé en k niveaux. • Une recherche en profondeur est effectuée dans chaque tranche avant de passer à la tranche inférieure.
2 5 4 3 7 6 8 12 13 b 9 b 11 14 10 b Profondeur limitée 1 15 16
Recherche heuristique • Des connaissances spécifiques sur le problème à traiter sont exploitées pour trouver une solution • La connaissance du problème à traiter prend la forme d’une fonction d’évaluation qui mesure la « promesse » de se trouver sur un chemin intéressant • Une heuristique garantit une bonne solution mais pas nécessairement la solution optimale
Exemple: jeu du taquin Heuristique:minimiserF(E) = L + MPavecE= état courantL= longueur du chemin de l’état initial à EMP= le nombre de carrés mal placés par rapport à la configuration finale État initial État final G * déplacé à gauche D * déplacé à droite H * déplacé vers le haut B * déplacé vers le bas
Invocation des règles : chaînage avant • Part des faits pour arriver au but • Ne sélectionne que les règles dont la partie prémisse est vérifiée par les faits présents • Ajoute les nouveaux faits à l’ensemble des faits • S’arrête : • Avec succès dès que le but est atteint • Avec échec quand il n’y a plus de règles applicables
Chaînage avant (suite) • Avantage : répond plus rapidement à tout nouvelle information • Inconvénients : • Déclenche toutes les règles, même celles sans intérêt • Pas intéractif • L’ensemble des faits doit contenir suffisamment de faits • Risque d’explosion combinatoire
Chaînage avant (suite et fin) • Approprié : • Réponse rapide • Nombre de buts possibles est très élevé • On ne connaît pas a priori le but à atteindre • On cherche à obtenir le maximum de faits correspondant à une situation donnée
Invocation des règles : chaînage arrière • Part du but ou d’une hypothèse de but et essaie de remonter aux faits pour le démontrer • Ne sélectionne que les règles dont la partie conclusion contient le but à vérifier • Détermine autant de sous-buts à démontrer qu’il y a de conditions inconnues dans la partie prémisse de la règle • S’arrête : • Avec succès lorsque tous les sous-buts sont vérifiés • Avec échec lorsqu’il ne peut plus sélectionner de règles
Chaînage arrière (suite) • Avantages : • Pose uniquement des questions quand cela est nécessaire et après avoir exploré toutes les possibilités • Le processus est intéractif • L’arbre de recherche est souvent plus petit qu’en chaînage avant • Inconvénient : bouclage • Pour démontrer A, il faut démontrer B • Pour démontrer B, il faut démontrer A ...
Chaînage arrière (suite et fin) • Approprié : • Aux problèmes présentant un nombre relativement restreint de solutions puisque l’on n’applique que les règles qui sont directement reliées aux buts à vérifier
Base de connaissance: règles de déplacement • R1: Si dans un couloir Alors continuer dans la même direction • R2: Si à une intersection Alors tourner à droite • R3: Si à une intersection Alors tourner à gauche • R4: Si à un coin Alors tourner le coin
Recherche en profondeur d’abord • Toujours tourner à gauche aux intersections (choix irrévocable)
Recherche en profondeur d’abord • Tourner à gauche aux intersections sauf si échec (choix par tentatives)