04 Rapport de Stage de Dea

  • Published on
    15-Nov-2015

  • View
    6

  • Download
    0

Embed Size (px)

DESCRIPTION

Le stage de DEA se situe dans le cadre des agents dialogiques, c'est-a-dire des composantslogiciels capables de raisonner sur leur propre structure et fonctionnement pour repondrea des requetes (formelles ou, idealement, en langue naturelle).

Transcript

  • RAPPORT DE STAGE DE DEA

    Definition dune architecture de mediateur pour des agents

    conversationnels animes

    Karl LE GUERN

    3 septembre 2004

    1

  • Resume :Le stage de DEA se situe dans le cadre des agents dialogiques, cest-a`-dire des composantslogiciels capables de raisonner sur leur propre structure et fonctionnement pour repondrea` des requetes (formelles ou, idealement, en langue naturelle).Il sest deroule au sein du LIMSI-CNRS a` Orsay (91), sous la direction de J.-P. Sansonnet,et de J.-C. Martin. Mon objectif est de definir une architecture de mediateur pour desagents conversationnels animes. Durant ce stage, mon activite principale est detablir unecommunication / synchronisation entre les trois modules principaux de notre architec-ture, cest-a`-dire un composant generique a` medier, un agent anime LEA, et un mediateurcontenant une representation symbolique du composant generique.

    Remerciements : a` J.-P. Sansonnet et J.-C. Martin, responsables de stage, a` S. Abrilian, S. Buisine, pour leur aide sur LEA, a` E. Augustin, A. Dy, O. Dy, M.-H. Papadopoulos, ele`ves de lEPITA, pour leursApplets JAVA,

    aux personnes qui ont participe a` la premie`re experimentation de DaftLea.

    2

  • Table des matie`res

    1 Problematique 51.1 Contexte de Recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.2 Objectifs du stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.3 Le the`me de recherche ACA : Etat de lart . . . . . . . . . . . . . . . . . . . 6

    1.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3.2 Les Agents Intelligents . . . . . . . . . . . . . . . . . . . . . . . . . . 71.3.3 Les Agents Conversationnel . . . . . . . . . . . . . . . . . . . . . . 81.3.4 Les Agents Assistants Personnels . . . . . . . . . . . . . . . . . . . 8

    1.4 Le the`me de recherche Agent Dialogique : InterViews et DAFT . . . . . . . 101.4.1 Le projet InterViews . . . . . . . . . . . . . . . . . . . . . . . . . . . 101.4.2 Le projet DAFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

    1.5 DAFTLEA : specification du projet . . . . . . . . . . . . . . . . . . . . . . . 11

    2 Le mode`le darchitecture DaftLea 122.1 Architecture generale DaftLea . . . . . . . . . . . . . . . . . . . . . . . . . . 122.2 Description de lagent LEA . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

    2.2.1 Presentation de lagent LEA . . . . . . . . . . . . . . . . . . . . . . 132.2.2 Architecture logicielle de LEA . . . . . . . . . . . . . . . . . . . . . 14

    2.3 Description de DAFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3.1 description generale . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3.2 le mode`le DAFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.3.3 le ScriptLanguage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3 Mise en oeuvre de larchitecture DaftLea 203.1 Integration des differents modules . . . . . . . . . . . . . . . . . . . . . . . . 203.2 Controler LEA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

    3.2.1 Animer LEA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.2.2 Designer un objet du composant . . . . . . . . . . . . . . . . . . . . 21

    3.3 Synchronisation des mode`les . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.1 Communication Composant Mediateur . . . . . . . . . . . . . . . 233.3.2 Communication Mediateur Composant . . . . . . . . . . . . . . . 27

    3.4 Chane globale TALN integree . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    4 Experimentation 284.1 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.2 Apport de lexperimentation pour GRASP . . . . . . . . . . . . . . . . . . . 294.3 Apport de lexperimentation pour DAFT . . . . . . . . . . . . . . . . . . . 29

    5 Conclusion et Perspectives 30

    3

  • 6 Bibliographie 316.1 The`me : View Design Language / Mediateur / Observateurs . . . . . . . . . 316.2 Architectures / Model View Controller (MVC) . . . . . . . . . . . . . . . . 316.3 The`me : LEA (Limsi Embodied Agent) . . . . . . . . . . . . . . . . . . . . 316.4 The`me : Les agents assistants . . . . . . . . . . . . . . . . . . . . . . . . . . 316.5 The`me : Les agents conversationnels . . . . . . . . . . . . . . . . . . . . . . 32

    7 ANNEXES 337.1 ANNEXE I : Source du composant JAVA : Coco le compteur . . . . . . . 337.2 ANNEXE II : Source du mode`le de Coco le compteur . . . . . . . . . . . 37

    4

  • 1 Problematique

    1.1 Contexte de Recherche

    Ce stage se place dans le cadre dune collaboration qui demarre entre dune part lethe`me de recherche de Jean-Claude Martin sur les agents conversationnels animes (pro-jets NICE et HUMAINE) et le the`me agents dialogiques de Jean-Paul Sansonnet (projetInterViews et DAFT).La generalisation des services via lInternet ame`ne une nouvelle classe dusagers qui ont desparticularites nouvelles : populations massives, fortement heteroge`nes, non specialistes delinformatique, utilisant les services sporadiquement ; ceci engendre de nouveau besoins surtrois plans principaux : laccueil de lusager (lui donner confiance, sadapter a` son profil),lassistance lorsquil est perdu dans le service, voire lapprentissage lorsquil sagit dinter-action plus durable. Ceci a conduit a` proposer des outils dassistance, allant des simpleshelp on line actuels, dont les resultats sont notoirement decevants, aux tous nouveauxAgents Conversationnels Animes (ACA) qui se donnent pour objectif de combler le fossesemantique/cognitif entre lusager et lapplication. Pour ce faire, deux types detudes ontete menees : dune part sur la notion dagent dialogique, cest-a`-dire des composants lo-giciels capables de raisonner sur leur propre structure et fonctionnement pour repondrea` des requetes (formelles ou, idealement, en langue naturelle) ; et dautre part sur la no-tion dagent anime, cest-a`-dire generalement des personnages utilisant les modalitesverbales et non-verbales de communication humaine qui accompagnent les applications.Cette separation est methodologique car la problematique, dans sa generalite, est tre`scomplexe et les questions a` resoudre ne sont pas de meme nature tant au plan des outilsque des communautes scientifiques concernees (IA et TAL pour la premie`re, IHM et ECIpour la seconde). Nous pensons quil est necessaire de proposer une architecture logiciellegenerique qui permettrait dintegrer les divers outils autour dune meme representationmediateur, en vue de proposer une chane comple`te dagent conversationnel anime. Lepoint central reside dans la definition de la representation mediateur et surtout dans lesrelations quelle etablit avec les outils. Pour donner un exemple de relation, on se pose laquestion de lextraction, a` partir de lapplication, de representations (forcement impar-faites) sur lesquelles les outils dialogiques pourront raisonner : que faudrait t-il idealementextraire ? que peut-on effectivement extraire ? que peut-on attendre de la representationextraite ? etc.

    1.2 Objectifs du stage

    Lobjectif de ce stage est de definir une architecture logicielle de mediateur permettantdintegrer des outils dinterrogation et de controle dans des applications dotees dagentsconversationnel animes (ACA).Nous disposerons donc de trois elements qui devront pouvoir communiquer, se synchro-niser :

    le composant (ici, une application JAVA) le mediateur (module fourni par J.P. Sansonnet)

    5

  • un ACA, dans le cadre du projet : LEA (LIMSI Embodied Agent), fourni par J.C.Martin

    Le travail porte plus particulie`rement sur : Letat de lart et etude des environnements logiciels des agents animes : architectures,langages de specification, langages de controle dagent.

    La proposition dune architecture entre les trois entites de base (le composant effectif,lagent conversationnel anime et le mediateur) incluant la definition des fonctionsdes formats et des protocoles dinterface entre les entites

    Des applications tests utilisant lagent LEA du LIMSI-CNRS .Les applications choisies sont : Coco le compteur : un simple compteur dont la vitesse de decompte est controlable. Le classique jeu des Tours de Hano.

    La representation visuelle des objectifs du stage ci-dessous permettront davoir unevision plus claire du projet :

    Fig. 1 Objectifs du stage : DaftLea

    1.3 Le the`me de recherche ACA : Etat de lart

    1.3.1 Introduction

    Les agents assistants personnels font partie du grand ensemble des agents intelli-gents. Dans notre etude, nous commencerons par decrire ce quest un agent intelligent.Ensuite, nous parlerons des agents conversationnels qui sont des agents intelligents dotes dela possibilite de dialoguer avec leur utilisateur via le Traitement Automatique du LangageNaturel. Enfin, nous decrirons les agents assistants personnels. Ces derniers disposent descompetence de dialogue de lagent conversationnel, mais peuvent aussi executer plusieurs

    6

  • actions pour assister leur utilisateur.

    1.3.2 Les Agents Intelligents

    DefinitionUn agent intelligent a plusieurs definitions possibles : il y a ceux qui les assimilent a`des etre humains, et ceux qui les conside`rent comme de simple programmes. Selon cer-tains chercheurs, un agent est une entite autorisee a` agir au nom de quelquun dautre.concre`tement, un agent est : une entite logicielle possedant des caracteristiques propreset agissant dans le but daccomplir une tache au nom dune autre entite.

    Principe de fonctionnementLes principaux composants de lagent intelligent sont les suivants :

    le moteur correspond a` la representation symbolique de lagent.

    les connaissances representent ce que lagent sait, croit et pense, elles sont stockees dansles librairies

    linterface utilisateur permet detablir une communication entre lagent et lutilisateur.

    Quelques techniques dintelligence artificielle utilisees par les agents

    Syste`mes de recherche (exploration des espaces de recherche), Syste`mes expert, T.A.L.N. (Traitement Automatique des Langues Naturelles), Reconnaissance de pattern, data-mining, Apprentissage automatise, Logique floue...

    7

  • 1.3.3 Les Agents Conversationnel

    DefinitionLidee des agents conversationnels est nee avec le programme ELIZA (programme simulantun psychologue) a` la fin des annees 60. Lagent conversationnel (on dit aussi Chatterbot)est un agent intelligent disposant dun syste`me de dialogue lui permettant detablir unecommunication verbale avec son utilisateur ce qui offre une interaction plus conviviale,naturelle. On entend par dialogue, lutilisation des differents actes de langages tels que :

    une serie de questions/reponses, emettre une opinion/ un commentaire, enoncer des faits, etre declaratif, assertif, expressif...Les agents incarnes (i.e. disposant dune representation virtuelle) permettent en plus

    de la communication verbale, une communication non-verbale (posture, expression du vi-sage) augmentant ainsi la qualite de la conversation.

    Les applicationsIl existe plusieurs domaines dapplications pour les Agents conversationnels. Pour le grandpublic, les agents conversationnels trouvent leur place dans les outils pedagogiques, les jeuxet lassistance personnalisee (ex : aide a` la navigation personnalisee). En ce qui concerneles entreprises, les agents conversationnels touchent differents secteurs comme le marke-ting electronique, la communication entreprise/client. Un agent conversationnel peut, parexemple, accueillir les visiteurs (internautes) 24h/24 ce qui reduit la gestion couteuse desappels telephoniques et des mails. Lagent contribut aussi a` limage de marque de lentre-prise en creant une relation plus humaine et en faisant passer un message aux internautes.(remarque : le chatterbot de CocaCola est considere comme une vraie personne pour 40 a`50% des internautes).

    Etat actuel des recherches, et vision davenirLa technologie utilisee pour les agents conversationnels est aujourdhui assez simple, elleest basee sur la reconnaissance des formes. Cependant, la recherche actuelle nous fournitdes programmes danalyse de texte (phrase) tre`s poussees. Les objectifs actuels de larecherche sont dune part dameliorer la comprehension de texte en offrant la possibilitede traiter nimporte quel texte (domaines varies, types varies) et, dautre part, de fournirdautres moyens de communiquer avec lagent conversationnel (ex : telephone portable).

    1.3.4 Les Agents Assistants Personnels

    DefinitionLagent assistant personnel (IPA : Intelligent Personnal Assistant) est un agent destinea` nous aider dans notre travail quotidien, un peu comme une secretaire virtuelle. Il nousaide a executer des taches, il peut aussi en executer a` notre place. Grace a` cet assistant,lordinateur devient un collaborateur intelligent, actif et surtout personnalise.Les principaux attributs de cet agent sont :

    8

  • Autonomie Il doit etre capable dintervenir sans demande de lutilisateur. Pour cela, ildoit observer les actions de lusager, et reconnatre les taches repetitives pour lesautomatiser. (Apprentissage, plan daction)

    Personnalisation Lagent doit sadapter a` lutilisateur. Au fur et a` mesure de son utili-sation, il doit apprendre les habitudes de lutilisateur (exemple : reperer les the`mesfavoris recherches sur Internet pour laider dans la navigation web et lui proposerdes sites en rapport avec ce the`me), et ainsi adapter son comportement.

    Communication Comme un agent conversationnel, lassistant doit etre capable de tenirun discours avec son utilisateur. La qualite de ce discours est importante : plus lelangage de lagent sera naturel, plus lutilisateur assimilera lagent a` un etre humain.On doit pouvoir communiquer avec lui de plusieurs manie`res (mails, web, interface,telnet, telephone...)

    Competence Il doit etre competent dans son domaine dapplication. Cet attribut joueun role important dans la confiance de lutilisateur vis a` vis du logiciel : Plus lagentest competent, plus lutilisateur aura confiance et plus il lui donnera de taches a`executer.

    Cooperation En cas de necessite ; lagent doit pouvoir cooperer avec dautres agents pourexecuter une tache plus complexe. Actuellement, cette cooperation avec dautresagents reste limitee.

    Il existe differents types dagents assistants :

    les agents semi-autonomes Cest un agent fiable, mais non-competent, lusager doitprogrammer lagent (script) pour quil execute des taches.

    les agents a` bases de connaissances On doit fournir a` lassistant une base de connais-sance comple`te sur ses objectifs et sur son (ou ses) utilisateur(s). Il est cepen-dant capable de reconnatre les plans daction de lutilisateur et de lassister durantlexecution de ces plans. Malheureusement, la conception de ce type dagent demandebeaucoup de travail, notamment pour la creation de la base de connaissance.

    les agents apprenants Ces agents posse`dent une base de connaissance initiale, maissont capable de lenrichir au cours de leur execution. En effet, ces agents observentet imitent les actions de lutilisateur. ils peuvent demander conseil a` dautres agentspour lexecution dune tache complexe. Enfin, lutilisateur peut in...

Recommended

View more >