Lenguajes de Comunicación, Protocolos y Plataforma JADE



Documentos relacionados
Marco de trabajo y entorno de desarrollo de Agentes basado en la exposición de Fabio Bellifemine Telecom Italia Lab - Torino (Italy) ETAPS 2001, 7 th

Introducción a JADE Java Agent DEvelopment Framework

JADE (Java Agent DEvelopment Framework) es una plataforma desarrollada íntegramente en Java para la creación de sistemas multi-agente.

Estandar FIPA Foundation for Intelligent Physical Agents

Técnicas Avanzadas de Inteligencia Artificial Curso

Introducción a JADE. Curso Doctorado Sistemas Multi-agente

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

Protocolos de interacción entre agentes (FIPA) Curso de Doctorado Sistemas Multiagente

GUÍA PARA LA CONFIGURACIÓN Y UTILIZACIÓN DE LA IDE DRJAVA

Introducción a los Servicios Web. Ing. José Luis Bugarin ILUMINATIC SAC jbugarin@consultorjava.com

Tutorial de JADE. Programación Orientada a Agentes. Departamento de Ingeniería de la Información y las Comunicaciones Universidad de Murcia

JAVA EE 5. Arquitectura, conceptos y ejemplos.

La netbook puede ser administrada durante su uso en el aula mediante el Software de Gestión del Aula.

Migrar una organización Microsoft Exchange 2003 a Microsoft Exchange 2007

LICITACIÓN N L13045 NUEVO SISTEMA LEY DE TRANSPARENCIA

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Capítulo 4. Implementación del lenguaje multitáctil

Sistema de Mensajería Empresarial para generación Masiva de DTE

Capítulo V. Implementación

PORTAL DE INTEGRACIÓN DE BANCOS DE INFORMACIÓN DISPERSOS A TRAVÉS DE WEB SERVICES Autor: Ing. Walther Antonioli Ravetto

servicios. El API es definido al nivel de código fuente y proporciona el nivel de

MICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I Facultad de Ingeniería, UBA. Junio Cátedra: Pablo Cosso

LABORATORIO DE RC: PRÁCTICA 4: IMPLEMENTACIÓN DE UN CLIENTE DE CORREO

CFGM. Servicios en red. Unidad 5 Servicio FTP. 2º SMR Servicios en Red

Manual de Instalación del Agente de

PROCEDIMIENTO ESPECÍFICO. Código G Edición 0

DESARROLLO DE UN CLIENTE SOFIA2 (KP) SIGUIENDO ARQUITECTURA KP-MODELO

Configuración factura electrónica. construsyc instasyc

DATOS EN SERVIDOR DE RED PROCEDIMIENTO PARA INSTALACIÓN Y CONFIGURACIÓN DE BASES DE DATOS EN SERVIDORES DE RED

PROCEDIMIENTO DE ACCESO Y FOTOCOPIA DE EXPEDIENTES EN PAPEL

5.1 Introducción a Servicios Web

SOFTWARE & SYSTEMS PROCESS ENGINEERING METAMODEL SPECIFICATION V.20 SPEM 2.0

Capitulo III. Diseño del Sistema.

SISTEMA ETAP en línea Estándares Tecnológicos para la Administración Pública

pchelpware, asistencia remota libre

HERRAMIENTA PARA LA ESPECIFICACIÓN DEL ESPACIO DE INTERACCIÓN DE AGENTES DE LA PLATAFORMA CAPNET

Service Oriented Architecture: Con Biztalk?

Desarrollo y simulación de un sistema multiagente para la comunicación de semáforos para encontrar la ruta óptima mediante grafos.

Tutorial como conectarse a una VPN utilizando OpenVPN

GUÍA BÁSICA USUARIO MOODLE 2.6

Capas del Modelo ISO/OSI

Software de Captura y Validación de Información Cambiaria

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

Aspectos Básicos de Networking

Gestión de Procesos de Compra. Documentación Técnico Comercial

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

Unidad II. - Las técnicas en las que se basó, las categorías de análisis o ejes centrales que permiten guiar el proceso de investigación.

2 EL DOCUMENTO DE ESPECIFICACIONES

LANZAMIENTO PROYECTO : INTEGRA Montaje del ERP SIESA Enterprise. Barranquilla - Colombia 2012

MANUAL DE INSTALACIÓN DEL COMPONENTE WEBSIGNER ACTIVEX. Versión 4.0

IBM SPSS Statistics Versión 22. Instrucciones de instalación para Linux (Licencia de usuario autorizado)

POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA

