Projet Sherpa

previous up next contents
Précédent : Logiciels Remonter : Projet SHERPA, Modèles et bases Suivant : Actions industrielles



Résultats nouveaux

Construction coopérative de bases de connaissances



Participants : Jérôme Euzenat , Loïc Tricand de La Goutte , Charles Pecheur  (action Vasy)


La construction incrémentale et coopérative d'une base de connaissances (ou d'une mémoire technique) fait intervenir simultanément plusieurs personnes sur des sites distants. Chacune d'entre elles est susceptible de soumettre des descriptions de classes d'objets inter-reliées pour les intégrer dans la base en cours de construction. Les échanges entre la base et les sites qui l'alimentent doivent être gérés afin d'assurer que le contenu de la base de connaissances croisse de manière consensuelle.

Le protocole de coopération Co4, conçu au sein du projet Sherpa, permet à plusieurs utilisateurs de soumettre à une base de connaissances consensuelle des éléments de connaissance. Il s'appuie sur la métaphore de la soumission d'un article à un journal scientifique : les contributions sont distribuées à l'ensemble des souscripteurs de la base qui doivent répondre s'ils l'acceptent, la rejettent ou proposent des modifications. Le protocole gère la collecte des réponses et son résultat. Il gère de la même manière l'arrivée d'un nouveau souscripteur et permet récursivement à une base consensuelle de souscrire à une autre base.

Ce protocole a été décrit cette année dans le langage de spécification de protocoles LOTOS par Charles Pecheur. Il a ainsi pu être testé à l'aide des outils de vérification de programmes développés à l'Inria Rhône-Alpes (projet Vasy). La phase de test du protocole décrit en LOTOS a d'une part permis de corriger certains problèmes dans sa spécification et d'autre part de s'assurer de son bon fonctionnement.

Ce protocole, qui n'était jusqu'alors étudié que d'un point de vue théorique, a été implémenté sous la forme d'une bibliothèque écrite en C. Elle dispose d'outils de manipulation des éléments du protocole (soumissions à examiner, votes) et a été connectée à Tropes de manière à pouvoir soumettre directement la connaissance contenue dans les bases. Le protocole sera utilisé dans le contexte de la mémoire technique.

Révision de bases de connaissances



Participants : Jérôme Euzenat , Isabelle Crampé


Lorsqu'une base de connaissances est construite de manière incrémentale, chaque nouvel ajout peut être contradictoire avec le contenu de la base. Il faut donc modifier la base afin de préserver sa consistance. Cette problématique se rapproche de celle de la révision dans les langages logiques, dont le principal inconvénient est la complexité qui ne permet pas l'implémentation. Notre objectif est la définition d'une révision, dans le cadre des représentations de connaissances par objets, qui puisse être implémentée, notamment en tenant compte des particularités de ces langages.

Dans un premier temps, un langage d'objets a été formellement défini. Il a été doté d'une sémantique et d'un système déductif syntaxique correct et complet par rapport à cette sémantique. De plus, l'inconsistance a été caractérisée syntaxiquement, ce qui permet de la détecter en se basant sur les propriétés de localité du langage. Contrairement aux langages logiques classiques, l'inconsistance ne se propage pas à l'ensemble de la base, elle ne permet pas de tout déduire.

Dans un second temps, une notion de base révisée a été introduite; elle satisfait les postulats classiques de la révision, en particulier la minimalité, principe selon lequel il faut perdre le moins de connaissances possible. La minimalité peut de plus s'interpréter intuitivement selon la relation d'ordre entre les classes. Cependant, une minimalité basée sur l'inclusion ensembliste n'est pas un critère suffisant pour obtenir une base unique. Un algorithme est donc mis en oeuvre pour obtenir toutes les bases révisées minimales suite à un ajout inconsistant; il est interactif afin de maîtriser la complexité inhérente à la révision : le concepteur choisit à chaque étape du processus de révision parmi les différentes possibilités de modification de la base. Cet algorithme a été développé dans le système Tropes et permet, lors de l'édition d'une base de connaissances, de proposer à l'auteur d'une modification fautive une aide dans la révision de la base.

