Semantic Service Management for Service-Oriented MAS

Agentes, General, Servicios 2 Comments »

por Elena Del Val

El trabajo de tesis trata sobre cómo construir sistemas de agentes que se relacionan en redes complejas. Los resultados muestran que se pueden construir sistemas descentralizados, sin ningún tipo de control, donde los agentes son capaces de localizar los que necesitan realizando búsquedas activas. Los agentes se agrupan por similaridad (homofilia) y son capaces de adaptarse a cambios en el entorno (cambios en la demanda de los recursos) y también de superar situaciones en las que existan agentes que no colaboren en la tarea de búsqueda de información.

La revisión del estado del arte es complicada porque hay muchas áreas involucradas. Se organiza en torno a 3 preguntas clave:

  1. cómo se estructura la red -> sistemas centralizados, distribuidos y descentralizados
  2. comportamiento ante cambios en el entorno -> sistemas auto-organizados, emergencia
  3. comportamiento ante entidades que no cooperan -> aislamiento e incentivos Los resultados más usados en este campo son los que vienen de la teoría de juegos

El modelo formal del sistema es una red, donde los nodos son agentes u organizaciones complejas (que se ven como una única entidad) y las relaciones existentes entre ellas. Las entidades están definidas a través del conjunto de roles que desempeñan, cada uno de los cuales tiene asociado un conjunto de servicios que modelan qué es lo que el agente sabe hacer.

El caso más simple se produce cuando tenemos un sistema centralizado. Fue el principio de la tesis y en él simplemente se establece un sistema mediado por un Service Facilitator (SF). Se encarga de registrar los servicios de todos los agentes que forman el sistema y de resolver las consultas que se produzcan en el sistema, de forma semejante al rol del UDDI dentro de las plataformas orientadas a servicios. Si no se encuentran servicio adecuado, se trata de descubrir una composición de servicios que se ajuste a las necesidades. Pero esta no es una solución útil para sistemas dinámicos y abiertos, así que se ha optado por una

El primer problema es cómo crear las redes para que se puedan localizar los servicios sin tener un registro central que se encargue de organizar los servicios. Para eso se emplean redes basadas en un concepto llamado homofilia. Básicamente, resume la tendencia de las personas a interactuar con otros que son semejantes a ellos. Empleando esta idea, se crean redes en los que los nodos tienen tendencia a conectarse con otros agentes semejantes a sí mismos. De esta manera se obtiene una red con una estructura de growing network (los agentes se añaden a la red a medida que van llegando), con una distribución exponencial de grado. Una característica interesante es que de esta forma se consiguen redes navegables: es posible localizar un servicio teniendo en cuenta la información de los vecinos exclusivamente (racionalidad acotada). La estructura tienen ciertas características de small-world (caminos cortos e índice de clustering significativo).

Con esta formación, cuando se desea localizar un servicio, si nadie de nuestros contextos lo puede realizar le preguntaremos al vecino más prometedor que trate de localizar a un agente que sí lo proporcione. Para ello simplemente tenemos que localizar cuál de nuestros vecinos se parece lo suficiente al servicio que necesitamos y además se tiene en cuenta su grado (cuanto más conectado esté más probabilidades tendrá de encontrar el servicio que necesitamos). Este proceso se repite hasta que se localiza el servicio deseado. Aunque a priori puede parecer ineficiente tener que hacer un búsqueda cada vez que se necesita algo, en el caso de sistemas dinámicos, la sobrecarga de mantener actualizada la lista de servicios es mucho mayor. Y el problema se agrava si hablamos de sistemas distribuidos en los que los repositorios de servicios están replicados en la red.

Para evaluar el rendimiento, se ha comparado con distintas topología de red (random, scale-free, preferential attachment) y diferentes estrategias de búsqueda (random walk, degree, similaridad y homofilia). Se observa que la navegación por grado en redes de tipo scale-free y la basada en homofilia obtiene resultados simulares (en cuanto a las longitudes de los caminos que necesita en las búsquedas y la tasa de aciertos). Sin embargo, las redes scale-free son mucho más sensibles a sabotajes (provocar el fallo de un nodo muy conectado) y en el caso de las redes con homofilia se consigue una degradación mucho más lenta.

