La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Des agents intelligents dans un environnement de communication multimédia : vers la conception de services adaptatifs Romaric CHARTON Directeurs de thèse.

Présentations similaires


Présentation au sujet: "Des agents intelligents dans un environnement de communication multimédia : vers la conception de services adaptatifs Romaric CHARTON Directeurs de thèse."— Transcription de la présentation:

1 Des agents intelligents dans un environnement de communication multimédia : vers la conception de services adaptatifs Romaric CHARTON Directeurs de thèse : Anne BOYER et Jean-Paul HATON Directeur entreprise :Michel LEDERMAN Mardi 2 décembre 2003

2 2/51 Les services de communication multimédia Service :"Ce que l'on fait pour être utile, à titre onéreux ou non" (Larousse 1998). Mon étude : services réalisés sur des supports et réseaux informatiques qui utilisent des médias de communication divers : –le téléphone, –la messagerie électronique, –le web, etc. pour permettre de : –passer une commande en ligne, –rechercher une information, –gérer un portefeuille de titres boursiers, etc.

3 3/51 Positionnement des travaux Fournir des services adaptatifs Théorie des probabilités (Modélisation stochastique) Communication multimédia applications concrètes environnements incertains Nature des services Interactions dans les h-SMA Approche Agent Systèmes Multi-Agents hétérogènes (h- SMA) Acteurs Apprentissage déroulement préférences de l'utilisateur Adaptation Théorie de l'utilité Indices satisfaction coûts Évaluation

4 4/51 Plan de l'exposé Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

5 5/51 Partie 1 - Contexte et problématique Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

6 6/51 Collaboration avec la société DIALOCA Création : octobre 1996 à Paris Domaine : Gestion de la relation client et langage naturel Clients : Danone, Ministère de l'Intérieur, PSA, CNP, TopTrades, etc. Large palette d'applications Multimédia, interactives et grand public –accès au web par téléphone, –support de bornes interactives et de centres d'appels, –gestion de télé-réunions... Plate-forme UniMédia 1

7 7/51 Applications Déroulement d'un service sur la plate-forme UniMédia PMMU Administration 1 Pilotes SGBD Web TéléphoneFaxE-Mail... Moteurs Synthèse de parole Reconnaissance de parole Authentification... E-Nots : notification téléphonique démarrage Expéditeur Destinataire (abonné)

8 8/51 Objectifs de la collaboration Applications existantes (scripts statiques) Objectifs (utiliser des méthodes IA) Faciliter la conception et le déroulement des applications Adapter leur exécution au comportement de l'utilisateur et à ses préférences Plate-forme UniMédia + contrainte : garder l'existant Scripts (automates finis déterministes) Complexité (cas particuliers / erreurs) Modèle implicite et figé de l'utilisateur Besoin de connaissances expertes Services adaptatifs 1 Comportement d'un agent

9 9/51 Environnement Agent Pourquoi une approche agent ? Besoin de propriétés : autonomie prise de décisions communiquer gérer des connaissances gérer des ressources 1 Perceptions Capteurs Actions Effecteurs Comportement Satisfaction Agent à rationalité limitée (Russell et Norvig 1995) comportement utile

10 10/51 Réussite de la tâche accomplie du point de vue du concepteur Un choix classique : Coûts d'utilisation des ressources (propres / détenues par des tiers) U = R - C Réussite de la tâche accomplie du point de vue des utilisateurs Notre choix plus "orienté" vers les services adaptatifs Utilité et évaluation des services Problème : Comment mesurer la satisfaction de l'utilisateur ? Nombreux indices possibles  difficile à définir 1 Approximation : une valeur numérique associée actions de l'utilisateur  Idée que l'agent estime son utilité à partir de ses perceptions des autres...

11 11/51 Systèmes Multi-Agents (Ferber 1995) Un Système Multi-Agent (SMA) Interaction objets Environnement Interaction Coopération Collaboration coordonnée buts compatibles capacités individuelles insuffisantes 1 Réaliser un service de façon collective

12 12/51   ? Langage L A Agent A A quelle heure mon avion part-t-il ? Et si A est un humain ? Communication et hétérogénéité Contrainte : Sachant que A et B ne sont pas "modifiables" Comment faire interagir A et B ? Difficultés de l'interaction Homme-SMA (Grislin-LeSturgeon et Peninou 1998) comment déterminer ce que A veut ? comment prévoir son comportement ? que préfère-t-il ?... 1 Agent B ,  ? Langage L B

13 13/51 Problématique générale 1 Difficultés à prendre en compte Interaction avec des agents humains Applications réelles  environnements incertains Réponse à des besoins industriels Applicative Comment faciliter la conception et le contrôle de services adaptatifs ? Scientifique Comment coordonner un ensemble d'agents hétérogènes pour réaliser coopérativement une tâche ?

14 14/51 Partie 2 - Approche Théorique Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

