18
Inf Syst Front (2014) 16:239–256 DOI 10.1007/s10796-013-9478-x An adaptive framework for monitoring agent organizations Juan M. Alberola · Luis B ´ urdalo · Vicente Juli´ an · Andr´ es Terrasa · Ana Garc´ ıa-Fornes Published online: 27 December 2013 © Springer Science+Business Media New York 2013 Abstract Multiagent technologies are usually considered to be suitable for constructing agent organizations that are capable of running in dynamic and distributed environments and that are able to adapt to changes as the system runs. The necessary condition for this adaptation ability is to make agents aware of significant changes in both the envi- ronment and the organization. This paper presents mecha- nism, which helps agents detecting adaptation requirements dynamically at run time, and an Trace&Trigger, which is an adaptation framework for agent organizations. It consists of an event-tracing-based monitoring mechanism that pro- vides organizational agents with information related to the costs and benefits of carrying out an adaptation process at each moment of the execution. This framework intends to overcome some of the problems that are present in other approaches by allowing the dynamic specification of the information that has to be retrieved by each agent at each moment for adaptation deliberation, avoiding the transfer- J. M. Alberola · L. B ´ urdalo () · V. Juli´ an · A. Terrasa · A. Garc´ ıa-Fornes Departament de Sistemes Inform` atics i Computaci´ o, Universitat Polit` ecnica de Val` encia, Cam´ ı de Vera s/n. 46022, Val` encia, Spain e-mail: [email protected] J. M. Alberola e-mail: [email protected] V. Juli´ an e-mail: [email protected] A. Terrasa e-mail: [email protected] A. Garc´ ıa-Fornes e-mail: [email protected] ence of useless information for adaptation deliberation. This framework has been integrated in the Magentix2 multiagent platform. In order to test its performance benefits for any agent organization, an example based on a market scenario is also presented. Keywords Monitoring · Organization · Adaptation · Events 1 Introduction Nowadays, one of the goals of multiagent systems is to con- struct systems that are capable of autonomous and flexible decision-making and that can cooperate with other entities within a society. In these scenarios, dynamic agent orga- nizations that are able of adjusting themselves in order to gain advantage in their current environments are likely to become increasingly important (Luck et al. 2005). Similar to the needs of human organizations (Deokar and El-Gayar 2011), dynamic agent organizations have to modify/adapt their structure and behavior by adding, removing, or substi- tuting components while the system is running and without bringing it all down. As pointed out by Dignum et al. in (2004), in these cases, the changes in the environment of agents are the ones that trigger reorganization, and, thus, this dynamic adaptation requires that systems be able to evalu- ate their own health in order to find out when an adaptation is needed. Being able to monitor an agent organization is important in order to determine why and when an organi- zation needs to be adapted. According to Guessoum et al. (2004), monitoring is essential in order to be able to detect undesirable behavior that needs to be corrected. However, detecting these changes in the environment is not trivial.

An adaptive framework for monitoring agent organizations

  • Upload
    ana

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256DOI 10.1007/s10796-013-9478-x

An adaptive framework for monitoring agent organizations

Juan M. Alberola · Luis Burdalo · Vicente Julian ·Andres Terrasa · Ana Garcıa-Fornes

Published online: 27 December 2013© Springer Science+Business Media New York 2013

Abstract Multiagent technologies are usually consideredto be suitable for constructing agent organizations that arecapable of running in dynamic and distributed environmentsand that are able to adapt to changes as the system runs.The necessary condition for this adaptation ability is tomake agents aware of significant changes in both the envi-ronment and the organization. This paper presents mecha-nism, which helps agents detecting adaptation requirementsdynamically at run time, and an Trace&Trigger, which isan adaptation framework for agent organizations. It consistsof an event-tracing-based monitoring mechanism that pro-vides organizational agents with information related to thecosts and benefits of carrying out an adaptation process ateach moment of the execution. This framework intends toovercome some of the problems that are present in otherapproaches by allowing the dynamic specification of theinformation that has to be retrieved by each agent at eachmoment for adaptation deliberation, avoiding the transfer-

J. M. Alberola · L. Burdalo (�) · V. Julian · A. Terrasa ·A. Garcıa-FornesDepartament de Sistemes Informatics i Computacio,Universitat Politecnica de Valencia, Camı de Vera s/n.46022, Valencia, Spaine-mail: [email protected]

J. M. Alberolae-mail: [email protected]

V. Juliane-mail: [email protected]

A. Terrasae-mail: [email protected]

A. Garcıa-Fornese-mail: [email protected]

ence of useless information for adaptation deliberation. Thisframework has been integrated in the Magentix2 multiagentplatform. In order to test its performance benefits for anyagent organization, an example based on a market scenariois also presented.

Keywords Monitoring · Organization · Adaptation ·Events

1 Introduction

Nowadays, one of the goals of multiagent systems is to con-struct systems that are capable of autonomous and flexibledecision-making and that can cooperate with other entitieswithin a society. In these scenarios, dynamic agent orga-nizations that are able of adjusting themselves in order togain advantage in their current environments are likely tobecome increasingly important (Luck et al. 2005). Similarto the needs of human organizations (Deokar and El-Gayar2011), dynamic agent organizations have to modify/adapttheir structure and behavior by adding, removing, or substi-tuting components while the system is running and withoutbringing it all down. As pointed out by Dignum et al. in(2004), in these cases, the changes in the environment ofagents are the ones that trigger reorganization, and, thus, thisdynamic adaptation requires that systems be able to evalu-ate their own health in order to find out when an adaptationis needed. Being able to monitor an agent organization isimportant in order to determine why and when an organi-zation needs to be adapted. According to Guessoum et al.(2004), monitoring is essential in order to be able to detectundesirable behavior that needs to be corrected. However,detecting these changes in the environment is not trivial.

Page 2: An adaptive framework for monitoring agent organizations

240 Inf Syst Front (2014) 16:239–256

Current approaches for agent organization adaptationpropose different techniques for monitoring the organiza-tion in order to figure out when an adaptation is required. Inmost of them, both the internal adaptation logic for decidingwhen an adaptation is required and the information requiredto be monitored are usually predefined at design time andcannot be modified during the execution. This restrictionassumes that requirements associated to the adaption pro-cess are always known in advance. However, as stated inAbdu et al. (1999), adaptive systems may cause monitoringrequirements to change throughout the agent organization’slife-span, and, thus, the information required to be moni-tored can also change during the execution depending on thecurrent requirements of the system.

Assuming that monitoring needs are static and known inadvance at design time makes it difficult to develop dynamicapplications that can adapt at run time. It is necessary to beable to count on an adaptive approach that can overcome themonitoring limitations imposed by static designs. Therefore,an adaptive approach should apply not only to the behav-ior and structure of the system, but it should also apply tothe design of the monitoring system (Ringold et al. 1996),especially when dealing with the management of complexsystems over long periods of time.

This paper presents Trace&Trigger, which is an agentorganization adaptation framework that consists of adynamic monitoring mechanism and an adaption assistant.The monitoring mechanism helps agents detect adapta-tion requirements dynamically at run time and also feedsthe adaption assistant so that it can provide organizationalagents with information related to the costs and benefits ofcarrying out an adaptation at each moment of the execution.

The rest of the paper is organized as follows. Section 2describes in detail both components of the adaptation frame-work: The event-tracing-based monitoring system and theadaption mechanisms. Section 3 shows an example of howto incorporate the framework to an adapting agent organiza-tion; and the performance of the organization is evaluated inSection 4. Section 5 details previous work by other authorsin the field of monitoring and adapting multiagent systems.Finally, Section 6 presents the main conclusions of thiswork.

2 The Trace&Trigger framework

The Trace&Trigger framework presented in this work hasbeen designed to run on the Magentix2 multiagent platform(Fogues et al. 2010), which is a platform for open mul-tiagent systems developed in Java. This platform providesa specific mechanism to obtain the information necessaryfor any adaptation (Section 2.1). Specific mechanisms have

been incorporated to let agents determine the costs and ben-efits of performing an adaptation at run time (Section 2.2) aswell as the mechanisms required to carry out the necessaryactions to perform that adaptation (Section 2.3).

2.1 Magentix2 support

