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 

III Jornadas de difusión de las tecnología de agentes

Agentes, Conferencias/Charlas Comentarios desactivados en III Jornadas de difusión de las tecnología de agentes

Los días 30 de junio y 1 de julio se celebraron en la ETSI Informática de la Univ. de Sevilla las III Jornadas científico-técnicas de difusión de las tecnologías de agente. Esta es la tercera edición de estas jornadas, cuyo objetivo es difundir las posibilidades de la tecnología de los agentes y los sistemas multiagente. Si estás por aquí y quieres enterarte de cuál es el estado actual de eta tecnología, qué se puede hacer con ella y sus aplicaciones al mundo real.

Este año me han invitado a participar y hablé sobre agentes en dispositivos con recursos limitados y su uso en aplicaciones de inteligencia ambiental. Al principio estuvimos hablando sobre las características de los dispositivos con recursos limitados, de los cuales los móviles son sólo un ejemplo; redes de sensores, equipamiento para domótica y la mayoría de sistemas empotrados comparten las mismas características y tienen las mismas limitaciones a la hora de abordar procesos de computación complejos y costosos, como suelen ser la mayoría de las técnicas de inteligencia artificial. Muchas de las aplicaciones de estos dispositivos caen dentro del área que se conoce como inteligencia ambiental, y de ella estuvimos hablando un rato, con algunos ejemplos sobre conducción autónoma en la que se integraban todos los aspectos de este campo. Para acabar, comenté algunas plataformas disponibles para poder construir este tipo de sistemas inteligentes.

A continuación tienes disponible las transparencias de la charla. No me gusta mucho cómo ha quedado en slideshare: algunos efectos de transparencias no se han aplicado bien al convertirlo y las cosas están un poco amontonadas, pero bueno, espero que sepas perdonarlo.

AIWS. Web Semántica

Agentes, IARFID Comentarios desactivados en AIWS. Web Semántica

Con un poco de retraso (aquí, en el blog, no el los sitios habituales) os dejo las transparencias de la sesión de web semántica. Después de ver conceptos generales y abstractos (vale, muy abstractos) sonbre ontologías, en esta parte vemos los lenguajes que se emplean para manejar semántica en la web. Básicamente, el DUblin Core y los microformatos como esquemas simples, para pasar a ver las características de RDF y OWL como lenguajes semánticos.

Web Semantica
 

Para ponerlo en práctica, hemos usado Protégé: un programa del Stanford Center for Biomedical Informatics Research que permite la creación de ontologías y puede integrarse con multitud de sistemas. Para practicas, hemos ido siguiendo el tutorial de Matthew Horridge (de la Univ. de Manchester) sobre las pizzas.

AIWS. Introducción a los agentes de información

Agentes, IARFID, Transparencias 16 Comments »

Con este primer tema empezamos las clases del master IARFID, hablando de qué son los agentes en general y de las características particulares de los agentes de la información. A continuación tienes las transparencias de este tema.

Como otros años, para hablar de todo esto sigo utilizando el vídeo Knowledge Navigator, creado por Apple en 1987 (dentro de poco hará 25 años). Todavía hoy sigue habiendo algunas cosas que son irrealizables, especialmente en todo lo que se refiere al procesamiento del lenguaje natural (incluyendo el no verbal). Sin embargo, en cuanto al hardware no van tan desencaminados; incluso está algo por debajo. El dispositivo en sí no es tan diferente de un iPad.

Finalmente, como actividad para realizar hasta la siguiente sesión, tenéis que leer dos artículos: uno de TIm Berners-Lee hablando sobre la web semántica y los agentes y un editorial de la revista IEEE Intelligent Systems

El trabajo a realizar consiste en leerlos y dejar como respuesta a esta anotación vuestra opinión al respecto. No se trata de resumirlo, sino de que os posicionéis respecto a estas opiniones y deis vuestros propios argumentos. No os olvidéis indicar vuestro nombre, ya que esta es una actividad que puntuará para la nota final.




EASSS 2011. Escuela de verano de agentes

Agentes, Educación Comentarios desactivados en EASSS 2011. Escuela de verano de agentes

Este año se celebra la 13 edición de la Escuela de Verano Europea sobre Agentes Inteligentes (EASSS), una buena oportunidad si eres estudiante o acabas de comenzar tu carrera investigadora y quieres profundizar un poco más sobre la tecnología de los agentes junto con estudiantes de otras univeridades y centros de investigación europeos. Está dirigido principalmente a estudiantes de doctorado o de master.