15 15/51 Environnement physique A P Environnement logiciel A L Les Systèmes Multi-Agents hétérogènes (h-SMA) NNN Agents non-contrôlés A NC Utilisateurs, clients,... Agents contrôlés A C Comparables à UniMédia C C C C P Agents partiellement contrôlés A PC Experts, sites partenaires,... P P P Liens d'interaction Ensemble A d'agents de nature très différente : humains, logiciels, etc. Partition selon la nature des agents et de leur environnement Partition selon l'influence et le degré de connaissance que l'on a sur les agents 2

16 16/51 Une solution au problème de l'hétérogénéité Agent A Besoins Agent B Capacités Agent C Coordinateur Langage L A Langage L B Introduire un agent coordinateur pour amener A et B à coopérer en modifiant leurs interactions. 2 Coordination : colle qui lie des activités (Gelernter et Carriero 1992)

17 17/51 Comment obtenir le comportement du coordinateur ? StatiqueDynamique Monde de l'agent Apprentissage Expériences ou traces Planification Modèle connu explicitement Automates : programmes, scripts, règles, etc. Connaissances implicites du concepteur 2

18 18/51 Debut : SEQ{ send, NULL, "debut.mod", SEQ {PARAMS}, SEQ {BRANCH} }; Etape_Demande : SEQ { getstrings, NULL, "demande.mod", SEQ {PARAMS}, SEQ{ BRANCH, SEQ { ReturnCode, SEQ{"Media_IF_TypeUnknown", Etape_Demande }, SEQ{"Media_UserInactivity", Etape_Demande }} } };... Langage de scénarisation UniMédia D'un coordinateur à base de scripts... 2 Attente Réponse Connue Transmettre question Automate de comportement Demande à traiter Recevoir demande... Échec Analyse FAQ Envoyer réponse Recevoir réponse Abstraction

19 19/51 Attente G 3 : Comportement d'un expert Traiter la demande Recevoir demande... Envoyer réponse Réponse trouvée Expert (A PPC )... à des schémas d'interaction 2 Attente... Besoin Poser question G 1 : Comportement de l'utilisateur Recevoir réponse Utilisateur (A PC ) Attente Réponse Connue Transmettre question G 2 : Comportement du coordinateur Demande à traiter Recevoir demande... Échec Analyse FAQ Envoyer réponse Recevoir réponse Coordinateur (A LC ) Liens d'interaction

20 20/51 Comment structurer les relations ? Organisation : agencement de relations entre composants ou individus qui produit une unité, ou système, dotée de qualités inconnues au niveau des composants ou individus. (Ferber 1995) Structure organisationnelle subordination Rôles ? ? ? Organisation concrète instanciation Endosser un rôle : satisfaire des contraintes sur ses capacités adopter un comportement typique 2

21 21/51 Structures organisationnelles et classes de service S Recherche d'informations et assistance à la navigation SS U C U C U Coordination simple U C UU SSS Télé-réunion T U C S U Traitement intelligent de l'information Diagnostic, filtrage... Rôles génériques U C S T Utilisateur Coordinateur Source Traitement 2

22 22/51 Partie 3 - Les services de recherche d'informations Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

23 23/51 Assistance à la recherche d'information Contraintes : Utilisateurs : occasionnel, novice Sources d'informations : non propriété, coût Objectif : Améliorer la qualité du service fourni par rapport à la recherche classique 3 CoordinateurUtilisateurSource

24 24/51 Fournit trop de résultats, bruits... Ne sait pas formuler sa requête Exemple de problème : le choix d'un vol Client Interaction Souhait : réserver un vol de Paris à Moscou Requête Résultats Coordinateur 3 Source d'informations

25 25/51 Rôle de l'agent coordinateur Ses buts : Construire une requête correspondant le plus au besoin de l'utilisateur Fournir des résultats appropriés à l'utilisateur Maximiser son utilité : –Maximiser la satisfaction de l'utilisateur –Minimiser les coûts liés à la source d'information A tout moment, il peut Poser une question à l'utilisateur au sujet de la requête Envoyer la requête à la source d'information Proposer des résultats à l'utilisateur en nombre limité En retour, il perçoit les réponses des autres agents : valeurs, résultats, sélections, rejets … 3

26 26/51 Problème : Comment obtenir le comportement de coordination adéquat ? Solution proposée : Trouver une stratégie de coordination optimale Coordination et stratégies de coordination Stratégie de coordination : Façon de choisir les actions pour coordonner la suite des interactions. Coordination : Contrôle d'une séquence d'interactions (questions-réponses) Réussie : Sélection d'un résultat Absence de résultat constatée au niveau de la source 3

27 27/51 Caractéristiques du coordinateur Gérer l'incertitude et les connaissances incomplètes Utilisateurs : –Mauvaise compréhension des questions –Connaissance partielle de leurs besoins Environnement : –Bruits pendant la communication –Capteurs imparfaits Proposition : Modéliser la coordination avec un Processus de Décision Markovien Calculer un comportement stochastique de coordination 3