Esta alternativa funciona bien si se conoce la carga del sistema, es decir, si el número y el tipo de servicios que se piden en el sistema no cambia. Pero en el caso de sistemas dinámicos, en los que esta carga del sistema cambia, puede optimizarse el rendimiento del sistema adaptando la estructura de la red. Vamos a tratar de hacerlo también de forma descentralizada: cada agente toda la decisión de forma aislada sin conocer ni consultar el resto de lares, teniendo en cuenta únicamente el tráfico que pasa por él. Se plantean dos estrategias: modificar los enlaces o modificar los propios agentes. Para modificar los enlaces, se considera que éstos tienen una utilidad de decae con el tiempo, de manera que si un enlace no se ha usado durante mucho tiempo (y no es vital para el agente, éste puede decidir eliminarlo y tratar de conectarse con otro nodo. Para eso, mantiene una lista de candidatos a partir de los agentes que ha ido encontrando en la red que utiliza como posibles vecinos alternativos cuando cambia la situación. La segunda posibilidad es que si un nodo detecta que ya no es útil puede

Por último, podemos relajar la asunción de que todos los agentes quieran cooperar. En ese caso, podemos encontrarnos con el caso (muy real) de que agentes decidan no colaborar en la transmisión de las búsquedas. Esto puede afectar gravemente al rendimiento global del sistema, por lo que se trata de buscar una solución a este problema. De nuevo se plantean 2 posibilidades: aislar a los vecinos que no cooperan (ostracismo) o tratar de convencerlos de que cambien de comportamiento. En el primer caso se emplea un mecanismo semejante a la redirección de enlaces.. Se les asocia una utilidad que decae con el tiempo de forma si un agente no colabora de forma reiterada, en helase perderá importancia y finalmente se reemplazará. A la hora de redirigir en enlace, se ha comprobado que proporciona mejores resultados en enlazarse con un nodo semejante al nodo que se ha desconectado (usando el criterio de homofilia). SIn embargo, este mecanismo no funciona bien si el número de agentes que no colaboran es alto o éstos tienen un grado elevado. Por eso se trata de usar mecanismos basados en incentivos para tratar de que los agentes que no colaboran cambien de comportamiento. Los incentivos tratan de premiar el comportamiento de los agentes que colaboran de manera que el resto de agentes funcionen por imitación y adapten su comportamiento a de aquellos vecinos que obtienen mejores beneficios. Esto no garantiza la colaboración y de hecho los resultados son semejantes cuando no hay una masa crítica de agentes que comienzan colaborando. Sin embargo, la combinación de los dos métodos: incentivos para tratar de caminar el comportamiento de agentes y aislamiento cuando no se produce este cambio, permite que emerja un comportamiento general de colaboración incluso cuando el número inicial de agentes que colaboran está muy por debajo de los egoístas (inciso en una proporción de 30-70).

Y con esto acaba la presentación de la tesis. Os dejaré más información sobre los artículos que hemos publicado sobre estos temas

Actualización 8-mar-2013: Ya se puede descargar la tesis desde  http://hdl.handle.net/10251/27556 

Ovamah. Kick off meeting

Agentes, Reuniones Comentarios desactivados en Ovamah. Kick off meeting

Primera reunión del proyecto Ovamah (Organizaciones virtuales adaptativas; mecanismos, arquitecturas y herrameintas), para tratar de identificar puntos comunes entre los nodos y organizar posibles colaboraciones.

La idea del proyecto es desarrollar sistemas que permitan reorganizarse y adaptarse al entorno. La base es el proyecto anterior, Thomas, modificándolo para introducir las posibilidades de apartación en todos los niveles. Participantes: gti-ia (UPV), cetinia (Madrid) y bisite (Salamanca)

NOTA: niveles/estrategias de adaptación

  1. tratar de modificar el entorno para no tener que cambiar
  2. cambiar para adaptarse para el nuevo entorno (*) Ovamah se centra en este aspecto
  3. cambiar de entorno

Empezamos con las tareas transversales en las que estamos todos involucrados. Difusión:

  • página web (gesor de contenidos) y logo para el proyecto. Responsable: UPV
  • presentación inicial del proyecto (slides), aprovechar para plantilla común
  • preparar un workshop "Adaptive V.O.". En principio mejor dejarlo para el segundo año
  • transferencia: posibilidad de relacionarlo con el observatorio Explor3D (demostrador de MMOG)

Coordinación:

  • artículos conjuntos, para 'demostrar' que realmente se colabora en las líneas de trabajo (no es repartir tareas a cada nodo por separado)
  • fomentar estancias (cortas). Bajo demanda
  • reuniones periódicas (al menos una al año), asociada a eventos. Posibilidades: PAAMS (Salamanca), CEDI (Valencia),

Presentación nodo UPV

Trabajo previo con Thomas: arquitectura orientada a servicios, metodología, tecnologías de acuerdos para tomar decisiones. La arquitectura de Thomas va a modificarse para poder ofrecer un comportamiento adaptativo ante cambios en el entorno (cambio de roles, cambio en la estructura...)

Concepto de 'artefacto' como elemento para relacionarse con el entorno. Se está estudiando en cómo usarlos como mecanismos organizativos. La idea es que la organización ofrece un marco normativo más escricto y formal, modelado top-down, mientras que los artefactos se emplean con diseños bottom-up. Ejemplo de artefacto: un semáforo, un panel de inforamción (recursos). ¿Posible implementación con bundles?... para mi son muy parecidos.

NOTA: necesito leer más cosas sobre artefactos (A. Omicini)

Adaptación de normas: estrategias para la emergencia de normas y estrategias de argumentación para este razonamiento. La parte de argumentación se usa en general no sólo para las normas, sino para cualqueir tipo de adaptación: adaptación argumentada, para la argumentación estratégica en sociedades de agentes (largo plazo)

Arquitectura de servicios autoorganizados (como esto es lo mío y estaba hablando lo escriboi luego)

SMA abiertos y regulados: resolver situaciones de conflicto. Contratos para definir los acuerdos. Mecanismos/protocolos de quejas.

Demostrador: MMOG. Arquitectura definida en 3 niveles; (I) un entorno virtual inteligente (IVE) con agentes que controlan los avatares en el mundo virtual; (ii) interfaz con los usuarios (HCI); y (iii) perfiles de usuarios (únicos) que determinan qué pueden hacer denro del sistema (mecanismo de seguridad).

Presentación nodo URJC

Organización y coordinación. Mecanismos para imponer mecanismos deseados: normas, incentivos, provisión de información. Uso de estructuras organizativas para construir modelos de confianza y de trust como fuentes de información, para asignar dinámicamente tareas y roles a los agentes, así como para adaptar la propia estructura organizativa. Otros trabajos relacionados: gestión del tráfico urbano y utilización de mecanismos económicos (subastas, equilibrio....) y de aprendizaje (reinforcement learning).

Negociación y acuerdos. definición de uan arquitectura para construir SMA basados en el concepto de acuerdo. Definición de patrones de acuerso: procesos y protocolos genéricos para acanzar acuerdos entre partes.

Servicios web semánticos: descubrimiento y alineamiento semántico entre los distintos lenguajes empleados para definir servicios

Razonamiento: agentes en ecosistemas de servicios, que permiten explorar servicios de forma activa en el entorno en el que se encuentran (computación ubícua): Asistemas proactivos que proporcionen servicios en agentes inteligentes. Modelos para adaptar el comportamiento de los agentes dentro de SMA normativos. Modelos de Markov para predecir qué ocurre al violar alguna normas y determinar la mejor opción.

Aplicaciones a juegos y videojuegos. Creación de estrategias usando reinforcemente learning y genéticos.

Deostradores: tráfico y gestión de emergencias médicas.

Presentación nodo USAL

Estudio de modelos deliberativos orientados a la reorganización: mecanismos de planificación y replanificación en tiempo de ejecución. Uso en sistemas ubícuos. Modelo centralizado mendiante un coordinador, que construye los planes óptimos para el cumplimiento de las tareas dentro de la organización y asigna a cada agente su tarea. Los agentes son capaces de ejecutar su parte del plan de foram óptima y es el que tiene las capacidades de replanificación.

Adaptación a dispositivos ligeros. Plataforma sylph para redes de sensores, definida sobre la plaforma fusion@ (orientada a servicios). Tecnologías wifi, rfid, cigbit(?)

Estudio de técnicas de simulación social para la reorganización. Aplicación en entornos 3D. De momento, se trata de simular la organización implementada en Thomas dentro de un mundo virtual.

Demostradores: atención doméstica (home care), turismo, gestión/organización/optimización hospitalaria.

Herramientas de desarrollo: diseño y desarrollo de OV

La idea de esta segunda parte es tratar de ver conexiones entre los trabajos de los distintos grupos que hemos ido viendo esta mañana.

Decisiones

  • lista de tópicos sobre adaptación para trabajarlo en cada nodo
  • documento con líneas de trabajo y responsables
  • web del proyecto
  • siguiente reunión durante el PAAMS 2010
  • hmmmm, y creo que me falta una

Definición de agreement

Agreement Comentarios desactivados en Definición de agreement

Dentro de un rato vamos a hablar sobre la definición de agreement (acuerdo). Esto no es lo que vamos a usar, pero me apetecía hacerlo y colgarlo para recordarlo bien. Son cosas que ya habíamos comentado en una reunión en junio de 2009 y que no había escrito en ningún lado, así que casi se me olvida. Menos mal que Antonio copió (y sabe dónde lo tenía, que es más importante) lo que dije entonces.

Así que, para que no me vuelva pasar, os dejo aquí las 5 dimensiones que forman el acuerdo: contexto, participantes, creación, contrato y ejecución. Con cada una de ellas he añadido algunas consideraciones que se me iban ocurriendo. Seguro que ni son todas las que están ni están todas las que son, pero puede ser un comienzo.

Y como slideshare no copia las transiciones, lo dejo en un vídeo. Es sólo un minutín, así que no te aburirás mucho. También puedes descargar la versión en  PDF. Y, como siempre, te recuerdo que cualquier comentario será bien recibido.

(he cambiado el vídeo de sitio porque se cortaba el audio)

Thomas. A Service Oriented Framework for Virtual Organizations

Agentes, Congresos, Herramientas, Servicios Comentarios desactivados en Thomas. A Service Oriented Framework for Virtual Organizations

Es el título de la demo que hemos mandado al AAMAS 2010. Thomas es entorno que permite formar organizaciones virtuales abiertas que pueden evolucionar con el tiempo y permiten a los agentes inteligentes registrarse en ellas e interactuar con el resto de agentes a traves, principalmente, de la invocación de servicios.

Como el vídeo incluye pantallas de la aplicación, se ve mejor en pantalla completa o directamente la versión en HD en vimeo.

Sobre todo, gracias a Elena y a Natalia por el esfuerzo en tenerlo todo listo a tiempo.

Arquitectura Thomas en FIPA

Agentes Comentarios desactivados en Arquitectura Thomas en FIPA

Detrás de un título tan críptico está la publicación de nuestra propuesta de arquitectura abstracta para sistemas multiagente orientados a servicios en entornos abiertos, o Thomas (meThods, thecniques and tools for Open MultiAgent Systems) para los amigos ;-)