Reglas para lograr reconocimiento por la IATF- 3era edición para ISO/TS 16949:2002 Boletín Técnico No. 5

Pierre ALAUZET Ludovic JEANSON Chama EL-HASSOUNI Agnés LEBON Proyecto Practico de Construcción de un Software

Buscador de Productos basado en Agentes Móviles

Figure 9-1: Phase C: Information Systems Architectures

Hexodus Manual de usuario

Organización. Elaboró: Ing. Ma. Eugenia Macías Ríos

Redes (IS20) Ingeniería Técnica en Informática de Sistemas. CAPÍTULO 8: El nivel de transporte en Internet

Mensajes Electrónicos

METODOLOGÍA PARA LA MEJORA Y DIGITALIZACIÓN DE TRÁMITES. Etapa 1: Diagnóstico Cómo es mi proceso actual?

Objetos educativos y estandarización en e-learning: Experiencias en el sistema <e-aula>

Manual de Instalación. Sistema FECU S.A.

Práctica GESTIÓN Y UTILIZACIÓN DE REDES LOCALES. Curso 2001/2002. TCP/IP: protocolo TCP

pchelpware, asistencia remota libre

Visualizar y descargar contenidos

Gestión de Configuración del Software

Gestión de la Configuración

Quienes Somos? Valor. Estrategia

MANUAL PARA RADICACIÓN Y ADMINISTRACIÓN ELECTRÓNICA DE FACTURAS APLICA PARA PROVEEDORES DEL BSC Y DEMÁS GRUPOS DEL BANCO

Recomendaciones para procesos de integración con Web-Services

ENVÍO DE POR MEDIO DE SMTP

Seminario Electrónico de Soluciones Tecnológicas sobre VPNs de Extranets

O jeto de apre r ndizaje

Modelos de los sistemas distribuidos. Jorge Iván Meza Martínez

SISTEMAS DE INFORMACIÓN II TEORÍA

Alfresco permite su integración y personalización en sistemas de gestión documental para implementar funcionalidades específicas

CSIR2121. Administración de Redes I

DESCARGA E INSTALACIÓN DE LA DOCUMENTACIÓN PARA LAS CLASES DEL API DE JAVA. CONSULTAR EN LOCAL O EN INTERNET? (CU00910C)

Capítulo 5. Cliente-Servidor.

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. IIC1102 Introducción a la Programación

Marco Normativo de IT

SISTEMA InfoSGA Manual de Actualización Mensajeros Radio Worldwide C.A Código Postal 1060

rg.o cm a Espec e i c fica c ci c ó i n ó n d e e r e r q e uer e i r mi m en e tos o l@ rza e b Di D s i e s ño d e b as a e s s s d e d at a o t s

Respuestas a consultas

Introducción a SOA (II) Huibert Aalbers Senior Certified Software IT Architect

Contacto Lespade, Juan Pablo Dirección: Las Heras 490 Luján (B6700ATJ) Buenos aires Argentina Tel:

Educación y capacitación virtual, algo más que una moda

Ministerio de Salud de la Nación

Introducción a la Firma Electrónica en MIDAS

Innovaciones Societs.

INGRESAR CON NÚMERO DE DOCUMENTO Y CONTRASEÑA

Guía de Apoyo Project Web Access. (Jefe de Proyectos)

Implantación. Solicitud Proveedor Solicitud Atendida Destinatario. Contenido. 1. Entradas y salidas. Acta de aprobación SQA Artefactos de software

Haga clic en los recuadros donde indica la mano y regrese al inicio del capítulo al hacer clic en el título de la sección donde se encuentra

M.T.I. Arturo López Saldiña

Transcripción:

Lenguajes de Comunicación, Protocolos y Plataforma JADE UCR ECCI PF-3874 Tecnologías para el Desarrollo de Sistemas Multi-Agente Prof. M.Sc. Kryscia Daviana Ramírez Benavides

FIPA The Foundation for Intelligent Physical Agents Fundación sin fines de lucro fundada en 1995. En la actualidad cuenta con aproximadamente 65 miembros. Misión: Promocionar las tecnologías y la especificaciones de interoperabilidad que faciliten la interconexión de sistemas de agentes inteligentes en ámbitos comercionales e industriales. 2

FIPA The Foundation for Intelligent Physical Agents FIPA define estándares que incluyen: Especificaciones de administración de agentes. Especificaciones de comunicación de agentes. Especificaciones de protocolos de interacción. Propuso el primer estándar en 1997: FIPA97 Ha propuesto desde entonces: FIPA98. FIPA2000. 3