28 28/51 Modèle Stochastique Processus de Décision Markovien (MDP) Décider selon une politique  : S  A  [0;1] s2s2 s0s0 s1s1 –États S={s 0,s 1,s 2 } a0a0 a1a1 a1a1 a0a0 a0a0 a1a1 –Actions A={a 0,a 1 } 0.3 0.7 0.2 0.8 0.4 0.6 0.9 0.1 0.5 –Transition T : S  A  S  [0;1] avec T(s,a,s') = P (s'|s,a) –Récompense R : S  A  S  IR Calculer une stratégie de coordination revient àCalculer une politique stochastique 3 Optimiser la récompense espérée  : Attenuation

29 29/51 Environnement du coordinateur Suite d'interactions (MDP à contrôler) Un MDP pour contrôler les interactions Définir S : L'espace d'états A : Les actions du coordinateur T : Les transitions R : Les récompenses 3 S, R T A Coordinateur Utilisateur Source

30 30/51 Etats : Comment décrire les requêtes et les objets ? Approche de remplissage de formulaire (Goddeau et al. 1996) :  Référentiel construit sur un ensemble d'attributs Ref = { At 1, …, At m } Exemple de référentiel : Départ :{ Londres, Genève, Paris, Berlin, … } Arrivée:{ Pékin, Moscou, New-York, … } Classe :{Première, Affaire, Économique,... } 3

31 31/51 Espace d'états  Coordinateur Utilisateur Source L'ensemble des objets connus qui correspondent à la requête courante  R = { vol 1 ;... ; vol r }  R R 3 La requête partielle courante de l'utilisateur  U = { ( ea 1, val 1 ) ;... ; ( ea m, val m ) } État d'un attribut : Ouvertea = ‘?’ val est inconnue Affectéea = ‘A’ val est affectée Ferméea = ‘F’val est inconnue et ne peut plus être demandée  U U  Espace d'états  =  U   R  U est l'ensemble des requêtes partielles utilisateur  R est l'ensemble des parties des objets de la source d'informations = U R= U R

32 32/51 Abstraction des états (   S) Taille de l'espace d'états  : (2 n +1) (2+i) m –n : nombre total d'objets de la source d'information –m : nombre d'attributs –i : nombre moyen de valeurs par attribut  Taille de l'espace d'états abstrait S : 4  3 m Nombre de réponses 0nr max qr = 0 qr = + qr = * qr = ? Inconnu (vide)  Une idée : une abstraction S de l'espace d'états  pour définir le MDP en conservant :s U  {?, A, F} m l'état d'affectation des m attributs dans  U s R  {?, 0, +, *} la quantité de réponses sur  R 3

33 33/51 Actions du coordinateur Coordinateur UtilisateurSource Requête Interroger la source d'informations Demander à l'utilisateur de sélectionner un résultat ou résultats Poser une question sur un attribut à l'utilisateur Exemple pour la classe de voyage : Valuation :“En quelle classe souhaitez-vous voyager ?” Proposition :“Voulez-vous voyager en classe [affaire] ?” Confirmation :“Êtes-vous sûr de vouloir voyager en classe [économique] ?” Question 3

34 34/51 Récompenses Elles sont obtenues : Coordinateur UtilisateurSource Sélection, déconnexion par l'interaction avec l'utilisateur +R selection l'utilisateur sélectionne une proposition -R timeout l'interaction est trop longue (déconnexion / seuil) Réponses par l'interaction avec la source d'informations +R noresp pas de réponses pour une requête totalement spécifiée -R overnum trop de réponses (quantité de réponses s R = *) 3

35 35/51 Exemple de coordination pour la réservation de vol État  Abstraction sAction du coordinateurRéponsesRécompense Demander ville départParis0 Envoyer la requête1700 vols- R Overnum Demander destinationMoscou0 Demander classe de volNe sait pas0 Envoyer la requête4 vols0 Demander une sélectionSélection 2+ R Sélection CoordinateurUtilisateurSource Légende : 3

36 36/51 Calculer la stratégie de coordination Problème : Deux parties du modèle restent inconnues ! T = f (utilisateur, source d'information) R = f (utilisateur, source d'information)  Apprendre la stratégie de coordination par renforcement 3

37 37/51 Apprentissage par Renforcement (Sutton et Barto 1998) Observation Action Transition 3 Renforcement (récompenses) Système Dynamique Besoin d'une méthode d'apprentissage en ligne  Algorithme du Q-Learning (Watkins 1989) qui fonctionne par la mise à jour de Q-Valeurs (Q : S  A  IR) s Q(s,a) a s' V(s)V(s')

38 38/51 Architecture du coordinateur Module de Décision (Q-Learning) Gestionnaire d'Interactions Module de Représentation (état réel) Agent Utilisateur Agent Source d'Information Questions et résultats Actions sélectionnées Requêtes Récompenses Réponses et sélections Mise à jour Résultats Etat Abstrait Agent Coordinateur 3 Gestionnaire des profils utilisateurs Préférences

