Robrecht Haesevoets
Katholieke Universiteit Leuven
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Robrecht Haesevoets.
ACM Transactions on Autonomous and Adaptive Systems | 2010
Danny Weyns; Robrecht Haesevoets; Alexander Helleboogh; Tom Holvoet; Wouter Joosen
One of the major challenges in engineering distributed multiagent systems is the coordination necessary to align the behavior of different agents. Decentralization of control implies a style of coordination in which the agents cooperate as peers with respect to each other and no agent has global control over the system, or global knowledge about the system. The dynamic interactions and collaborations among agents are usually structured and managed by means of roles and organizations. In existing approaches agents typically have a dual responsibility: on the one hand playing roles within the organization, on the other hand managing the life-cycle of the organization itself, for example, setting up the organization and managing organization dynamics. Engineering realistic multiagent systems in which agents encapsulate this dual responsibility is a complex task. In this article, we present a middleware for context-driven dynamic agent organizations. The middleware is part of an integrated approach, called MACODO: Middleware Architecture for COntext-driven Dynamic agent Organizations. The complementary part of the MACODO approach is an organization model that defines abstractions to support application developers in describing dynamic organizations, as described in Weyns et al. [2010]. The MACODO middleware offers the life-cycle management of dynamic organizations as a reusable service separated from the agents, which makes it easier to understand, design, and manage dynamic organizations in multiagent systems. We give a detailed description of the software architecture of the MADOCO middleware. The software architecture describes the essential building blocks of a distributed middleware platform that supports the MACODO organization model. We used the middleware architecture to develop a prototype middleware platform for a traffic monitoring application. We evaluate the MACODO middeware architecture by assessing the adaptability, scalability, and robustness of the prototype platform.
ACM Transactions on Autonomous and Adaptive Systems | 2010
Danny Weyns; Robrecht Haesevoets; Alexander Helleboogh
Todays distributed applications such as sensor networks, mobile multimedia applications, and intelligent transportation systems pose huge engineering challenges. Such systems often comprise different components that interact with each other as peers, as such forming a decentralized system. The system components and collaborations change over time, often in unanticipated ways. Multiagent systems belong to a class of decentralized systems that are known for realizing qualities such as adaptability, robustness, and scalability in such environments. A typical way to structure and manage interactions among agents is by means of organizations. Existing approaches usually endow agents with a dual responsibility: on the one hand agents have to play roles providing the associated functionality in the organization, on the other hand agents are responsible for setting up organizations and managing organization dynamics. Engineering realistic multiagent systems in which agents encapsulate this dual responsibility is a complex task. In this article, we present an organization model for context-driven dynamic agent organizations. The model defines abstractions that support application developers to describe dynamic organizations. The organization model is part of an integrated approach, called MACODO: Middleware Architecture for COntext-driven Dynamic agent Organizations. The complementary part of the MACODO approach is a middleware platform that supports the distributed execution of dynamic organizations specified using the abstractions, as described in Weyns et al. [2009]. In the model, the life-cycle management of dynamic organizations is separated from the agents: organizations are first-class citizens, and their dynamics are governed by laws. The laws specify how changes in the system (e.g., an agent joins an organization) and changes in the context (e.g., information observed in the environment) lead to dynamic reorganizations. As such, the model makes it easier to understand and specify dynamic organizations in multiagent systems, and promotes reusing the life-cycle management of dynamic organizations. The organization model is formally described to specify the semantics of the abstractions, and ensure its type safety. We apply the organization model to specify dynamic organizations for a traffic monitoring application.
ACM Transactions on Software Engineering and Methodology | 2014
Robrecht Haesevoets; Danny Weyns; Tom Holvoet
In todays volatile business environments, collaboration between information systems, both within and across company borders, has become essential to success. An efficient supply chain, for example, requires the collaboration of distributed and heterogeneous systems of multiple companies. Developing such collaborative applications and building the supporting information systems poses several engineering challenges. A key challenge is to manage the ever-growing design complexity. In this article, we argue that software architecture should play a more prominent role in the development of collaborative applications. This can help to better manage design complexity by modularizing collaborations and separating concerns. State-of-the-art solutions, however, often lack proper abstractions for modeling collaborations at architectural level or do not reify these abstractions at detailed design and implementation level. Developers, on the other hand, rely on middleware, business process management, and Web services, techniques that mainly focus on low-level infrastructure. To address the problem of managing the design complexity of collaborative applications, we present Macodo. Macodo consists of three complementary parts: (1) a set of abstractions for modeling adaptive collaborations, (2) a set of architectural views, the main contribution of this article, that reify these abstractions at architectural level, and (3) a proof-of-concept middleware infrastructure that supports the architectural abstractions at design and implementation level. We evaluate the architectural views in a controlled experiment. Results show that the use of Macodo can reduce fault density and design complexity, and improve reuse and productivity. The main contributions of this article are illustrated in a supply chain management case.
Lecture Notes in Computer Science | 2008
Robrecht Haesevoets; Bart Van Eylen; Danny Weyns; Alexander Helleboogh; Tom Holvoet; Wouter Joosen
Organizations are at the heart of multi-agent systems. To deal with the ongoing dynamics and changes in the system, organizations have to adapt. Typically, agents are responsible to deal with the complexity of organization dynamics. In this paper, we present an approach for context-driven dynamic organizations in which the agent environment takes the burden of managing organization dynamics. Driven by the context, the agent environment manages the evolution of organizations and actively advertises roles to the agents, supporting the necessary collaborations between agents needed in the current context. We introduce a conceptual model for context-driven dynamic organizations and present a software architecture that supports the model in a distributed setting. The proposed approach separates the management of dynamic evolution of organizations from the actual functionality provided by the agents playing roles in the organizations. Separating these concerns makes it easier to understand, design, and manage organizations in multi-agent systems. We show how we have applied context-driven dynamic organizations in a concrete case of monitoring traffic jams. In this case, camera agents associated with traffic monitoring cameras collaborate in organizations. Depending on the context, camera agents play different roles, with responsibilities ranging from simple measurement to data aggregation. When a traffic jam covers the viewing range of multiple cameras, organizations are dynamically merged, assuring cameras detecting the same traffic jam can collaborate. Vice versa, when a traffic jam dissolves, the organization is dynamically split up. Test results indicate that context-based dynamic organizations is a promising approach to support decentralized traffic monitoring.
software engineering for adaptive and self managing systems | 2009
Robrecht Haesevoets; Danny Weyns; Tom Holvoet; Wouter Joosen
Multi-agent systems typically consist of autonomous entities, capable of adapting their behavior and interaction patterns in dynamic environments, making them an interesting approach for modeling self-adaptive systems. The interactions among agents, a key challenge in engineering multi-agent systems, are often structured and managed by means of organizations.
software engineering for adaptive and self managing systems | 2008
Danny Weyns; Robrecht Haesevoets; Bart Van Eylen; Alexander Helleboogh; Tom Holvoet; Wouter Joosen
Self-management is considered as one of the crucial means for software systems to deal with changing demands at runtime. Self-management endows a software systems with the ability to adapt its structure or behavior without human intervention. Two different approaches are put forward for self-management: (1) the system components adapt their structure or behavior to changing requirements and cooperatively realize system adaptation - this approach can be considered as endogenous self-management; (2) the system is adapted through a control loop, i.e. the system is monitored to maintain an explicit representation of the system and based on a set of high-level objectives, the system structure or its behavior is adapted - this approach can be considered as exogenous self-management. In this paper, we introduce a hybrid software architecture that combines both approaches. A multi-agent system architecture allows agents to flexibly adapt their behavior to changes in their context providing cooperative system adaptation. Then, we extend the multi-agent system architecture with a decentralized control loop adding self-healing properties to the system. We use intelligent monitoring of traffic jams as an illustrative case.
AOSE'10 Proceedings of the 11th international conference on Agent-oriented software engineering | 2010
Robrecht Haesevoets; Danny Weyns; Mario Henrique Cruz Torres; Alexander Helleboogh; Tom Holvoet; Wouter Joosen
To support the complex coordination activities involved in supply chain management, more and more companies have autonomous software agents acting on their behalf. Due to confidentiality concerns, such as hiding sensitive information from competitors, agents typically only have a local view on the supply chain. In many situations, however, companies would like to expand the view of their agents to share valuable information such as transportation tracking and service delays. Non of the participating companies, however, has enough knowledge or authority to realize such interactions in a controlled manner. In this paper, we present an organization middleware that offers a collaboration platform and enables agents to interact across the boundary of local interactions. Policies and laws enable companies to define the scope of interactions of their agents and the restrictions on their exposed information. Using Alloy, we formally define the relation between the interactions offered by the middleware, the exposed information and the provided policies and laws. This allows us to guarantee a number properties which are of particular interest to companies using the middleware.
self-adaptive and self-organizing systems | 2008
Robrecht Haesevoets; Danny Weyns; Tom Holvoet; Wouter Joosen; Paul Valckenaers
The use of floating car data is an interesting method to monitor traffic. Vehicles act as local traffic sensors and data from individual vehicles is aggregated into higher-level information. We propose a number of reusable organization abstractions and a software architecture to support a multi-agent approach applied to floating car data. The abstractions are based on the idea of hierarchical organizations which are used as units of data aggregation. In this approach, an agent is deployed on each vehicle. At the lowest level, nearby vehicle agents collaborate to aggregate individual traffic data and distribute it to local clients such as traffic light controllers. At higher-levels, organizations are built up from lower-level organizations and represent specific aggregation interests such as the total congestion level in a specific area. A prototype was built, supporting a two-level organization structure, and is used in a simulated traffic environment as initial validation.
international conference on mobile and ubiquitous systems: networking and services | 2012
Mario Henrique Cruz Torres; Robrecht Haesevoets; Tom Holvoet
The advent of mobile devices, such as smartphones and tablets, and their integration with cloud computing is turning ubiquitous computing into reality. This ubiquity opens doors to innovative applications, where mobile devices collaborate on behalf of their users. Applications that leverage this new paradigm, however, have yet to reach the market. One of the reasons is due to the inherent complexity of developing such collaborative applications on mobile devices.
working ieee/ifip conference on software architecture | 2009
Robrecht Haesevoets; Eddy Truyen; Tom Holvoet; Wouter Joosen
Self-adaptive systems are systems that are able to autonomously adapt to changing circumstances without human intervention. A number of frameworks exist that can ease the design and development of such systems by providing a generic architecture that can be reused across multiple application domains. In this paper, we study the applicability of aspect-oriented programming (AOP) to see where and how AOP can provide an interesting alternative for implementing parts of the architecture of self-adaptive frameworks. In particular, we relate two existing self-adaptive frameworks to the body of work on aspect-oriented programming techniques for self-adaptation. We present an aspect-oriented architecture for self-adaptive systems to show how AOP can be used for framework customization, event brokering and event aggregation. The potential of AOP for efficiency is shown by evaluating the architecture in a case study on decentralized traffic monitoring. Finally, we explore the potential and challenges of AOP for building scalable and decentralized self-adaptive systems.