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 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
Alors DECLENCHE :=
(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
Techniques
* caractéristiques et décisions
* reclassification et division du domaine
-
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
• Classification des objets • Classifications des caractéristiques
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