39 39/51 Gestion des préférences des utilisateurs Ensemble de profils Prof = { prof 0, prof 1,..., prof n } avec un profil par défaut prof 0 pour les nouveaux utilisateurs. Première Affaire Economique 0,05 0,2 0,75 p(classe) 3 Un profil prof i mémorise, pour chaque attribut At i, la probabilité p ( v k | prof i, At j ) que cet utilisateur préfère la valeur v k est initialisé avec des distributions uniformes est mis à jour à la sélection d'une proposition

40 40/51 Partie 4 -Mise en œuvre Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

41 41/51 UniMédiaModélisation Modélisation d'UniMédia Objectif :Se doter d'un modèle conceptuel pour fournir les services dans les h-SMA Proposition :Une modélisation agent à 4 niveaux Utilisation : sur les services Dialoca pour des applications de l'équipe MAIA (Diatélic, Cycab,...) 4 Service (rôles et classes de service) UCST Applications Agent (nature / contrôlabilité) Moteurs et pilotes Ressource (capteurs / effecteurs) Média (canaux média et "prises")

42 42/51 Implantation de la maquette SmallMu Réalisation : Une bibliothèque fournissant un corps d'agent capable d'accueillir –un cerveau pour le comportement, –des membres pour percevoir et agir. Un ensemble de membres dédiés à l'environnement multimédia : –Reconnaissance et synthèse de parole, –E-Mail, –SMS (émulé) Objectifs : Pouvoir travailler sur un agent logiciel contrôlé reproduisant ou émulant les fonctionnalités nécessaires Utilisation :Prototype de coordinateur pour la réservation de vol 4

43 43/51 Expérimentations sur l'application de réservation de vol Entraînement du coordinateur avec 3 attributs (villes de départ/arrivée et classe) 4 attributs (+ période de la journée de départ) 5 attributs (+ la compagnie aérienne) Nb. d'attributs (m) Nb. états abstraits (4.3 m ) Nb. d'actions (3.m+2) Nb. de Q-Valeurs ((12.m+8).3 m ) 3108 111 188 4324144 536 59721716 524 Croissance de la complexité en fonction du nombre des attributs : 4

44 44/51 Résultats d'apprentissage taux de coordinations réussies 3 et 4 attributs99% de coordinations réussies (proche de l'optimum) 5 attributs90% de réussite (plus de temps nécessaire pour converger) 4

45 45/51 Résultats d'apprentissage longueur moyenne de coordination 3 et 4 attributslongueur minimale de la coordination atteinte 5 attributscoordination plus longue 4

46 46/51 Critique des comportements obtenus 4 Problème : difficulté d'obtenir un corpus de traces d'interaction réelles  utilisation d'un utilisateur simulé avec un comportement naïf Grand nombre d'interactions nécessaires  besoin d'une phase d'apprentissage préalable Constats : + stratégie optimale obtenue / adaptation au comportement simulé - manque de richesse dans les stratégies de coordination Futur : Simulateur d'utilisateurs réels  comportements plus intéressants

47 47/51 Partie 5 – Conclusion et perspectives Contexte et problématique 1 2 3 4 5 Approche théorique Les services de recherche d'informations Mise en œuvre des propositions Conclusion et perspectives

48 48/51 Conclusion 5 Rattachement à un mouvement récent utilisant l'apprentissage par renforcement pour des applications réelles avec des humains. Aspect stratégie de coordination Apports Possibilité d'apprendre ces stratégies par renforcement en utilisant des MDP Réponse aux besoins du plus grand nombre comme du particulier avec les profils Limites Observabilité partielle de l'utilisateur au travers des perceptions de l'agent Baisse des performances pour des tâches plus complexes Aspect modélisation logicielle Apports : Passage à une approche "orientée utilisateur" pour les services Solution incrémentale

49 49/51 Perspectives 5 Pour résoudre des tâches plus complexes –Reformuler l'espace d'états abstrait pour mieux guider le processus dans l'espace réel. –Décomposition hiérarchique (H-MPD et H-POMDP) avec une gestion des dépendances entre les attributs –Passage à plusieurs sources et aux autres classes de services –Composition de services (plusieurs coordinateurs) Utiliser d'autres modèles/méthodes probabilistes : –Apprendre à partir de politiques pré-établies –Apprendre en généralisant le modèle (DynaQ, Classifieurs) –Approche POMDP (Q-learning modifié, Gradient de Baxter)