FIPA lo ha publicado en su web, así que ya somos un poco más famosos. No en serio, creo que es una propuesta interesante para integrar en la misma plataforma servicios, agentes y organizaciones.

Descargar documento (PDF)

EUMAS07. Session 7 and 8 (and final)

Agentes, Congresos Comentarios desactivados en EUMAS07. Session 7 and 8 (and final)

Well, it's Friday afternoon and these are the latest sessions of EUMAS. None of them are specially interesting for me.

Session 7 is about simulation.
The two first articles are presented by a third person, not by their authors. And the last author hasn't appeared yet. It seems that they are simulated authors too :-D

It begins with an article about simulation with virtual lanes for motorcycles simulation, trough microscopic simulation. The problem of current approaches is that they assume that motorcycles rides in the middle of a lane. I've never seen a cycle been driven like that ;-) and so do they, so they plan a more realistic scene, in which the cycle can change the lanes and uses the road marking as valid paths. That is: they are driven as motorcycles. In their proposal, each vehicle is an agent and the traffic is just an emergent behaviour of the multiagent system. Usually, only road is used, but in cases of dense traffic, all free space is used. This "new" free spaces for cycles are the virtual lanes (VLs). VLs can be authorised or forbidden depending on the position of the rest of vehicles (due to their proximity to the limits of the actual lane).Several rules to model the behaviour of the cycles are proposed (to pass on the left, to drive in the widest lane and so on).They need a deeper validation to compare with real data in the behaviour of traffic conditions and individual driver's behaviour, and to simulate complex situations, as junctions.