In addition to the message-based communication layer,Magentix2 also provides communication layer for event-tracing, which allows agents to generate and receive traceevents at run time. As a result, agents and other entitiesrunning on the Magentix2 platform can not only communi-cate in a direct way by means of ACL messages, but theycan also communicate in an indirect way by means of traceevents. These event tracing facilities have been incorporatedto the platform according to the TRAMMAS model, whichis a platform-independent trace model for tracing eventsin multiagent systems. Its objective is to provide multia-gent systems with a mechanism for indirect interaction andcommunication.

The TRAMMAS model conceives the multiagent systemas a set of trace entities that share information by means ofgenerating and receiving trace events. A trace entity is anycomponent in the multiagent system that is able to gener-ate and receive trace events: agents, non-agents (artifacts,according to the definition in Omicini et al. 2008), or aggre-gations of agent and non-agent entities. However, this workwill only consider individual agents. A trace event is a pieceof data that represents a significant computation that takesplace during the execution of any component inside the mul-tiagent system. This model defines the following commonattributes for each event:

– Event type: Trace events can be classified according tothe nature of the information which they represent. Sothat, the rest of the data attached to the trace event canbe interpretated.

– Time stamp: Global time at which the event took place;it is necessary to be able to chronologically sort eventsproduced anywhere in the multiagent system.

– Origin entity: The trace entity that originated the event.– Attached data: Additional data that could be necessary

to correctly interpret the trace event. The amount andtype of these data will depend on the event type. Sometrace events may not need any additional information.

Trace entities in the multiagent system may participate inthe tracing process by playing two different tracing roles:the Event Source (ES) role and the Event Receiver (ER) role.ES entities are those that generate trace events as they exe-cute, while ER entities are those that receive these events.The relation between ES and ER entities is many-to-many:it is possible for events generated by an ES entity to bereceived by many ER entities; it is also possible for an ER

Page 3: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 241

entity to receive events from multiple ES entities simulta-neously. These two tracing roles are not exclusive and anytrace entity can play one or both of them at the same time.

The model defines a publication/subscription protocol bywhich: (1) any agent can publish the types of events that it isable to generate (before generating them); and (2) any agentcan subscribe to those trace events in which it is interested(before starting to receive them). This protocol helps reduceas much as possible the overhead that tracing informationcan cause to the multiagent system. ER entities must sub-scribe to those trace event types that they are interested in.Similarly, once an ER entity is not interested in receivingevents of a type to which it had previously subscribed, theER entity may unsubscribe from them. As a consequence,only trace events of those types to which at least one ER haspreviously subscribed are generated and ER entities do notreceive any tracing information in which they are not inter-ested. This publication/subscription mechanism is dynamicin the sense that, at any time during the execution, agentscan change their publications and subscriptions. In orderto give support to this publication/subscription mechanism,trace events are offered to agents in the system as trace ser-vices in a way similar to the way that traditional services areoffered in the multiagent system.

A third tracing role, the Trace Manager role (TM), is alsoconsidered in the model. It is responsible for controlling andcoordinating the entire tracing process: registering tracingentities and event types, and giving support to the tracingand security models. This means that there must be at leastone trace entity playing this role in order to give supportto all these necessary features. The model establishes thatthe TM role can be played by a single entity or by a set ofdifferent entities in the multiagent platform at the same time(in coordination) even in different nodes of the multiagentsystem.

The tracing process and the relations and interactionsamong tracing roles in the system are shown in Fig. 1.

The tracing facilities described above have been incor-porated to Magentix2 by incorporating a specific agent thatplays the TM role. Agents have to send an ACL messageto the TM agent whenever they want to publish or unpub-lish their available trace services and also when they wantto subscribe to a trace service or to unsubscribe from it.The TM agent interacts with the Magentix2 communica-tion layer so that trace events generate by an agent are onlyinjected into the network if there is an agent interested inreceiving them; no trace event is received by an agent unlessthe agent has previously requested it.

The TRAMMAS abstract model and the architecturemodel (which was considered in order to incorporate eventtracing facilities to the Magentix2 platform) are describedin more detail in Burdalo et al. (2011).

2.2 Organization management module

Magentix2 provides support to virtual organizations bymeans of the THOMAS architecture (Rebollo et al. 2009),which defines flexible services that can be used by agents.This architecture has been used to define the organiza-tion’s management and the services provided by agents. TheTHOMAS architecture is composed of a Service Facilitator(SF) and an Organization Management System (OMS). TheSF allows for the registration and search of services pro-vided by internal or external entities by following Service-Oriented Architectures guidelines. The OMS is in chargeof the management of organizations, taking control of theirunderlying structure, services provided by the agents, andtheir relationships. This module allows for the developmentof open and dynamic multiagent systems, where agents areable to dynamically enter and leave the system, change theirservices, and change their relationships or the roles that theyplay in the organizations. A special agent, which is calledmanager agent, is defined to manage the execution of eachorganization. This agent has complete information aboutthe current state of the organization and has permission tointeract with the SF and OMS to change it.

2.3 Adaptation module

Since the manager agent is in charge of coordinating everyadaptation process in an agent organization, it estimates theimpact for each potential change. This impact represents thecosts/benefits that the application of an individual change(such as the addition or deletion of a service) would cause,not only to those components involved in the change, butalso to other components in the organization. Furthermore,it also shows the cost for carrying out the application of thischange.

The Reorganization Facilitator service (RF) (Alberolaet al. 2011, 2013c) is the service that is in charge ofcalculating (at anytime) which adaptation has the lowestimpact for the system. Individual impacts that are calcu-lated by the organization manager agent are transferred tothe RF in order to calculate the adaptation of the organi-zation. This service implements an adaptation mechanismbased on organization transitions in order to obtain the bestadaptation from a current organization.

This process finds the organization whose transitionimpact is the lowest and the sequence of steps requiredto achieve it. Several changes can be considered by usingthe Multi-Transition Deliberation Mechanism (MTDM)(Alberola et al. 2012, 2013b). This mechanism calculatestransitions in different dimensions (roles, services, relation-ships, agent population) from the current organization to

Page 4: An adaptive framework for monitoring agent organizations

242 Inf Syst Front (2014) 16:239–256

Fig. 1 Interaction between thedifferent tracing roles in theTRAMMAS model

other organizations. These transitions have high expectedutility based on the cost of the transition to these new orga-nizations. The MTDM decides which transition is finallyimplemented and provides the sequence of changes requiredto carry out the transition. We summarize the main compo-nents of this model below.

2.3.1 Organization

Organization models allow us to represent both the ele-ments that make up the organization and the interactionsamong these elements. Several approaches can be found inthe literature for modeling agent organizations based on therequirements of the applications. Current organization mod-els have been compared and reviewed by works such asVazquez-Salceda et al. (2005), Dignum (2009), or Argenteet al. (2009).

Although several approaches can be used to model orga-nizations, we use the following adaptation of the organiza-tion model proposed in Esparcia and Argente (2011) sincewe found it to be appropriate for the requirements of themodel proposed.

An organization at a specific moment t is defined as atuple Ot = 〈Ot

O,OtR〉, where Ot

O stands for Organiza-tional Objects and represents the individual objects of theorganization. It is defined as Ot

O = {Rt , St , At }, where Rt

represents the set of roles contained in the organization at aspecific moment t; St represents the services that the organi-zation is offering at a specific moment t; and At representsthe population of agents at a specific moment t .

OtR stands for Organizational Relationships and rep-

resents relationships of the organization by means ofa link between the objects. It is defined as Ot

R ={off erst , providest , playst , acquaintancet}, where:

– off erst = {(r, s) ∈ Rt × St } represents the rela-tionships between roles and services, where (r, s)

represents that the role r offers the service s atmoment t .

– providest = {(a, s) ∈ At × St } represents the rela-tionships between agents and services, where (a, s)

represents that the agent a provides the service s atmoment t .

– playst = {(a, r) ∈ At × Rt } represents the relation-ships between agents and roles, where (a, r) representsthat the agent a plays the role r at moment t .

– acquaintancet = {(a, a′) ∈ At × At } represents therelationships between a pair of agents, where (a, a′)represents that the agents a and a′ are connected by anacquaintance relationship at moment t . These relation-ships define the structural topology of the organization.

Given an organization Ot at a specific moment t , in orderfor an agent a to be able to play a role r at time t , agent amust provide all the services s that r offers at time t:

∀(a, r) ∈ playst | (r, s) ∈ off erst → (a, s) ∈ providest

2.3.2 Organization transition