El programa recoge temas como organizaciones de agentes, lógicas de acción, lenguajes de programación para agentes, simulación social o aplicaciones industriales entre otras (consulta el programa completo de EASSS 2011).

El EASSS se celebrará en Girona, del 11 al 15 de julio. El primer plazo de inscripción termina el 31 de mayo y el precio es de 270€ (incluye los materiales y comidas) o de 480€ incluyendo el alojamiento.

Más información en la web de EASSS 2011.

[EUMAS10] J-MADeM v1.0: A full-fledge AgentSpeak(L) multimodal social decision library in Jason

Agentes, Congresos Comentarios desactivados en [EUMAS10] J-MADeM v1.0: A full-fledge AgentSpeak(L) multimodal social decision library in Jason

by Francisco Grimaldo

Trying to produce social intelligent agents that shows an acceptable behaviour in social envinronments. Applied to BDI agents and using an auction model as decision/making mechanism. It seems interesting for us, as the last step for reaching a concrete agreement after an agreement space has been created using a consensus network. And it is implemented over Jason, so we can integrate it in Mgx agents.

The API seems to extend a Jason agent with predicates that can be introducced in the rules. So if we get a network of jason-mgx agents, we can program agents with decision making procedires that maximizes the benefit of a concrete water rights distribution among participants.

An interesting work that can be useful for us. I'll read the paper later

Programación de agentes Jason en mgx/thomas

Agentes, Herramientas Comentarios desactivados en Programación de agentes Jason en mgx/thomas

Jason es un intérprete del lenguaje AgentSpeak (Bordini) para desarrollar agentes BDI.

Básicamente, las preferencias se representan mediante literales, que pueden estar anotados (ej: busy(john)[expires(autum)] ). Algunas anotaciones tienen un uso especial:
  • perceptual [source(perception)]
  • comunicación [source(nombre del agente)]
  • notas mentales [source(self)]
Los objetivos pueden ser
  • achievement goals , son condiciones que se quieren alcanzar y están marcados con !
  • test goals, para comprobar el conocimiento actual (marcado con ?)
Los cursos de acción se establecen mediante planes. Están formados por
  • un evento disparador (cambio en las creencias u objetivos, 6 en total)
  • el cuerpo del plan, formado por acciones sobre el entorno, subobjetivos que se deben alcanzar (achievement goals) y también test goals, notas mentales (modificación de creencias), acciones internas (no modifican el entorno), expresiones y etiquetas de planes
El ciclo de razonamiento es el típico ciclo de BDI (me lo salto).
En cuanto a la ejecución de los planes, es capaz de detectar fallos en el plan cuando alguno de los objetivos no se puede cumplir. Si se han definido acciones correctivas para uno de esos objetivos, se buscan puntos de restauración a partir de los cuales se puedan invocar a las acciones alternativas para tratar de continuar.
Básicamente: se ha hecho un envoltorio que permite ejecutar sobre mgx/thomas agentes programados en Jason.

Consensus Networks as Agreement Mechanism for Autonomous Agents in Water Markets

Agentes, Agreement, Artículos, Congresos Comentarios desactivados en Consensus Networks as Agreement Mechanism for Autonomous Agents in Water Markets

Es el título de nuestro paper en las Jornadas que organiza el $latex im^2$ (Instituto de Matemática Multidisciplinar) de la UPV: Mathematical Models for Addictive Behaviour, Medicine & Engineering. El tema es el uso de redes de consenso para alcanzar acuerdos de forma descentralizada, aplicado en concreto a problemas de gestión de recursos hídricos. A continuación te dejo el resumen (en inglés) y las trasparencias de la presentación. En cuanto esté publicado dejaré también la referencia completa al artículo y, si puedo por temas de licencia, el enlace.

Abstract

The aim of this paper is to present a way of share opinions in a decentralized way by a set of agents that try to achieve an agreement by means of a Consensus Network, allowing them to know beforehand if there is possibilities to achieve such an agreement or not.
The theoretical framework for solving consensus problems in dynamic networks of agents was formally introduced by Olfati-Saber and Murray (2004). The interaction topology of the agents is represented using directed graphs and a consensus means to reach an agreement regarding a certain quantity of interest that depends on the state of all agents in the network. This value represents the variable of interest in our problem.

A consensus network is a dynamic system that evolves in time. Consensus of complete network is reached if and only if $latex x_i = x_j \forall i, j$. Has  been de demonstrated that a convergent and distributed consensus algorithm in discrete-time can be written as follows:

$latex x_i(k+1)=x_i(k) + \varepsilon \sum_{j \in N_i} a_{ij}(x_j(k)-x_i(k))$