Áreas de Estandarización Comunicación entre agentes Distribución de tareas. Administración de recursos. Agente del usuario Negociación. Soporte al usuario. Administración de perfil. Administración del flujo de trabajo. Administración de agentes Mantenimiento del directorio de agentes con nombres, cualidades, etc. Sistemas de agentes cruzados. Tareas del agente Planificación y ejecución de tareas específicas. Sistemas de software existentes Integración Agente / SW Agent Wrappers. Software heterogéneo. 4

Arquitectura Propuesta Agent Managment Specification: Modelo de referencia de la plataforma de agentes Plataforma Agente AMS DF Canal de Comunicación (ACC) 5

Arquitectura Propuesta (cont.) AMS (Agent Management System): Administra el ciclo de vida, los recursos, los canales de comunicación y un servicio de páginas blancas. DF (Directory Facilitator): Servicio de páginas amarillas. ACC (Agent Communication Channel): Administra el envío de mensajes y administra la migración de agentes. 6

Modelo Conceptual de Comunicación EnvelopeEncodingScheme Envelope 1 istransmittedover 1 TransportProtocol 1 contains ACLEncodingScheme 1..* Message 1 isexpressedin 1 ACL CLEncodingScheme 1 contains 1 Content isexpressedin 1 1 ContentLanguage SL 1 contains 0..* InteractionProtocol Symbol belongsto 1..* 1 Ontology 7

Lenguaje para Comunicación entre Agentes ACL: Agent Communication Language. El paquete ACL define aspectos como: Agente que envía la información. Agente(s) a quien se les envía. Ontología asociada. Actos comunicativos (Estándar). Contenido del mensaje en algún lenguaje de contenido como SL (Semantic Language). 8

Protocolos de FIPA Los Protocolos de Iteración de FIPA (FIPA Interaction Protocols IP) tratará de requisitos con los protocolos de intercambio acordado previamente las páginas de mensajes ACL. En el siguiente link están las especificaciones relativos a IP preliminares, de experimentación y estándar. http://www.fipa.org/repository/ips.php3. 9

Tipos de Mensajes (Actos Comunicativos) accept-proposal not-understood agree propagate cancel propose cfp (call for proposal) proxy confirm query-if disconfirm query-ref failure request inform request-when inform-it request-whenever inform-ref subscribe 10

Actos Comunicativos Accept-proposal: Aceptación de una propuesta para realizar cierta acción. Respuesta a propose. Agree: Acuerdo para realizar cierta acción. Respuesta a request. Cancel: Informa de a un agente que el emisor no tiene intención de que el segundo efectúe cierta acción. Forma parte de un meta-protocolo. 11

Actos Comunicativos (cont.) Call-for-proposal: Pide candidaturas para realizar cierta acción. Inicia procesos de negociación. Confirm: Informa al receptor de que cierta proposición es cierta, siempre que sea cierto que el receptor tiene incertidumbre sobre ella. Disconfirm: El emisor cree en esa proposición, Pretende que el receptor lo crea también, y Cree que el receptor esta incierto sobre ella. Contrario de Confirm. 12

Actos Comunicativos (cont.) Failure: Informa que se intentó cierta acción pero falló. En consecuencia: Inform: El receptor creerá que la acción no se ha hecho, y que la acción es (o era) factible. Informa al receptor de que cierta proposición es cierta. El emisor cree en esa proposición, pretende que el receptor también lo crea, y No sabe si el receptor lo sabe también. 13

Actos Comunicativos (cont.) Inform-if: (macro) Informa al receptor de su creencia o descreencia de cierta proposición. Se resolverá en un inform de la proposición o de su negado, según sea. Inform-ref: Comunica al receptor una descripción referencial de un objeto (p.ej. un nombre). Se conoce como macro, ya que se puede codificar con varios inform bajo la hipótesis de mundo cerrado. 14

Actos Comunicativos (cont.) Not-understood: Informa al receptor que recibió cierta petición de acción pero que no la entendió. Usualmente para indicar que no se entendió un mensaje. Propagate: El receptor recibe un mensaje y además debe propagarlo al resto de la lista de receptores. Propose: Se remite una propuesta para realizar cierta acción bajo ciertas precondiciones. 15

Actos Comunicativos (cont.) Proxy: El emisor quiere que el receptor (broker,...) seleccione agentes objetivo a partir de cierta descripción y les envíe cierto mensaje. Puede contener un reply-to, para indicar otro receptor de la respuesta de los agentes objetivo. Query-if: Pregunta a otro agente si cierta proposición es cierta o no. Query-ref: Pide a otro agente un objeto denotado por cierta expresión referencial. 16