The concept of organization transition was first introducedin DeLoach et al. (2008) and allows us to relate two dif-ferent organizations at different moments, current (c) andfuture (f ). It is the mechanism by which an organization isadapted into a new one. This mechanism is based on individ-ual changes that are applied to the objects and relationshipsof Oc in order to obtain the objects and relationships of Of .

A transition event (ε) defines each individual change thatcan be applied to an object or to a relationship during theorganization transition in terms of addition or deletion. Anaddition transition event applied to an object or to a relation-ship (e.g, add agent (a), add provides(a, s)) causes theobject or the relationship to be added to the specific set ofOf , while a deletion event applied to an object or to a rela-tionship causes the object or the relationship to be deleted

Page 5: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 243

from the specific set of Of . Given two organizations, Oc

and Of , we define τ = {ε1 . . . εn} as the set of transitionevents that cause a transition to Of when all of them areapplied to Oc.

2.3.3 Organization transition impact

In order to calculate the organization with the highest poten-tial for improvement in utility based on the transition costfor several changes, we define the concept of organiza-tion transition impact. This impact is a measurement of theeffects of an organization transition in terms of organizationutility based on the costs for carrying out this transition.

The application of the set of events τ associated to anorganization transition provides us with information regard-ing what changes must be carried out in order to fulfill thetransition. Each event ε ∈ τ has an associated impact i(ε)if ε is applied. This impact represents the costs/benefits thatthe application of this event produces in the organization.This impact shows the effect of this event in the componentsinvolved in the change and also how other components areaffected by this event. Moreover, the impact shows the costfor carrying out the application of the event.

For any set of events τ that allows a transition from thecurrent organization Oc to a future organization Of , wedefine the impact that is associated to the organizationalobjects i(τOO ) as the impact of applying all the events asso-ciated to objects. This impact is computed as the aggregatedimpact of the events that allow a transition from Oc

O to

OfO and entails operations of addition and deletion of roles,

services, and agents:

i(τOO ) =∑

ε∈τOO

i(ε)

Similarly, we define i(τOR) as the impact of applying allthe events associated to relationships. This impact allows atransition from Oc

R to Of

R and refers to addition and deletionevents of off ers, provides, plays, and acquaintance

relationships:

i(τOR ) =∑

ε∈τOR

i(ε)

Finally, we can compute the organization transitionimpact as:

I (τ ) = i(τOO )+ i(τOR ) =∑

ε∈τi(ε)

If τ is composed by a sequence of ordered subsetsτ1, . . . , τn, the organization transition impact is representedas the aggregation of the impact of all the subsets:

I (τ ) =∑

τi∈τI (τi)

Each organization transition that is focused on a spe-cific dimension provides the future organization Of thatcould be transitioned to, which minimizes the organizationtransition impact.

2.4 Adaptation life-cycle

Figure 2 shows how agents in the multiagent system inter-act with each other and make use of the different facilitiesprovided by the Trace&Trigger framework in order to eval-uate the state of the system at run time, calculate the costsand benefits of any potential adaptation, and carry out thatadaptation.

Fig. 2 Trace & Triggerframework

Page 6: An adaptive framework for monitoring agent organizations

244 Inf Syst Front (2014) 16:239–256

The organization manager needs to obtain certain infor-mation that is related to the organization performance atrun time. The organizational knowledge that the manageragent possesses is used to estimate the adaptation impactsof individual changes. The monitoring of the organiza-tion behavior is carried out by means of the support forevent tracing provided by Magentix2.To share their rele-vant information, agents in the organization publish theirtrace services by sending an ACL message to the TM.Those agents in the system that are interested in that infor-mation subscribe to those trace services by requesting itfrom the TM via an ACL message, too. Since informationrequired for adaptation deliberation can change at run time,the organization manager sends requests to the TM agentfor dynamically subscribing or unsubscribing. In this way,the organization manager agent retrieves all the informationthat is needed at each moment in a transparent way for therest of the agents.

Organizational agents may also require some runtimeinformation regarding the organization. These agents canalso subscribe to trace services and unsubscribe from them.In this way, organizational agents can carry out tasks that donot affect other agents in the organization and that do notrequire the supervision of the organization manager. Withthe information received from the system, the organizationmanager has to determine which specific changes can becarried out. In order to do so, the organization manager hasto interact with the RF service, which provides a sequenceof changes that could be applied to improve the organiza-tion performance. If there is any promising adaptation thatcould be applied, the organization manager can interact withthe OMS and the SF services in order to carry out thisadaptation.

3 Case study

To help demonstrate how the Trace&Trigger framework canimprove the adaptation capabilities of an organization, acase study based on a market domain has been implemented.The following conceptual elements are considered in thisdomain: factories, which generate products; and enterprises,which are able to sell these products to consumers as well asprovide stock to other enterprises. The enterprises representan organization whose objective is to make as much profitas possible. The organization can improve its performanceat run time by adapting to the needs and demands of themarket. Similar to the domain proposed in this case study,other domains with restrictions could also be used (Li andLi 2012).

The organization has been modelled following the nota-tion presented in Section 2.3.1. At a given moment t , theagent organization is composed of a set of agents At =

{a1 . . . an}, which represent the enterprises. Each agent ax isable to provide a set of services St (ax), which are a subsetof all of the services provided by the organization: St (ax) ⊆St = {s1 . . . sp}. Each agent ax that provides a service syat a given moment t is represented as providert (ax, sy)

and has a current stock stockt (ax, sy) associated to it. Thisstock is the maximum number of products that ax can sellor provide to other agents at time t . Each agent is connectedto other agents by acquaintance relationships, which allowthem to share their stock with other agents. An acquain-tance relationship acquaintancet(az, ax) allows an agentaz to be a stock provider of service sy for agent ax at timet . An agent ax that provides a service sy at time t has a listof stock providers associated to it, which is represented asSP t(ax, sy) = {az, . . . , an}.

At each time step, the organization passes through threestates: Serve (state s), Restock (state S ′), and Reorganize(state S ′′). Figure 3 shows the transitions between thesestates. In the state s, each agent ax receives a number ofrequests for each service sy that it provides, which is repre-sented as requestst (ax, sy). Sales of a product sy that arecarried out by a provider ax at time t are represented as:

salest (ax, sy )