50 50/51 Références (Ferber 1995) Ferber J., Les Systèmes Multi-Agents. Vers une intelligence collective. Interéditions, 1995. (Gelernter et Carriero 1992) Gelernter D. et Carriero N., Coordination Languages and Their Significance. Communications of the ACM, n°35(2), pp. 96-107, 1992. (Grislin-LeSturgeon et Peninou 1998) Grislin-Le Sturgeon E. et Péninou A., Les interactions Homme-SMA : réflexions et problématiques de conception. Systèmes Multi-Agents de l'interaction à la Socialité. Dans JFIADSMA'98, Hermès, pp. 133-145, 1998. (Goddeau et al. 1996) Goddeau D., Meng H., Polifroni J., Seneff S., Busayapongchaiy S., A Form- Based Dialogue Manager For Spoken Language Applications, In Proceedings of ICSLP'96, Philadelphia, 1996. (Larousse 1998) Le petit Larousse 1998, Larousse-Bordas, 1998. (Russell et Norvig 1995) Russell S. et Norvig P., Artificial Intelligence: A Modern Approach, The Intelligent Agent Book. Prentice Hall Series in Artificial Intelligence, 1995. (Sutton et Barto 1998) R. S. and Barto A. G. Reinforcement Learning: An Introduction. MIT Press Cambridge MA, 1998. (Watkins 1989) Watkins C., Learning from Delayed Rewards. PhD Thesis of the King's College, University of Cambridge, England, 1989. 5

51 Merci de votre attention Avez-vous des questions ?

52 Suppléments

53 53/51 Utilité et évaluation des services Problème : Comment quantifier la satisfaction de l'utilisateur ? Nombreux indices possibles  difficile à définir Un choix classique : U = R - C R = Réussite de la tâche accomplie du point de vue du concepteur C = Coûts d'utilisation des ressources (propres ou détenues par des tiers) Notre choix, moins courant, mais plus "orienté" vers les services adaptatifs : R = Réussite de la tâche accomplie du point de vue des utilisateurs 1 Approximation : une valeur numérique associée actions de l'utilisateur  Idée que l'agent estime son utilité à partir de ses perceptions des autres...

54 54/51 Typologie des Interactions (Ferber 1995) Interaction Coopération Indifférence Antagonisme Encombrement Collaboration simple Collaboration Coordonnée buts compatibles buts incompatibles ressources insuffisantes capacités individuelles insuffisantes 1

55 55/51 Formalisation et interactions Méthodologies et formalismes pour la conception de SMA AOP (Kendall et al. 1999) AUML (Odell et al. 1999) GAIA (Wooldridge et al. 2000) MASE (Wood et DeLoach 2000) TROPOS (Giunchiglia, et al. 2002) RIO (Mathieu et al. 2003)... Langages et protocoles d'interaction Graphes de transition (Winograd et Florès 1986) Langage d'interaction COOL (Barbuceanu et Fox 1995) Réseaux de Pétri (El Fallah-Seghrouchini et al. 1995)... 1

56 56/51 h-SMA : Partitions sur l'ensemble des agents Agents contrôlés A C Agents partiellement contrôlés A PC Agents non contrôlés A NC Agents Logiciels A L Programmes connus Programmes avec lesquels il est possible de communiquer de façon privilégiée Autres agents logiciels Agents Physiques A P Robots et autres équipements asservis Equipements partiellement asservis et éventuellement des collaborateurs humains spécialistes Autres intervenants humains des utilisateurs le concepteur, etc. 2

57 57/51 Fournir un service construire et réaliser un service utile satisfaction à maximiser Objets ressources coûts à minimiser Coordinateur de serviceUtilisateurs Interactions Agents Fournisseurs 2

58 58/51 Rôle et comportement typique Comportement typique associé à un rôle r dans un service sous la forme d'un graphe G = (S,  ), où S : l'ensemble des états {s 0,..., s n } possibles du comportement (abstractions des états réels des agents qui jouent ces rôles).  : transitions du comportement entre deux états (perception, action,...) 2 Schéma d'interaction : Ensemble de graphes de comportements G i = (S i,  i ) reliés entre eux au niveau des états par des liens d'interaction où une transition    i peut provoquer une transition    j. Exemple de lien ( ,  ) :demander de l'aide  réception d'une demande

59 59/51 Planification A partir d'un modèle du monde connu –structure, lois d'évolution, etc. –actions disponibles et leurs effets En fonction –d'un état initial (avec connaissance complète, certaine ou non) –d'un état but (conditions de succès) –des contraintes (temps, autres ressources...) Déterminer un plan a priori (ou en situation) Quelle est la séquence d’actions à réaliser pour atteindre le but ? Types de planification : classique, conditionnelle/probabiliste, réactive, sous contraintes, multi-agent, etc. 2

60 60/51 Un environnement complexe Critères de Wooldridge : Virtuel : capteurs / actionneurs = logiciels Incomplet : vue partielle, locale mais à accès global Indéterministe : effet des actions non garanti Non épisodique : prise en compte de l'historique Très dynamique : marchés, bases de données, Internet Continu : grande latitude d'action 2