where $latex N_i$ denotes the set formed by all nodes connected to the node i (neighbors of i). The collective dynamics of the network for this algorithm can be written as $latex x(k+1)=Px(k)$, where $latex P=I-\varepsilon L$ is the Perron matrix of a graph with parameter $latex \varepsilon$. The algorithm converges to the average (or other functions) of the initial values of the state of each agent and allows computing the average for very large networks via local communication with their neighbors on a graph.
The convergence of this method depends on the topology of the network and its convergence is usually exponential. But sometimes it not needed to reach a final agreement on a concrete value. This proposal uses consensus networks to determine if an agreement is possible among a set of entities. Agents can leave the agreement if its parameters are out of the expected bounds, so the consensus network can be used to detect the candidate agents to be members of the final agreement. All this process is solved in a self-organized way and each individual agent decides to belong or not to the final solution.
To show the validity of the present approach, a water market is presented as case of study. The water market is a case of complex social-ecological system (SES), where centralized and hierarchical approaches trend to fail and self-organized solutions seems to be more sustainable in the long term (Ostrom, 2009). In general, agreements related to natural resource management involve very complex negotiations among agents. Water demands and regulation is a very complex distributed domain appropriated for MAS.
An important question is if this kind of markets requires some regulation or not. From an exclusively economic point of view the dominant strategy for agents in deregulated markets is not cooperative because each agent wants to maximize exclusively his payoff, and therefore they are not interested in the global and socially efficiency of the natural resources.

Adaptación

Agentes, Reuniones Comentarios desactivados en Adaptación

EL proyecto Ovamah se centra en organizaciones virtuales adaptativas, así que empezamos pensando en qué se considera adaptación. Empezamos con unas cuentas definiciones de sistemas biológicos, sistemas formados por humanos. La mayoría de ellas, de V. Dignum

(copiar las definiciones más relevantes para mi y las dos clasificaciones tempraol/intencionado y las 4 maniobras para el cambio

Centrándose en agentes inteligentes, se suele hablar de dos tipos de adaptación en las organizaciones:
autoorganización (enfoque botton-up)
reorganización (adaptación estructural, enfoque top-down). Sergio piensa que nos debemos centrar en eso, pero yo quiero centrarme en el primero, me parece mucho más interesante.

Cuestiones a resolver

  • ¿por qué? Cambio en el entorno (asumimos que no tratamos de modificar el entorno para no tener que cambiar).
  • ¿qué hay que cambiar? cambios estructurales (normas, roles, topología) o cambios funcionales (objetivos, servicios....)
  • ¿quién produce el cambio? el diseñador (humano) o algún componente del sistema (system adapter); ojo, visión centralizada
  • ¿cómo se produce? otra vez basado en utilidad. No creo en esos modelos ¿y si se desa cambiar la función de utilidad o el cambio hace que la función sea inútil?. Problema de cambio de contexto (no se considera)
  1. cambio predefinido: los cambios posibles están pre-programados (*)
  2. cambio controlado: no se sabe cuándo se va a cambiar pero se conoce bajo qué condiciones. Importancia en la monitorización
  3. dirigidos por el 'system adapter':
  4. emergente desde dentro de la propia organización (self-adaption)
  • ¿dónde se cambia? fase de diseño o ent tiempo de ejecución

Acaba comentando las características que debería tener una metodología para diseñar organizaciones adaptativas.

(nota: se habla mucho de los que dicen los dignum ¿hay que respetarlo o tenemos que dar nuestra visión?)

(*) esto no es realmente adaptación, pero creo que debemos saber cómo hacerlo así para saber cómo hay que enseñar a los agente a que se adapten.

Blogged with the Flock Browser

Sistemas socio-ecológicos para la gestión de agua

Agentes, Agreement, Reuniones Comentarios desactivados en Sistemas socio-ecológicos para la gestión de agua

Es lo que voy a contar en ua charla de café, para explicar cómo Islander y Thomas encajan para modelar este tipo de sistemas (SES), aplicados al demostrador mWater, que es el que corresponde a nuestro grupo dentro del proyecto Agreeent Technologies.

Básicamente, he tratado de explicar brevemente las idesas de E. Ostrom, Premio Nobel de Economía del 2009, sobre el modelado de este tipo de sistemas y bajo qué condiciones las iniciativas de autoorganización pueden tener éxito. Juan Freire habla de lo mismo aplicado a urbanismo emergente.

Por si no hay copias  para todos o alguien de lo que no han asistido quiere descargar el documento, os lo dejo disponible aquí. Luego amplio este post para explicar alguna cosa más.

mixto

Y como siempre, cualquier comentario es bienvemido

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