Introduction
1 Problématique
Notre travail a pour but l’étude du raisonnement à partir
de cas (paradigme de résolution de problèmes par réutilisation
d’expériences passées) pour une classe de problèmes
complexes, ainsi que la conception d’outils logiciels pour faciliter la
réalisation de systèmes intégrant ce type de raisonnement.
Plus précisément, notre étude a été
motivée par deux applications concrètes : tout d’abord la
régulation de la nutrition des plantes, puis l’assistance à
la navigation sur le World-Wide-Web.
La première application s’inscrit dans l’objectif général
de réguler la nutrition minérale et hydrique des plantes,
de manière à maîtriser les dérives minérales
dans le substrat de culture et à assurer une meilleure adaptation
de l’offre aux besoins des plantes. Le problème de régulation
considéré est issu des travaux menés à l’INRA
Sophia-Antipolis (Brun et al., 1993 ; Brun & Settenbrino, 1993) : il
s'agit de maintenir autour d’une consigne la concentration en sels minéraux
de la solution de drainage qui est récupérée après
l'arrosage des plantes. La commande, c'est-à-dire le paramètre
contrôlé, est la concentration de la solution d'irrigation.
Cette régulation est influencée par des perturbations dont
certaines sont effectivement mesurées (température, rayonnement
solaire, humidité). Bien que des approches de régulation
aient été mises en place, ce problème reste ouvert
notamment à cause de l’inertie du processus, du nombre important
de variables pouvant entrer en jeu et de la nécessaire prise en
compte des prévisions météorologiques. Une approche
basée sur la réutilisation d’expériences passées
doit permettre de reproduire les expériences de commande réussies,
tout en évitant les échecs passés. De plus, cette
approche doit permettre l’identification de comportements plus généraux,
pour ainsi venir enrichir les connaissances du domaine.
Dans la deuxième application, nous désirons assister
un groupe d’utilisateurs durant leurs navigations sur le World-Wide-Web
(Web). Le Web est un vaste hypermédia qui est en expansion croissante,
et offre une énorme quantité de données. Deux principales
méthodes permettent de retrouver des documents pertinents dans cet
espace virtuel : l’interrogation et la navigation. L’interrogation suppose
l’utilisation d’un moteur de recherche et l’expression d’une requête.
Toutefois, l’expression d’une requête n’est pas toujours facile si
l’objectif de recherche est mal défini, et les réponses sont
généralement accompagnées de beaucoup de bruit. La
navigation est alors nécessaire et l’utilisateur peut parcourir
à son gré les pages Web en suivant les liens proposés.
Cependant, la complexité et l’étendue du Web peuvent entraîner
la désorientation de l’utilisateur lors d’une navigation. La navigation
est donc importante dans une tâche de recherche d’information sur
le Web et nécessite une assistance. Notre approche vise alors une
recherche d’information coopérative (de type indirect), où
les expériences passées d’un groupe de personnes sont mises
à profit. Plus précisément, nous désirons suivre
un ensemble d’utilisateurs durant leurs navigations pour déduire
leur intérêt potentiel à partir des comportements observés,
et réutiliser des expériences passées similaires au
sein du groupe pour proposer des recommandations.
Ces deux types d’applications, bien qu’issues de domaines différents,
partagent des caractéristiques communes, ce qui nous a amenés
à considérer la classe de problèmes définie
par les critères suivants :
1. La prise en compte d’historiques est choisie ou nécessaire
pour formuler le problème.
2. Un processus dynamique est observé.
3. Un ensemble important de données brutes est collecté.
4. Les données brutes peuvent être obtenues par échantillonnage
et/ou lors d’événements.
5. Les connaissances du domaine sont réduites et une meilleure
compréhension est recherchée.
Notre travail consiste alors à faciliter la conception et la réalisation
de systèmes de raisonnement à partir de cas pour cette classe
de problèmes. De manière générale, le raisonnement
à partir de cas (RàPC) est une technique de résolution
de problèmes basée sur la réutilisation par analogie
d’expériences passées appelées cas. Un cas représente
notamment un problème et la solution qui lui a été
appliquée. Un cas est indexé pour permettre de le retrouver
suivant certaines caractéristiques pertinentes et discriminantes.
Ces caractéristiques, aussi appelées indices, déterminent
dans quelle situation le cas peut être de nouveau réutilisé.
Le raisonnement se décompose habituellement en quatre phases principales
(Aamodt & Plaza, 1994) : la recherche des cas pertinents dans la mémoire,
la réutilisation des solutions passées pour constituer une
solution au problème courant, la révision de la solution
pour l’affiner et enfin l’apprentissage de la nouvelle expérience
pour améliorer le système et enrichir sa mémoire.
L’application du RàPC à des problèmes ayant ces
caractéristiques présente une spécificité qui
touche principalement la gestion des indices des cas sous la forme d’historiques.
Peu de travaux en RàPC ont abordé cette spécificité
: prévision de l’évolution de feux de forêt (Rougegrez,
1994a), prévision économique (Nakhaeizadeh, 1994), prévision
médicale et épidémiologique (Schmidt et al., 1996
; Bull et al., 1997), commande de robots mobiles (Ram & Santamaria,
1997), aide à la supervision de processus (Fuchs et al., 1995),
et assistance à la navigation sur le Web (Corvaisier et al., 1998).
De plus, la plupart de ces approches sont dédiées à
une application particulière, et aucun de ces travaux ne vise une
classe de problèmes aussi générale, ni ne fournit
des outils réutilisables. Enfin, les approches existantes ne permettent
pas une gestion des cas soutenant l’effort de découverte des connaissances,
nécessaire dans ces problèmes où les connaissances
initiales sont réduites.
Nous nous fixons alors deux objectifs principaux :
-
la définition d’un modèle générique d’indexation
des cas adapté à la classe de problèmes visée,
-
et la réalisation d’un outil logiciel ouvert pour faciliter
son utilisation.
En définitive, nous abordons trois des problèmes importants
soulevés par Janet Kolodner, un pionnier dans le domaine du raisonnement
à partir de cas, qui citait parmi les objectifs de recherche du
domaine (Kolodner, 1993, pages 571–576) : « l’extraction de cas depuis
des situations continues » et la « définition d’un vocabulaire
général d’indexation » qui doivent être considérées
dans le modèle d’indexation, ainsi que la conception « d’outils
pour la réalisation de systèmes RàPC ».
2 Contributions
Les deux premières contributions de notre étude sont :
-
La proposition d’un modèle d’indexation générique,
appelé modèle d’indexation par situations comportementales,
pour faciliter l’application du RàPC au sein de la classe de problèmes
visée.
-
La proposition d’un nouveau type d’outils logiciels pour le RàPC
à travers la conception et la réalisation d’une plate-forme
à objets (object-oriented application framework), nommée
CBR*Tools. Cette plate-forme repose sur des points d’ouverture et des modèles
à objets exprimés systématiquement en termes de patrons
de conception (design patterns). Cet outil facilite l’utilisation de notre
modèle d’indexation et son intégration dans des systèmes
de RàPC.
Pour évaluer ces deux contributions, nous avons principalement réalisé
un système d’aide à la navigation sur le Web, nommé
Broadway. De par la nature de notre modèle d’indexation, l’approche
concrétisée dans Broadway est originale. Nous présentons
ainsi une troisième contribution, avec la proposition d’un nouveau
type d’assistants à la navigation sur le Web, basé sur le
calcul de recommandations par réutilisation de comportements observés
à partir d’un ensemble extensible de variables.
2.1 Présentation des contributions
Premièrement, nous proposons pour la classe de problèmes
visée, une approche générale de l’indexation alliant
un modèle de représentation générique avec
un guide d’utilisation présentant différents principes de
gestion des indices dans un cycle de raisonnement à partir de cas.
Ces principes donnent des exemples de types de traitements identifiés
et analysés lors de l’étude des applications réalisées.
Le modèle de représentation générique permet
de séparer les données brutes (structurées en variables
et en enregistrements) des cas qui référencent ces données
à travers des situations comportementales. Une situation comportementale
est principalement formée de comportements élémentaires
(séquences issues d’historiques) reliés par des contraintes
temporelles. Ce modèle permet d’une part de représenter des
indices sur des historiques échantillonnés et/ou à
événements, et d’autre part de manipuler les cas pour mener
à la découverte des connaissances. En effet, l’introduction
du concept de patron de cas potentiels permet d’extraire, suivant des hypothèses
préétablies, des enseignements structurés à
partir des données d’observation. Ces extractions peuvent être
stockées sous forme de cas concrets dont les représentations
peuvent être modifiées suivant les raisonnements. De plus,
ces cas référencent toujours les données brutes d’observation
ce qui permet de faciliter leur interprétation.
Nous proposons deuxièmement un nouveau type d’outils logiciels
dans le domaine du RàPC tirant profit des concepts de plate-forme
à objets (object-oriented application framework), de patron de conception
(design pattern) et de cas d’utilisation (use case). Nous proposons tout
d’abord une description de haut niveau, sous la forme de cas d’utilisation
liant les tâches de conception d’un système de RàPC
vers les points d’ouverture nécessaires à l’application du
RàPC et de notre modèle d’indexation. Ces points d’ouverture
sont intégrés dans une architecture abstraite au sein d’une
plate-forme à objets dont la modélisation s’appuie systématiquement
sur l’utilisation de patrons de conception. Puis, la plate-forme réalisée,
appelée CBR*Tools, fournit également un ensemble de classes
concrètes pouvant être directement utilisées (index,
similarité, base de cas). Cette plate-forme facilite la spécialisation
concrète de notre modèle d’indexation et son intégration
avec des méthodes spécifiques de recherche, d’adaptation,
de révision et d’apprentissage nécessaires à la réalisation
d’une application. Notre approche permet également la capitalisation
d’objets-métier réutilisables sous la forme, par exemple,
d’index, de fonction de similarité et de schémas de phase
de raisonnement.
Enfin, nous proposons un nouveau type d’assistants à la navigation
sur le Web dont le prototype Broadway est un premier exemple. Cette
assistance est basée sur la réutilisation des navigations
passées d’un groupe d’utilisateurs dont les comportements sont observés
suivant un ensemble extensible de variables. Dans Broadway, quatre variables
sont utilisées : adresse, contenu, évaluation explicite,
et évaluation implicite. Cette observation par variables, combinée
avec notre modèle d’indexation, permet la gestion de comportements
détaillés dans un cadre flexible et générique.
Nos trois contributions ont fait l’objet de sept publications scientifiques
nationales et internationales : modèle d’indexation par situations
comportementales (Jaczynski, 1997 ; Jaczynski & Trousse, 1997a), plate-forme
à objets pour le RàPC (Jaczynski & Trousse, 1999 ; Jaczynski
& Trousse, 1998a) et le système Broadway (Jaczynski & Trousse,
1998b ; Jaczynski & Trousse, 1998c ; Jaczynski & Trousse, 1997b).
2.2 Evaluation expérimentale
L’évaluation de notre modèle d’indexation a été
réalisée dans le cadre de la nutrition des plantes et dans
celui de l’assistance à la navigation sur le Web. Plus précisément,
la première application nous a permis de vérifier que les
caractéristiques du processus de nutrition peuvent être prises
en compte par le modèle de représentation. Un prototype de
recherche des cas a été réalisé en se basant
sur des données brutes enregistrées manuellement par R. Brun,
chercheur de l’INRA Sophia Antipolis. Toutefois, la spécification
et la validation d’un système de régulation avec une approche
de RàPC demandent une mise en opération effective qui n’a
pas été effectuée. En effet, la réalisation
d’un tel système requiert des compétences métier et
une lourde disponibilité des experts du domaine. C’est pourquoi
nous avons retenu le domaine de la navigation sur le Web : les données
réelles sont plus facilement disponibles et nous avons été
plus autonomes pour concevoir et tester l’application de notre modèle
d’indexation. Nous avons alors réalisé le système
d’assistance Broadway qui montre l’utilisation opérationnelle de
notre modèle d’indexation ainsi que son intégration dans
un cycle complet de raisonnement à partir de cas.
L’approche de plate-forme à objets pour le RàPC et les
modèles à objets proposés ont mené à
la réalisation concrète de CBR*Tools comprenant plus de 200
classes programmées dans le langage Java et conçues sous
l’atelier de génie logiciel Rational Rose (Rose, 1998). En plus
des deux applications précédentes réalisées
avec CBR*Tools, nous avons également implanté un système
classique de RàPC permettant l’affectation d’un facteur de risque
à une voiture pour un assureur. Ce système n’utilise pas
notre modèle d’indexation par situations comportementales car il
avait uniquement pour but de valider l’architecture et les composants de
base.
Notre assistant de navigation Broadway fut évalué lors
d’une expérimentation qui a été conçue et supervisée
par des étudiants en DESS d’ergonomie (Hébraud et al., 1998).
Cette expérimentation a mis en jeu dix utilisateurs réels
(étudiants en psychologie n’ayant pas de connexion avec nos travaux)
et a nécessité l’utilisation continue de deux systèmes
Broadway pendant dix jours. Les résultats de cette expérimentation
montrent que l’approche est bénéfique dans le cadre restreint
choisi.
3 Plans de lecture
Le document est organisé en cinq chapitres et permet de développer
notre approche visant des modèles et des outils pour l'application
du RàPC à une classe de problèmes. Un aperçu
rapide de la thèse peut être obtenu en complétant la
lecture de l’introduction et de la conclusion de la thèse, par les
résumés placés au début de chaque chapitre.
Nous conseillons à tout lecteur de commencer par le chapitre
I qui présente plus précisément nos motivations et
notre démarche pour l'application du raisonnement à partir
de cas à la classe des problèmes nécessitant la prise
en compte d'historiques. Le raisonnement à partir de cas et la notion
d’indexation sont également introduits.
Dans le cadre d’une lecture complète, nous proposons ensuite,
dans le chapitre II, notre modèle d’indexation des cas par situations
comportementales, après avoir mené un état de l'art
des approches existantes d'indexation par historiques. Nous décrivons
également l’utilisation du modèle d’indexation dans le cadre
de la nutrition des plantes. Dans le chapitre III, nous menons un état
de l'art des outils logiciels pour le RàPC et nous présentons
le concept de plate-forme à objets qui nous a permis de dépasser
leurs limites en terme d'ouverture. Nous analysons alors les points d'ouverture
nécessaires pour le raisonnement à partir de cas et plus
spécifiquement pour l'indexation par situations comportementales.
Dans le chapitre IV, nous présentons l’utilisation des patrons de
conception pour la modélisation ouverte du cycle du RàPC
et de l’indexation par situations comportementales. Nous introduisons alors
la plate-forme CBR*Tools que nous avons réalisée. Enfin,
dans le chapitre V, nous détaillons la conception de Broadway, notre
assistant à la navigation sur le Web qui met en œuvre le modèle
d'indexation par situations comportementales ainsi que la plate-forme CBR*Tools.
Un lecteur intéressé par le raisonnement à partir
de cas et par l’indexation par situations comportementales pourra directement
lire la proposition du modèle (cf. chapitre II, §2 et §3),
les points d’ouverture associés de notre plate-forme (cf. chapitre
III, §2.3), le cycle de raisonnement de Broadway (cf. chapitre V,
§1.3 et §2.1) et l’évaluation du modèle dans le
cadre de Broadway (cf. chapitre V, §2.3.1).
Un lecteur intéressé par notre plate-forme à objets
pour la réalisation de systèmes de RàPC pourra directement
lire la proposition de cette approche (cf. chapitre III, §2) et les
modèles à objets associés (cf. chapitre IV). La description
du niveau spécifique pour l’indexation par situations comportementales,
présentée séparément (cf. chapitre III, §2.3.2
; chapitre IV, §2), repose sur les concepts du modèle d’indexation
qui peuvent être rapidement cernés (cf. chapitre II, §2.1.2
et §2.2). Nous décrivons également un exemple d’utilisation
de la plate-forme pour Broadway ainsi que son évaluation (cf. chapitre
V, §2.2 et §2.3.2).
Un lecteur intéressé par notre application Broadway pourra
se reporter à la présentation du système (cf. chapitre
V, §1) et à l’évaluation de notre approche (cf. chapitre
V, §3). Cependant, la représentation des cas et des indices
ainsi que la réalisation (cf. chapitre V, §2) s’appuient sur
les notions introduites précédemment (cf. chapitre II, §2
; chapitre III, §2.3 ; chapitre IV, §1 et §2).
Nous fournissons également plusieurs annexes pour compléter
notre étude. L’annexe A décrit les éléments
de la notation UML (Unified Modelling Language) utilisée dans les
chapitres III, IV et V. L’annexe B présente les patrons de conception
(design patterns) utilisés dans CBR*Tools. L’annexe C décrit
un exemple complet de l’utilisation de CBR*Tools dans le cadre du calcul
du facteur de risque d'une voiture pour un assureur. Et enfin, l'annexe
D liste principalement les paramètres de Broadway permettant de
modifier le cycle du raisonnement suivi.