61 61/51 Surveillance et correction de service Modèle de normalité Trajectoire observée Système de diagnostic Réparation Risques de problème Observation du modèle de normalité : trajectoires de fonctionnements normaux Observation d'un cas particulier Comparaison au modèle Diagnostic : détection d’anomalies Réparation par planification 2

62 62/51 Correction de trajectoire d'un agent Espace de projection des états possibles de l’agent États dangereux Faisceau de trajectoires normales Trajectoire de correction État courant Trajectoire observée État initial État but, satisfaction Points de reprise 2

63 63/51 Diagnostic et réparation indirecte A1A1 A2A2 A3A3 Anomalie sur A 1  Correction sur le comportement de A2 ou A3 pour ramener A1 dans une bonne trajectoire Observé mais non contrôlé Observé et contrôlé Influence 2

64 64/51 Influences et traces de comportements Dans un déroulement normal, les différents comportements suivis par chaque agent se synchronisent. Une action produite par le comportement d'un agent peut produire un effet sur le comportement d'un autre agent. L’observation des comportements donne des traces de processus, des trajectoires visibles... Utilisables ! 2

65 65/51 Utilisation de l'influence pour réparer Quand on observe une anomalie sur les agents (t-1), on influe par une correction  sur les agents contrôlés. L'effet de  se produit sur les agent contrôlés (t) qui influent à leur tour sur les agents non contrôlés (t+1) Pour un utilisateur, les corrections  doivent l’amener dans un état de satisfaction. 2

66 66/51 Construction progressive de la requête Précision de la requête Nombre d'Interactions Totalement inconnue Partiellement spécifiée Totalement spécifiée Suffisamment spécifiée réponses utiles obtenues interactions "inutiles" un bon compromis 3

67 67/51 Attributs Un attribut At est un triplet où : N est le nom de l'attribut D = { v 1 ;... ; v k } est le domaine des valeurs possibles Q est un ensemble de questions qui peuvent être posées : –demander la valeur de l'attribut –proposer une valeur pour l'attribut, –demander confirmation de la valeur d'attribut. Exemple d'attribut : NomDépart Domaine{Paris, Londres, Rome, Luxembourg, Berlin, Madrid, Genève, Bruxelles} Questions- Valuation :Quelle est votre ville de départ ? - Proposition :Souhaitez vous partir de [ville] ? - Confirmation :Êtes vous sûr de vouloir partir de [ville] ? 3

68 68/51 Ensemble des Actions CodeConditionsDescription de l'actionOrigine des paramètres askvalueea s = '?'Demander à l'utilisateur la valeur de l'attribut At s. - propose ea s  'A' Proposer à l'utilisateur une valeur pour At s. Préférences de l'utilisateur confirmea s = 'A'Demander à l'utilisateur de confirmer la valeur de At s dans la requête s U. Etat de la requête s U rqteqr = '?'Envoyer la requête s U vers la source d'informations. Etat de la requête s U selectqr = '+' ou '*' si la requête est pleinement contrainte Demander à l'utilisateur la sélection d'une entrée dans la liste des résultats Rep Etat des réponses s I 3

