Laboratoire dInformatique de Paris 6 Composition de Services
Laboratoire d’Informatique de Paris 6 Composition de Services Web Sémantiques : Conception et réalisation d’une approche basée sur des agents dialogiques Séminaire SMA – 17 mars 2006 Yasmine Charif Yasmine. Charif @ lip 6. fr Nicolas Sabouret Amal El Fallah Seghrouchni Une approche d'agents dialogiques pour la composition de SWS
Contexte et Objectif Recherche de services sur le web WWW Utilisatrices ordinaires Une approche d'agents dialogiques pour la composition de SWS
Contexte et Objectif Plus sérieusement Je voudrais la liste des marques de sèche-cheveux, leurs références, leurs descriptifs, leurs prix et les magasins dans lesquels ils sont vendus à Paris. Et !! Je veux que cette liste soit ordonnée par prix Registre de services web Services publiés in: type in: marque in: référence in: liste référence out: lieu out: livraison in: paramètre out: description out: durée livraison de tri out: prix out: Adresses out: liste triée out: fournisseurs out: Pays Une approche d'agents dialogiques pour la composition de SWS
Contexte et Objectif Problématiques § La décomposition de la requête de l’utilisateur § La découverte et la sélection de services; § Les hétérogénéités technologique, ontologique et pragmatique entre services [Overhage, 02] § Réduire la tâche de l’utilisateur dans la composition : § Composition manuelle : ex. un concepteur décrit un plan de composition et le rend public § Composition semi-automatique : sélection assistée § Composition simple : trouver une séquence de services § Complètement automatisée : (? ? ) §… Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Approches Existantes (1/3) Approches de découverte Personalisation of Service Discovery [Papay et al, 04] Semantic Discovery Service [Mandell et Mc. Ilraith, 03] Using UDDI Improvements [Overhage, 02] Une approche d'agents dialogiques pour la composition de SWS
Approches Existantes (2/3) Approches de composition Composition into Executable Processes [Traverso et Pistore, 04] Interactive Composition using IRS-III [Sell et al, 04] Simulation, Verification and Automated Composition [Narayanan et Mc. Ilraith, 02] WS-CDL [Kavantzas et al, 05] 1. 0 Une approche d'agents dialogiques pour la composition de SWS
Approches Existantes (3/3) Solutions agent pour services Cooperation and Agreement between SWS [Paurobally et al, 05] Business Process Managment System using ADEPT [Jennings et al, 00] Une approche d'agents dialogiques pour la composition de SWS
Approches Existantes Synthèse (+ et – ) Une approche d'agents dialogiques pour la composition de SWS
Revenons à notre objectif L’idée de notre approche Registre de services web Utiliser une approche orientée agents pour la composition de services ! (1) Découverte + Présélection Agent VDL (3) Composition Agent VDL (2) Dialogue + Sélection Agent VDL Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Une architecture SOA orientée agents he de c RPM Définition de Web Services Architecture [Booth et al, 04] : Agent VDL Co uc Agent concret om mu nic ati on Un agent offrant un service Service abstrait Service web Service VDL-XML Ontologie Service Web Une approche d'agents dialogiques pour la composition de SWS « Un service web est vue comme une notion abstraite qui doit être implémentée par un agent concret. L’agent est une entité concrète (logicielle) qui envoie et reçoit des messages, alors que le service est un ensemble de fonctionnalités offertes »
Une architecture SOA orientée agents Registre UDDI de WS L’architecture du système multi-VDL-agents Dialogue (ACL + Protocole d’Interaction) (Modèle de requête VDL) requête Interface HTML réponse Invocation de service (SOAP) Agent VDL Service VDL-XML Agent VDL Ontologie RDF Service Web WSDL SOAP Une approche d'agents dialogiques pour la composition de SWS Agent VDL
Une architecture SOA orientée agents Revenons à nos moutons Question: Comment mettre en pratique cette architecture pour la composition de services ? Début de réponse: Charger les agents de s’occuper de la découverte et de la composition des services appropriés (aux besoins de l’utilisateur) Comment: Mettre en place un protocole d’interaction permettant aux agents de dialoguer. Utiliser ces capacités dialogiques pour : – la sélection de services – répondre à des questions sur les services qu’ils offrent, – prendre des initiatives lorsqu’ils ne sont pas forcément capables de répondre aux requêtes qu’on leur pose. But: répondre à la requête de l’utilisateur Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Les besoins Pour un protocole d’interaction : Besoin d’un ACL Pour un ACL : Besoin d’un langage pour exprimer le contenu Le modèle de requête VDL Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Traitement par défaut des requêtes Principaux rangs d’une requête VDL : requête reçue – ROrder pour exprimer un ordre. – RHow requête à envoyer exécution ou pas pour demander le code d’une action ou ss – RWha pour demander les capacités d’un service – RAssert RAsser sur des actions ou des concepts RAsser sur les capacités de l’agent RAc pour les confirmations – RUnkno pour informer qu’une action ou un concept est inconnu … … Traitement par défaut de quelques rangs de requêtes par le RPM Une approche d'agents dialogiques pour la composition de SWS Agent VDL
Spécifications du protocole d’interaction Les besoins Pour un protocole d’interaction : Besoin d’un ACL L’ACL de VDL Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction L’ACL de VDL § Dans l’interaction agent-agent Envoi de messages (VDLMessage) § Un VDLMessage est caractérisé par l’enveloppe suivante : sender: AID de l’agent émetteur receiver: AID de l’agent récepteur content: est un ensemble de requêtes VDL reply-with: id du message in-reply-to: id du message d’origine reply-to: AID de l’agent à qui répondre Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Traitement des requêtes en général § Dans notre architecture, il y a 2 niveaux de traitement des requêtes / messages reçus : § Niveau RPM : prend en compte le service {état, activité, fonctionnalités} § Niveau MCPM : prend en compte le contexte d’envoi du message {précédents messages échangées, but de l’interaction, autres agents} Pour les besoins du protocole d’interaction: à chaque agent est associée une table regroupant les informations sur ses interactions ℏ est un ensemble d’enregistrement ▼ Chaque ▼i caractérise une interaction i ▼i = ( id, m 0, M, A) Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Le protocole d’interaction Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Une approche d'agents dialogiques pour la composition de SWS
Spécifications du protocole d’interaction Exemple implémenté : : **Dring** <action> Affiche le nom et le numéro de l’appelant <event><ring/></event> <send-message> C’est fait <dest> television </dest> <event> <display> <event-get><ring/></event-get> Enregistre le programme, qui passe </display> sur TF 1, à 14 h 00, le 17/03/06 </event> </send-message> </action> C’est quoi enregistre ? Record ? ? Unknown Mais j’en sais rien moi ! <send-message> : <dest> television </dest> <request> <act> Order </act> <type> order </type> <subject><view/></subject> Process <object> <record> <channel> TF 1 </channel> <time> 2. 00 p. m </time> <date> 17/03/2006 </date> </record> </object> Record <mark>true</mark> ? ? Unknown<date>1</date> </request> </send-message> Enregistre le programme, qui passe sur TF 1, à 14 h 00, le 17/03/06 C’est fait Une approche d'agents dialogiques pour la composition de SWS Process
Spécifications du protocole d’interaction Exemple implémenté Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Découverte et composition de services par des agents dialogiques A faire … § Pour la publication § Génération d’interfaces t. Model et Business. Service à partir des interfaces WSDL et les publier dans un registre UDDI § Pour la découverte § Rajout de paramètres de type « used-actions » , « used-concepts » , « keyword » pour une découverte sémantique des services § Pour la composition § Adapter le protocole d’interaction dans le cadre de services web § Implémentation d’un exemple concret d’agents offrant des services, et retouche sur le protocole d’interaction en fonction des besoins Une approche d'agents dialogiques pour la composition de SWS
Plan 1. 2. 3. 4. 5. Contexte et Objectif Approches existantes Une architecture SOA basée sur des agents Spécifications pour un protocole d’interaction Découverte et composition de services par des agents dialogiques 6. Conclusions et perspectives Une approche d'agents dialogiques pour la composition de SWS
Conclusions et Perspectives Conclusions § Positionnement dans les travaux existants : § de découverte; de composition; de solutions orientées agents pour les services. § Proposition d’une architecture d’agent offrant un service § Implémentation de propriétés interactives § Spécification d’un protocole d’interaction permettant aux agents de « dialoguer » (en perpétuel développement) § Publications : § Y. Charif, N. Sabouret. An Overview of Semantic Web Services Composition Approaches. In Proc. of the Context for Web Services Workshop at the 5 th International and Interdisciplinary Conference on Modeling and Using Context. (CWSContext 2005). Paris, France. § Y. Charif, N. Sabouret. Programmer des agents assistants interopérables dans le web sémantique. Proc. des 3 es Journées francophones des Modèles Formels de l'Interaction. (MFI 2005). Caen, France. § Y. Charif, N. Sabouret. Modèles de composants logiciels réflexifs et dialogiques, In Proc. 12 es Journées de Rencontres interdisciplinaires sur les systèmes complexes naturels et artificiels. (Rochebrune 2005). Megève, France. § Y. Charif, N. Sabouret. A Model of Interactions about Actions for Active and Semantic Web Services, Proc. of the Semantic Web Service Workshop at the 3 rd International Semantic Web Conference (SWS-ISWC 2004), pp. 31 -46. Hiroshima, Japan. Une approche d'agents dialogiques pour la composition de SWS
Conclusions et Perspectives à x terme ! § x = « court » § Implémenter l’accès aux agents à des BD XML § Générer l’interface t. Model et Business. Service pour la publication et la découverte § Adapter le protocole d’interaction pour les services web § x = « moyen » § Implémenter un exemple concret pour tester la composition § Formaliser le protocole d’interaction (AUML ? Réseaux de Pétri ? ? π-calcul ? ? ? ) § Rédiger § x = « long » § Publier les protocoles d’interaction au niveau de l’agent [Quenum, 05] § Introduire des politiques basées sur règles, et des protocoles de sécurité pour gérer le dialogue des agents [Bonatti et al, 04] § Appliquer le protocole d’interaction en Ambient Intelligence / Ubiquitous communication § Travailler sur les requête : décompositions, requêtes imprécises Une approche d'agents dialogiques pour la composition de SWS
- Slides: 30