un système expert

Download Report

Transcript un système expert

Intelligence Artificielle

Chapitre III

Les systèmes experts

EPSI / Montpellier - Cycle CSII 2A

Les systèmes experts

Définition

Un système expert est un programme qui consiste à

reproduire le comportement d'un expert humain dans un domaine particulier

problèmes pour laquelle

est difficilement réalisable

. , en effectuant, selon une démarche intellectuelle, une tâche de résolution de

une solution algorithmique

Les systèmes experts

A quoi sert un système expert ?

– Les systèmes experts ont pour rôle

humaine d'assister l'homme dans un domaine où est reconnue une expertise

traduite par des connaissances : • • • • Ayant un volume important Plutôt qualitatives Parfois incertaines, imprécises et/ou assujetties à des révisions Insuffisamment structurées pour être traitées par une approche algorithmique

Les systèmes experts

Portée et domaines d’applications

PORTEE

       Diagnostic Ordonnancement de tâches et planification CAO et simulation Identification et classification d'objets Prise de décision Enseignement etc.

DOMAINES D’APPLICATION

            La finance et l'assurance Le droit et l'administration La médecine L'agriculture La géologie L'informatique Le domaine militaire L'aérospatial Le traitement d'images Le traitement de la parole Les biotechnologies etc.

Les systèmes experts

Architecture

– Principe • Séparer les connaissances propres au domaine des mécanismes logiques d’interprétation de ces connaissances – Composantes essentielles • • • • • Base de connaissances Moteur d’inférences Module d’acquisition des connaissances Interface utilisateur Module d’explication

Les systèmes experts

Moteur d’inférences

Fonctionnement • Résolution de problèmes par l’exécution d’une séquence d’un cycle de base dit cycle d’EVALUATION-EXECUTION

Cycle de base

• Cycle en 3 phases : 1. Filtrage

EVALUATION

2. Résolution de conflits 3. Exécution

EXECUTION

Les systèmes experts

Moteur d’inférences

 –     Caractéristiques

Modes de raisonnement

Chaînage avant

Rôle des variables

: : raisonnement dirigé par les faits Chaînage arrière Moteur d’ordre 0 : raisonnement dirigé par les buts : sans variables Moteur d’ordre 0+

• • •

Type de contrôle

Contrôle irrévocable

• • • • •