={requestst (ax, sy ) if stockt (ax, sy) > requestst (ax, sy )stockt (ax, sy) otherwise

and therefore, the stock is reduced: stockt (ax, sy) −salest (ax, sy).

Fig. 3 Life cycle of the agent organization

Page 7: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 245

After receiving the requests, the organization reaches thestate S ′, in which agents restock their products dependinginitially on the sales that were carried out in the previ-ous state: restockt (ax, sy) = salest (ax, sy). Each agenttries to restock their services through one of their stockproviders. Providers are requested sequentially until one ofthem agrees to restock the required amount. If agent ax andstock provider az reach an agreement, the required stockis transferred from az to ax , incurring in a transportationcost for each individual product, which is represented astcost (az, ax, sy). If none of the stock providers is able torestock the demand, finally the agent ax restocks the productdirectly from the specific factory F(sy) as a last resort. Thisrequires a higher transportation cost, which is representedas tcost (F (sy), ax, sy).

Agent ax may in turn receive requests for restocking aservice sy from another agent aw. In this case, agent ax onlyagrees to restock agent aw if the amount requested is lessthan its current stock: stockt (ax, sy) ≤ restockt (aw, sy);and if ax can in turn restock this amount from its provider. Ifthe restock is agreed, the available stock of ax is reduced tostockt (ax, sy) − restockt (aw, sy) and the restock requiredby ax is increased based on the stock required to be trans-ferred transf t (ax, sy). This term represents the amount ofproducts transferred to other agents.

Finally, the last state S ′′ represents the adaptation delib-eration. In this state, the organization manager tries to dis-tribute the services to agents in order to improve the profitof the organization. This profit is measured as the sales car-ried out by each agent ax for each service sy based on thesale price of the service price(sy) and the transportationcost required to restock the sold amount:

P t (O) =∑

ax∈At

sy∈Stsalest (ax, sy)

×(price(sy)− tcost (provider(ax, sy), ax, sy)

The changes that are considered in this example are theaddition and deletion of services. Therefore, as we stated inSection 2.3, the manager must estimate the impact of thesechanges.

3.1 Estimation of the adaptation impact

As stated in Section 2.3.3, the impact estimation involvesthe benefits produced by the adaptation, the costs associatedto the adaptation, and how this adaptation would influenceall the components of the organization. In this example, wefocus on addition and deletion events regarding services,but other organizational dimension could also be changed(Alberola et al. 2013b).

The addition of a new service in an agent ax implies thereduction of the maximum stock of the rest of the servicesprovided by this agent, from SMAX

nto SMAX

n+1 , with n beingthe number of services provided by the agent and SMAX

being a constant defined for all the agents. The effect ofthis is estimated based on how the addition of a new servicewould have affected the sales of each service sy during theprevious period between t−1 and t . These sales would havebeen limited to the new stock, producing a sales opportunitycost defined as follows:

o salest (ax, sy)

={salest (ax, sy)− SMAX

n+1 if salest (ax, sy) > SMAXn+1

0 otherwise

This opportunity cost represents the sales of service sy

that would not have been carried out if another ser-vice had been added. The profit associated to this costP(o salestt (ax, sy)) depends on the price of the service andon whether these sales have been restocked from a stockprovider or from the factory.

Apart from this cost, the addition of a new servicewould have affected the transferences to other agentstransf t (ax, sy). Similar to the sales opportunity cost, atransference opportunity cost can be defined, which is alsolimited to the new stock:

o transf t (ax, sy)

={restockt (ax, sy)− SMAX

n+1 if restockt (ax, sy) > SMAXn+1

0 otherwise

The transference opportunity cost represents the restock toother agents of service sy that could not be carried out ifanother service had been included. The profit associated tothis cost P(o transf t (ax, sy)) depends on the differencebetween the transference cost from a stock provider agentand the transference cost from the factory F(sy).

In addition, if agent ax would have provided the new ser-vice sn, some estimated sales (estimatedt (ax, sn)) wouldhave been carried out. These sales have an associated profitP(estimatedt (ax, sn)), which can be measured by con-sidering the transportation cost from the factory, whichrepresents the worst case. Furthermore, other agents thatalso provide this service sn could be negatively affected if anew agent is providing the same service. This can be repre-sented as a sales opportunity cost associated to these otheragents o salest (az, sn)∀az, sn ∈ St (az). This cost repre-sents the possible sales loss for these agents. Finally, theaddition of a new service has an associated fixed cost for set-ting up this service, which can be represented as up(ax, sn).

Page 8: An adaptive framework for monitoring agent organizations

246 Inf Syst Front (2014) 16:239–256

By aggregating all this information, the impact of adding anew service sn to an agent ax is represented as IA(ax, sn):

P(estimatedt (ax, sn))−∑

s∈St(ax)(P (o salest (ax, s))

+P(o transf t (ax, s))−∑

az∈At

P (o salest (az, sn))

−up(ax, sn)

In contrast to the addition of a service, the deletion ofa service implies increasing the maximum stock of therest of the services, from SMAX

nto SMAX

n−1 , with n beingthe number of services provided by the agent. Thus, ifthe stock of a service sy during the period between t − 1and t has been dropped to 0, the agent manager couldestimate that a higher number of extra sales would be car-ried out with a bigger stock. This value is represented asestimatedt (ax, sy), which has a specific profit associatedto it P(estimatedt (ax, sy)).

Furthermore, if an agent had not provided a service sp ,the sales associated to this service salest (ax, sp) as well asthe transferences to other agents transf t (ax, sp) would nothave been carried out. Therefore, the specific profit associ-ated to the deletion of a service can be estimated dependingon whether or not the service sp has been restocked fromfactory.

In addition, other agents that also provide this ser-vice sp could be positively affected if an agent stopsproviding this service. This can be represented as a neg-ative opportunity cost associated to these other agentso salest (az, sp)∀az, sp ∈ St (az). This represents the pos-sible sales gain by these agents. Finally, the deletion of aservice has an associated fixed cost for turning off this ser-vice, which can be represented as off (ax, sp). Therefore,the impact of deleting a service sp that is already beingprovided by agent ax is represented as ID(ax, sp):

s∈St(ax)P (estimatedt (ax, s))− (P (salest (ax, sp))

+P(transf t (ax, sp)))−∑

az∈At

P (o salest (az, sp)

−off (ax, sp)

Depending on the number of services provided by eachagent, the manager considers the possibility of adding a ser-vice if the agent provides less than δ services and none ofthe services provided are restocked with more that what isactually needed. This would mean that it could be beneficialfor the agent to add another service and reduce the stock ofthe current ones. In contrast, the deletion of a service is con-sidered if the agent provides δ services or more. This wouldmean that it could be beneficial to delete some of the currentservices in order to increase the stock capacity of this highly

demanded service. In order to deal with how all the informa-tion required for adaptation deliberation is retrieved, in thefollowing section we show how the monitoring mechanismbased on event tracing is used.

3.2 Event tracing specification

By using event tracing, agents can publish, request, and can-cel subscriptions dynamically in order to send and retrieveonly the information that is interesting at each moment.To allow every agent to know the stock that is avail-able in its stock providers, each agent ax publishes thestock of each service sy provided at the beginning of eachtime step. This information is published by means of theSTOCK AVAILABLE trace event. All the agents thatare interested in receiving this information (i.e., the agentsthat have ax associated as a provider of the service sy )request a subscription to this event. Thus, each agent az onlyreceives the specific information that is required at eachmoment according to the following restriction:

T E.type = STOCK AVAILABLE ∧ T E.source

= ax, ax ∈ P t (az, sy)

In order to manage the information required for adapta-tion deliberation of the organization, the manager requestssubscriptions to different events depending on the servicesprovided by each agent. On the one hand, the manageris interested in receiving information from those agentsthat can add a new service (those that provide fewerthan δ services) and have requested more restock thanactually required. This is implemented by publishing theRESTOCK trace event in the state S ′. By using this traceevent each agent publishes the information of the restockthat it is carrying out. Therefore, the manager is interestedin receiving information from those agents that can add anew service and that have requested a restock amount thatis higher than the one required:

T E.type = RESTOCK ∧ T E.source

= ax, |St(ax)| < δ ∧ T E.value > τ (1)

We define this restriction as a threshold τ , which repre-sents the estimated stock required for the next time stepin order to satisfy the sales and restocks received in thecurrent time step, based on the stock that is still avail-able. Therefore, this threshold is initially defined as: τ =(SMAX

n− stock(ax, sy)

) − stock(ax, sy). For the deletionof services, the manager is interested in receiving informa-tion from those agents that are able to delete a service (thosethat provide δ services or more) and have sold all the stock

Page 9: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 247

of a service. We can use the STOCK AVAILABLE traceevent published by agents to obtain this information:

T E.type = STOCK AVAILABLE ∧ T E.source

= ax, |St(ax)| ≥ δ ∧ T E.value ≤ σ (2)

Similar to the above trace event, we define a threshold thatcould be modified at run time. This threshold is initiallydefined as σ = 0, to represent the notification of any eventof positive stock available.

Finally, the manager also needs to know how manyrestocks are carried out from factories in order to calculatethe profit based on the transportation costs. This is repre-sented as a FACTORY REQUEST trace event that ispublished by agents and is sent when the agent carries out arequest to an specific factory:

T E.type = FACTORY REQUEST∧T E.source = any

4 Evaluation

In this section, we analyze different experiments to mea-sure the performance of the adaptation framework. For theseexperiments, we define an organization of agents, whichcan have zero, one, or two different stock providers. As westated in Section 2.2, the agent manager is responsible formanaging the organization dynamics. This agent determineswhether or not changes are required, depending on the infor-mation obtained from providers through events. Dependingon the conditions of the environment, subscribed eventsmight not reveal relevant information that is different fromprevious events.

To start, we would like to present some experimentsregarding traffic reduction by using adaptive monitoring.Figure 4a shows the number of events that are received bythe manager in a static and a dynamic monitoring strat-egy over 50 iterations.1 In this experiment, the thresholdsσ and τ remain constant. As can be observed, the numberof events received is greater without using event tracing,and the differences between the two approaches becomesgreater as the population of agents increases. This provesthat the information that needs to be monitored in dynamicsystems may be different throughout the organization’s lifespan. Therefore, dynamic monitoring (in which only therequired information is retrieved) considerably reduces thetraffic load in the system. Note that in the static approach,the information needed to be monitored must be specifiedat design time, and therefore, a lot of information is trans-ferred that is finally not used by the manager. Figure 4bshows the performance of the three approaches based onthe messages exchanged in the whole organization. In this

1In the case of static monitoring, events are represented as messages.

experiment, it can be observed that dynamic monitoringclearly outperforms a static approach.

In the following subsections, we analyze how the thresh-olds τ and σ influence the profit of the organization andthe number of events that are received in accordance withthe user demand. These thresholds can be adapted in accor-dance with demand in order to reduce the number of eventswithout losing profit. As an example, in a stable scenario inwhich the user demand is similar over several iterations, thereception of events may not be relevant unless the demandchanges significantly. Therefore, the initial threshold can beextended to a range of acceptable values. In contrast, in ascenario in which the user demand is more variable, thisrange should be tighter because the information provided bynew events may be quite different from the previous events.What is more, these restrictions could be different for all theagents of the organization.

An average value associated to an event is calculated byconsidering the last values. The number of values that aretaken into account to obtain this average defines the estima-tion period length φ. A threshold range ρ is also defined asa parameter that determines the allowed fluctuation of thethreshold of the monitored event. Therefore, events whosevalues are ranged in the interval between [φ−ρ, φ+ρ] willnot be retrieved.

In the experiments described in the following sub-sections, we test the performance of an adaptivestrategy. Each time-step when a RESTOCK or aSTOCK AVAILABLE event of a specific agent is notreceived, the values ρ and φ are increased; when an eventis received, these values are decreased. We also test the per-formance of different static threshold ranges (from ρ = 0until ρ = 20) for two different estimation period lengths(φ = {5, 10}) as well as the performance of a classicmonitoring strategy in which the thresholds are as definedinitially.

We test these strategies in different scenarios with differ-ent patterns of user demand: (1) when demand changes ata specific moment; (2) when demand changes progressivelyover a period of time; (3) when demand remains stable; (4)when demand changes slightly; and (5) demand changesquickly.

4.1 Specific change in demand

The first experiment represents a scenario in which theuser demand remains constant until the time-step t = 15,when a change in the demand occurs and from then onremains constant. Figure 5 shows the profit of the organi-zation and the events received for the different monitoringstrategies. Figure 5a and b represent the profit at each time-step achieved for an estimation period length of φ = 5 and

Page 10: An adaptive framework for monitoring agent organizations

248 Inf Syst Front (2014) 16:239–256

Fig. 4 Messages/eventsreceived: a in the manager;b in the whole organization

a b

φ = 10, respectively. Figure 5c and d represent the numberof accumulated events that are received at each time-step.

It can be observed that the threshold range and theestimation period length influence the organization’s perfor-mance. The lower the value of ρ, the shorter the time periodrequired by the organization to react to the change. Thisoccurs because changes in the demand cause the thresholdrange to be exceeded earlier when this range is tight. For thehighest values of ρ (10 and 20), the change in the demand isnot large enough to receive the event. As a result, the organi-zation does not adapt and a higher profit is not achieved. Theclassic strategy carries out the adaptation earlier than otherstrategies because this strategy retrieves all the subscribedevents that exceed the initial thresholds. The problem withthis strategy is that it receives a similar number of eventsevery time-step, even when the demand remains constant

(from t = 15 on). In contrast, the rest of the strategies detectthat the demand stabilizes and the number of events receivedalso eventually stabilizes without lowering the profit of theorganization.

The influence of the estimation period length on theprofit of the organization can be also observed A periodof φ = 5 causes some strategies (such as ρ = 5) todetect significant changes in demand earlier, and thereforeto carry out the adaptation earlier as well. The number ofevents required to stabilize the system is also lower than forφ = 10. This is because a greater number of measures areconsidered to estimate the average value. It can be observedthat the profit for the dynamic strategy is the same as theprofit for the highest performing strategies. Despite the factthat some strategies can converge converge earlier than thedynamic strategy to the best profit, the dynamic strategy

Fig. 5 Profit of the organizationand events received for aspecific change in demand

Organization profit for = 5 Organization profit for = 10

Events received for = 5 Events received for = 10

a b

c dφ φ

φ φ

Page 11: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 249

Fig. 6 Profit of the organizationand events received for aprogressive change in thedemand

Organization profit for = 5 Organization profit for = 10

Events received for = 5 Events received for = 10

a b

c dφ φ

φ φ

requires fewer events. As an example, the profit of thedynamic and the classic strategies is the same from t = 27on; however, the dynamic strategy stops the reception ofevents when the demand stabilizes.

4.2 Progressive change in demand

The second experiment represents a scenario in which theuser demand changes slightly and progressively from time-step t = 15 to time-step t = 30 (Fig. 6). The objectiveof this experiment is to compare the moment at which themanager receives events and decides whether or not anadaptation is required. Similar to the first experiment, strate-gies with the lowest values of ρ receive events earlier. As inthe first experiment, the dynamic strategy is able to reducethe values of ρ and φ when the demand is changing and toincrease them when the demand is stable until this strategystops receiving events from t = 41 on.

In summary, the lower the value of ρ, the earlier eventsare received because the threshold is exceeded earlier. Thus,a higher profit is achieved earlier. In addition, event thoughthe number of events that are received is higher for strategieswith low ρ values, this number eventually stabilizes. Simi-larly, low values of φ may obtain a higher profit earlier thanlarger values. Nevertheless, the number of events received isalso important. As observed in this second experiment, dif-ferent values of estimation period length may carry out the

adaptation at the same moment by requiring a lower num-ber of events. In other cases, the adaptation moment may beearlier (for ρ = 10), but this would not be too significant ifthe demand is stable over a long period of time.

4.3 Stable demand

Figure 7 shows a scenario in which the demand is stableduring the entire execution. This causes all the strategiesto find the configuration with the highest profit in the for-mer iterations. However, the classic monitoring strategy isconstantly receiving events even though these events donot provide relevant information for adaptation. In contrast,dynamic strategy increases the values of ρ and φ when thedemand stabilizes, which causes the dynamic strategy tostop receiving events from t = 12 on.

4.4 Slight change in demand

Figure 8 shows an experiment in which slight changes indemand occur at different moments, causing the profit of theorganization to periodically slightly increase and decrease.However, these slight changes are not enough to requirean adaptation. Therefore, all the strategies obtain the sameprofit, but those with the highest values of ρ and φ requirefewer events than other strategies. As an example, for aρ value of 5, the number of events received stabilizes forφ = 10 but not for φ = 5. Similarly, for the same value

Page 12: An adaptive framework for monitoring agent organizations

250 Inf Syst Front (2014) 16:239–256

Fig. 7 Profit of the organizationand events received for stabledemand

Organization profit for = 5 Organization profit for = 10

Events received for = 5 Events received for = 10

a b

c d

φ φ

φ φ

of φ, in strategies with a ρ value of 20 or 10, the numberof events received stabilizes, while for ρ = 0 the numberof events increases. In scenarios of this type it is not use-ful to use a threshold range that is too tight because slight

changes cause the reception of events that are not signifi-

cant for adaptation. The dynamic monitoring strategy is able

to fit scenarios both when the demand changes and when it

stabilizes.

Fig. 8 Profit of the organizationand events received for slightchanges in demand

Organization profit for = 5 Organization profit for = 10

Events received for = 5 Events received for = 10

a b

c dφ φ

φ φ

Page 13: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 251

4.5 Quick change in demand

For the last experiment, Fig. 9 shows a scenario in which

the demand changes quickly, and therefore the number of

events increases while the demand is not stable. As the fig-

ure shows, the profit obtained by the dynamic strategy is

practically the same as the profit obtained by the classic

strategy, carrying out the adaptation only one or two time-

steps later than the classic strategy. In addition, similar to

the rest of the experiments, the dynamic strategy is able to

stop the reception of events when the demand stabilizes.

In summary, Table 1 shows the average profit during all

the iterations and the average number of events received

for all the strategies. We must point out that the dynamic

strategy obtains a profit that is similar to the profit of

the classic strategy; however, the dynamic strategy requires

fewer events than the classic strategy. This compromise

between profit and event traffic is more remarkable in fairly

stable scenarios (stable and slight changes), in which the dif-

ference between the events received is quite significant and

the profit obtained is the same. It can also be observed that,

depending on the scenario, some static values for ρ and φ

achieve a good profit, but these are only suitable for spe-

cific scenarios. In contrast, the dynamic monitoring strategy

is able to adapt these values based on the user demand.

5 Related work

In this section we discuss the most relevant work carried outin relation to tracing in multiagent systems (Section 5.1),indirect communication in multiagent systems (Section 5.2),and adaptation in agent organizations (Section 5.3).

5.1 Tracing in multiagent systems

Event-tracing facilities in multiagent systems are usuallyconceived as debugging tools to help in the validation andverification processes. It is also common to use these trac-ing tools as help for those users who have to understand howthe multiagent system works. Therefore, generated eventsare usually destined to be understood by a human observer.

Most of the current multiagent platforms provide theirown tracing facilities through different kinds of support. Asan example, JADE (Bellifemine et al. 2007) and Zeus(Colliset al. 1998) provide support for keeping track of all themessages exchanged among agents; JASON(Bordini andHubner 2007; Bordini et al. 2005), JADEX(Pokahr andBraubach 2007), and Magentix (Alberola et al. 2007;Sanchez-Anguix et al. 2009) provide support for exam-ining the internal state of agents and organizations; andJACK(AOS Group 2008) provides support for monitoringcommunication among agents and other introspecting tools.

Apart from the tools provided the multiagent platformsthemselves, there are other tracing facilities provided by

Fig. 9 Profit of the organizationand events received for quickchange in demand

Organization profit for = 5 Organization profit for = 10

Events received for = 5 Events received for = 10

a b

c dφ φ

φ φ

Page 14: An adaptive framework for monitoring agent organizations

252 Inf Syst Front (2014) 16:239–256

Table 1 Average profit andevents received for eachscenario

Scenario Strategy Profit Events

φ = 5 φ = 10 φ = 5 φ = 10

Specific change in demand ρ = 20 9909±48 9909±48 5±4 11±6ρ = 10 9909±48 9909±48 5±4 11±6ρ = 5 10002±44 9979±46 11±5 23±7ρ = 0 10018±41 10018±41 20±7 41±8

classic 10018±41 61±1dynamic 9998±44 10±4

Progressive change in demand ρ = 20 9376±177 9359±178 5±4 12±6ρ = 10 9511±142 9495±147 13±6 25±8ρ = 5 9542±131 9535±133 19±7 37±8ρ = 0 9566±127 9566±127 38±8 51±5

classic 9566±127 59±1dynamic 9511±140 24±8

Stable demand ρ = 20 10138±38 10138±38 5±4 11±6ρ = 10 10138±38 10138±38 5±4 11±6ρ = 5 10138±38 10138±38 5±4 11±6ρ = 0 10138±38 10138±38 5±4 11±6

classic 10138±38 115±1dynamic 10138±38 13±6

Slight change in demand ρ = 20 10106±37 10093±44 5±4 11±6ρ = 10 10106±37 10106±37 5±4 11±6ρ = 5 10106±37 10106±37 83±7 11±6ρ = 0 10106±37 10106±37 108±6 113±4

classic 10106±37 121±1dynamic 10106±37 11±6

Quick change in demand ρ = 20 9761±125 9764±126 6±5 13±6ρ = 10 9759±130 9764±126 11±6 21±8ρ = 5 9663±160 9634±168 38±8 46±7ρ = 0 9834±142 9833±135 42±7 51±5

classic 9834±142 58±2dynamic 9770±160 54±3

third parties, such as Java Sniffer (Tichy and Slechta 2006)(which provides support for reasoning about the messagesexchanged) or ACLAnalyser (Botıa et al. 2004) (whichstores messages in a relational database in order to examinethem ). In addition, the results obtained by ACLAnal-yser can be used together with data-mining techniques todebug multiagent systems (Botıa et al. 2007; Serrano et al.2009). Tracking messages can also be used to help design-ers detect protocol violations and inconsistencies (Padghamet al. 2005)

Although there are important works that are related totracing facilitates, as we stated above, most of them arefocused on human users rather than agents. Therefore, there

is no standard general tracing mechanism that allows agentsand other entities in the system to trace each other as theyexecute.

5.2 Indirect communication in multiagent systems

The problem of providing support for additional ways ofindirect communication and coordination has already beenaddressed by other authors using overhearing techniques.Overhearing is normally defined as an ‘indirect interac-tion whereby an agent receives information for which it isnot addressee’ (Legras and Tessier 2003; Kaminka et al.2002; Dignum and Vreeswijk 2004). These techniques have

Page 15: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 253

already been used to maintain social situational and orga-nizational awareness (Rossi et al. 2004), to allow teamorganization (Legras Onera 2002; Legras and Tessier 2003),to monitor teams in a non-intrusive way (Kaminka et al.2002), and to develop advising systems (Aiello et al. 2002;Busetta et al. 2002).

Most of the work in overhearing is modeled and imple-mented using message broadcasting. However, using broad-casting to perform overhearing is contradictory. This isbecause the definition of overhearing (and the definition ofthe overhearer role defined for multi-party dialogues Malouf1995) implies that the sender is not always aware of who isreceiving its messages, apart from the specified receivers.

The authors in Weyns et al. (2007) claim that the envi-ronment is a first-class abstraction that is complementaryto agents in the system. At the same time, the environ-ment is independent from the agents since it provides thesurrounding conditions for agents to exist, as well as anexploitable design abstraction for building multiagent sys-tem applications. As pointed out in Platon et al. (2006) andSaunier et al. (2007), the environment should give supportto both direct and indirect interaction in multiagent sys-tems, and therefore, overhearing should be managed by theenvironment in order to close the gap between the over-hearer and the sender. In contrast to current approaches foroverhearing, our proposal considers an indirect reception ofagent-to-agent messages and also uses the tracing facilities.

5.3 Adaptation in agent organizations

For adaptation in agent organizations, monitoring the behav-ior of the organization is a crucial phase in determiningthat an adaptation is required (Alberola et al. 2013a). Somecurrent approaches define the monitoring process as anautomatic response when changes occur. Other approachesprovide an implicit mechanism for reasoning about thecurrent state of the organization.

MACODO (Weyns et al. 2010) is a middleware thatprovides support for the management of organization adap-tation. In this approach, adaptation is triggered by externalevents (e.g., when an agents stops playing a role) and byother changes in the environment. Laws are specified totrigger the adaptation when these are satisfied. However,this specification is carried out at design time and can-not be changed at run time. Similar to this approach, someapproaches specify adaptation by means of triggers that can-not be modified at run time (Routier et al. 2001; Mathieuet al. 2002a, b; Wang and Liang 2006; Hoogendoorn andTreur 2006).

Other works provide a more proactive decision mecha-nism for detecting that an adaptation is required, such as2-LAMA (Campos et al. 2009, 2011). In 2-LAMA, themonitoring process is carried out by several agents, who

perceive information about a subset of agents and sharethe information in order to make decisions. However, theinformation that needs to be shared is also specified atdesign time and cannot be changed while the system is run-ning. Similarly, the adaptation support provided by Moise(Hubner et al. 2004) allows the implementation of agentsthat are in charge of determining when an adaptation isrequired. Nevertheless, the monitoring mechanisms are notdefined at the adaptation approach level and must be imple-mented by the system designer (providing his own methodsand tools). A similar issue associated to the static specifi-cation of the information that is monitored appears in otherworks such as DeLoach et al. (2008) and Bou et al. (2006,2007).

The work of Kota et al. (2009, 2012) provides a self-adaptive model for task-solving environments in which eachpair of agents is able to evaluate and change its relation-ships. In this approach, the information that is monitoredcan change during execution since it depends on the currentrelationships of each agent. However, this dynamic moni-toring is only valid for task-solving domains of this kind,in which other organizational dimensions cannot be con-sidered. Similar to Kota’s approach, the work presented inGaston and desJardins (2005) is specifically focused onchanges in the relationships.

The restriction of considering the internal adaptationlogic and the information to be monitored as predefinedat design time forces systems to be designed in which therequirements for adaptation must be known in advance.This impedes the development of applications in whichthese requirements may not be specifically known or whichcould even be different throughout the organization’s life-span. As stated in Abdu et al. (1999), adaptive systems maycause monitoring requirements to also change. Therefore,an adaptive approach should apply not only to the behav-ior and structure of the system but also to the design of themonitoring system (Ringold et al. 1996), especially whendealing with the management of complex systems over longperiods of time. Static mechanisms that do not considerchanges regarding which information has to be monitoredmay be useful in small application domains with a pri-ori, well-known organizational structures; however, theywould not be suitable for large-scale or complex systems.As the number of agents in the organization and their com-plexity grow, much more information is exchanged amongagents. Most of this information might not be useful at everymoment of the execution and only contributes to consider-ably increasing the traffic in the system. This is especiallycritical for approaches in which a middleware or central-izing entity is responsible for adaptation deliberation orimplementation (e.g., as in Carvalho et al. 2006). Also,the internal logic of agents can become very complex andcostly.

Page 16: An adaptive framework for monitoring agent organizations

254 Inf Syst Front (2014) 16:239–256

In contrast to the above approaches, our proposal usesevent tracing as a dynamic monitoring mechanism to allowagents to determine at run time the events that are receivedduring the execution. In the experiments presented, thereception of the events depends on the values of ρ and φ,which change according to whether the demand is changingor stable. In addition, the amount and type of informationthat each agent has to deal with depend on the actual stateof the organization and changes as the system changes.

6 Conclusions

Monitoring an agent organization becomes essential whendetermining whether or not an adaptation is required ata specific moment. Most monitoring techniques for agentorganizations that can be found in the literature either relyon predefined rules (which cannot be changed at run time),or they assume that the information that has to be monitoreddoes not change as the system executes. Consequently, theseapproaches are only applicable in small domains that have asmall number of agents and a priory, well-known organiza-tional requirements; they cannot be applied in large-scale orcomplex domains.

The Trace&Trigger adaptation framework proposed inthis work allows for the specification at run time of theinformation that has to be retrieved from the agent organi-zation according to its state at each moment. This enablesthe organization to adapt to these changes. This monitoringis complemented by an adaptation module, which allowsthe sequence of the most promising changes to be obtained.This module also determines the potential improvement andcost of carrying out these changes so that the organizationcan adapt to the current requirements.

The experimental results show how the performance ofthe agent organization improves when using the proposedframework for adapting to changes in service demands. Onthe one hand, the scalability of the system is improved byreducing the traffic when the information that is retrieved isdetermined at run time. On the other hand, when the adapta-tion logic is also changed at run time according to the stateof the system (in our case, the demand), the reception ofevents can stabilize without losing profit.

As future lines of research, we plan to include morethorough studies on agent organizations, not only consid-ering adaptation to changes in services provided by eachagent, but also considering changes in the agent populationor in the relationships among these agents. We also planto include strategies for improving monitoring requirementsbased on past experience.

Acknowledgments This work has been supported by projectsTIN2011-27652-C03-01 and TIN2012-36586-C03-01.

References

Abdu, H., Lutfiyya, H., Bauer, M.A. (1999). A model for adaptivemonitoring configurations. In Proceedings of the 6th IFIP/IEEEIM conference on network management (pp. 371–384).

Aiello, M., Busetta, P., Dona, A., Serafini, L. (2002). Ontologicaloverhearing. In ATAL ’01: Revised papers from the 8th interna-tional workshop on intelligent agents VIII (pp. 175–189). London:Springer.

Alberola, J.M., Mulet, L., Such, J., Garcıa-Fornes, A., Espinosa,A., Botti, V. (2007). Operating system aware multiagent plat-form design. In Fifth European workshop on multi-agent systems(EUMAS 2007) (pp. 658–667).

Alberola, J.M., Julian, V., Garcia-Fornes, A. (2011). Cost-aware reor-ganization service for multiagent systems. In Proceedings of the2nd international workshop ITMAS11 (pp. 60–74).

Alberola, J.M., Julian, V., Garcia-Fornes, A. (2012). Multi-dimensional transition deliberation for organization adaptationin multiagent systems. In Proceedings of the eleventh interna-tional conference on autonomous agents and multiagent systems(AAMAS-12) (pp. 1379–1380).

Alberola, J.M., Julian, V., Garcia-Fornes, A. (2013a). Challenges foradaptation in agent societies. Knowledge and Information Systems,(in press).

Alberola, J.M., Julian, V., Garcia-Fornes, A. (2013b). Multi-dimensional adaptation in mas organizations. IEEE Transactionson Systems, Man, and Cybernetics-Part B: Cybernetics, 43(2),622–633.

Alberola, J.M., Julian, V., Garcia-Fornes, A. (2013c). Using cost-aware transitions for reorganizing multiagent systems. Engineer-ing Applications of Artificial Intelligence, 26(1), 63–75.

AOS Group (2008). An agent infrastructure for providing the decision-making capability required for autonomous systems. http://www.agent-software.com.

Argente, E., Julian, V., Botti, V. (2009). MAS modeling based onOrganizations. In Post-Proceedings 9th international workshopAOSE’08 (vol. 5386, pp. 16–30). Springer.

Bellifemine, F., Caire, G., Trucco, T., Rimassa, G., Mungenast, R.(2007). Jade administrator’s guide.

Bordini, R., & Hubner, J. (2007). Jason: a Java-based interpreter for anextended version of AgentSpeak.

Bordini, R., Hubner, J., Vieira, R. (2005). Jason and the goldenfleece of agent-oriented programming. In G. Weiss, R. Bordini, M.Dastani, J. Dix, & A. Fallah Seghrouchni (Eds.), Multiagent sys-tems, artificial societies, and simulated organizations, multi-agentprogramming (vol. 15, pp. 3–37).

Botıa, J.A., Hernansaez, J.M., Gomez-Skarmeta, A. (2004). Towardsan approach for debugging mas through the analysis of acl mes-sages. In Multiagent system technologies (vol. 3187, p. E1).Lecture Notes in Computer Science.

Botıa, J.A., Hernansaez, J.M., Gomez-Skarmeta, A. (2007). On theapplication of clustering techniques to support debugging large-scale multi-agent systems. Programming Multi-Agent Systems,4411, 217–227.

Bou, E., Lopez-Sanchez, M., Rodrıguez-Aguilar, J.A. (2006). Adap-tation of autonomic electronic institutions through norms andinstitutional agents. In Engineering societies in the agents world.Number LNAI 4457 (pp. 300–319). Springer.

Bou, E., Lopez-Sanchez, M., Rodrıguez-Aguilar, J.A. (2007). Towardsself-configuration in autonomic electronic institutions. In COIN2006 workshops. Number LNAI 4386 (pp. 220–235). Springer.

Burdalo, L., Terrasa, A., Julian, V., Garcıa-Fornes. A. (2011). Tram-mas: a tracing model for multiagent systems. Engineering Appli-cations of Artificial Intelligence, 24(7), 1110–1119.

Busetta, P., Dona, A., Nori, M. (2002). Channeled multicast forgroup communications. In AAMAS ’02: Proceedings of the first

Page 17: An adaptive framework for monitoring agent organizations

Inf Syst Front (2014) 16:239–256 255

international joint conference on autonomous agents and multia-gent systems (pp. 1280–1287). ACM: New York.

Campos, J., Lopez-Sanchez, M., Esteva, M. (2009). Assistance layer,a step forward in Multi-Agent Systems Coordination Support. InInternational joint conference on autonomous agents and multia-gent systems (AAMAS) (pp. 1301–1302).

Campos, J., Esteva, M., Lopez-Sanchez, M., Morales, J., Salamo, M.(2011). Organisational adaptation of multi-agent systems in a peer-to-peer scenario. Computing, 91, 169–215.

Carvalho, G., Almeida, H., Gatti, M., Vinicius, G., Paes, R., Perkusich,A., Lucena, C. (2006). Dynamic law evolution in governancemechanisms for open multi-agent systems. In 2nd Workshop onsoftware engineering for agent-oriented systems.

Collis, J., Ndumu, D., Nwana, H., Lee, L. (1998). The zeus agentbuilding tool-kit. BT Technology Journal, 16(3), 60–68.

DeLoach, S., Oyenan, W., Matson, E. (2008). A capabilities-basedmodel for adaptive organizations. Autonomous Agents and Multi-Agent Systems, 16, 13–56.

Deokar, A.V., & El-Gayar, O.F. (2011). Decision-enabled dynamicprocess management for networked enterprises. Information Sys-tems Frontiers, 13(5), 655–668.

Dignum, V.(Ed.). (2009). Multi-agent systems: semantics and dynam-ics of organizational models. IGI Global.

Dignum, F., & Vreeswijk, G. (2004). Advances in Agent Communica-tion. In Towards a testbed for multi-party dialogues, lecture notesin computer science (vol. 2922, pp. 212–230). Berlin/Heidelberg:Springer.

Dignum, V., Dignum, F., Sonenberg, L. (2004). Towards dynamicreorganization of agent societies. In Proceedings of workshop oncoordination in emergent agent societies (pp. 22–27).

Esparcia, S., & Argente, E. (2011). Formalizing virtual organiza-tions. In 3rd International conference on agents and artificialintelligence (ICAART 2011) (vol. 2, pp. 84–93). INSTICC.

Fogues, R.L., Alberola, J.M., Such, J.M., Espinosa, A., Garcia-Fornes,A. (2010). Towards dynamic agent interaction support in openmultiagent systems. In Proceedings of the 13th International con-ference of the catalan association for artificial intelligence (vol.220, pp. 89–98).

Gaston, M.E., & desJardins, M. (2005). Agent-organized networks fordynamic team formation. In Proceedings of the 4th internationaljoint conference on autonomous agents and multiagent systems(AAMAS05) (pp. 230–237).

Guessoum, Z., Ziane, M., Faci, N. (2004). Monitoring andorganizational-level adaptation of multi-agent systems. In Pro-ceedings of AAMAS 2004, (pp. 514–521). ACM.

Hoogendoorn, M., & Treur, J. (2006). An adaptive multi-agent organi-zation model based on dynamic role allocation. In Proceedings ofthe IAT ’06 (pp. 474–481).

Hubner, J.F., Sichman, J.S., Boissier, O. (2004). Using the MOISE+for a cooperative framework of MAS reorganisation. In Proceed-ings of the 17th Brazilian symposium on artificial intelligence(SBIA04) (vol. 3171, pp. 506–515).

Kaminka, G.A., Tambe, D.V.P.M., Pynadath, D.V., Tambe, M. (2002).Monitoring teams by overhearing: a multi-agent plan-recognitionapproach. Journal of Artificial Intelligence Research, 17.

Kota, R., Gibbins, N., Jennings, N.R. (2009). Decentralised struc-tural adaptation in agent organisations. In Organized adaptation inmulti-agent systems (pp. 54–71).

Kota, R., Gibbins, N., Jennings, N.R. (2012). Decentralisedapproaches for self-adaptation in agent organisations. In ACMtransactions on autonomous and adaptive systems (pp. 1–28).

Legras, F., & Tessier, C. (2003). Lotto: group formation by overhear-ing in large teams. In AAMAS ’03: Proceedings of the secondinternational joint conference on autonomous agents and multia-gent systems (pp. 425–432). New York: ACM.

Legras Onera, F. (2002). Using overhearing for local group formation.In AAMAS ’02 workshop 7 teamwork and coalition formation (pp.8–15).

Li, C., & Li, L. (2012). Collaboration among mobile agents forefficient energy allocation in mobile grid. Information SystemsFrontiers, 14(3), 711–723.

Luck, M., McBurney, P., Shehory, O., Willmott, S. (2005). Agent tech-nology: computing as interaction (A Roadmap for Agent BasedComputing). University of Southampton.

Malouf, R. (1995). Towards an analysis of multi-party discourse.http://citeseerx.ist.psu.edu/\viewdoc/summary. doi:10.1.1.8.4024.

Mathieu, P., Routier, J.C., Secq, Y. (2002a). Dynamic organizationof multi-agent systems. In Proceedings of the 1st internationaljoint conference on autonomous agents and multiagent systems(AAMAS02) (pp. 451–452).

Mathieu, P., Routier, J.-C., Secq, Y. (2002b). Principles for dynamicmulti-agent organizations. In Proceedings of the 5th Pacific Riminternational workshop on multi agents: intelligent agents andmulti-agent systems (PRIMA02) (pp. 109–122).

Omicini, A., Ricci, A., Viroli, M. (2008). Artifacts in the A&Ameta-model for multi-agent systems. Autonomous Agents andMulti-Agent Systems, 17(3), 432–456.

Padgham, L., Winikoff, M., Poutakidis, D. (2005). Adding debuggingsupport to the prometheus methodology. Engineering Applicationsof Artificial Intelligence, 18(2), 173–190.

Platon, E., Sabouret, N., Honiden, S. (2006). Overhearing and directinteractions: point of view of an active environment. In Environ-ments for multi-agent systems II (p. 121–138). Springer.

Pokahr, A., & Braubach, L. (2007). Jadex tool guide - release 0.96.Rebollo, M., Giret, A., Argente, E., Carrascosa, C., Corchado, J.M.,

Fernandez, A., Julian, V. (2009). On the road to an abstractarchitecture for open virtual organizations. In Proceedings of the10th international work-conference on Art. Neural Networks (pp.642–650).

Ringold, P., Alegria, J., Czaplewski, R., Mulder, B., Tolle, T., Burnett,K. (1996). Adaptive monitoring design for ecosystem manage-ment. Ecological Applications, 6(3), 745–747.

Rossi, S., Rossi, S., Busetta, P. (2004). Towards monitoring of groupinteractions and social roles via overhearing. Proceedings of CIA-04, 3191, 47–61.

Routier, J., Mathieu, P., Secq, Y. (2001). Dynamic skill learning: asupport to agent evolution, pp. 25–32.

Sanchez-Anguix, V., Espinosa, A., Hernandez, L., Garcia-Fornes,A. (2009). Mamsy: a management tool for multi-agent sys-tems. In 7th International conference on practical applicationsof agents and multi-agent systems (PAAMS 2009) (pp. 130–139).

Saunier, J., Balbo, F., Badeig, F. (2007). Environment as active supportof interaction. In Environments for Multi-Agent Systems III (pp.87–105). Springer.

Serrano, E., Gomez-Sanz, J.J., Botıa, J.A., Pavon, J. (2009). Intelli-gent data analysis applied to debug complex software systems.Neurocomputing, 72, 2785–2795.

Tichy, P., & Slechta, P. (2006). Java Sniffer 2.7 User Manual.Vazquez-Salceda, J., Dignum, V., Dignum, F. (2005). Organizing mul-

tiagent systems. Autonomous Agents and Multi-Agent Systems, 11,307–360.

Wang, Z.G., & Liang, X.H. (2006). A graph based simulation ofreorganization in multi-agent systems.

Weyns, D., Haesevoets, R., Helleboogh, A., Holvoet, T., Joosen, W.(2010). The MACODO middleware for context-driven dynamicagent organizations. ACM Transaction on Autonomous and Adap-tive Systems, 5, 3:1–3:28.

Weyns, D., Omicini, A., Odell, J. (2007). Environment as a firstclass abstraction in multiagent systems. In Autonomous agents andmulti-agent systems (pp. 5–30).

Page 18: An adaptive framework for monitoring agent organizations

256 Inf Syst Front (2014) 16:239–256

Juan M. Alberola is a postdoc researcher in the Departament deSistemes Informatics i Computacio of the Universitat Politecnica deValencia. He received his PhD from this University in 2013. His inter-est areas include agent organizations, adaptation, multiagent platforms,case-based-reasoning and electronic markets.

Luis Burdalo received the BS degree in computer science from theUniversitat Politecnica de Valencia (UPV), Spain, in 2004. Currently,he is working as a researcher in the Department of Information Sys-tems and Computation (DSIC) of UPV. Also, he is a member ofthe Group of Information Technology/Artificial Intelligence (GTI/IA)research group. His research interests include real-time systems, real-time artificial intelligence, and multi-agent systems.

Vicente Julian is an associate professor at the Departament de Sis-temes Informatics i Computacio of the Universitat Politecnica deValencia and a researcher at the GTI-IA Research Group of the Univer-sitat Politecnica de Valencia. His research interests include multiagentsystems, agent architectures, agent organizations, multiagent systemmethodologies and real-time agents. He is the coauthor of over 100book chapters, journal papers, technical reports, etc. about these top-ics. He received his Ph.D. in Computer Science from the ValenciaUniversity of Technology, Spain in 2002.

Andres Terrasa received the BS and PhD degrees in computer sciencefrom the Universitat Politecnica de Valencia (UPV), Spain, in 1995 and2001, respectively. Currently, he is working as an associate professorin the Department of Information Systems and Computation (DSIC)of UPV. Also, he is a member of the Group of Information Tech-nology/Artificial Intelligence (GTI/IA) research group. His researchinterests include real-time systems, realtime artificial intelligence, andmulti-agent systems.

Ana Garcıa-Fornes is a Professor at the Departament de SistemesInformatics i Computacio of the Universitat Politecnica de Valencia.Her interest areas include: real-time artificial intelligence, real-timesystems, development of multiagent infrastructures, tracing systems,operating systems based on agents,agent organizations, and negotia-tion strategies.