Now it's Elena's turn, with the Gus's paper Intelligent Agents in Serious Games. After the introduction, it classifies the different approaches in four types:

  • agent-centered, in which the agent is the main element. Used in cases as virtual population or mimicking human users.
  • abstract agents, where the global systems is the most important and it emerges from the interactions. Examples are polkitical and social act simulation (as wars)
  • agent and network topologies, where the topology of the network is the most important and the agents are merely resources.
  • full approach, a mixture of the three previous approaches.

The problem is that there is not an agent model common for all these approaches so,tachaaaan, we propose our unified agent model for serious game: Spade (see references). A couple of questions, but Elena can't answer them, so they will be redirected to garanda {at} dsic.upv.es X-D

The third author is virtual already, so we've finished.

Session 8. Metodologies and Tools

I've arrived late to the first one, but it sounds a bit rare. I haven't understood their purpose: testing agents for bugs in their codification? I'm not sure.

The second one is about security in mobile agent systems for open environment. Current solutions, as DNS or FIPA-AMS are not usefull. Agent location service requires to be efficient, by dealin with dynamic information and to be scalable, and to be secure. And they are looking for a model that provide transparent location for agents. They've consider several alternatives--(de)centralised, hierarchical/P2P-- The solution is a Fonkey-based location server. The idea is that every information have to be signed. It is a platform to provide secure communications for agent platforms. May be is what we get with Kerberos for Magentix (some how). At the end, he recognises that send packages in DHT is expensive.

