• Aucun résultat trouvé

IX .2.3 Représentation mixte

IX.3 Les systèmes experts

L'ingéniérie de la connaissance (knowledge engineering), qui est à la base de la construction des systèmes experts, constitue parmi les domaines d'application de l'intelligence artificielle, celui qui a connu les développe-ments les plus considérables durant ces dernières années. Un système expert est un programme qui utilise intensivement la connaissance, afin de résoudre des problèmes nécessitant normalement l'expertise humaine. Il effectue également les fonctions secondaires d'un expert, telles que poser des questions pertinentes ou expliquer son raisonnement. Les caractéristiques communes aux systèmes experts sont les suivantes :

• ils résolvent des problèmes très difficiles, aussi bien ou mieux qu'un expert humain,

• ils résonnent de manière heuristique,

176 CHAPITRE IX. L'INTELLIGENCE ARTIFICIELLE

• ils communiquent avec l'utilisateur de manière appropriée, par exem-ple au moyen des langues naturelles,

• ils manipulent des informations symboliques,

• ils arrivent à des résultats valables, même si les données sont incer-taines ou incomplètes,

• ils expliquent leur raisonnement.

La principale raison d'être d'un système expert est sa capacité à arriver au niveau .de performance qu'un expert humain atteind lorsqu'il effectue une tâche donnée dans un domaine spécifique. On attend d'un système expert qu'il agisse comme un expert humain, c'est-à-dire qu'il produise des résultats de bonne qualité en un temps raisonnable, en utilisant des trucs et des heuristiques acquis durant de longues années d'expérience.

Plusieurs caractéristiques d'un expert entrent en ligne de compte. D'a-bord, il faut mentionner la qualité. Un expert peut être considéré comme tel, uniquement s'il arrive à des résultats de très haut niveau. La vitesse à laquelle un résultat est trouvé ou une décision est prise constitue un autre facteur important. Par exemple, dans un environnement clinique, le meilleur diagnostic possible devient inutile, si le patient meurt entre-temps. La vitesse d'exécution d'un système expert provient principale-ment de l'utilisation d'heuristiques, c'est-à-dire de règles de haut niveau d'abstraction qui conduisent à réduire l'espace de recherche.

Une troisième caractéristique provient du fait qu'en général un expert possède une grande connaissance d'un domaine spécifique et restreint. Un expert est un spécialiste. Il connaît beaucoup de choses dans un seul do-maine. Par contre, cette connaissance lui permet d'effectuer des tâches très complexes dans le domaine en question.

Enfin, un expert est conscient de l'état de ses connaissances, peut raison-ner sur elles et peut surtout en parler. De même, un système expert doit être capable de savoir ce qu'il sait et d'expliquer son raisonnement. Ceci permet d'une part, de rassurer son interlocuteur sur l'exactitude des résultats et, d'autre part, de pouvoir enseigner sa connaissance à d'autres personnes.

Les systèmes experts Utilisateur

Plan Agenda

Solution

Tableau noir

Base de connaissances

Figure IX.3: Architecture d'un système expert idéal

IX.3.1 Architecture d'un système expert

177

Un système expert idéal est schématisé par la figure IX.3 tirée de [HWL83].

En général, un système ne contient pas toutes les composantes illustrées dans ce schéma, mais une ou plusieurs d'entre elles en font forcément partie.

Un système expert idéal comprend :

• Une interface en langue naturelle pour la communication en-tre l'utilisateur (ou l'expert, dans la phase de développement) et le système. Il s'agit en général d'un sous-ensemble restreint de l'anglais et, parfois, de certaines capacités graphiques. L'interface analyse les questions et les informations données par l'utilisateur et, en retour, exprime ses réponses sous une forme proche de l'anglais.

• Le tableau noir ( blackboard) stocke les hypothèses et décisions in-termédiaires que le système manipule. Le tableau comporte trois

178 CHAPITRE IX. L'INTELLIGENCE ARTIFICIELLE types de données intermédiaires : le plan, l'agenda et les éléments de solution. Le plan contient la stratégie générale de résolution du problème, y compris les plans courants, les buts, les états du problème et les contextes. L'agenda enregistre les actions potentielles qui de-vront être exécutées. Il s'agit en général des possibilités de recherche que le système considérera, si elle échoue. Les éléments de solution représentent les hypothèses et décisions partielles que le système a déjà générées.

L'ordonnanceur contrôle l'agenda et détermine quelle sera la pro-chaine action à exécuter. L'ordonnanceur incorpore une grande quan-tité de connaissances, afin de pouvoir estimer les effets de l'application d'une règle et affecter des priorités à chacune des actions.

L'interprète exécute l'action choisie dans l'agenda. Il valide les com-posantes de l'action et modifie le tableau noir en conséquence.

• Le contrôleur de cohérence maintient la cohérence des résultats intermédiaires et calcule les coefficients de plausibilité de chaque hy-pothèse ou décision.

• Le justificateur explique les actions entreprises par le système à l'utilisateur et répond aux questions sur les raisons des conclusions choisies et les hypothèses rejetées.

• La base de connaissances contient, d'une part, toute la connais-sance liée au domaine d'application et, d'autre part, les informations nécessaires pour résoudre le problème courant.

IX.3.2 Avantages de l'architecture d'un système

ex-pert

Relevons quelques avantages provenant d'une architecture telle qu'elle a été décrite ci-dessus. Un système expert est particulièrement adapté, lorsque les données ou les connaissances possèdent une ou plusieurs des caractéris-tiques suivantes :

Les systèmes experts 179

Les données ou les connaissances sont incertaines. Suivant la situa-tion, l'expert doit prendre une décision sans posséder toutes les in-formations, au moyen de données suspectes, incomplètes ou partielle-ment fausses. Par exemple, MYCIN, un des premiers systèmes experts (voir chapitre Il.2, point 4), contient une base de connaissances, où chaque règle est pondérée en fonction de la certitude des faits.

Les données varient en Fonction du temps. Certains experts sont confrontés à des situations changeantes. L'évolution des informations peut prendre deux formes différentes :

1. La situation évolue par définition. Par exemple, un robot voit son environnement changer en fonction de ses actions. Il lui est alors facile de modifier sa base de connaissances, sans altérer son architecture générale.

2. L'état des connaissances varie dans le temps. C'est le cas en ce qui concerne les électrophorèses bidimensionnelles, dont la connaissance sur la manière de les interpréter est embryonnaire et évolue en fonction des développements de la recherche dans ce domaine.

L'espace des solutions est grand. De nombreux problèmes sont as-sez complexes, pour que le temps nécessaire au parcours complet de l'espace des solutions soit prohibitif. Comme on l'a vu, un système expert est capable d'atteindre la bonne solution sans parcourir tout l'espace, en procédant soit par élimination, soit en utilisant des heuris-tiques.

De nombreux systèmes experts ont été développés depuis les débuts de l'intelligence artificielle. Un aperçu des systèmes experts en médecine a déjà été donné dans le chapitre Il.2. Une description des autres systèmes importants peut être trouvée dans [HWL83].

Chapitre X

MELANIS - Analyse et