Insertion dans un treillis



Participant : Petko Valtchev


Dans un système de gestion de types, la vitesse de calcul de la relation de sous-typage, ainsi que des opérations de sous-type le plus étendu et de sur-type le plus restreint, est un facteur important pour l'efficacité globale du système. Cela conduit souvent à la structuration de l'ensemble des types existants dans une base de connaissances sous forme de treillis de types. La structure de treillis permet, en effet, si elle est bien exploitée, un accès direct aux résultats des opérations ci-dessus. En revanche, lors d'une modification dans l'ensemble des types gérés, se résumant le plus souvent en une insertion d'un nouveau type, il est obligatoire, au risque de perdre les propriétés de treillis, de répercuter ces modifications sur la structure de treillis de manière appropriée.

Ce problème du maintient incrémental de la structure d'un treillis, qu'il soit de types ou non, revient à rechercher la complétion de Dedekind-McNeille de l'ordre obtenu en insérant de manière directe le nouvel élément dans le treillis. Un algorithme de construction de cette complétion a été proposé. Il se fonde sur des propriétés structurelles de l'ordre intermédiaire, en particulier sur la correspondance bijective entre un ensemble d'éléments du treillis initial liés au nouvel élément et l'ensemble des éléments artificiels nécessaires à la restitution de la structure de treillis. En effet, l'insertion directe de l'élément en question résulte en la violation de l'unicité de certaines bornes supérieures et inférieures d'éléments du treillis qui sont comparables au nouvel élément. Ainsi, la stratégie de complétion revient à rechercher ces distorsions locales (une seule borne est considérée à la fois) dans la structure du treillis et de les ``réparer'' en insérant les éléments artificiels nécessaires, à raison d'un par distorsion.

À l'heure actuelle, c'est le seul algorithme qui résout ce genre de problème, c'est-à- dire le maintient incrémental de la structure de treillis, de manière directe et en minimisant le coût des complétions. Les autres algorithmes qui peuvent être utilisés pour compléter un ordre partiel vers un treillis sont soit plus coûteux en temps de calcul, soit produisent une structure nettement plus large.

Construction de bases de connaissances par catégorisation interactive



Participants : Gilles Bisson , Jean-Marc Gabriel


La catégorisation a pour but de découvrir les connaissances implicites, présentes au sein d'un ensemble de données (expérimentales ou autres), en détectant les similarités ou les dissemblances qui existent au sein de ces données. Ainsi, elle permet d'organiser et de condenser automatiquement l'information qui est sous-jacente dans les données initiales en les exprimant comme une hiérarchie de classes.

Le processus de classification est constitué de deux étapes, qui sont la constitution du jeu de données et la construction de la hiérarchie. En pratique, pour parvenir à une représentation satisfaisante des données, il est généralement nécessaire d'effectuer plusieurs itérations de type ``essais/erreurs'' au cours desquelles, en fonction des résultats obtenus, les données initiales sont révisées par l'utilisateur. Ainsi, celui-ci peut devoir rajouter des exemples, modifier le langage de description des instances ou encore changer les paramètres du système. Or, il est délicat de trouver quelles sont les modifications à effectuer si l'on n'a pas une bonne connaissance des mécanismes utilisés. Dès lors, les outils de classification automatique existants sont difficilement utilisables par des néophytes.

Cet axe de recherche vise donc à définir des méthodes de catégorisation dans lesquelles le système est capable d'expliquer ses choix à l'utilisateur, et ainsi de l'aider non seulement à construire la hiérarchie de classes, mais également à définir quelles sont les informations nécessaires pour y parvenir. Ces exigences ont conduit à la réalisation d'un système d'explication EILP, qui est couplé au système de catégorisation KBG déjà existant. Dans EILP, il est non seulement possible de justifier les résultats de chaque étape de la construction de la hiérarchie de classes en fonction des informations fournies par l'utilisateur, mais aussi de lui proposer des modifications et de prédire l'impact qu'elles auront sur la base de connaissances finale.