Now is Jose Miguel's turn with Magentix. Only sockets can be used to communicate processes in different machines, so the efficiency of communication among agents depends on the efficiency of socket management. Comparing Java with TCP-based pure communication, the former is clearly the loser (obviuos). After that, he continues explaining the Magentix agent platform and its performance. Any questions? Yes. The first one is about the scalability of AMS, because white pages are all replicated in all hosts. Other question is that we're are making platform dependent something that is platform independent. And a pair of questions more. A lot of criticism; I guess that Magentix hasn't convinced.

The last paper is about a methodology called ASEME. The analyse the systems using capabilities and functionalities., The design phase models the intra-agent and inter-agent control. The design phase ends with a platform independent model (PIM) and uses PSMs in the implementation phase (I have to review again our MDA-based proposal). Till now, it is just another methodology. I think that agent community needs a common methodology (as UML for OOP) and its own high level language. I'm bored of different methodologies (our own methodologies are included). Something interesting is the use of statecharts for representing protocols, because its more important to establish the activities that the agent have to do when a message arrives. Furthermore, it can be easily linked with the rest of agent activities.

Some that I have to read is something about SPEM. It seems to be a notation to describe the different phases of a methodology. Maybe it will be interesting for Thomas.

Well, and here finishes the 5th European Conference on Multiagent Systems. I'll summarise the conference in one last post.

Greetings from Hammamet.

Blogged with Flock

WP Theme & Icons by N.Design Studio | Modified by M. Rebollo
RSS Entradas Acceder
Blog logo: MC MECHANIC-HAND FIXING HAND Homage to MC Escher. (c) Shane Willis