Semantic Service Management for Service-Oriented MAS

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 

[WI-IAT09] Self-organization and agent-based simulation

A session with short papers, so I have to be ready.
 
Methodologies for self-organising systems: a SPEM approach
Mariachiara Puviani, Giovanna Di Marzo Serugendo, Regina Frei and Giacomo Cabri
 
Late :-( I,m sorry But it seems interesting. Take a look at the paper
 
Self-organization of peers in agent societies
Martin Purvis
 
Goal: to investigate gossip-based mechanism for self-organization of agents divided into groups: Decentralized, scalable and with partial information. The problem domain used is sharing digital goods in electronic societies. Can it work in a decentralized way (without supervisor)?
 
Sharing incurs a cost: the donor have a cost and the receiver receives the benefit. How agents can be "forced" to cooperate and share goods? First 100 iterations, agents play and gossip. After 100 iterations, they can move to other group.
 
Showing results about how groups are finally separated and well-defined. Why are agents leaving a group? (i) tolerance level is met (others do not share enough) or (ii) benefits are not improving.
 
 
An Autonomy-Oriented Paradigm for Self-Organized Computing
Jiming Liu
 
Typical application areas of AOC: hard problems and complex systems. Related work: discrete-time propagation models or immunization strategies for restraining virus spreading (hey, guy, it's a short paper... when are you going to begin?) OK. decentralized search for immunization problem. The entity tries o find the node with the highest degree in its local environment. If these nodes are protected, the virus spreading can be delayed or even stopped. Possitive feedback is used to rapidly discover a good set of high-connected nodes at early stages.
 
 
Simulation of the Rungis Wholesale Market: lessons on the calibration, validation and usage of a Cognitive Agent-based Simulation
Philippe Caillou, Corentin Curchod, and Tiago Baptista
 
Justa paper about how a concrete problem has been solved (simulated) using agents. Not interesting for me. Sorry.
 
 
Silicon Coppélia: Integrating three affect-related models for establishing richer agent interaction
Matthijs Pontier and Ghazanfar Siddiqui

Goal: a robot that could interact with humans (I guess, Because I hardly can hear him... a microphone! good). Emotional models formed by the integration of 3 models: CoMERG, I-PEFiC and EMA. It uses a emotion regulation model (Gross). These approaches models important aspects of human affective behavior, but all of them miss out something important.

Proposal and simulation experiments. Something that wonders me is how utility values are calculated and emotions can be perfectly described just by a number. That's because I don't believe in utility-base models (I can model this as "utili-base models likelihood = -1" :-) Anyway, examples seems very complex and with a sufficient number of variables/parameters.

So they can model things as irrational decision or emotions based on believes quite well. Interesting.
 
 
Transition Process Distinction in Multiagent Organization
Eric Matson

A low-level paper... (hardware related, I mean :-) How organizations can be embedded on physical devices? Over the time, the organization evolves from its initial state untilo it reaches some state of global satisfaction.

All is based on the concept of transition rather than reorganization. Computationally, they ae very different problems. I must read this paper. It sounds interesting and promising. Furthermore, can be useful for our Android agents.
 

Blogged with the Flock Browser