Résolution coopérative de problèmes



Participants : Danielle Ziébelin , Thibaut Parmentier , Sueli Ferreira da Cunha


Les modèles de tâches permettent de décrire des schémas de résolution de problèmes par décomposition récursive en sous-problèmes plus simples, jusqu'à l'obtention de problèmes élémentaires directement résolus par l'exécution d'une méthode. À chaque pas de décomposition, le problème courant, représenté par une tâche, est tout d'abord caractérisé par sa classification dans une hiérarchie de tâches de même catégorie. Il en résulte une décomposition particulière en sous-problèmes et le cycle caractérisation-décomposition se répète sur chacun de ces sous- problèmes. Ces modèles de tâches sont mis en oeuvre dans des environnements coopératifs d'aide à la résolution de problèmes. Le projet Sherpa a ainsi développé, de 1994 à 1996, en collaboration avec la société Ilog, l'environnement PowerTasks. Une version répartie de cet environnement a été réalisée : elle permet d'exécuter les méthodes associées aux tâches élémentaires sur les sites mêmes où elles sont développées et maintenues, alors que les capacités de suivi, par l'utilisateur, du processus de résolution de problèmes restent identiques.

La mise en oeuvre de l'exécution répartie nécessite la définition de mécanismes de localisation des compétences et l'élaboration de processus de synchronisation permettant l'interaction entre les tâches réparties sur les différents sites. Ces deux points entraînent une modification du modèle de tâches (par exemple, par l'adjonction de descripteurs pour la localisation des tâches distantes), et la création de nouveaux opérateurs (tels que l'opérateur de parallélisation) et des mécanismes de synchronisation élémentaire qui lui sont nécessaires. L'utilisation de cet environnement réparti requiert, en plus des modifications structurelles et opérationnelles déjà citées, une analyse des nouvelles possibilités et contraintes amenées par la répartition. Par exemple, la prise en compte de contraintes temporelles et de disponibilité des ressources matérielles et logicielles lors du processus de résolution est nécessaire afin d'assurer un déroulement satisfaisant des résolutions. Les stratégies de résolution devront aussi tenir compte de la puissance de calcul des machines, de leur charge de travail et de la disponibilité des compétences et des données.

Le travail réalisé par Thibault Parmentier dans le cadre de sa thèse vise non seulement à permettre une mise en place de l'environnement réparti mais aussi une utilisation aisée de celui-ci, comme, par exemple, prendre en compte les contraintes temporelles et les disponibilités de ressources dans le modèle de tâches en y intégrant des algorithmes d'évaluation sous contraintes de ressources. Ceux-ci permettront d'évaluer le coût et le gain apportés par une méthode envisagée dans un processus de résolution. Cette évaluation se fera à partir d'une analyse multi-critères permettant de mesurer la performance de la méthode, basée sur sa précision, son temps d'exécution, la place mémoire utilisée, la disponibilité des données nécessaires, la nécessité d'interaction avec l'utilisateur, etc.

Le travail de thèse de Sueli Ferreira Da Cunha s'intègre aussi dans l'exploitation de ces connaissances multi-sites. Il vise le développement d'outils de comparaison de stratégies de résolution, décrites par différents concepteurs, mais portant sur un même type de problème et pilotant une même bibliothèque de méthodes. Dans le but de comparer ces différentes résolutions d'une même tâche, nous avons défini un modèle de représentation canonique des graphes de décomposition et de spécialisation de tâches en utilisant les structures de E-graphes (graphes orientés sans circuit ni sommet isolé possédant un seul sommet d'entrée et un seul de sortie). Des opérations de concaténation et d'alternance ont été définies, les propriétés d'associativité et de distributivité de la concaténation par rapport à l'alternance ont été vérifiées. Ce travail s'est concrétisé par l'implémentation d'un module de recherche de formes canoniques pour les différents modèles de tâches développés au sein du projet. Ce module est associé à une évaluation des dissemblances : ainsi, les différences des deux stratégies comparées sont identifiées et des modifications sont proposées à l'utilisateur afin de lui permettre une unification éventuelle des deux stratégies.

Simulation et contraintes dans les bases de connaissances



Participants : Michel Page , Jérôme Gensel , Sylvie Robert , Vincent Thornary


Afin de modéliser et simuler des systèmes complexes, il apparaît souvent profitable d'introduire des connaissances symboliques qui rendent explicites les hypothèses et conditions de validité du modèle numérique adopté. Le problème est ici abordé sous l'angle de la représentation de connaissances par objets qui permet la coexistence de connaissances numériques (équations et/ou contraintes) et symboliques (objets, contraintes symboliques). Les premiers travaux ont porté sur la définition d'un langage de modélisation permettant d'intégrer connaissances symboliques et numériques, ainsi que sur la conception de mécanismes de résolution adaptés. Les résultats obtenus ont été implantés dans le logiciel AMIA et validés sur des applications complexes. Il est aussi souvent intéressant dans ce contexte de mener des simulations sous contraintes pour déterminer, par exemple, comment atteindre un objectif donné. La simulation apparaît alors comme un cas particulier des problèmes de satisfaction de contraintes. Les travaux en cours portent sur l'élaboration de mécanismes de résolution alliant des techniques de simulation et de satisfaction de contraintes. En particulier, une représentation et des techniques de résolution des problèmes de satisfaction de contraintes ensemblistes sont étudiées par Vincent Thornary dans le cadre de la thèse.

Recherche d'informations sur le Web



Participants : Gilles Bisson , Danielle Ziébelin


Les moteurs de recherche courants, tels AltaVista ou Lycos, utilisent le plus souvent comme filtre d'accès un ensemble de mots-clés liés entre eux par des connecteurs logiques. Or, cette recherche par identité de motif conduit souvent, soit à l'obtention d'informations trop générales, soit à aucune information si le motif est trop spécifique. Conscients de ces limites, certains sites mettent en place des mécanismes d'aide principalement basés sur l'utilisation de thésaurus générés statiquement (Semio) ou dynamiquement (Lives topics d'AltaVista). Si ces mécanismes simplifient la formulation des requêtes, ils souffrent d'un excès de généralité se traduisant par des propositions non pertinentes.

Pour améliorer l'efficacité de la recherche, il semble nécessaire de l'articuler autour d'une base de connaissances définissant un ensemble prédéfini de critères normalisés et typés. L'avantage d'une telle approche est double. D'une part, la normalisation des critères de recherche permet de guider efficacement l'utilisateur dans la formulation de sa requête par l'intermédiaire de questionnaires dont le contenu peut changer dynamiquement au fur et à mesure de la saisie des informations. D'autre part, en explicitant la sémantique des critères par le typage, il devient possible d'effectuer des recherches plus souples basées sur la similarité des informations et non plus leur stricte égalité.

Le système FUSIN (FUzzy Search withIN sight) satisfait ces différents objectifs en offrant des outils permettant de construire et d'exploiter, parallèlement aux documents existants sur un site web, un modèle assurant une indexation bi- directionnelle entre ces documents et la base de connaissances. La recherche d'informations repose entièrement sur les mécanismes des mesures de similarité qui ont été mis au point au sein de l'activité de catégorisation du projet Sherpa. Le champ d'application de FUSIN concerne principalement les sites devant disposer de mécanismes d'interrogation souples et s'adressant à des publics ayant des niveaux d'expertise très divers; les sites de support produit/client en sont un bon exemple. Ce système sera expérimenté dans le cadre du réseau EMG-NET qui regroupe un ensemble de médecins européens travaillant dans le domaine de l'électromyographie.



previous up next contents Précédent : Logiciels Remonter : Projet SHERPA, Modèles et bases Suivant : Actions industrielles