• Aucun résultat trouvé

Les applications à base de connaissances

Dans le document Td corrigé Publications - TEL (thèses pdf (Page 29-33)

1.4 - Présentation du domaine

1.4.2 Les applications à base de connaissances

L’évolution de l’ingénierie des connaissances (IC) est marquée par des périodes assez distinctes, qui se justifient par des influences de deux origines : des discussions et avancées au sein de la discipline d’une part, des interrogations plus larges au sein de l’IA sur la nature des applications visées d’autre part. Les débats au sein de l’IC portent sur la manière dont ces systèmes sont mis au point et dont les connaissances sur lesquelles ils s’appuient sont rendues opérationnelles. Parmi les questions soulevées, il s’agit de savoir si ces connaissances doivent (ou non) tout d’abord être mises à plat dans des modèles, si ces modèles se retrouvent ou non dans le système opérationnel, et plus important encore, de déterminer le statut de ces connaissances, ce qui fait leur validité et leur pertinence, etc. Or les choix et réponses à ces questions sont étroitement liés à la position de l’informatique et de l’IA sur ce qu’est un système intelligent mis à disposition d’un utilisateur et donc un système dont la mise au point relèverait de l’IC.

1.4.2.1 Éléments d’évolution des applications à base de connaissances

Au cours des trente dernières années, plusieurs caractéristiques de ces systèmes ont évolué : la nature des connaissances qu’ils contiennent, leur rôle et la part de la résolution de problème qu’ils prennent en charge, les interactions qu’ils permettent avec leurs utilisateurs, leurs capacités à s’adapter à différents types et contextes d’usage, ou encore leur place dans l’organisation. Finalement, c’est l’idée même de ce qu’est un « système intelligent » qui évolue : initialement localisée dans le seul système expert,

« l’intelligence » se déplace vers le couple système-opérateur. La transition s’est opérée progressivement, les différents types d’applications et de points de vue continuant d’être développés et de faire l’objet de recherches.

Cependant, on peut situer des périodes liées à l’introduction de chacun des nouveaux points de vue.

Si l’on se réfère aux applications, l’évolution correspond au passage des systèmes experts, mis en avant entre 1970 et 1985, aux systèmes à base de connaissances autour des années 1990, et depuis aux systèmes à base de connaissances coopératifs (SBCC) ou aux systèmes d’aide interactifs tels que les envisage l’approche « human centered design » : des supports intelligents aux activités humaines, éventuellement à base d’agents ou distribués, intégrant des raisonnements sur les connaissances à des tâches d’informatique plus classique. J’analyse, pour ces quatre types de système, leur situation par

27

rapport aux caractéristiques que je viens d’énumérer. J’utiliserai plus tard cette typologie afin de définir les périodes et les approches jalonnant l’évolution de l’ingénierie des connaissances.

Les systèmes experts : Les connaissances de référence sont ici celles d’un individu, l’expert. Techniques et spécialisées, elles correspondent à des savoir-faire de haut niveau, rarement verbalisés, qu’il s’agit souvent de pérenniser et de transmettre via le système informatique. D’ailleurs, ces types de connaissance ont été étudiés du point de vue de la psychologie cognitive, c’est-à-dire comme des représentations construites et utilisées par les individus experts à transposer fidèlement dans des représentations formelles. Le rôle du système est de résoudre automatiquement des problèmes que seul l’expert sait traiter, parfois d’expliquer les raisonnements qu’il a suivis, et, par effet de bord, de former les utilisateurs à cette expertise. La place du système et de son utilisateur au sein de l’organisation est rarement prise en compte pour la mise au point des premiers systèmes experts, pas plus que les capacités d’adaptation à l’utilisateur. Cependant, les besoins en maintenance ont donné lieu très tôt à des modules d’acquisition de connaissances, comme je l’ai développé en 2.1.1.

Les systèmes à base de connaissances : Le changement majeur qui justifie ce nouveau type d’application est la prise de distance par rapport à l’expertise humaine. Les connaissances de référence peuvent être partagées par des spécialistes. Il s’agit de diffuser et de faire prendre en charge par le système des parties de procédures jusque-là mal identifiées ou peu disponibles. Cette évolution touche plusieurs facettes du système : son rôle est désormais d’aider l’utilisateur en interagissant éventuellement avec lui ; ses méthodes de résolution de problème privilégient l’efficacité et non la fidélité au raisonnement humain, et peuvent faire appel à des méthodes propres à l’IA. Affiner ces méthodes, les représenter et favoriser leur réutilisation sont alors les enjeux de la définition de ces systèmes. Le système devient alors un des éléments à intégrer dans l’environnement de travail de l’utilisateur, qui commence à être pris en compte dans les processus de conception, par des approches de type ergonomique.

Les systèmes à base de connaissances coopératifs (SBCC) : Un pas plus avant vers la prise en compte de l’environnement et des utilisateurs est de définir des architectures et des modes de résolution favorisant une gestion coopérative de la réalisation des tâches. Les SBCC doivent s’adapter de manière dynamique aux divers contextes de leur utilisation, aux profils des utilisateurs et ceci même en cours de fonctionnement.

Les connaissances sur l’environnement de travail, son organisation et les activités concernées par le système sont alors étudiées en complément des connaissances de résolution de problème pour définir la manière dont le système et l’utilisateur vont coopérer, prendront en charge certaines tâches ou auront l’initiative de la poursuite du processus.

L’introduction du système dans la situation de travail comporte donc une dimension sociologique.

Les systèmes interactifs d’aide à la réalisation de tâches : Je désigne ainsi les applications actuelles concernant l’ingénierie des connaissances. Du côté des applications de l’IA, la réussite de la communication est considérée comme un enjeu aussi important que la

qualité de la résolution de problèmes, les algorithmes ou les connaissances utilisées par les systèmes. Du côté des systèmes d’information (recherche d’information, applications du web, gestion des connaissances ou gestion documentaire), l’intégration de connaissances des domaines étudiés est de plus en plus fréquente, que ce soit visible ou non pour l’utilisateur. Les modules à base de connaissances constituent soit le cœur de l’application, soit une valeur ajoutée aux compétences de l’utilisateur dans la réalisation de sa tâche. Ils font appel à des savoirs techniques, consensuels et partagés, ou à des connaissances de sens commun. Le spectre des applications concernées est donc large et la nature des problèmes soulevés par leur conception justifie la diversité de travaux actuels en IC.

1.4.2.2 Élargissement de la notion d’application à base de connaissances

Paradoxalement, sur cette notion, la position classique de l’IA, parce qu’elle fait référence à l’objectif de parvenir à définir des systèmes dont les capacités de traitement puissent être qualifiées « d’intelligentes », reste stable : un système intelligent doit être capable de raisonner à partir de faits qui lui ont été fournis, qu’il a perçus ou qu’il a déduits d’une analyse du langage et de ses propres connaissances pour produire des résultats ou de nouvelles connaissances. La plupart des applications s’appuient sur une représentation logique des connaissances, qui constitue un modèle formel, et sur des capacités d’inférence logique. Ces systèmes se heurtent à des limites comme la difficulté de maintenance, la faible capacité à résoudre des problèmes nouveaux, à s’adapter aux évolutions du contexte et des utilisateurs, à apprendre de nouvelles connaissances, etc. Cependant, cette approche reste considérée comme le cœur de l’IA tant elle soulève de questionnements riches sur la complexité des raisonnements.

De ce fait, diverses remises en questions (comme celle de Clancey, 1993) ont débouché sur des approches alternatives qui renouvellent la notion de système d’IA. Ainsi ont vu le jour, entre autres, des recherches situant l’enjeu autour du couple système-utilisateur (Human-centered design), de l’interaction et de la coopération homme-machine (systèmes coopératifs, problématique de l’interaction homme-système). De nouvelles communautés ont travaillé sur la prise en charge de la réalisation de tâches ou de résolution de problèmes par des agents, sur l’émergence de nouvelles capacités au sein de communautés d’agents réactifs (systèmes multi-agents, systèmes adaptatifs). Plus récemment, la nature des applications intégrant des modules à base de connaissances ou faisant appel à des modèles s’est élargie à la gestion documentaire, à la recherche d’informations, aux applications du web sémantique ou encore à des aides à la réalisation de tâches intégrant des règles métier.

Ces alternatives font l’hypothèse que l’intelligence est dans l’interaction entre le système et son utilisateur. Le système ne raisonne plus à la place des individus, mais il doit donner à penser, s’intégrer dans les activités en servant de médiateur. Pour cela, il doit aussi pouvoir apprendre, évoluer ou intégrer de nouvelles données au lieu de reposer sur un ensemble figé de règles souvent vite dépassées.

L’ingénierie des connaissances constitue ainsi un domaine à la fois acteur de cette dynamique de diversification de l’IA, et devant s’y adapter, puisqu’il considère comme objets d’étude tout type de système faisant appel à des

29

connaissances. Cette diversification a une double conséquence : la révision régulière des contours visibles de l’IC d’une part, la nécessité de collaborer étroitement avec les communautés de recherche considérées par ces applications ou approches nouvelles d’autre part.

1.4.2.3 Impact sur l’évolution de l’ingénierie des connaissances

Ainsi, l’ingénierie des connaissances relève de ce courant où, depuis 15 ans, la part de la technique n’a pas augmenté, au sens où l’humain tient une place de plus en plus importante. Très rapidement, en cohérence avec une analyse plus ergonomique et organisationnelle, l’IC a pris en compte le groupe d’acteurs concernés par la mise en place d’un système d’information, et pas seulement l’expert humain qui serait la référence en matière de « bonne résolution du problème ». L’implication des utilisateurs est reconnue comme indispensable pour que le système soit utilisé. Et surtout, la localisation de

« l’intelligence » s’est déplacée. Alors que l’on ne mettait initialement l’accent que sur la base de connaissances et les capacités de raisonnement, donc sur la machine seule, il est clair maintenant que l’enjeu se situe tout autant dans les deux composantes du couple homme-machine et dans une troisième, l’interaction humain-machine. Finalement, et c’est une troisième facette de cette évolution, le problème lui-même traité par l’IC n’est plus tout à fait le même : il traite moins de la formalisation du raisonnement et plus de la mise à disposition de connaissances (dans un système opérationnel et formel) comme un support à un raisonnement ou une activité. Cette aide peut consister à réaliser une partie de la tâche, à guider l’utilisateur ou lui donner des connaissances à interpréter et rendre opératoire dans le contexte où il agit. En tout cas, on semble avoir renoncé à la logique comme seule solution au problème de la mise à disposition de connaissances opératoires auprès de l’utilisateur.

Cette analyse n’est pas propre à l’IC. Elle traduit un questionnement qui traverse tout un courant de l’informatique et place la réponse au besoin des utilisateurs au cœur de la problématique de conception des systèmes. Les domaines concernés correspondent aux recherches sur l’interaction homme-machine, les systèmes coopératifs ou encore à l’ingénierie des besoins. Bien sûr, ces recherches ne relèvent pas que de l’informatique et font appel à des disciplines comme l’ergonomie, la sociologie ou l’organisation des entreprises.

1.4.2.4 Systèmes à base de connaissances et ingénierie des connaissances aujourd’hui Aujourd’hui, l’ingénierie des connaissances s’intéresse à la mise en place de systèmes informatiques s’intégrant dans des tâches humaines faisant appel à des connaissances spécialisées. Ces systèmes assistent leurs utilisateurs de manière individuelle ou collective, soit en effectuant des processus jusqu’ici non informatisés, soit en présentation des éléments d’information jusqu’ici non disponibles sous une forme utile à la réalisation de leur tâche ou à la prise de décisions. Les tâches à assister sont donc a priori complexes parce qu’on ne maîtrise pas complètement (de façon algorithmique) la manière de les traiter, parce que l’individu qui les réalise fait appel aussi à ses propres connaissances.

L’introduction du système a pour but que le couple opérateur-système réalise conjointement la tâche mieux, plus rapidement ou plus efficacement que l’opérateur seul. Le système doit donc aussi maîtriser ces connaissances ou au moins la restitution, la mise à disposition ou l’opérationnalisation. Ces connaissances peuvent porter sur la capacité à résoudre le problème, sur des

savoir-faire techniques ou opératoires, sur la description d’un domaine de manière encyclopédique ou finalisée.

Ce cadre large vise des applications qui vont de la gestion des connaissances (mémoire de projet par exemple) à l’aide au diagnostic, en passant par la recherche d’information ou la formation à distance. Les problématiques traitées couvrent également une grande diversité de questions, d’ordre méthodologiques, relatives aux formalismes et représentations des connaissances, ou encore des aspects technologiques dans la définition de logiciels d’aide et de plate-formes d’ingénierie. Cette diversité n’enlève rien à la lisibilité du domaine. Concernent l’ingénierie des connaissances toutes les questions relatives au repérage, à la structuration et mise en forme opératoire des éléments nécessaires pour assurer l’adéquation d’un système informatique d’aide à la réalisation d’une tâche aux besoins de ses utilisateurs.

L’ingénierie des connaissances est définie aujourd’hui comme le domaine qui « s’intéresse à la conception de systèmes qui visent à traiter ou à aider des opérateurs à traiter des problèmes mal posés, faisant appel à des connaissances jusqu’ici non explicitées ou non modélisées. » (Charlet, 2002).

Pour élaborer ces systèmes, l’IC propose de construire des modèles qui vont guider la définition d’une application informatique dont l’utilisation donne lieu à une interprétation en termes de connaissances par des utilisateurs. La discipline définit donc des méthodes, techniques, logiciels et formalismes pour organiser des connaissances au sein de modèles qui permettent de les restituer dans un environnement opérationnel. C’est tout le processus qui va de l’expression de besoins à la mise à disposition du système opérationnel qui intéresse l’IC.

Dans le document Td corrigé Publications - TEL (thèses pdf (Page 29-33)