TRAMMAS: Enhancing Communication in Multiagent Systems

[EN] Over the last years, multiagent systems have been proven to be a powerful and versatile paradigm, with a big potential when it comes to solving complex problems in dynamic and distributed environments, due to their flexible and adaptive behavior. This potential does not only come from the individual features of agents (such as autonomy, reactivity or reasoning power), but also to their capability to communicate, cooperate and coordinate in order to fulfill their goals. In fact, it is this social behavior what makes multiagent systems so powerful, much more than the individual capabilities of agents. The social behavior of multiagent systems is usually developed by means of high level abstractions, protocols and languages, which normally rely on (or at least, benefit from) agents being able to communicate and interact indirectly. However, in the development process, such high level concepts habitually become weakly supported, with mechanisms such as traditional messaging, massive broadcasting, blackboard systems or ad hoc solutions. This lack of an appropriate way to support indirect communication in actual multiagent systems compromises their potential. This PhD thesis proposes the use of event tracing as a flexible, effective and efficient support for indirect interaction and communication in multiagent systems. The main contribution of this thesis is TRAMMAS, a generic, abstract model for event tracing support in multiagent systems. The model allows all entities in the system to share their information as trace events, so that any other entity which require this information is able to receive it. Along with the model, the thesis also presents an abstract architecture, which redefines the model in terms of a set of tracing facilities that can be then easily incorporated to an actual multiagent platform. This architecture follows a service-oriented approach, so that the tracing facilities are provided in the same way than other traditional services offered by the platform. In this way, event tracing can be considered as an additional information provider for entities in the multiagent system, and as such, it can be integrated from the earliest stages of the development process. [ES] A lo largo de los ultimos anos, los sistemas multiagente han demostrado ser un paradigma potente y versatil, con un gran potencial a la hora de resolver problemas complejos en entornos dinamicos y distribuidos, gracias a su comportamiento flexible y adaptativo. Este potencial no es debido unicamente a las caracteristicas individuales de los agentes (como son su autonomia, y su capacidades de reaccion y de razonamiento), sino que tambien se debe a su capacidad de comunicacion y cooperacion a la hora de conseguir sus objetivos. De hecho, por encima de la capacidad individual de los agentes, es este comportamiento social el que dota de potencial a los sistemas multiagente. El comportamiento social de los sistemas multiagente suele desarrollarse empleando abstracciones, protocolos y lenguajes de alto nivel, los cuales, a su vez, se basan normalmente en la capacidad para comunicarse e interactuar de manera indirecta de los agentes (o como minimo, se benefician en gran medida de dicha capacidad). Sin embargo, en el proceso de desarrollo software, estos conceptos de alto nivel son soportados habitualmente de manera debil, mediante mecanismos como la mensajeria tradicional, la difusion masiva, o el uso de pizarras, o mediante soluciones totalmente ad hoc. Esta carencia de un soporte generico y apropiado para la comunicacion indirecta en los sistemas multiagente reales compromete su potencial. Esta tesis doctoral propone el uso del trazado de eventos como un soporte flexible, efectivo y eficiente para la comunicacion indirecta en sistemas multiagente. La principal contribucion de esta tesis es TRAMMAS, un modelo generico y abstracto para dar soporte al trazado de eventos en sistemas multiagente. El modelo permite a cualquier entidad del sistema compartir su informacion en forma de eventos de traza, de tal manera que cualquier otra entidad que requiera esta informacion sea capaz de recibirla. Junto con el modelo, la tesis tambien presenta una arquitectura {abs}{trac}{ta}, que redefine el modelo como un conjunto de funcionalidades que pueden ser facilmente incorporadas a una plataforma multiagente real. Esta arquitectura sigue un enfoque orientado a servicios, de modo que las funcionalidades de traza son ofrecidas por parte de la plataforma de manera similar a los servicios tradicionales. De esta forma, el trazado de eventos puede ser considerado como una fuente adicional de informacion para las entidades del sistema multiagente y, como tal, puede integrarse en el proceso de desarrollo software desde sus primeras etapas. [CAT] Al llarg dels ultims anys, els sistemes multiagent han demostrat ser un paradigma potent i versatil, amb un gran potencial a l'hora de resoldre problemes complexes a entorns dinamics i distribuits, gracies al seu comportament flexible i adaptatiu. Aquest potencial no es nomes degut a les caracteristiques individuals dels agents (com son la seua autonomia, i les capacitats de reaccio i raonament), sino tambe a la seua capacitat de comunicacio i cooperacio a l'hora d'aconseguir els seus objectius. De fet, per damunt de la capacitat individual dels agents, es aquest comportament social el que dona potencial als sistemes multiagent. El comportament social dels sistemes multiagent solen desenvolupar-se utilitzant abstraccions, protocols i llenguatges d'alt nivell, els quals, al seu torn, es basen normalment a la capacitat dels agents de comunicar-se i interactuar de manera indirecta (o com a minim, es beneficien en gran mesura d'aquesta capacitat). Tanmateix, al proces de desenvolupament software, aquests conceptes d'alt nivell son suportats habitualment d'una manera debil, mitjancant mecanismes com la missatgeria tradicional, la difusio massiva o l'us de pissarres, o mitjancant solucions totalment ad hoc. Aquesta carencia d'un suport generic i apropiat per a la comunicacio indirecta als sistemes multiagent reals compromet el seu potencial. Aquesta tesi doctoral proposa l'us del tracat d'esdeveniments com un suport flexible, efectiu i eficient per a la comunicacio indirecta a sistemes multiagent. La principal contribucio d'aquesta tesi es TRAMMAS, un model generic i abstracte per a donar suport al tracat d'esdeveniments a sistemes multiagent. El model permet a qualsevol entitat del sistema compartir la seua informacio amb la forma d'esdeveniments de traca, de tal forma que qualsevol altra entitat que necessite aquesta informacio siga capac de rebre-la. Junt amb el model, la tesi tambe presenta una arquitectura abstracta, que redefineix el model com un conjunt de funcionalitats que poden ser facilment incorporades a una plataforma multiagent real. Aquesta arquitectura segueix un enfoc orientat a serveis, de manera que les funcionalitats de traca son oferides per part de la plataforma de manera similar als serveis tradicionals. D'aquesta manera, el tracat d'esdeveniments pot ser considerat com una font addicional d'informacio per a les entitats del sistema multiagent, i com a tal, pot integrar-se al proces de desenvolupament software des de les seues primeres etapes.