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 

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

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)