Title: Sesin 9: Infraestructura en Sistemas Multiagente
1Sesión 9Infraestructura en Sistemas Multiagente
- Sistemas Multiagente
- Master Oficial en Tecnologías de la Información y
Sistemas Informáticos - (Curso 2008/2009)
2Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
3Plataformas y Middleware
- Middleware
- Software de conectividad
- Ofrece un conjunto de servicios que hacen posible
el funcionamiento de aplicaciones distribuidas
sobre plataformas heterogéneas - Funciona como una capa de abstracción de software
distribuida, que se sitúa entre las capas de
aplicaciones y las capas inferiores (sistema
operativo y red). - El Middleware nos abstrae de la complejidad y
heterogeneidad de las redes de comunicaciones
subyacentes, así como de los sistemas operativos
y lenguajes de programación, proporcionando una
API para facilitar la programación y manejo de
aplicaciones distribuidas. - Dependiendo del problema a resolver y de las
funciones necesarias, serán útiles diferentes
tipo de servicios de middleware. - Plataforma
- Proporciona un alto nivel de abstracción para el
desarrollo de determinadas aplicaciones - Conjunto de herramientas que facilitan el
desarrollo - API adaptada al dominio de las aplicaciones
4Plataformas y Middleware para sistemas de agentes
- AOP (Agent-Oriented Programing)
- Es un paradigma de programación, no un tipo
especial de aplicación - Por qué plataformas y middleware para agentes?
- Apenas existen lenguajes de programación de
agentes - (Investigación) No ampliamente utilizados y que
abarquen todos los aspectos de los agentes - Apenas existen sistemas operativos de agentes
- (Investigación) No ampliamente utilizados
- Utilización de tecnologías conocidas y que
funcionan - Interoperabilidad entre distintos desarrollos de
agentes
5Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
6Sistemas de agente. Características
7Sistemas multiagente. Características
Entorno
8Sistemas multiagente. Características
Comunicaciones
Organizaciones
Normas
...
9Sistemas multiagente. Posibles tecnologías
Sistemas de recursos distribuidos Sistemas de
fichero en red REST GRID ...
Sistemas distribuidos Máquinas
virtuales Servicios web SSOO
Comunicaciones
- Paso de mensajes, protocolos
- CORBA / MPI
- Mesanjería instantánea
- Servicios web
- ...
- ...
Organizaciones
Jerarquías, flujos de control Organigramas
BLP Estructura ad-hoc
Normas
ACL Descripciones declarativas Lógica
...
10Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
11Plataformas existentes
- Muchos intentos de realizar la plataforma
definitiva - Focalización únicamente en unos pocos aspectos
- Mundo de los agentes demasiado amplio para hacer
una plataforma definitiva - Cada plataforma enfocada a los temas de
investigación de la institución que la desarrolla - Pocos estándares ampliamente aceptados
- FIPA ( http//www.fipa.org )
- Posibilidad de crear sistemas multiagente
utilizando tecnologías no únicamente de agentes - Muchos sistemas existentes podrían considerarse
multiagentes sin que sus creadores los llamen
como tal
12Plataformas existentes. JADE
- Más ampliamente utilizada JADE
- http//jade.tilab.com
- Java Agent DEvelopment Framework
- Middleware máquina virtual de Java
- Plataforma de agentes API escrita en Java
Herramientas - Admite ampliaciones de terceros (Add-ons)
- Se basa en estándar FIPA (http//www.fipa.org/)
- Estandariza
- Comunicaciones entre agentes
- Lenguajes
- Protocolos
- Semántica
- Ciclo de vida del agente
13Plataformas existentes. JADE
14Plataformas existentes JADEX
- JADE Diseño BDI de los agentes
- http//jadex.informatik.uni-hamburg.de
15Plataformas existentes AgentScape
- http//www.iids.org/research/aos
16Plataformas existentes AMELI
- Instituciones electrónicas
- Organizaciones
17Plataformas existentes TuCSon
- TuCSon
- Espacio de tuplas (lógica de primer orden)
- Basado en entornos
18Plataformas existentes AGV
- AGV (Automatic Guided Vehicles)
http//www.jbtc-agv.com/ - Vehículos controlados por agentes
- Entorno virtual que mantiene un mapa
19Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
20Qué no nos ofrecen las plataformas existentes?
!!!! IDEAS !!!!
21Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
22Programando un sistema multiagente
- Procesos previos a arquitectura ...
- Realmente programamos agentes?
- Elección de una arquitectura para el sistema
- Multiagente?
- Entornos?
- Normas?
- Organizaciones?
- Elección de plataforma
- Existe alguna que se adapte?
- Curva de aprendizaje !!!!
- Nivel de abstracción muy alto
- Cada plataforma implementa los sistemas
multiagente de una manera particular - Utilización de muchas tecnologías (de nuevo
niveles de abstracción) - Puesta en funcionamiento
- Están estas plataformas de investigación listas
para entornos en producción?
23Programación de sistemas multiagente
- Qué aspecto tiene un sistema de este estilo?
- Una vista a la estructura de un sistema en
producción PACA - Plataforma de Agentes inteligentes aplicados a la
Corrección Automática - En la asignatura Estructura de Datos y de la
Información - Corrección automática de prácticas de
programación - Informe de evaluación por test y casos de prueba
- Entrega de práctica
24PACA Casos de uso
25PACA Diseño de Ontología
26PACA Interacción de corrección de práctica
- (QUERY-REF
- (iota ?evaluacion
- (and (Corrige
- (corrector Id corrector)
- (practica Id practica2)
- )
- (and
- (secuence
- (set
- (Tests
- (test Id test1)
- (practica Id practica2) ) ) )
- (and
- (secuence
- (set
- (FicheroFuentes
- (test Id ?allTest)
- (fuentesPrograma Nombre fich.adb
Contenido "...) ) ... ) ) - (and
27PACA Diagrama de despliegue
28Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
29Conclusiones
- La tecnología de middleware se ha convertido en
algo necesario para desarrollar sistemas
multiagente - Sistemas heterogéneos (múltiples entidades
desarrolladoras) - Sistemas multiagente
- abstracción conceptual ? necesita de
abstracciones tecnológica - Sistemas que funcionan
- El mundo de los sistemas multiagente es muy
amplios y no existen plataformas universal,
foco en distintos aspectos - Diseño interno del agente
- Comunicaciones
- Normas
- Organizaciones
- Negociación
- Argumentación
- Confianza y reputación
- ...
30Conclusiones
- Se emplean tecnologías de otros campos
- Especialistas en otros campos pueden ser expertos
en sistemas de agentes - Plataforma a elegir según el problema multiagente
a resolver - Deseable plataformas ampliables con distintas
funcionalidades - Al menos tener en común una plataforma y
reutilizar componentes - ... camino a plataforma ideal
- Existen sistemas multiagente que realmente
- Muy pocos en producción
- El futuro podrían ser los agentes ... y ya están
entre nosotros
31Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
32Trabajos propuestos
- Análisis de alguna de las plataformas de agentes
propuesta - Comparativa entre plataformas de agentes
- Modelado de una aplicación adaptada a alguna
plataforma de agentes - Propuestas relacionadas
33Índice
- Plataformas y Middleware
- Qué nos debería ofrecer una plataforma de
agentes? - Plataformas existentes
- Qué no nos ofrecen las plataformas existentes?
- Programando un sistema multiagente
- Conclusiones
- Trabajos propuestos
- Bibliografía
34Bibliografía
- Perspectives for Agent Middleware, Giovanni
Rimassa - Towards Seamless Agent Middleware, Andrea Omicini
y Giovanni Rimassa - Supporting Internet-scale multi-agent systems,
N.J.E. Wijngaards, B.J. Overeinder, M. Van Steen,
F.M.T. Braizer - Agent Platform Evaluation and Comparison, G.
Nguyen, T.T. Dang, L. Hluchy, M. Laclavik, Z.
Balogh, I. Budinska - FIPA - http//www.fipa.org
- JADE - http//jade.tilab.com/
- JADEX - http//jadex.informatik.uni-hamburg.de
- AgentScape - http//www.iids.org/research/aos
- AGV - http//www.jbtc-agv.com/
35Sesión 9 Infraestructura en Sistema Multiagente
Sistemas Multiagente Master Oficial en
Tecnologías de la Información y Sistemas
Informáticos (Curso 2008/2009)