Actos Comunicativos (cont.) Refuse: Acción de rehusar realizar cierta acción y la explicación. Reject-proposal: Acción de rechazar una propuesta para realizar alguna acción durante una negociación. Request: El emisor desea que el receptor realice cierta acción. Un ámbito importante es el caso de pedir al receptor que realice cierto acto comunicativo. 17

Actos Comunicativos (cont.) Request-when: Se desea que el receptor realice cierta acción tan pronto cuando cierta proposición sea cierta Puede cancelarse con cancel. Request-whenever: Igual que request-when pero continuamente. Subscribe: Subscripción a notificaciones de cambios en cierto objeto. Se devuelve el objeto. Puede cancelarse. 18

Ejemplo de Interacción entre Agentes Descripción: Representa una región específica (Puerto Viejo en este caso). Conoce las actividades que se pueden realizar en dicha región. AgentePV Comportamiento: - Preparar respuestas a agente que consulta INFORM (actividad a se realiza en región r) NOT (actividad a se realiza en región r) QUERY-IF (actividad a se realiza en región r) Descripción: Interactúa con el usuario. Usuario hace consultas. AgenteR Comportamientos: -Administrar agente (OnStart, OnEnd, reset, etc.) -Realizar consultas SeRealizaEn (verificar si una actividad se realiza en una región) 19

JADE: Java Agent Devepment Framework Es un middleware para SMA (MAS Multi-Agent System). Implementa una serie de servicios para agentes: Ciclo de vida, páginas blancas, páginas amarillas, transporte y codificación de mensajes. Implementación sigue todos los estándares de FIPA. Está implementado totalmente en JAVA. Es Open Source. 20

host1.it host2.jp host3.us Application Agent Application Agent Application Agent Application Agent Application Agent Application Agent Application Agent Jade distributed Agent Platform Jade Main-container Jade Agent Container Jade Agent Container JRE 1.2 JRE 1.2 JRE 1.2 Network protocol stack 21

Arquitectura de JADE 22

Comunicación entre Plataformas La comunicación entre agentes puede ser: Intra-plataforma. Entre plataformas. Utiliza ACC y protocolos de FIPA para transporte de mensajes. Ambiente en cada plataforma: Diferentes lenguajes. Diferente arquitectura. Servicios comunes. Transporte común. 23

JADE: Herramienta para Desarrollo y Depuración de Agentes Ambiente gráfico facilita desarrollo y depuración: Sniffer Agent. Dummy Agent. Ver ejemplo 24

Instalación de JADE Instalar JADE es muy simple (se necesita tener el JDK 1.4 o 1.5 de JAVA instalado). Descomprimir los archivos del ZIP llamado JADE-all- 4.0.1.zip en una carpeta llamada JADE, en la ruta C:\Archivos de programa. Código fuente. Archivos bin. Documentación. Ejemplos de la Plataforma JADE. 25

Instalación de JADE (cont.) Es importante poner en la variable de entorno CLASSPATH las rutas de los archivo.jar de la carpeta lib de JADE, ya que son archivos necesarios para correr la GUI de JADE y los agentes que se creen, estos archivos son: C:\Archivos de programa\jade\jade\lib\base64.jar; C:\Archivos de programa\jade\jade\lib\http.jar; C:\Archivos de programa\jade\jade\lib\iiop.jar; C:\Archivos de programa\jade\jade\lib\jade.jar; C:\Archivos de programa\jade\jade\lib\jadetools.jar. 26

Instalación de JADE (cont.) 27

Ejecutando JADE 28

JADE Remote Agent Management GUI 29

Instanciación de los Agentes Sniffer y Dummy 30

Agente Sniffer 31

Agente Sniffer y Agentes Dummy 32

Primera Iteración Agente Dummy da0 Agente Dummy da1 33

Segunda Iteración Agente Dummy da0 Agente Dummy da1 34

Agente Sniffer Escuchando Primera iteración Segunda iteración 35

Referencias FIPA: http://www.fipa.org. JADE: http://sharon.cselt.it/projects/jade Bellifemine, Fabio; Caire, Giovanni; Trucco, Tiziana; Rimassa, Giovanni. JADE Programmer s Guide. 2005. http://jade.tilab.com/doc/programmersguide.pdf. Caire, Giovanni. JADE Tutorial: JADE Programming for Beginners. 2003. http://jade.tilab.com/doc/tutorials/jadeprogramming- Tutorial-for-beginners.pdf. 36