69 69/51 Mise à jour de la représentation Comment mettre à jour la représentation des interactions selon les réponses des autres agents ? Quelles sont les observations possibles ? Mise à jour confiée à la fonction Update (   O  Ac   Mise à jour de la requête partielle (au niveau d'un attribut At i ) Mise à jour des résultats d'une requête 3

70 70/51 Mise à jour de l'état d'affectation d'un attribut At i (ea i, val i ) t-1 ac t-1 o t (ea i, val i ) t (A, v)confirmoui(A, v) confirmnspF (A, v)confirmnon? ?askvaluev(A, v) ?askvaluenspF ?propose [v]oui(A, v) ?propose [v]nspF ?propose [v]non? Fpropose [v]oui(A, v) Fpropose [v]nspF Fpropose [v]nonF 3

71 71/51 Observations possibles pour le coordinateur ObservationOrigineAction contexteInterprétation de l'observation une valeurutilisateuraskvalueValeur d'attribut valide donnée par l'utilisateur ouiutilisateurpropose, confirmRéponse positive de l'utilisateur à une demande simple nonutilisateurpropose, confirmRéponse négative de l'utilisateur à une demande simple une tablesource d'informations rqteRésultats donnés par la source d'informations un numéroutilisateurselectL'utilisateur a sélectionné une proposition refusutilisateurselectL'utilisateur a refusé une proposition stoputilisateuraskvalue, propose, confirm, select Arrêt par l'utilisateur (déconnexion) nsputilisateuraskvalue, propose, confirm, select L'utilisateur indique qu'il ne sait pas répondre aberrantutilisateuraskvalue, propose, confirm, select Observation aberrante ou inattendue (ignorée) 3

72 72/51 Treillis d'états abstraits S avec deux attributs 3

73 73/51 Une trace dans l'espace d'états abstraits 1-C : Demander une valeur pour At 1 1-U : je ne sais pas 2-C : Envoyer la requête à la source 2-S : 25 réponses... 4- C : Envoyer la requête à la source 4- S : 3 réponses... 3- C : Demander une valeur pour At 2 3- U : une valeur correcte 0 : Initialisation de l'état 3

74 74/51 Méthode d'Apprentissage par Renforcement Peut être utilisé "en ligne" Q-Learning (Watkins 1989) Q-Learner Environnement s,r a s Q(s,a 0 ) a0a0 a1a1 s' 0 s' n V(s) V(s' 0 ) V(s' n ) Q(s,a 1 ) Q-Valeurs Q : S  A  IR  : Taux d'apprentissage Mise-à-jour (Bellman 57) 3

75 75/51 Q-Learning – Algorithme général 3 récompense r t Transition 2.On reçoit une récompense r t pour cette action et le système évolue vers l'état suivant s t+1 Etat s t+1 Mise à jour Q-valeurs Q(s,a) t+1  (1-   état s t + 1 3.On met à jour l'utilité du choix que l'on a effectué avec la formule Q t+1 (s t,a t ) = (1-  ) Q t (s t, a t ) +  [ r t +  max a'  A Q t (s t + 1, a') ] 4.On recommence au premier point. 1.Depuis l'état courant s t, on sélectionne une action a t Etat s t Sélection d'action action t Q(s,a)

76 76/51 Sélection des actions L'algorithme du Q-Learning n'impose pas de façon pour choisir les actions à effectuer. Besoin d'un compromis Exploitation / Exploration  Fonction de sélection de type Boltzmann Q(a 0 )Q(a 1 )Q(a 2 )Q(a 3 ) 5-43 Exemple pour un état s donné : 3

77 77/51 Profils des utilisateurs Utilisateurs occasionnels  satisfaire le plus grand nombre (profil moyen) fréquents  gestion de profils individuels spécialisés Profil Comportement adapté pour le service Modélisation des préférences 3

78 78/51 Fonctions Génération des récompensesReward :   O  Ac  IR Mise à jour de la représentation Update :   O  Ac   Abstraction de la représentation Abstract :   S Apprentissage et décision Q-Learning :S  IR  A Spécialisation de l'action Specif :A    Prof  Ac Gestion des préférences Prefere :Prof    Prof 3

79 79/51 MDP Architecture Fonctionnelle du Coordinateur Q-Learning Prefere Update Reward Specif Environnement Abstract profil t a t s t r t ac t o t  t t t=t+1 3

80 80/51 Architecture Agent d'UniMédia Media Agent Service Ressource Modélisation des ressources Modélisation des agents Modélisation des services Synthèse vocale Reco vocale ClientCoordinateur Source d'informations 4

81 81/51 Le niveau média  Besoin de s’affranchir de leur spécificité Les canaux médias Vus comme des vecteurs de l’information Caractéristiques variées : –mode de transmission, –topologie, –adressage, –délais de transmission... Hypothèse : Ils offrent des "prises" sur lesquelles les ressources peuvent se positionner 4

82 82/51 Le niveau ressource Proposition d'utiliser des Modèles de Ressource : Abstraction des fonctionnalités (opérateurs : conditions  actions) Description des caractéristiques –Moyens d'accès à la ressource (identification, authentification...) –Moyens de contrôle de la ressource (protocoles / langages utilisés) +Capacité, Coût d’utilisation, Disponibilité, Sécurité, confiance, Fiabilité, robustesse, etc. Définition : Dispositif matériel, une partie logicielle ou corporelle utilisé par l’agent pour réaliser sa tâche de façon interne ou externe dans l’environnement multimédia (au travers des prises et des canaux) Exemple : Les capteurs et effecteurs de l'agent, Des outils de traitement d’information. 4

83 83/51 Descripteurs de ressources XML RESSOURCE –MEDIA TYPE PROTOCOL –OPLIST OPERATOR* –OPNAME –PRECOND* –EFFECT* 4

84 84/51 Descripteur de ressource Treillis d'opérateurs Opérateur universel Opérateur absurde Opérateur réel Opérateur abstrait Opérateur abstrait Opérateur réel classification Opérateur réel 4

85 85/51 Agents intelligents réactifs De nature hétérogène –Humains (clients, télé-opérateurs...) –Logiciels (Agent SGBD, Web...) Contrôlés Partiellement contrôlés (comme des applications tiers) Qui jouent un rôle donné dans le service dont le comportement peut être défini à partir : –De buts et de contraintes assignés –D’un modèle à priori, enrichi d’observations Le niveau agent 4

86 86/51 Le niveau service Représentation par les graphes de service : Schémas d’interaction mettant en œuvre les rôles des agents Vision globale du service Rôle R 1 Rôle R 2 Rôle R 3 4

87 87/51 Implantation du coordinateur Corps d'agent SmallMu Utilisateur Signal audio Moteur de reconnaissance Règles de grammaire JSAPI Pilote Reco Réponses / Activation des règles Signal audio Synthèse de parole Prompts Pilote TTS Prompts à envoyer Base de données Pilote BDD Pont JDBC/ODBC Requêtes / Résultats Module de Décision Q-Learning Gestionnaire d'interactions Gestionnaire de profil utilisateur Gestionnaire de Tâche Bibliothèque de cartographie Profils utilisateurs stockés Description de la tâche Politique apprise "Cerveau" de l'agent Simulateur 4

88 88/51 Quantité de code : Maquette SmallMu et Prototype de Coordinateur Représente environs 12 000 lignes de code en langage Java SmallMu (Noyau)2100 SmallMu (Ressources)3000 Bibliothèques Cartographie et Représentation 3270 Bibliothèques Probabilités et Apprentissage par Renforcement 1730 Modules du Coordinateur2260 4

89 89/51 Résultats d'apprentissage 3-5 attributs (Somme des récompenses / 1000 itérations) 3 attributsForme exponentielle classique 4 attributsCroissance et maximum moins marqués 5 attributsDégradation des performances 4

90 90/51 Démonstration – 3 attributs 4

91 91/51 Démonstration – 5 attributs 4

92 92/51 Apprentissage par Renforcement Jusqu'à présent Apprentissage par renforcement –Optimisation –Robotique mobile –Application à des cas abstraits Mouvement récent : –utilisation dans le cas d'applications réelles avec l'intervention d'humains (Singh & al. 2002) 3

93 93/51 Intégration à Unimédia - 1 Agents A C  Applications (scripts) Agents A PC  Applications Tiers Agents A NC  Utilisateurs Ressources  Pilotes et Moteurs Opérateurs  Modèles 5

94 94/51 Intégration à Unimédia - 2 Agent  Unimédia "Light" Communication inter-agent / médias Besoins : langage, connaissances communes 5

95 95/51 Agent D Agent C Société d'agents média SmallMu C Pilote 1C Pilote 2C Agent B SmallMu B Pilote B1 Pilote B2 Agent A SmallMu A Pilote 1A Pilote 3A SmallMu D Pilote 1D Pilote 2D Pilote 2A 5

96 96/51 Références additionnelles (Barbuceanu et Fox 1995) Barbuceanu M. et Fox M. S., COOL: A language for describing coordination in multiagent systems. In Proceedings of ICMAS'95, 1995. (Chalupsky et al. 1992) Chalupsky H., Finin T., Fritzson R., McKay D., Shapiro S. et Wiederhold G., An overview of KQML: A knowledge query and manipulation language. TR, KQML Advisory Group, April 1992. (El Fallah-Seghrouchini et al. 1999) El Fallah-Seghrouchini A., Haddad S. et Mazouzi H., A Formal study of interaction in Multi-Agent Systems, In Proceedings of CATA'99, Cancun, Mexique, 1999. (Levin et al. 1998) Levin E, Pieraccini R. and Eckert W. Using Markov Decision Process for Learning Dialogue Strategies. In Proceedings of ICASSP'98, Seattle, USA, 1998. (Mathieu et al. 2003) Mathieu P., Routier J.-C. et Secq Y., RIO : Rôles, Interactions et Organisations. Dans MFI'03. Lille, mai, 2003. (Odell et al. 1999) Odell J., Parunak H. V. D., et Bauer B., Extending UML for Agents, In Proceedings of the AOIS Workshop of AAAI 2000, pp. 3-17, Austin, Texas, 2000. (Levin et al. 1998) Levin E, Pieraccini R. and Eckert W. Using Markov Decision Process for Learning Dialogue Strategies. In Proceedings of ICASSP'98, Seattle, USA, 1998. (Mathieu et al. 2003) Mathieu P., Routier J.-C. et Secq Y., RIO : Rôles, Interactions et Organisations. Dans MFI'03. Lille, mai, 2003. (Odell et al. 1999) Odell J., Parunak H. V. D., et Bauer B., Extending UML for Agents, In Proceedings of the AOIS Workshop of AAAI 2000, pp. 3-17, Austin, Texas, 2000. (Singh et al. 2002) Singh S., Litman D., Kearns M. et Walker M., Optimizing dialogue management with Reinforcement Learning: Experiments with the NJFun System. In JAIR, Vol. 16, pp. 105-133, 2002. (Winograd et Florès 1986) Winograd T. et Florès F., Understanding computers and cognition : A new foundation for design. Ablex Publishing Corp, Norwood, New Jersey, 1986 (Young 1999) Young S., Probabilistic Methods in Spoken Dialog Systems. In Royal Society, London, September 1999. 5

97 97/51 Coupures plus largement : e-services (Hewlett Packard), Web services, etc. Fonction de comportement : Situation  Action (commun à tous les agents jouant le même rôle)


Télécharger ppt "Des agents intelligents dans un environnement de communication multimédia : vers la conception de services adaptatifs Romaric CHARTON Directeurs de thèse."

Présentations similaires


Annonces Google