Moteur d’ordre 1 Moteur d’ordre 2 : avec variables globales : les variables portent sur les arguments : les variables portent sur les prédicats : pas de retours possibles sur un choix fait lors de la résolution de conflits Contrôle par tentatives de conflits à un point de déduction précédent pour faire un autre choix (backtracking) Pérennité des faits : Logique monotone Logique monotone : pas de suppression des faits : suppression possible des faits Implémentation de la négation Monde clos : : possibilité de revenir, lors de la résolution : négation par l’absence explicitement présentes dans la BF sont fausses) (Les assertions qui ne sont pas Monde ouvert : négation par la présence de not dans la BF (toute assertion doit être explicitée dans la BF)

Les systèmes experts

Moteur d’inférences

– Caractéristiques 

Résolution des conflits : stratégies

• • • • • • • • •

Première règle rencontrée Règle qui a la moins servis Règle la plus prioritaire Règle la plus complexe Règle la moins complexe Règle la plus prometteuse Règle la plus fiable Règle la moins coûteuse etc.

Les systèmes experts

Moteur d’inférences

– Outils de développement – Langages classiques • C, Fortran, etc.

– Langages objets • C++, Smalltalk, etc.

– Langages IA • Prolog, Lisp – Générateurs (shell) de systèmes experts • Clips, FuzzyClips, Kappa, etc.

Les systèmes experts

Moteur d’inférences

– Outils de développement

Modes de raisonnement FuzzyClips/Clips

Chaînage avant

Kappa

Chaînage avant et arrière

Rôle des variables Type de contrôle Pérennité des faits Implémentation de la négation Résolution des conflits

Ordre 1 Backtracking Non monotone Clos Ordre 0+ Paramétrable Non monotone Clos Priorité entre règles + autres stratégies : la moins complexe, la plus complexe, etc.

Priorité entre règles, la meilleure, etc.

Les systèmes experts

Moteur d’inférences

– Modes de raisonnement (types d ’inférences) – 2 modes de base • Chaînage avant • Chaînage arrière – 2 modes combiné • • Chaînage mixte Chaînage bidirectionnel – Ils induisent certaines différences dans le cycle de base

Les systèmes experts

Moteur d’inférences

– Chaînage avant – – – Principe • • On part à partir des données initiales et on essaye d’en déduire de nouvelles On s’arrête quand aucune règle n ’est applicable Inconvénients • On doit fournir toutes les informations disponibles même si elles ne sont pas pertinentes • Processus non interactif • Peut conduire à une explosion combinatoire Utilité • • Interprétation d’une série de faits Vérification des conséquences d’un événement

Les systèmes experts

Moteur d’inférences

– Chaînage arrière – – Principe • • • • On cherche à prouver un but (idem démonstration de théorèmes) Les règles sélectionnées sont celles qui aboutissent au but recherché Les conditions non vérifiées des règles déclenchées deviennent elles mêmes des sous buts à vérifier On s’arrête quand le but est atteint Avantages • • Le système ne pose que des questions pertinentes • Interactivité Espace de recherche moins important

Les systèmes experts

Moteur d’inférences

– Chaînage arrière – Inconvénients • Peut conduire à un blocage • Pour démontrer A il faut démontrer B • Pour démontrer B il faut démontrer A – Utilité • Décomposition facile du problème en sous problèmes

Les systèmes experts

Moteur d’inférences

– Chaînage mixte – – Principe • • Combiner les deux chaînages avant et arrière • 1. Chaînage avant : obtenir les informations suffisantes pour émettre une hypothèse • 2. Chaînage arrière : vérifier l ’hypothèse émise lors du chaînage avant Une règle peut être utilisée en chaînage avant ou en chaînage arrière Avantage • Optimiser la recherche et améliorer le raisonnement

Les systèmes experts

Moteur d’inférences

– Chaînage bidirectionnel – Principe • Il existe deux type de règles • Règles dites « avant » utilisées en chaînage avant • Règles dites « arrière » utilisées en chaînage arrière – Avantage • Optimiser la recherche et améliorer le raisonnement

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage avant – – – –

Raisonnement

: dirigé par les faits, déductif

Paramètres d’entrée

faits (

BF

) : la base de règle (

BR

), la base de

Déclencheur

: partie gauche de la règle (hypothèses)

Cycle de base

• :

Pour toutes les règles R de BR

• 1. Examiner si R est déclenchable : toutes ses hypothèses sont satisfaites (contenues dans BF) 2. Si oui, insérer R en haut ou en bas (selon les stratégies de résolution de conflits) de la liste des règles déclenchables (

LRD

)

Répéter Jusqu’à LRD soit vide

Soit Ra la première règle de LRD Retirer Ra de LRD puis exécuter son membre droit Pour toutes les règles Rb de (BR-LRD) Si Rb est déclenchable alors insérer Rb dans LRD

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage avant –

Cycle de base : cas de Clips

– – – Pour toutes les règles R de BR • Si le membre gauche de R est vérifié • Alors insérer R dans l’agenda selon la stratégie de résolution des conflits (salience, set-strategy [breadth, depth, simplicity, complexity, etc.]) Répéter • Soit Ra la première règle de l’agenda • Retirer Ra de l’agenda puis exécuter son membre droit • Pour toutes les règles Rb de (BR  agenda) • Si le membre gauche de Rb est vérifié • Alors insérer Rb dans l’agenda selon la stratégie de résolution des conflits Jusqu'à ce que l’agenda soit vide

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage avant

Exemple d’algorithme

Procédure CHAINAGE-AVANT

Début Répéter

REGLE_DECLENCHABLE := DECLENCHEMENT(ensemble des règles) Jusqu’à non REGLE_DECLENCHABLE; Fin CHAINAGE-AVANT Fonction DECLENCHEMENT (ensemble des règles) : booléen;

Début

DECLENCHE := Faux ; Pour toute règle appartenant à l’ensemble des règles Tant que non DECLENCHE faire

Début Si

TEST-SI (règle)

Alors DECLENCHE :=

APPLICATION

(règle) Fin Pour; Retourner(DECLENCHE) ; Fin DECLENCHEMENT

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage avant

Exemple d’algorithme

Fonction TEST-SI(règle) : booléen;

Début

TEST := Vrai ; Pour tout élément de la partie Si de la règle Tant que TEST faire

Début

Si élément appartient à la base de faits Alors TEST := Vrai; Sinon TEST := Faux; Fin Pour; Retourner(TEST) ; Fin TEST-SI

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage avant

Exemple d’algorithme

Fonction APPLICATION(règle) : booléen;

Début

APPLIQUE := Faux ; Pour tout élément de la partie Alors de la règle

Début

Si élément n’appartient pas à la base de faits

Alors Début

APPLIQUE := Vrai; ajouter l ’élément à la base de faits;

Fin Si;

Fin Pour; Retourner(APPLIQUE) ; Fin APPLICATION

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage arrière 

Raisonnement

: dirigé par les buts 

Paramètres d’entrée

: la base de règles, la base de faits, le but initial à prouver (

B

) 

Déclencheur

: partie droite de la règle (conclusions) 

Cycle de base

– : Répéter • Fixer le but courant à prouver (B au départ) – • • Examiner les règles (LDR) concluant sur le but courant Si LDR est vide Alors • Demander la réponse à l’utilisateur • • Sinon Si la réponse est positive Alors le but courant est prouvé Sinon Arrêt • • • Sélectionner une règle de LDR Appliquer la règle • Si les prémisses de la règle sont vérifiés Alors le but courant est prouvé • Sinon les prémisses de la règle deviennent de nouveaux sous-buts à atteindre Jusqu’à ce que le but initial soit atteint

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage arrière

Algorithme

Procédure CHAINAGE-ARRIERE(liste des buts à vérifier)

Début

Si liste est vide Alors arrêt

Sinon Début

F = premier fait de la liste;

Si

VERIFICATION (F)

Alors Début Fin Si;

Afficher F comme vérifié; CHAINAGE-ARRIERE (reste de la liste);

Fin;

Sinon CHAINAGE-ARRIERE (reste de la liste);

Fin; Fin Si;

Fin CHAINAG-ARRIERE

Les systèmes experts

Moteur d’inférences

– Phase de filtrage : optimisation – Temps nécessaire à la constitution de l’ensemble de conflits • T = k * (NR*NF*NFM) • • • •

k : temps nécessaire à la comparaison entre un filtre et un fait quelconque NR : nombre de règles NF : nombre de faits NFM : nombre moyen de filtres par déclencheur

– Nécessité d’optimiser cette phase par la mise au point de : • • Techniques de compilation de la base de connaissances Techniques de partition de la base de règles : distinction de différentes classes de règles (règles de déclenchement, règles d’inférences, règles d’affinement, etc.)

Les systèmes experts

Moteur d’inférences

– Phase de filtrage : optimisation – Techniques de compilation de la base de conniassances • • Objectif : optimiser le temps nécessaire à la constitution de l'ensemble de conflits Phases : •

Déterminer pour chaque règle un ensemble de tests élémentaires dont la satisfaction signifie que la règle est déclenchable (exemples : longueur des éléments d'un filtre , position des termes constantes, etc.) et en déduire les tests qu'il faut appliquer à tout fait qui sera comparé au filtre

Identifier les différentes occurrences des mêmes tests dans chaque ensemble de tests ainsi déterminé

Organiser un réseau global de tests en r assemblant en un seul les tests élémentaires communs à plusieurs règles

Les systèmes experts

Moteur d’inférences

– Phase de filtrage : optimisation – Techniques de partition de la base de règles • Nécessite de définir : •

Des règles stratégiques qui déterminent comment on utilise les règles : des métarègles

Les métarègles utilisent plutôt le contenu des règles que leur structure

Les métarègles sont des métaconnaissances : des connaissances sur des connaissances

Les systèmes experts

Moteur d’inférences

– Phase de filtrage : optimisation – Techniques de partition de la base de règles •

Exemples de métarègles (règles stratégiques):

Si le patient est un hôte à risque Et il existe des règles qui mentionnent des pseudomonlas dans une de leur conditions Et il existe des règles qui mentionnent des kiebsiellas dans une de leurs conditions Alors il faut utiliser les premières avant les secondes

Si l'on cherche une thérapie Alors il faut considérer les règles qui permettent de : 1- Acquérir les informations cliniques sur le patient 2- Trouver quels organismes, s'il en existe, sont causes de l'infection 3- Identifier les organismes les plus vraisemblables 4- Trouver tous les médicaments potentiellement utiles 5- Choisir les plus adaptés en plus petit nombre

Les systèmes experts

Générateurs de systèmes experts

– – –

Synonymes

: noyau, coque, shell

Définition

• : Système d’acquisition des connaissances permettant à un expert humain (appuyé par un cogniticien) d ’écrire un système expert dans son domaine d ’expertise

Composantes

• Une interface homme-machine permettant de mettre des règles écrites en langage pseudo-naturel sous forme de clauses • • Un moteur d’inférences Un ensemble d’outils logiciels pour contrôler les différentes étapes de la réalisation du système expert • • • • • Editeurs spécialisés pour la gestion des connaissances Dictionnaires des connaissances Traceurs pour l’explication du raisonnement Utilitaires de maintien de la cohérence et de compilation de la base de connaissances Modules d’apprentissage automatique

Les systèmes experts

Générateurs de systèmes experts

– Outils pour la gestion des connaissances – Maintien de la cohérence •

Exemples de tests de validation

Redondance

• Si A Alors C,D (1) • Si A Alors C,D,E (2) La règle (1) est redondante •

Bouclage

• Si A Alors E (1) • Si E Alors B,F (2) • Si B,F Alors A (3) Les règles (1), (2), (3) sont en boucles

Les systèmes experts

Générateurs de systèmes experts

– Outils pour la gestion des connaissances – Maintien de la cohérence •

Exemples de tests de validation

Contradiction

• Si A Alors C (1) • Si A Alors non(C),D (2) Les règles (1) et (2) sont contradictoires

Les systèmes experts

Générateurs de systèmes experts

– Outils pour la gestion des connaissances – Compilation •

Exemple : réduction de la base de règles

• Si X1 Alors X ou Y ou Z • Si X2 ou X3 Alors Z ou T • Si • Si • Si • Si • Si • Si • Si X1 X1 X1 X2 X2 X3 X3 Alors alors Alors Alors Alors Alors Alors T Z T X Y Z Z • Si X1 Alors X ou Y • Si X1 ou X2 ou X3 Alors Z • Si X2 ou X3 Alors T • Si X1 Alors X ou Y ou Z • Si X2 Alors Z ou T • Si X3 Alors Z ou T • Si X1 Alors X • Si X1 Alors Y • Si X1 ou X2 ou X3 Alors Z • Si X2 ou X3 Alors T

Les systèmes experts

Choix des outils de développement

Il existe plus de :

70 outils

Moteurs d ’inférences

Boîtes à outils

– •

Générateurs 120 langages spécialisés

Choisir un outil revient à chercher un compromis entre

des critères non techniques

Coût

Types de machines ciblées

– •

Facilité d ’utilisation des critères techniques

Représentation et gestion des connaissances (cogniticien, informaticien)

• • • • •

Stratégies de contrôle (cogniticien, informaticien) Logique(s) proposée(s) (cogniticien, informaticien) Utilitaires de mise au point et de validation

Explication (Utilisateurs)

Debugger (cogniticien, informaticien) Ouverture (utilisateurs, cogniticien, informaticien) Convivialité (utilisateurs, cogniticien, informaticien)

Les systèmes experts

Choix des outils de développement

Type de développement et complexité du problème :

• •

Intérêt de l ’outil pour l ’une ou l ’autre phase de développement : démonstrateur, prototype, système final Adéquation aux types de problèmes traités

Les systèmes experts

Méthodologie de développement

Développement de Systèmes Experts : scénario

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert Etude d’opportunité Identification des connaissances Acquisition Conceptualisation des connaissances Formalisation des connaissances Prototypage Validation Implantation Représentation

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Première Phase : Etude d’opportunité • Finalité •

Définir les objectifs globaux du projet et en déterminer l ’opportunité de réalisation (faisabilité, rentabilité, délais, charges de réalisation, conséquences pour le personnel)

Que doit-on faire ?

- Spécifier les objectifs et l’intérêt du système expert : taches à accomplir et problème à résoudre - Etudier la faisabilité technique du projet - Identifier les différentes solutions possibles au problème - Localiser l’expertise - Identifier les futurs utilisateurs du système - Evaluer les ressources humaines, matérielles et logicielles à allouer au projet - Déterminer l’opportunité de réalisation du projet (Coûts/Intérêt)

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Première Phase : Etude d’opportunité • Questions à se poser

- Quelle est l ’importance du problème?

- Quelles seraient les avantages d ’un système expert ? - Le problème est-il fréquent ?

- Quelle sera l ’importance du problème d ’ici quelques années ?

- Le problème peut-il être défini facilement ?

- Quelqu’un a-t-il travaillé ailleurs sur un problème similaire ?

- Qui se servira du système expert et pourquoi ?

- Y-a-t-il une coque de systèmes experts dont nous puissions utiliser ?

- Existe-t-il une documentation quelconque ?

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Première Phase : Etude d’opportunité • Questions à se poser

- Pouvons-nous nous passer du temps d ’un expert ?

- Combien de temps faut-il pour devenir expert ?

- Y a-t-il des moments ou les experts ne sont pas disponibles pour une consultation ?

- De quelles ressources avons-nous besoin ?

- Qu’est ce qui pourrait rendre ce projet difficile à réaliser ?

- Est-ce que les experts sont en désaccord ?

- Le savoir est-il complexe ? Nécessite-il plusieurs mécanismes d ’inférences et formalismes de représentation ?

- Le système expert devra-t-il être mis à jour fréquemment ? - Pouvons-nous tolérer une réponse imparfaite ?

- La réalisation d’interface exigera-t-elle de grands efforts ?

- Combien coûtera le projet ?

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • •

Finalités

-

Repérer les éléments de base constituant l’expertise : * Les objets : permettant de décrire un état du problème * Les relations : décrivent les liens entre les objets * Les opérateurs : indiquent comment modifier un état du problème * Les procédures opérateurs * Les règles : décrivent un ordre d ’application des : décrivent les inférences logiques * Les plans : organisent l ’application des règles * Les stratégies : organisent l ’enchaînement des plans - Définir le modèle conceptuel des connaissances Que doit-on faire ?

- Etudier la documentation existante - Planifier des entrevues avec l’expert - Appliquer des techniques et méthodes d ’acquisition des connaissances

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Identification des éléments clefs de la connaissance Exemple : Connaissances d ’un commercial spécialisé dans la vente des voitures

TopObjet Clientèle Objet Relation Voiture Opérateur Procédure Règle Plan Stratégie Voiture de sport Voiture de tourisme Structure hiérarchique des éléments de la connaissance

Les systèmes experts

Méthodologie de développement

OBJETS élément est-une noms

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances

: : :

• Identification des éléments clefs de la connaissance Exemple : Connaissances d ’un commercial spécialisé dans la vente des voitures

Voiture de sport propriétés : Voiture {vitesse maximale : {nom donné par l ’expert : nom donné par l ’utilisateur : autres synonymes : } type : valeurs possibles : valeur par défaut : échelle coef de certitude : description distance de freinage à 100km/h : en clair : relations : {relation : Clientèle valeur : Jeunes-Cadres-Supérieurs type : valeurs possibles : valeur par défaut : échelle coef de certitude : relation : valeur : } opérateurs applicables : } utilisés dans les règles : Modèle descriptif des éléments de la connaissances

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Identification des éléments clefs de la connaissance Exemple : Connaissances d ’un commercial spécialisé dans la vente des voitures

REGLES élément est-une utilisée dans les étapes libellé utilisent les objets nom : : : : : : Règle VRP Règles_Avantage_Fiscaux Evaluation avantages fiscaux Si … Alors … Voitures, Clientèle Modèle descriptif des éléments de la connaissances

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Questions à se poser avant les entrevues

Quelles sont les données à l ’entrée (les problèmes) et en sortie (les solutions) - Quelles sont les relations qui existent entre les données ?

- Peut-on fragmenter les problèmes en unités plus petites ?

- Dans quel ordre et sous quelle forme les données à l’entrée sont-elles acquises ?

- Dans quel ordre et sous quelle forme les données en sortie sont-elles produites ?

- Quelle est l ’importance et quelle est la précision des diverses données ?

- Quelles sont les données susceptibles de manquer ?

- Quels sont les types d’entrées qui causent des difficultés à l ’expert ? - Quels sont les postulats de l ’expert ?

- Quelles sortes d’inférences fait-il ?

- Comment en arrive-t-il à des hypothèses ?

- Quelles sont les relations entre ces hypothèses ?

- Comment l ’expert passe-t-il d ’un stade d ’opinion à un autre ?

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Types * discussion ouverte * discussion guidée * inversion des rôles

Règles à respecter

Techniques

* caractéristiques et décisions

* reclassification et division du domaine

* grille répertoire

-

Les questionnaires

Les observations sur le site

L ’induction par la machine

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Règles à respecter dans la conduite des entretiens - Préparer l ’entretien - Enregistrer l’entretien - Planifier les entretiens qui doivent régulier et espacés dans le temps - Motiver l ’expert en lui présentant une vue objective du projet - Veiller à conserver voir augmenter la motivation de l ’expert - Ne pas imposer d’outils à l ’expert - Ne pas imposer sa propre compréhension du problème - Poser des questions générales au début, puis spécifier - Maîtriser la durée de l ’entretien

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Caractéristiques et Décisions » CARACTERISTIQUES DECISIONS Taille

Grand Petit Petit Grand Grand Petit

Couleur

Rouge Rouge Noir Noir Noir Rouge

Age

10 12 17 14 15 17

Profondeur

24,8 30.3

12,7 11,3 50,4 47.3

Catégorie

I I II III III III

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Reclassification » décision critères succès succès toutes matières succès partiel et contrôles continus toutes matières matière non obligatoire et fort ailleurs maladie problème personnel défaillance matériel échec marginal dans une matière échec dans un partiel ou un contrôle continu et succès dans le reste échec dans une matière avec raison valable succès attendu mais problème capable de continuer connaissances évidentes

Les systèmes experts

Méthodologie de développement

différents problèmes

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Division du domaine » critères formation A A référence et formulaires OK bons résultats aux examens acceptation Formation B pas bon en maths complément d’infos résultats moyens aux examens bon en maths bonnes références mauvaises références manque de motivation motivation rejet

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Grille Répertoire »

Une technique permettant de mettre en évidence les objets et les relations entre objets utilisés par un expert dans son domaine de connaissances

Une technique qui s ’articule en 4 étapes :

• • • •

Identification de la liste des objets et de leurs caractéristiques

Etablissement de la grille

Analyse de la grille

Classification des objetsClassifications des caractéristiques

Interprétation des résultats

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Grille Répertoire » Identification de la liste des objets et de leurs caractéristiques

V1 V2 V3 V4 V5 V6 V7 V8 Maniable/Peu maniable Sportive/Non sportive Sûre/Légère Habitable/Peu habitable Confortable/Inconfortable Silencieuse/Bruyante Nerveuse/Lourde Esthétique/Inesthétique Peu coûteuse/Chère

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Grille Répertoire » Etablissement de la grille

V1 V2 V3 V4 V5 V6 V7 V8 Maniable/Peu maniable Sportive/Non sportive Sûre/Légère Habitable/Peu habitable Confortable/Inconfortable Silencieuse/Bruyante Nerveuse/Lourde Esthétique/Inesthétique Peu coûteuse/Chère

2 2 4 5 5 4 2 4 1 3 2 5 4 5 4 2 2 1 5 2 3 3 4 5 3 3 4 2 1 2 2 1 2 1 3 4 5 5 4 1 3 2 5 4 2 3 2 5 5 5 4 2 2 1 3 3 4 5 4 4 4 4 1 2 1 1 2 1 1 1 2 5

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Grille Répertoire » Interprétation des résultats Grande routière (Grands voyageurs, familles, VRP) Bonne tenue de route Confortable Sûre Sportive Silencieuse Bien suspendu Habitable Bon freinage Bonne carrosserie Bonne reprise Rapide Puissante Nerveuse

Les systèmes experts Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les entretiens Technique « Grille Répertoire » Analyse de la grille Analyse factorielle

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les questionnaires Les coefficients de vraisemblances peuvent être sollicités de la manière suivante : Exemples Circuit X24 Quelles sont toutes les pannes sur le circuit X24 qui sont traités par les services de maintenance ? : ___________________________ ___________________________ Classer ces pannes par ordre de fréquence décroissant : ___________________________ ___________________________ Tout à fait incertain Tout à fait sûr Placer une croix sur la ligne à l ’endroit qui reflète le mieux votre impression Ou encore Tout à fait sûr Assez sûr Incertain Limite Tout à fait incertain Placer une croix sur la ligne qui reflète le mieux votre impression

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Les observations sur le site

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Induction par la machine

• •

Principe : générer automatiquement et par induction de nouvelles connaissances à partir d’exemples choisis par l ’expert du domaine Processus : Entrée Sortie : : * un ensemble d’exemples * des attributs décrivants les exemples * des techniques d ’extraction : apprentissage (induction de règles, algos génétiques, réseaux de neurones), analyse de données, base de données * un arbre de décision qui classifie correctement les exemples * des règles d ’inférences * Arbre de décision : Modélisation d’une décision sous forme d’une structure hiérarchique dont les nœuds sont des attributs (tests) et les arcs des valeurs possibles pour ces attributs

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • • Techniques

- Induction par la machine Data mining : processus : Etapes du data minig

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Phases d ’acquisition des connaissances • Techniques

- Induction par la machine

Data mining : processus : Clementine Integral Solutions Limited, USA Sipina-pro Université Lyon 2, France Plate-formes logicielles

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Quatrième Phase: Formalisation des connaissances •

Finalité

-

Transposer dans une représentation appropriée (un système à base de règles) le modèle des connaissances que le cogniticien a conçu en phases d ’acquisition

Etapes - Choix du formalisme * Schémas * Frames * Réseaux sémantiques * Règles de production - Choix des méthodes d’inférences - Conception de la base de connaissances

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Cinquième Phase: Prototypage •

Finalité

-

Coder le formalisme choisi lors de la phase précédente pour obtenir un prototype du système expert

Etapes - Choix d ’un outil de développement - Codage du formalisme - Mise au point de l ’interface utilisateur - Préparation d’un protocole de validation

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Sixième Phase: Validation •

Finalité

-

Définir un protocole de validation - Evaluer qualitativement et/ou quantitativement le comportement du prototype - Vérifier la conformité du prototype aux spécifications du cahier des charges

Protocole de validation : éléments à valider - La base de connaissances - L ’ergonomie - La maintenance - La documentation - La formation des utilisateurs - L ’outil de développement

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Sixième Phase: Validation •

Protocole de validation : critères de validation

-

Performance * Justesse du cheminement * Exactitude des conclusions * Précision des conclusions * Temps de réponse * Ressources informatiques utilisées - Sensibilité - Robustesse - Facilité d ’apprentissage par les utilisateurs - Acceptabilité

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Sixième Phase: Validation •

Protocole de validation L ’approche : Comment valider ?

* Quantitativement (statistiques) * Qualitativement (consensus) Le contenu : Que faut-il valider ?

* Quelle version de prototype il faut valider Le lieu : Où valider ?

* Sur des sites pilotes (cas réels) * Sur des sites « de validation » (cas simulés) Les acteurs : Avec qui faut-il valider ?

* Les experts * Les utilisateurs * Le cogniticien * Le chef de projet

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Sixième Phase: Validation • •

Protocole de validation : tests de validation

-

Représentatifs - Nombreux : Prototype : 50-100 ; Système final : 100-300 - Impliquent : Temps des valideurs Formation des valideurs Ressources matérielles Tenue des dossiers Protocole de validation : scénario de validation Analyse des cas traités Extraction de nouvelles connaissances, nouvelle formalisation ou restructuration Modification du système Documentation

Les systèmes experts

Méthodologie de développement

Cycles de vie d’un projet système expert

• Septième phase: Implantation •

Finalité

-

Mettre le système final à la disposition des utilisateurs

Etapes - Préparations - Installation et mise au point - Mise en exploitation - Définition d ’un plan de formation - Mise en place des procédures de maintenance

Les systèmes experts

Méthodologie de développement

Acteurs d’un projet système expert

• Cogniticien (1) • Expert (2)

Etude d’opportunité

• • Chef de projet (3) Utilisateurs (4)

Identification des connaissances Conceptualisation des connaissances 1+2+3 1+2 1+2 Formalisation des connaissances Prototypage Validation Implantation 1+2 1+2+3+4 1+2+3+4 1+2+3+4

Les systèmes experts

Méthodologie de développement

Facteurs de succès d’un projet système expert

• • Rapports Expert/Cogniticien • • • Bonne compréhension mutuelle Confiance réciproque Absence de rétention d’informations Qualités professionnelles des acteurs •

Cogniticien Logique sans faille, solide culture scientifique, maîtrise des techniques de modélisation du savoir, connaissance en programmation, capacité d ’écoute et faculté de communication, bonne culture générale, capacité d ’adaptation, perspicacité

Expert Autorité intellectuelle indiscutable, solide expérience, volonté et capacité de communiquer son savoir, goût pour les challenges, capacité de travailler en groupe, disponibilité, patiente, ténacité, tolérance à l ’erreur

Chef de projet Solide expérience dans la conduite des projets, connaissances en IA, capacité de manager une équipe, savoir écouter, déléguer et arbitrer

Les systèmes experts

Méthodologie de développement

Facteurs de succès d’un projet système expert

• Conduite du projet • • • • • Définition claire des objectifs du projet Planification optimisée du temps et des ressources de développement Définition claire et précise du protocole de validation Respect des délais Documentation claire, adéquate et suffisante

Les systèmes experts

Méthodologie de développement

Rôles des acteurs d’un projet système expert

– Le cogniticien •

Rôle : assurer deux types d’interfaces

• •

Interface Expert-Machine 1. Il acquiert le savoir de l’expert 2. Il le modélise 3. Il l ’implante dans la machine Interface Utilisateurs-Machine 1. Il étudie les besoins de l’utilisateur 2. Il les intègre dans le système final

Les systèmes experts

Méthodologie de développement

Rôles des acteurs d’un projet système expert

– L ’expert •

Rôle : communiquer son savoir au cogniticien

Les systèmes experts

Méthodologie de développement

Rôles des acteurs d’un projet système expert

– Le chef de projet •

Rôle : gérer le projet

• •

Responsable de la conduite du projet 1. Choix des solutions techniques 2. Planification 3. Répartition des taches 4. Gestion du budget Garant du respect du cahier des charges 1. Assurance qualité 2. Respect des délais 3. Conformité Spécifications/Réalisations

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage arrière

Algorithme

Fonction TEST(Règle)

;vérifier récursivement les sous buts d ’un but courant Début

TESTE := Vrai; Pour tout élément de la partie Si de la Règle Faire

Début

Si non VERIFICATION (élément)

Alors Début

TESTE := Faux; Arrêt;

Fin; Fin Si; Fin; Fin Pour;

Retourner(TESTE); Fin TEST

Les systèmes experts

Moteur d’inférences

– Raisonnement en chaînage arrière

Algorithme Fonction

VERIFICATION (hypothèse):booléen;

Début

VERIFIE:=faux;

Si

hypothèse appartient à la base de faits

Alors

VERIFIE:= vrai;

Sinon Si

hypothèse appartient à la base de faits faux

Alors

VERIFIE:=faux;

Sinon

Construire l'ensemble des règles qui déduisent hypothèse;

Si

L'ensemble est vide

Alors Début

Demander hypothèse à l'utilisateur;

Si

la réponse est "oui"

Alors

VERIFIE:=vrai ajouter hypothèse à la base de faits

Sinon

VERIFIE := faux; ajouter hypothèse à la base de faits faux;

Fin Sinon Début Pour

toute règle de l'ensemble

Faire Début Si

TEST-SI(règle)

Début Alors

VERIFIE:=vrai; APPLICATION(règle);

Arrêt

;

Fin; Fin Si; Fin; Fin Pour; Pour

toute règle de l'ensemble

Faire Début Si

TEST (règle)

Alors Début

VERIFIE:=vrai; APPLICATION(règle)

Arrêt

;

Fin Si

;

Fin; Fin Pour; Fin Si; Fin; Fin Si; Retourner

(VERIFIE);

Fin

VERIFICATION