3.2. Raisonnement à Partir de Cas Conversationnel (RàPCC)
3.2.2. Description du RàPCC et son processus
.
Un système RàPCC propose un dialogue « à Mixed-initiative » avec l'utilisateur pour
développer progressivement une requête ou la description du problème. Les systèmes RàPCC
mises sur l’interaction entre l’usager et le système, à travers un ensemble de
questions-réponses, pour définir progressivement le problème à résoudre et pour sélectionner les
solutions plus pertinentes
2 [Giampapa & Sycara, 2001]. Il demande, au départ, à l’utilisateur
d’introduire une brève description du problème dans un format textuel en langage naturel
3
1 Parmi les application réussies dans le système du RàPCC, nous pouvons citer le service clientèle [Acron &
Walden, 1992], le service dépannage [Gupta, 1998], le développement de vente par internet pour une webshop
e-commerce [Shimazu, 2002], des tâches d’e-e-commerce [Shimazu et al., 1994].
. Le
système prend ensuite en charge l'évaluation interactive du problème pour construire des
questions. Au cours de cette conversation, le système classe et affiche progressivement les
2 A propos de ce sujet, il existe ainsi les références suivantes : [Göker et al., 1998], [Shimazu, 1994]
77
solutions des cas ayant un niveau d’appariement plus élevé. Donc, l'utilisateur ne doit
répondre qu’à des questions posées par le système. La figure 15 représente le processus
général d’un système RàPCC [Aha et al., 2001]. La remémoration des cas continue jusqu'à ce
qu'il n'y ait plus de questions ou bien que l'utilisateur est satisfait de l'ensemble des cas
remémorés.
Le système apparie cette requête avec des cas stockés, dont chacun comprend une
description du problème (constitué d'un texte et d'une série de questions-réponses) et une
solution. Le système répond en affichant un ensemble ordonné de cas similaires le plus
appariés au cas cible. La liste de questions-réponses de chaque cas a tendance à aller du cas
général au cas particulier [Gupta, 2001]. Toutefois, les questions-réponses peuvent également
être liés temporellement, ou par d'autres types de dépendances [Aha & Gupta, 2002] ; ceci est
dû au fait que, dans des cas tels que le dépannage, ou le service clientèle, où le RàPCC est
utilisé, l’aide à la décision est souvent représentée de manière séquentielle avec une séquence
de collectes d'informations, ou une séquence de processus de résolution de problème. Par
exemple, dans une application qui aide les utilisateurs à résoudre des problèmes concernant
les télécommandes de la télévision, il est nécessaire de vérifier « Y a-t-il des piles dans la
télécommande? » avant de vérifier « Est-ce que les piles de la télécommande sont neuves? »
ou de contrôler « Est-ce que les piles ont été positionnées correctement ? ». Il est clair que
cette dépendance stricte exige que les deux dernières questions ne doivent pas être posées
avant de recevoir la réponse à la première question. En outre, la première question ne doit pas
être posée si l’utilisateur a répondu à l'une des deux dernières questions. Cet exemple illustre
des dépendances strictes ; il peut y avoir des dépendances non-strictes qui reflètent une
commande partielle désirée. Par exemple, une application de e-commerce pour choisir un
Figure 15. Le processus générique de la résolution de problème en RàPCC
[Source : Aha et al., 2001]
78
appartement peut exiger que le nombre de chambres soit spécifié avant de préciser le nombre
de salles de bain et de places de parking [Gupta et al., 2002].
La popularité des systèmes RàPCC est le résultat de leur capacité à acquérir des requêtes
de plus en plus incrémentales et interactives décrivant les problèmes des clients. En outre, ils
offrent un énorme avantage aux utilisateurs du système ; il suffit de guider les clients par le
biais d'une série déterminée de questions, mais ils ne doivent pas être des experts en
résolution de problèmes de la tâche elle-même, ce qui peut être intéressant pour les
utilisateurs novices.
Les systèmes RàPCC dialoguent de façon itérative avec un utilisateur dans une
conversation afin de résoudre une requête, définie comme l'ensemble des questions
sélectionnées et répondues par l'utilisateur au cours d'une conversation. Au cours de chaque
itération, l'utilisateur est incité à choisir deux affichages et sélectionner un élément à partir de
l'un d'entre eux. Le premier affichage montre une liste classée de questions. L'utilisateur peut
sélectionner et répondre à la question de son choix. Le deuxième affichage montre une liste
des cas classés par une similarité à la requête de l'utilisateur. L'utilisateur peut choisir
n’importe quel cas à partir de cette liste pour la remémoration. La conversation finira lorsque
l'utilisateur aura choisi un cas. Chaque réponse à une question met à jour la requête et le
classement dans les deux affichages. Les questions peuvent être classées de nombreuses
façons, par exemple en fréquence d’apparitions d’évènement dans le classement des cas, ou
par une classification dans les cas-mêmes (les questions classées le plus élevée sont ceux du
premier cas).
La solution d’un cas est une séquence d'actions. Par exemple, lors du diagnostic de
pannes d'imprimante, des questions pourraient se référer à l'affichage de l’imprimante ou au
statut du chargeur du papier, tandis que l'action pourrait être de remplir le bac, débloquer la
machine, ou perdre tout espoir ! Les cas sont supposés être regroupés par thème, et peuvent
être distingués par un nombre de questions clés du contexte. Les cas devraient être conçus de
telle sorte que les questions de contexte sont affichées en premier, et les questions de faible
niveau de détail sont affichées plus tard. Ce classement encourage les utilisateurs à suivre
cette commande au cours de la phase de conversation [Aha & Breslow, 1997].
Gu [Gu, 2005] a une autre représentation des systèmes RàPCC. Selon cet auteur, comme
illustré dans la figure 16, un utilisateur fournit sa première description du problème qui est
transformée comme un premier nouveau cas. Le système RàPCC utilise le premier nouveau
cas afin de remémorer le premier ensemble de cas plus similaires, et identifie un groupe de
descripteurs pour ces cas afin de générer des questions discriminantes. Les descripteurs
apparaissant dans la remémoration de ces cas sont transférés comme questions discriminantes,
car aucune valeur n’est attribuée à ce nouveau cas. A titre d’exemple, dans les cas
actuellement remémorés, il y a un descripteur « insérer la dimension de l'image » qui est
79
utilisé pour décrire combien de dimensions devraient posséder les images d’entrées du
composant du logiciel correspondant. Aucune valeur n’est attribuée à ce descripteur dans le
nouveau cas. Donc une question discriminante sera « combien de dimensions souhaitez-vous
attribuer pour l’image d’entrée du composant désiré? » Les cas remémorés ainsi que les
questions discriminantes identifiées sont classés et montrés à l'utilisateur. L'utilisateur
découvre ainsi le cas source pour terminer le processus de remémoration ou choisir une
question. Une mise à jour de nouveaux cas est construite en combinant le nouveau cas
précédent avec la réponse à la nouvelle question. Le processus de remémoration et des
questions-réponses se répète jusqu'à ce que l'utilisateur trouve le cas source approprié ou
qu’aucune question discriminante ne soit disponible.