Chapitre III
-
Upload
ladonna-amaya -
Category
Documents
-
view
30 -
download
0
description
Transcript of Chapitre III
Chapitre III
Les systèmes experts
EPSI / Montpellier - Cycle CSII 2A
Intelligence Artificielle
• Définition
Un système expert est un programme qui consiste à reproduire le comportement d'un expert humain dans un domaine particulier, en effectuant, selon une démarche intellectuelle, une tâche de résolution de problèmes pour laquelle une solution algorithmique est difficilement réalisable.
Les systèmes experts
• A quoi sert un système expert ?
– Les systèmes experts ont pour rôle d'assister l'homme dans un domaine où est reconnue une expertise humaine 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
Les systèmes experts
PORTEE DOMAINES D’APPLICATI ON
Diagnostic Ordonnancement de tâches et planification CAO et simulation Identification et classification d'objets Prise de décision Enseignement etc.
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.
• 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
2. Résolution de conflits
3. Exécution
Les systèmes experts
EVALUATION
EXECUTION
Modes de raisonnement • Chaînage avant : raisonnement dirigé par les faits• Chaînage arrière : raisonnement dirigé par les buts
Rôle des variables :• Moteur d’ordre 0 : sans variables• Moteur d’ordre 0+ : avec variables globales• Moteur d’ordre 1 : les variables portent sur les arguments• Moteur d’ordre 2 : les variables portent sur les prédicats
Type de contrôle • Contrôle irrévocable : pas de retours possibles sur un choix fait
lors de la résolution de conflits• Contrôle par tentatives : possibilité de revenir, lors de la résolution
de conflits à un point de déduction précédent pour faire un autre choix (backtracking)
Pérennité des faits :• Logique monotone : pas de suppression des faits• Logique monotone : suppression possible des faits
Implémentation de la négation :• Monde clos : négation par l’absence (Les assertions qui ne sont pas
explicitement présentes dans la BF sont fausses)• 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
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
FuzzyClips/ Clips KappaModes de raisonnement Chaînage avant Chaînage avant et arrière
Rôle des variables Ordre 1 Ordre 0+
Type de contrôle Backtracking Paramétrable
Pérennité des faits Non monotone Non monotone
Implémentation de lanégation
Clos Clos
Résolution des conflits Priorité entre règles +autres stratégies : lamoins complexe, la pluscomplexe, etc.
Priorité entre règles, la meilleure, etc.
• 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 : la base de règle (BR), la base de faits (BF)– Déclencheur : partie gauche de la règle (hypothèses)– Cycle de base :
• Pour toutes les règles R de BR1. 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 videSoit Ra la première règle de LRDRetirer Ra de LRD puis exécuter son membre droitPour 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
Les systèmes experts
– 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
• Moteur d’inférences– Raisonnement en chaînage avant
Exemple d’algorithme
Les systèmes experts
Procédure CHAINAGE-AVANTDébut
RépéterREGLE_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èglesTant que non DECLENCHE faireDébut
Si TEST-SI(règle)Alors DECLENCHE := APPLICATION(règle)
Fin Pour;Retourner(DECLENCHE) ;
Fin DECLENCHEMENT
• Moteur d’inférences– Raisonnement en chaînage avant
Exemple d’algorithme
Les systèmes experts
Fonction TEST-SI(règle) : booléen;Début
TEST := Vrai ;Pour tout élément de la partie Si de la règleTant que TEST faireDébut
Si élément appartient à la base de faitsAlors TEST := Vrai;Sinon TEST := Faux;
Fin Pour;Retourner(TEST) ;
Fin TEST-SI
• Moteur d’inférences– Raisonnement en chaînage avant
Exemple d’algorithme
Les systèmes experts
Fonction APPLICATION(règle) : booléen;Début
APPLIQUE := Faux ;Pour tout élément de la partie Alors de la règleDébut
Si élément n’appartient pas à la base de faitsAlors
DébutAPPLIQUE := Vrai;ajouter l ’élément à la base de faits;
Fin Si;Fin Pour;Retourner(APPLIQUE) ;
Fin APPLICATION
• 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• Si la réponse est positive Alors le but courant est prouvé• Sinon Arrêt
• Sinon• 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
Les systèmes experts
Procédure CHAINAGE-ARRIERE(liste des buts à vérifier)Début
Si liste est videAlors arrêtSinonDébut F = premier fait de la liste; Si VERIFICATION (F)
Alors Début
Afficher F comme vérifié; CHAINAGE-ARRIERE (reste de la liste); Fin;
Sinon CHAINAGE-ARRIERE (reste de la liste); Fin Si;Fin;Fin Si;
Fin CHAINAG-ARRIERE
• 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 rassemblant 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
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
• Bouclage
• Si A Alors C,D (1)• Si A Alors C,D,E (2) La règle (1) est redondante
• 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 • Si X1 alors Y • Si X1 Alors Z• Si X2 Alors Z• Si X2 Alors T• Si X3 Alors Z• Si X3 Alors T
• Si X1 Alors X• Si X1 Alors 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 ou Y ou Z• Si X2 ou X3 Alors Z ou T
• Si X1 Alors X ou 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
Conceptualisation des connaissances
Formalisation des connaissances
Prototypage
Validation
Implantation
Acquisition
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 : décrivent un ordre d ’application des opérateurs
* Les règles : 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
Objet Relation Opérateur Procédure Règle Plan
TopObjet
Stratégie
ClientèleVoitur
e
Voiture de sport Voiture de tourisme
Structure hiérarchique des éléments de la connaissance
Les systèmes experts
Modèle descriptif des éléments de la connaissances
élément : Voiture de sportest-une : Voiturenoms : {nom donné par l ’expert :
nom donné par l ’utilisateur : autres synonymes :
}description en clair :relations : {relation : Clientèle
valeur : Jeunes-Cadres-Supérieurs
relation :valeur :}
• 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
propriétés :{vitesse maximale : type : valeurs possibles : valeur par défaut : échelle coef de certitude :
distance de freinage à 100km/h : type : valeurs possibles : valeur par défaut : échelle coef de certitude :}
opérateurs applicables :utilisés dans les règles :
OBJETS
Les systèmes experts
Modèle descriptif des éléments de la connaissances
élément : Règle VRPest-une : Règles_Avantage_Fiscauxutilisée dans les étapes : Evaluation avantages fiscauxlibellé : Si … Alors …utilisent les objets : Voitures, Clientèlenom :
• 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
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
- 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
• 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
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 »
CARACTERI STI QUES DECI SI ONS
Taille Couleur Age Profondeur Catégorie
GrandPetitPetitGrandGrandPetit
RougeRougeNoirNoirNoirRouge
101217141517
24,830.312,711,350,447.3
III II I II I II I I
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èssuccès toutes
matières
échec marginaldans unematière
succès partiel et contrôles continus
toutes matières
échec dans un partiel ou un contrôle continuet succès dans le
reste
capable decontinuer
matière non obligatoire
et fort ailleurs
connaissancesévidentes
échec dans une matièreavec raison
valable
succès attendu mais problème
maladie
problèmepersonnel
défaillancematériel
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 « Division du domaine »
différents problèmes critères
formationA
référence etformulaires
OK
complémentd’infos
bons résultats aux examens
résultats moyens aux examens
motivation
acceptation
manque demotivation
rejetFormationB
formationA
bon en maths
bonnes références
mauvaises références
pas bon en maths
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 objets• Classifications 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 maniableSportive/ Non sportiveSûre/ LégèreHabitable/ Peu habitableConfortable/ I nconfortableSilencieuse/ BruyanteNerveuse/ LourdeEsthétique/ I nesthétiquePeu 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 maniableSportive/ Non sportiveSûre/ LégèreHabitable/ Peu habitableConfortable/ I nconfortableSilencieuse/ BruyanteNerveuse/ LourdeEsthétique/ I nesthétiquePeu coûteuse/ Chère
224554241
325454221
523345334
212212134
554132542
325554221
334544441
211211125
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)
Confortable Sûre Sportive
Silencieuse
Bien suspendu
Habitable
NerveusePuissante
Rapide
Bonne tenue de route
Bon freinage
Bonne reprise
Bonne carrosserie
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
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 : ___________________________ ___________________________
Les coefficients de vraisemblances peuvent être sollicités de la manière suivante :
Tout à faitincertain
Tout à faitsûr
Placer une croix sur la ligne à l ’endroitqui reflète le mieux votre impressionOu encore
Placer une croix sur la lignequi reflète le mieux votre impression
Tout à fait sûr Assez sûr
Limite
Incertain
Tout à fait incertain
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 :* 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éesSortie :* 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 :
Plate-formes logicielles
Clementine
Sipina-pro Université Lyon 2, France
Integral Solutions Limited, USA
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
krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:krit:
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 valideursFormation des valideursRessources matériellesTenue des dossiers
• Protocole de validation : scénario de validation
Analyse des cas traités
Modification du système Documentation
Extraction de nouvelles connaissances, nouvelle formalisation ou restructuration
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)• Chef de projet (3)• Utilisateurs (4)
Etude d’opportunité
Identification des connaissances
Conceptualisation des connaissances
Prototypage
Validation
Implantation
Formalisation des connaissances
1+2+3
1+2
1+2
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
• Expert
• Chef de projet
Logique sans faille, solide culture scientifique, maîtrise des techniques de modélisationdu savoir, connaissance en programmation, capacité d ’écoute et faculté de communication, bonne culture générale, capacité d ’adaptation, perspicacité
Autorité intellectuelle indiscutable, solide expérience, volonté et capacité de communiquerson savoir, goût pour les challenges, capacité de travailler en groupe, disponibilité, patiente, ténacité, tolérance à l ’erreur
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
• 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’expert2. Il le modélise 3. Il l ’implante dans la machine
• Interface Utilisateurs-Machine
1. Il étudie les besoins de l’utilisateur2. 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 taches4. Gestion du budget
• Garant du respect du cahier des charges
1. Assurance qualité2. Respect des délais3. Conformité Spécifications/Réalisations
Les systèmes experts
• Moteur d’inférences– Raisonnement en chaînage arrière
Algorithme
Les systèmes experts
Fonction TEST(Règle);vérifier récursivement les sous buts d ’un but courantDébut
TESTE := Vrai;Pour tout élément de la partie Si de la Règle FaireDébut
Si non VERIFICATION (élément) AlorsDébutTESTE := Faux;Arrêt;Fin;
Fin Si;Fin;Fin Pour;Retourner(TESTE);
Fin TEST
• Moteur d’inférences– Raisonnement en chaînage
arrière
Algorithme
Les systèmes expertsFonction 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"
AlorsVERIFIE:=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 FaireDébut
Si TEST-SI(règle) Alors Début VERIFIE:=vrai; APPLICATION(règle); Arrêt; Fin; Fin Si;Fin;Fin Pour;Pour toute règle de l'ensemble FaireDé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