Reorganization in Dynamic Agent Societies PhD Thesis Juan Miguel Alberola Oltra Supervisors: Dr. Ana Garc´ ıa Fornes Dr. Vicente Juli´ an Inglada Departament de Sistemes Inform` atics i Computaci ´ o Universitat Polit` ecnica de Val` encia Cam´ ı de Vera s/n. 46022, Val` encia. Spain January 2013
196
Embed
Reorganization in Dynamic Agent Societies in Dynamic Agent Societies A thesis submitted in partial fulfilment for the degree of: Doctor of Philosophy in Computer Science (Doctorado
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Reorganization in DynamicAgent Societies
PhD Thesis
Juan Miguel Alberola Oltra
Supervisors: Dr. Ana Garcıa FornesDr. Vicente Julian Inglada
Departament de Sistemes Informatics i ComputacioUniversitat Politecnica de Valencia
Camı de Vera s/n. 46022, Valencia. Spain
January 2013
Reorganization in DynamicAgent Societies
A thesis submitted in partial fulfilment for the degree of:Doctor of Philosophy in Computer Science
(Doctorado de Reconocimiento de Formas e Inteligencia Artificial)Juan Miguel Alberola Oltra
Supervisors: Dr. Ana Garcıa FornesDr. Vicente Julian Inglada
Grup de Tecnologia Informatica i Intel·ligencia Artificial
Departament de Sistemes Informatics i ComputacioUniversitat Politecnica de Valencia
Camı de Vera s/n. 46022, Valencia. Spain
January 2013
Als que ja no esteu amb nosaltres.
Nothing is constant, except change.
Joey Tempest.
AgraımentsAcknowledgments
M’agradaria dedicar unes lınies a agrair a tots aquells que d’alguna forma o altram’han ajudat i suportat durant tot este temps. Estos agraıments son per als quehan estat al meu costat tant professionalment com personalment, pero especialmentm’agradaria nomenar a alguns d’ells.Primerament m’agradaria nomenar als meus directors, Ana i Vicente Julian. Ellsm’han donat moltes idees, suport i anims que m’han ajudat en esta trajectoria, i so-bretot la realimentacio necessaria de tot el que anava fent, fins i tot d’aquells articlesque semblaven somnolents. Sense la seua paciencia, ajuda i consells, esta tesi nohaguera sigut possible. Tambe m’agradaria mencionar especialment a Vicent Botti,amb qui he treballat i sobretot qui em va donar l’oportunitat de treballar al GTI, i aAgustın, pel seu assessorament durant la meua primera etapa al grup.Tambe m’agradaria agrair als meus companys de laboratori, dinars i articles el suportdurant este temps i sobretot, les dosis de risses i humor, que tant necessaries sonconstantment: Toni, Maria, Elena, Jaume, Joan, Victor, Jose, Luis, Bexy, Mario,Raul i Ricard, a qui dec part de la implementacio i integracio en la plataforma.I would like to also thank Tim for hosting me at Aberdeen and for his great supportand suggestions during and after my stay and also as a mentor in the doctoral consor-tium. I would like to extend these thanks to Murat, Hengfei and Wamberto, for theirhelp during my stay and make it so nice.I per acabar, sobretot m’agradaria agrair als meus pares i a Ester el seu suport, ajudai afecte durant estos anys. Ells son els que estan el dia a dia al meu costat i els quem’han recolzat i animat sempre.A tots vosaltres, gracies!!
I
Abstract
The new age of information technologies demands systems aimed to be every timemore dynamic and composed by heterogeneous entities. These entities must be ableto enter and exit the system, interact with each other, and adapt themselves due to en-vironmental requirements. In the last decades, multiagent systems have contribute tomodel, design, and implement autonomous systems with interaction and communica-tion capabilities. These systems are usually designed through agent societies, whichfacilitate the interaction, organization, and cooperation of heterogeneous agents inorder to achieve different goals. In order to this paradigm be suitable for the devel-opment of the next-generation systems, features such as dynamicity and adaptabilitymust be provided for modeling, managing, and executing agent societies.
In more detail, reorganization in agent societies provides a paradigm for designingopen, dynamic, and adaptive applications. This process requires determining theconsequences of applying changes not only in terms of the benefits provided, butalso measuring the adaptation costs as well as the impact that these changes have onall the components of the system. The few existing approaches for reorganizationmainly focus this process as responses to the society when changes occur, or as amechanism for maximizing the utility of the system. However, it is not possible todefine complex deliberation processes that obtain the best organizational configura-tion at each moment, based on an accurate measurement of the benefits obtained byreorganization and the costs associated to this process.
With this goal in mind, this thesis explores the area of reorganization in agent soci-eties and focuses specifically on a novel approach for reorganization. This approachprovides a decision-making support that considers reorganization in multiple organi-zational dimensions and is aimed at obtaining the adaptation with the highest poten-
III
tial for improvement in utility based on the costs of reorganization. By consideringdifferent requirements of the final configuration that is to be achieved, our approachaccurately predicts the impact of the reorganization in terms of two aspects: the costsassociated to carry out the reorganization process, and the benefits or costs that thisprocess causes not only to the agents involved in the change but also to the wholesystem. Moreover, since several changes on different dimensions can be considered,the range of adaptation solutions is increased.
IV
Resum
En la nova era de tecnologies de la informacio, els sistemes tendixen a ser cada ve-gada mes dinamics, compostos per entitats heterogenies capaces d’entrar i d’eixirdel sistema, interaccionar entre elles, i adaptar-se a les necessitats de l’entorn. Elssistemes multiagent han contribuıt en els ultims anys, a modelar, dissenyar i imple-mentar sistemes autonoms amb capacitat d’interaccio i comunicacio. Estos sistemess’han modelat principalment, a traves de societats d’agents, les quals faciliten la in-teraccio, organitzacio i cooperacio d’agents heterogenis per tal d’aconseguir diferentsobjectius. Amb la finalitat que estos paradigmes puguen ser utilitzats per al desen-volupament de les noves generacions de sistemes, caracterıstiques com la dinamicitati capacitat de reorganitzacio han de ser incorporades en el modelat, gestio i execuciod’estes societats d’agents.
La reorganitzacio en societats d’agents oferix un paradigma per dissenyar aplicacionsobertes, dinamiques i adaptatives. Este proces requerix determinar les consequenciesde canviar components del sistema, no sols en funcio dels beneficis que es podenaconseguir sino a mes a mes, mesurant els costos d’adaptacio aixı com l’impacte queestos canvis tenen en tots els components del sistema. Les propostes actuals de reor-ganitzacio es centren en enfocar la reorganitzacio com una resposta de a certs canvis,o be com un mecanisme per millorar la utilitat del sistema. No obstant aixo, no espoden definir mecanismes complexos de decisio que obtinguen la millor configuraciodels components organitzacionals en cada moment, basant-se en una avaluacio min-uciosa dels beneficis que es podrien obtenir aixı com dels costos associats al proces.
Centrant-nos en este objectiu, esta tesi explora l’area de reorganitzacio en societatsd’agents i es centra principalment, en una proposta novedosa per reorganitzacio. Estaproposta oferix un suport de presa de decisions que considera canvis en multiples
V
dimensions organitzacionals, i obte l’adaptacio que te associada la millora mes grand’utilitat, tenint en compte els costos associats al proces de reorganitzacio. Con-siderant diversos requisits de la configuracio futura que es podria obtenir, la nostraproposta prediu l’impacte de la reorganitzacio en dos termes: els costos que es re-querixen per aplicar el proces, i els beneficis i costos que la reorganitzacio causaen tots els components de la societat. A mes a mes, el fet de considerar canvis endiverses dimensions organitzacionals, incrementa el ventall de possibles solucions.
VI
Resumen
En la nueva era de tecnologıas de la informacion, los sistemas tienden a ser cadavez mas dinamicos, compuestos por entidades heterogeneas capaces de entrar y salirdel sistema, interaccionar entre ellas, y adaptarse a las necesidades del entorno. Lossistemas multiagente han contribuıdo en los ultimos anos, a modelar, disenar e im-plementar sistemas autonomos con capacidad de interaccion y comunicacion. Es-tos sistemas se han modelado principalmente, a traves de sociedades de agentes, lascuales facilitan la interacion, organizacion y cooperacion de agentes heterogeneospara conseguir diferentes objetivos. Para que estos paradigmas puedan ser utilizadospara el desarrollo de nuevas generaciones de sistemas, caracterısticas como dinamici-dad y capacidad de reorganizacion deben estar incorporadas en el modelado, gestiony ejecucion de estas sociedades de agentes.
Concretamente, la reorganizacion en sociedades de agentes ofrece un paradigma paradisenar aplicaciones abiertas, dinamicas y adaptativas. Este proceso requiere deter-minar las consecuencias de cambiar el sistema, no solo en terminos de los beneficiosconseguidos sino ademas, midiendo los costes de adaptacion ası como el impactoque estos cambios tienen en todos los componentes del sistema. Las propuestas ac-tuales de reorganizacion, basicamente abordan este proceso como respuestas de lasociedad cuando ocurre un cambio, o bien como un mecanismo para mejorar la util-idad del sistema. Sin embargo, no se pueden definir procesos complejos de decisionque obtengan la mejor configuracion de los componentes organizacionales en cadamomento, basandose en una evaluacion de los beneficios que se podrıan obtener asıcomo de los costes asociados al proceso.
Teniendo en cuenta este objetivo, esta tesis explora el area de reorganizacion en so-ciedades de agentes y se centra principalmente, en una propuesta novedosa para reor-
VII
ganizacion. Nuestra propuesta ofrece un soporte de toma de decisiones que consid-era cambios en multiples dimensiones organizacionales, y obtiene la adaptacion queofrece la mejora mas prometedora en utilidad, basandose en los costes asociados a lamisma reorganizacion. Teniendo en cuenta diferentes requisitos de la organizacionque se quiere obtener, nuestra propuesta predice el impacto de la reorganizacion atraves de dos aspectos: los costes que se requieren para aplicar el proceso, y losbeneficios y costes que este proceso tiene en todos los componentes del sistema.Ademas, el hecho de considerar posibles cambios en varias dimensiones, el abanicode soluciones se ve incrementado.
Being the reorganization in agent societies an important research focus in the last few
years, it is relevant to analyze how current reorganization approaches provide support
to agent designers in order to develop adaptive agent societies. The goal of this Chap-
ter is to describe in detail some of the most relevant existing approaches, in order to
show the advantages and limitations of each one. In addition, related specially to
these limitations, we can define a long-term goal related to define which research
issues would be interesting to be addressed in the next future years, in order to de-
velop agent societies that autonomously adapt and regulate themselves in response
to events and changes in the environment. First, we describe what is reorganization
in agent societies and different parameters that are useful to compare different ap-
proaches along the reorganization life-cycle. Second, we detail some of the most
relevant works related to reorganization according to the parameters remarked above.
Finally, we outline some open challenges that can be found due to this analysis.
11
12 2.1. Reorganization in Agent Societies
2.1 Reorganization in Agent Societies
The concept of agent society can be slightly different depending on the authors. How-
ever, common properties can be found along the literature [45, 27, 37, 8]. According
to these, we can view an agent society as a flexible and robust group of interacting
agents having common goals. Within the society, agents have different roles which
require a set of competencies. These agents can interact with each other, identify
their abilities, and request activities on behalf of others, being observed to respect
social norms. Agent societies provide the basis for designing complex, structured,
organized, and regulated systems. Depending on the application and the problem,
each agent society model defines different requirements and uses different names to
represent some of the above elements.
Reorganization in agent societies can be defined as a process that changes the society
[55]. This reorganization is referred to modifications in the structure and behavior of
the agent society, such as adding, removing, or substituting components, which are
done while the system is running and without bringing it down [36]. These modifica-
tions are related to the organization specification, i.e., roles, goals, services, norms,
and the agent population, as well as changes in the relationships among these compo-
nents. In this respect, the life-cycle of a reorganization can be defined as the process
of analyzing the problems of the current agent society, proposing adaptation solu-
tions, selecting and implementing a reorganization, and evaluating this process once
it is applied.
Authors agree that reorganization [101, 62] and more specifically, reorganization in
agent societies [91, 55], can be represented as a loop process composed by different
phases. The specific definition of each phase may slightly change from one author to
another. We try to use a general definition that can be adjusted to different models
of agent societies, in order to cover a wide range of applications. The reorganiza-
tion process starts by allowing the system to perceive information from the managed
elements (resources, agents, etc.). This information is analyzed in order to assess
2. Related Work 13
that changes are required and one or more set of changes (adaptation solutions) are
proposed. Then, a specific solution is selected and needed to be implemented, which
consists of applying the changes that are required. Finally, the reorganization process
is evaluated and the loop is closed by starting again the starting phase. According
to this, we define the following main phases for representing the life-cycle of a reor-
ganization process: monitoring, design, selection, and evaluation. Frameworks that
support reorganization in agent societies implicitly define issues that are related to
these phases. In order to discuss the features of the most relevant approaches, we use
these phases to analyze the support provided by these approaches for these phases
and how this support is implemented. In the following section we introduce a run-
ning example in order to support the discussion of these phases. Then, we present a
detailed description of each phase.
2.1.1 A Workshop Management System
As a simple example to illustrate an agent society, let us consider a system for sup-
porting the process of producing the technical program for an international workshop,
which is similar to other examples used for illustrating adaptive systems [73, 25]. In
this example, agents are associated to the actors involved in the process and play
some specific roles inside this society (PC chairs, PC members, reviewers, etc.).
Depending on the role or roles played by each agent, some services or capabilities
must be provided. As an example, an agent playing the PC chair role must provide
some management skills, while an agent playing the reviewer role must provide some
knowledge to evaluate the submitted papers. The objective of the agent society can
be defined as organizing the workshop, while agents or roles can be assigned to fulfill
some sub-objectives such as the paper evaluation or the paper selection.
Interaction between agents inside the society can follow some structure, according to
the interaction patterns that are defined for communication. As an example, reviewers
can only interact with the PC chairs, not allowing direct interaction between two
reviewers. In addition, some regulations or norms can be defined at different levels
14 2.1. Reorganization in Agent Societies
in this system. An example of these regulations can represent that a reviewer cannot
evaluate a paper that is not assigned to himself.
The objective of this example is to help the reader to better understand all the features
that are defined along the paper, by providing a realistic real-world example. Depend-
ing on the different approaches some of the requirements of this example would be
represented in different ways.
2.1.2 Monitoring
The monitoring phase defines the problems of why and when a society needs to be
adapted. Monitoring is essential in order to be able to detect undesirable behavior
that needs to be corrected [48], which can be triggered by changes in the environ-
ment. Theorists of human societies [13, 98, 53] define two possible categories of
strategy options for reorganization: environmental determinism and organizational
choice. The first option corresponds to reactive changes that are triggered by the so-
cial interaction with the environment. The second option refers to the social ability
to create a voluntary response in terms of adaptation. According to these strategy
options, we propose to classify the monitoring phase in agent societies by following
a terminology that is more widely used in agent societies [36].
A reactive strategy occurs when the agent society automatically responds to events
that cause a reorganization such as the addition or deletion of a new role, agent, etc.
These events cause the agent society to make the required adjustments in order to
continue to fulfill its goals. As an example, in the workshop management system,
a reactive strategy could detect that some paper needs to be reallocated due to its
reviewer is not available anymore. Approaches that follow this kind of reorganization
focus on the need for an adaptation process to be guided by events. In contrast, a
proactive strategy requires an implicit mechanism for reasoning about the current
situation in order to decide that a reorganization is required. In the example of the
workshop management systems, a proactive strategy could decide that a paper needs
2. Related Work 15
to be reallocated in order to assign it to a reviewer which is more related to the topic.
Related to these strategies, the reorganization logic is used to define that an adaptation
is required. This reorganization logic can be predefined, if the events that trigger
this adaptation or the mechanisms for deciding that a reorganization is required are
implemented at design time. Otherwise, this logic can be adaptable if it can be
changed when the system is running. In the workshop management system, this logic
could represent that the deadline must be extended if the number of submitted papers
do not reach a minimum threshold. In a predefined logic this threshold could not be
changed at runtime, while in an adaptable logic this could be changed depending on
the number of papers already submitted.
According to other works related to reorganization in agent societies [48], the in-
formation that is acquired can be specified and used off-line or on-line in order to
improve the system’s behavior. An off-line specification defines the information to
be monitored at design time and cannot be changed; in contrast, an on-line specifica-
tion, the information that is monitored can change depending on the requirements of
the system during execution. Similarly, the information that is monitored can be used
off-line or on-line.
Finally, in human societies, the decision-making process can be carried out by indi-
viduals or by their institution [53]. Similarly, we define two different implementation
types for the monitoring phase: a centralized way if an agent or a specific authority
is responsible for deciding that a reorganization is required; a distributed way if a
pool of agents can decide that a reorganization is required either autonomously or
by means of an agreement. A support for monitoring should be provided by any ap-
proach that supports reorganization. The greater dynamicity provided by this support
to implement the monitoring mechanisms, the more flexibility would be provided to
develop adaptive agent societies.
16 2.1. Reorganization in Agent Societies
2.1.3 Design
The design phase defines the problem of how a reorganization is carried out. Once
a reorganization process is required, the design phase includes an analysis of the
organizational elements and a reorganization proposal that changes specific elements
of the agent society. Similar to the monitoring phase, design can also be carried out in
a centralized way if a single agent or a central authority is responsible for proposing
the reorganization solution. A distributed design involves the participation of several
agents in the reorganization solution proposal.
Depending on the specific model, current reorganization approaches provide support
for changing different elements of the agent society based on the requirements of the
problems that they consider.
Some authors propose a classification of reorganization types in behavioral and struc-
tural adaptation [36]. Nevertheless, a more detailed classification can be provided by
including common types of changes that can be found in the literature according to
the following dimensions:
• Open System support allows changes in the agent population, i.e., agents can
enter or leave the system. As an example, in the workshop management sys-
tem this would be referred as allowing the entrance of new reviewers into the
system due to the number of submissions are higher than expected.
• Emergence support allows elements that define the social behavior to be changed;
i.e., the addition or deletion of the roles that agents can play, social goals, etc.
As an example, in the workshop management system this would be referred as
allowing the creation of a new publicity chair role, which is required to dis-
seminate information about the workshop to the largest possible appropriate
technical audience.
• Behavioral adaptation support allows changes related to the behavior of the
agents that populate the society. For example, this involves changes in the ca-
2. Related Work 17
pabilities offered by an agent in order to be able to play a role. As an example,
in the workshop management system this would be referred as allowing agents
to add new topics in which they are experts.
• Functional adaptation support allows changes in how different elements of
the agent society are related to each other, which affects the society function-
ality, such as changes in the services offered by a role or changes in the roles
that agents play. As an example, in the workshop management system this
would be referred as allowing the reassignment of a paper to another reviewer
when the previously assigned reviewer is not able to provide its reviews by the
deadline.
• Structural adaptation support allows changes in the relationships between
elements of the agent society, which affects the social structure, such as re-
lationships among the agents. As an example, in the workshop management
system this would be referred as allowing the interaction between two review-
ers which were not previously allowed to interact to each other, in order to
discuss the acceptance of a given paper.
• Norm adaptation support allows changes in the regulations of the agent so-
ciety. This support can be related to modifications in the specification of the
norms that govern the agent society as well as the addition or deletion of new
norms. As an example, in the workshop management example this would be
referred as extending the notification deadline due to several requests by re-
viewer agents.
Depending on the elements that are allowed to be changed in a reorganization process,
a wide range of different solutions can be provided. Therefore, it would be desirable
for a reorganization to be able to consider as many dimensions as possible. As we
will see in the following sections, some reorganization approaches focus on changes
in an specific dimension, while other approaches are more flexible by considering
changes in several dimensions.
18 2.1. Reorganization in Agent Societies
2.1.4 Selection
The selection phase defines the problem of choosing which reorganization is finally
implemented. If several reorganizations have been proposed in the design phase, the
selection phase determines which of these proposals is applied. Similarly to previ-
ous phases, if a single agent or a central authority is responsible for this selection,
we consider the selection phase to be centralized. In contrast, if several agents are
involved in the selection phase (for example, by a negotiation process or by social
choice), we consider the selection phase to be distributed. Depending on whether a
single reorganization is designed or several designs are proposed, several criteria can
be used in the design phase to guide the design, or in the selection phase to guide the
selection.
In some scenarios, reorganization can be viewed as the mechanism that allows the
society to achieve the social goals. As an example, this occurs when some event
prevents the society to achieve its goals, and therefore, a reorganization is required
to achieve a goal fulfillment. In other scenarios, according to Dignum et al. [36],
reorganization is desirable if it leads to increase the utility of the system. These au-
thors define two kinds of utilities: individual and social. Individual utility is different
for each agent, while social utility can take into account the individual utility of each
agent. Nevertheless, in some scenarios, an individual utility increase may not cause
a direct social utility increase. What is more, an individual utility increase may have
a negative impact in the society. Therefore, it is relevant to analyze whether the util-
ity that is taken into account for the reorganization is referred to the direct benefits
caused in the agents involved in the change, or whether the utility also considers
indirect benefits, which are referred to other agents of the society.
The utility must take in account both the reorganization success and the cost of any
change needed to achieve the reorganization from the current situation [45, 5]. Actu-
ally, other works such as Cheng et al. [26] state that the reorganization process must
be also evaluated, e.g. in terms of its impact in space of time.
2. Related Work 19
As stated in [67], most organizational changes may encounter problems: they often
take longer than expected and desired; the cost of managerial time may be increased;
and there may be resistance from the people involved in the change. In order to deal
with this problem, we consider that both the benefits obtained by reorganization and
the costs associated to this process are important aspects that should be taken into
account in order to define the suitability of a reorganization process.
According to the above criteria, we classify the dimensions used for the selection
phase depending on the issues that are considered for reorganization. We include
benefits and costs in separated dimensions in order to provide a global view that can
be applied to different approaches. Both benefits and costs can be referred to time,
money, resources, and so on, depending on which is the society focus:
• The Goal fulfillment takes into account the fulfillment of the social goals in
order to select the reorganization that is implemented. As we stated above,
reorganization in this case is only focused on achieving the society’s stability
by fulfilling the social goals. As an example, in the workshop management
system, a selection focused on the goal fulfillment could be triggered when the
agent associated to the PC chair role is not available to achieve its goals and
the system needs to reallocate another agent to this role.
• The benefits of the agent society in order to design or to select a reorganization
can be classified as:
– Direct benefits represent the benefits that are associated to the individ-
ual elements involved in the change. As an example, in the workshop
management system this could be referred as how the reviewer ax is pos-
itively affected if it is reallocated to review a different paper, e.g. if the
new assigned paper if more related to its research topic, its revision would
be more profitable to the author.
– Indirect benefits represent the benefits that are associated to other ele-
ments that are not involved in the change but that can be influenced by
20 2.1. Reorganization in Agent Societies
this change. As an example, in the workshop management system this
could be referred as how the reviewer ay is positively affected if the re-
viewer ax is reallocated to a different paper, e.g. if the reallocation of axcauses that the paper assigned to ay is changed by the paper previously
assigned to ax, which is more related to its research topic.
• Similarly to the benefits, costs can be divided in:
– Direct costs represent the individual costs that are associated to the el-
ements involved in the change. As an example, in the workshop man-
agement system this could be referred as how an agent ax is negatively
affected if it is reallocated to review a different paper, e.g. if the new as-
signed paper if less related to its research topic, its revision would be less
profitable to the author.
– Indirect costs represent the costs that are associated to other elements
that are not involved in the change but that can be influenced by this
change. As an example, in the workshop management system this could
be referred as how a different agent ay is negatively affected if ax is
reallocated to a different paper, e.g. if the reallocation of ax causes that
the paper assigned to ay is changed by the paper previously assigned to
ax, which is less related to its research topic.
In addition, as we stated above, other costs related to the reorganization process
can be considered:
– Reorganization costs, which allow a representation of the costs required
to carry out the reorganization process, i.e. to apply each change associ-
ated to the reorganization. As an example, in the workshop management
system this could be referred as the time required to reallocate a new
paper to the reviewer ax.
– Computation costs, which allow a representation of the costs required to
compute or select the reorganization. These costs are usually represented
2. Related Work 21
as the time required to design a reorganization and select a solution. As an
example, in the workshop management system this could be referred as
the computation cost required to calculate that ax is reallocated to review
a new paper.
Depending on how some of these criteria are considered for reorganization,
the consequences of reorganization can be accurately estimated to a greater or
a lesser degree. These consequences refer to how a reorganization influences
the fulfillment of the goals of the system, how the reorganization influences
the agent society utility (i.e. how beneficial it is for any agent of the society),
and how costly the reorganization is (i.e. how each agent could be affected
and how costly the process to be carried out is). Therefore, the more criteria is
considered for selecting the reorganization the more specific the reorganization
impact can be estimated.
2.1.5 Evaluation
Reorganization approaches should also encompass techniques for monitoring and
controlling the system once the reorganization is deployed [70]. The evaluation phase
defines the problem of analyzing how well a reorganization has been performed. This
phase provides feedback from the reorganization in order to assess whether or not the
reorganization was as expected. This allows to evaluate the quality of the reorgani-
zation that was designed and selected as well as the quality of the society that was
achieved, in order to take it into account for future reorganizations, which increases
the quality of future reorganizations.
Researchers from human societies stated the relevance of a feedback process in order
to achieve a successful reorganization [12, 11, 19]. This feedback helps to improve
the control of new environments. According to these authors, several properties are
related to this process such as the frequency of the feedback, the method (by inquiry
or in time-periods), the individual that provides the evaluation, and the information
22 2.1. Reorganization in Agent Societies
or topic that is provided. Other works related to adaptive systems such as [26] define
different factors that measure the criticability of the reorganization, the predictabil-
ity, the overheads associated to it, and whether the system is resilient in the face of
change.
All of these properties define evaluation processes. However, we propose a general
classification in three general dimensions in order to differentiate which is the aim
of the information obtained by this evaluation. These dimensions allow to classify a
wide range of approaches depending on which of the previous phases (monitoring,
design, and selection) the evaluation provides the feedback for. The techniques in
which the evaluation is supported by each reorganization approach will be discussed
and analyzed in the following sections.
• An evaluation of the reorganization proposal is carried out when the approach
analyzes the reorganization that has been designed depending on the require-
ments of the problem in order to consider this information for future reorga-
nizations. This dimension provides an evaluation that is related to the design
that has been carried out, allowing past decisions to be considered in the future,
if the reorganization requirement is similar. As an example, in the workshop
management system this could be referred as evaluating which agents have
been reallocated to which papers in order to consider this reallocation in the
future, if the reorganization requirements are similar.
• An evaluation of the reorganization process is carried out when the approach
analyzes the reorganization execution in order to improve the predicted imple-
mentation of the process. This refers to issues such as whether or not the time
and resources used were as expected during the implementation, if a setback
appeared during this process, etc. This dimension provides an evaluation that is
related to the selection that has been chosen, allowing the approach to improve
the accuracy for estimating the consequences of future reorganizations, and
therefore, improving the selection process. As an example, in the workshop
management system this could be referred as evaluating if the reorganization
2. Related Work 23
costs for reallocating agent ax to review a new paper were as expected or in
contrast, if this agent was reluctant to change.
• An evaluation of the future state of the society is carried out when the ap-
proach analyzes the future state of the society that is achieved, in order to im-
prove the predicted performance of the future society. This dimension provides
an evaluation that is related to the monitoring process, allowing to improve the
accuracy for estimating the performance of future modifications. As an exam-
ple, in the workshop management system this could be referred as evaluating if
the reallocation of agent ax to review a new paper caused the expected benefits
and costs (e.g. if the deliberation process delay was as fast as expected when
the reallocation was computed).
Similarly to previous phases, the evaluation phase can be centralized if a single agent
or a central authority is responsible for this phase, or distributed, if several agents
are involved in this process. The greater amount of information related to the level
of success of the reorganization is incorporated into the system, the more learning
capabilities can be associated to the process for gaining experience from past reorga-
nizations.
2.2 Approaches for Reorganization in Agent Societies
In this section, we provide an analysis of some relevant approaches to discuss their
suitability in dealing with reorganization in agent societies. For each approach we
describe their support for each phase of the reorganization life-cycle as well as some
critical considerations. In Section 2.2.9 we show a graphical comparison between all
of them in Table 2.9.
According to these criteria, several approaches proposed in the literature are only
focused on specific phases or changes in specific dimensions. As an example, ap-
proaches such as [81, 90, 50] focus on the selection of the best role reallocation,
24 2.2. Approaches for Reorganization in Agent Societies
while other works such as [59, 97] are focused on the selection of the best structural
reorganization. Other works are especially focused on the monitoring phase [48]
or in learning algorithms to optimize the agent interactions [3]. In addition, other
approaches require a high human interaction in order to choose the reorganization
decision [24].
Other well-known approaches can be analyzed since the perspective of several phases
and dimensions. In the following, we analyze some of these recognized approaches.
2.2.1 OMACS
OMACS (Organization Model for Adaptive Computational Systems) [31] (Table 2.1)
is a metamodel for defining the reorganization at runtime in order for an agent orga-
nization to be able to achieve its goals effectively. The society model used in this
approach is an organization composed by goals, roles, and agents along with addi-
tional entities called capabilities, assignments, and policies. Each role is defined to
achieve a particular goal or a set of goals. Capabilities determine which agents are
assigned to which roles according to the set of capabilities that are required to play
each role and the capabilitites possesses by each agent. Assignments define a set of
agent-role-goal tuples 〈a, r, g〉 to indicate that an agent a is assigned to play the role
r in order to achieve the goal g. Finally, policies specify the regulations of the system
such as “one agent may only play one role at a time”.
2.2.1.1 Monitoring
Reorganization is carried out reactively way when an event occurs and changes the
state of the organization, which triggers the reorganization [75, 76, 73]. The agent
that is responsible of realize these changes is the organization master, which is a
specialized agent that possesses complete information about the organization and
which is able to execute reorganization algorithms. The information that is required
by the organization master is specified at design time but it is used on-line.
2. Related Work 25
A specific kind of reorganization policy is used to describe the reorganization logic
at design time. This logic defines rules that represent direct actions that are taken in
order to trigger the reorganization. An example of reorganization policy can express
that “if agent ax is playing role r to achieve the goal g, and ax becomes incapable
of playing it, then if agent ay is capable of playing r, it should be assigned to goal
g and ax should be de-assigned”. This reactive approach can increase the reasoning
efficiency in anticipated scenarios.
2.2.1.2 Design
Reorganization design is carried out as a centralized process that changes the as-
signment of agents to roles when different events occur. Current implementation
considers two types of events that change the state of the organization. On the one
hand, changes in the goal set cause a reorganization: an insertion of a new goal, a
goal achievement, and a goal failure. On the other hand, changes in agents also cause
a reorganization: if an agent is removed from the organization, and if an agent loses
a capability that negates its ability to play a role that it is assigned.
These events are specified before running the system and are responsible for causing
reorganization, but they cannot be used in the design phase of the reorganization
process. Therefore, the changes considered in the design phase define functional
adaptation. Once a trigger occurs, general-purpose reorganization algorithms are
implemented to find the appropriate assignments, which determine the design of the
solution [102].
2.2.1.3 Selection
In order to obtain the best set of assignments that maximizes the organization’s ability
to achieve its goals, functions are defined to evaluate how effective a role is in achiev-
ing a specific goal, and how effective an agent is in providing a capability. These
functions return a real value that determines this effectiveness. Thus, an assignment
26 2.2. Approaches for Reorganization in Agent Societies
determines how well an agent can play a role to achieve a goal. The organization as-
signment function computes a score that represents the goodness of the organization
[30]. This is usually calculated as the sum of the scores of all the assignments. We
must also point out that changes in the effectiveness of agents are not considered.
In the algorithms that are used for determining the appropriate assignments, every
combination of goals, roles, and agents must be computed. In order to avoid this, the
authors propose using assignment policies that restrict the range of valid solutions,
such as restricting the number of roles played by a single agent. In this approach, if
an optimal reorganization is found, this is automatically selected and implemented by
the organization master in a centralized implementation, who sends the new assign-
ments to agents . As an example, in [74] authors present a reorganization process that
is approached as a role reallocation that determines which agent plays which role.
2.2.1.4 Evaluation
The OMACS approach does not provide support to measure the execution of the
reorganization in terms of how the process can finally be carried out or whether or
not the reorganization has achieved the expectations. Since the monitoring phase is
carried out by policies, metrics could be used to allow designers to make design-
time tradeoffs between flexibility and computational costs. Nevertheless, there is no
specific definition of costs associated to the reorganization process itself. Therefore,
these metrics are difficult to measure at design time without any knowledge of how
the organization will behave at runtime.
OMACS specifies different scores associated to relationships in order to provide a
measurement for organization utility. The optimal assignment refers to the organiza-
tion assignment function that has the highest score. However, the costs of applying
changes and the impact that these changes have on the rest of the agents cannot be
specified in this approach. It is assumed that an agent a being reallocated to play
a role r can be carried out with a non-associated cost. Moreover, this assignment
2. Related Work 27
Table 2.1: Reorganization phases in OMACS
OMACSMonitoring Reactive reorganization triggered by events. Centralized implementation by
the organization master. The information that is monitored is specified at de-sign time but is used on-line. The reorganization logic is predefined and cannotbe changed.
Design Centralized algorithms that determine the best set of assignments. Functionaladaptation: changes in the assignment of agents to roles.
Selection If a new best set of assignments is obtained, this is automatically selected bythe organization master and implemented by sending this information to theagents involved in this process. The best set of assignments fulfills the organi-zation goals and maximizes the organization utility.
Evaluation There is not any evaluation implemented.
would not have any effect (positive or negative) on the rest of the population. By
considering reorganization costs (material costs, resources, time, etc.), the costs for
achieving the optimal assignment could be high and may not be worth the benefits
obtained. In contrast, a sub-optimal assignment might be achieved with a lower cost,
increasing the value of the overall process.
2.2.2 Moise
The Moise reorganization approach proposed by [55] (Table 2.2) is aimed at provid-
ing support in order to adapt an agent organization to its environment and to help it
to efficiently achieve its goals. The society model used in this approach is Moise+
[56]. This model defines an organization which is composed by agents, roles, mis-
sions, and the deontic dimension. Each role represents a set of constraints that an
agent follows when it plays this role. These constraints represent the structure di-
mension (relations between roles) and the functional dimension (missions, deontic
dimension). A mission is a set of coherent goals that an agent can commit to. The
deontic dimension specifies the permissions and obligations of a role in a mission.
In order to carry out the reorganization process, specific roles are defined. The or-
ganization manager role is played by an agent, which is in charge of managing the
28 2.2. Approaches for Reorganization in Agent Societies
reorganization process. This agent has complete information about the current state
of the organization and has permission to change it. The historian role is defined to
maintain information regarding the entire history of the organization. This informa-
tion could be useful for the monitoring and design phases. An agent that plays this
role informs the organization manager of all the social events that it has participated
in. The monitor role is in charge of identifying situations that require a reorgani-
zation. Finally, the adaptation expert role is played by agents that are in charge of
identifying current problems of the organization and proposing reorganization solu-
tions.
2.2.2.1 Monitoring
In the Moise reorganization approach, reorganization is a proactive process that changes
the current state of the organization into a new one [55]. The monitoring phase is im-
plemented in a distributed way by monitor agents. These agents are able to decide
that a reorganization is required based on their internal knowledge. The information
required to be monitored is specified off-line but is used on-line without stopping the
execution. The logic for reorganization is implemented at design time and cannot be
changed during runtime. As an example, a monitor agent can realize that a reorgani-
zation is required since a request cannot be satisfied due to the production rate going
below a threshold, etc.
2.2.2.2 Design
A wide range of possible changes is defined: the roles played by agents, the number
of agents playing a role, the parameter related to an obligation, etc. When a reor-
ganization is required, the organization manager is able to invite adaptation expert
agents to propose design solutions. These agents are in charge of providing a plan of
changes that modifies the current organization into a new organization. The plan of
changes is composed by individual events such as adding a specific role, a mission,
2. Related Work 29
etc. Thus, the design phase can also be implemented in a distributed way.
2.2.2.3 Selection
In the case that several designs are proposed for reorganization, the organization man-
ager is mainly responsible for carrying out the selection of the changes to finally be
implemented according to the own methods of this manager. The main problem is
to define the criteria for selecting the most promising proposal, which could be car-
ried out individually by the organization manager or also in a distributed way with
the participation of other agents. As an example, in [54], a voting system between
experts is used to determine the design that is finally going to be implemented. In
[55], a Q-Learning algorithm is used to find out the decision policy, which is used in
the selection phase. The selection implemented in the examples provided considers
designs with the most promising improve in the benefits caused in the agents involved
in the change. Some costs are also considered such as the number of roles that are
required to be changed.
2.2.2.4 Evaluation
An evaluation phase is not explicitelly defined in the Moise reorganization approach.
However, since the historian agent maintains information of the organization life-
span, specific information about the successful performance of the organization that
is achieved after reorganization, can be used by the organization manager for future
reorganizations [54]. There is no support for measuring how the organization has
been carried out in order to estimate the success of future reorganization processes.
Again, the use of agents to support these phases makes the approach so general that
specific solutions must be implemented by the agent designer.
Note that, this reorganization approach provides great flexibility and can be used in
a wide range of applications since individual agents are in charge of carrying out
the reorganization phases. Different methods can be implemented at the agent level
30 2.2. Approaches for Reorganization in Agent Societies
depending on the domain. Constraints regarding the monitoring, design, and selec-
tion phases are defined according the application requirements. Since several agents
may participate in the monitoring, design, and selection phases, different mecha-
nisms can be used to provide heterogeneous design solutions and also to select these
solutions, such as case-based reasoning, learning, negotiation, etc [2, 29]. However,
this flexibility can become a drawback since specific methods are not provided by
the reorganization approach itself to carry out these phases. Specifically, methods for
designing solutions are not provided since they are assumed to be under the control of
the adaptation expert agents. If this behavior is implemented at design time, the infor-
mation regarding how the organization is performing at runtime cannot be included.
Moreover, methods for measuring the goodness of a reorganization are not provided
by the Moise reorganization approach. This goodness should be represent the impact
that the reorganization would cause in the organization (direct and indirect benefits
and costs) and the costs for applying the reorganization. This support must be im-
plemented at the application level. As an example, in [54], three criteria are chosen
for selecting a solution: the experience of each expert in past reorganizations, the
success of the proposals of each expert in past reorganizations (which are obtained
by the Historian agent), and the cost of the proposal in terms of global costs related
to how many missions and roles would be deleted if the proposal is implemented.
The concept of plan of changes provided by reorganization expert agents has two
main advantages. The first advantage is that defines step by step how the organization
specification should be changed. Thus, when an expert proposes a plan of changes,
implementation issues also have to be dealt with (add the role rx and afterwards
remove the role ry, remove the role ry and afterwards add the role rx). The second
advantage is the possibility of changing only some part of the organization.
As a general conclusion, we consider that the Moise reorganization approach has the
advantage that since many agents are used to provide the different phases of the reor-
ganization process, many different reorganization solutions can be used, and, there-
fore, a better reorganization decision can be taken. However, the main disadvantage
2. Related Work 31
Table 2.2: Reorganization phases in Moise
MoiseMonitoring Proactive reorganization carried out in a distributed way by monitor agents.
The information that is monitored is specified off-line and it is used on-line.The reorganization logic is predefined and cannot be changed.
Design Distributed design is carried out by expert agents. A wide range of changes isallowed: open system (new agents can enter in the organization), emergence(new roles can be created), functional adaptation (the assignment of roles toagents), structural adaptation (the relationships between the agents), normativeadaptation(the parameter related to an obligation).
Selection The organization manager carries out individually the selection of the proposalor by requesting other agents. The direct benefits caused in the organizationare usually considered in the selection phase. Some global costs such as thenumber of missions that are deleted are used as well.
Evaluation The historian agent can be used for retrieving information regarding how wasthe performance of the future organizations after reorganization. In some ex-ample provided, learning techniques are used to evaluate how long a solutionhas been valid and which has been its performance, in order to take into ac-count past decisions for future reorganizations.
of this approach is that all the reorganization phases must be implemented at the
agent level. Thus, the agent designer must provide his own methods and tools for the
specific application.
2.2.3 Self-organization in task-solving environments
Kota et al. propose a self-organization approach that is mainly focused on task-
solving environments (TSEs) [64, 65, 66] (Table 2.3). Specifically, this approach has
the following properties: the reorganization process is continuous, is carried out in-
ternally, and has no central control. The society model used in this approach consists
of an organization of cooperative agents that are in a TSE. Agents receive tasks, exe-
cute actions, and return a result. A TSE presents a dynamic stream of tasks that have
to be performed. These tasks require services to be processed, which are provided by
agents. Agents need to interact with one another in order to access services provided
by other agents. In order to do this, the agents are connected with each other accord-
32 2.2. Approaches for Reorganization in Agent Societies
ing to different levels of relationships: acquaintance, peer, and superior-subordinate.
These relationships define the structural topology of the organization.
In this approach, reorganization consists of a process that changes the structural
topology of the society in order to increase the performance. These type of structural
changes is a common adaptation in other kind of general networks [93, 51]. The TSE
approach is aimed at enabling each pair of agents to continuously and autonomously
evaluate (and change if required) their relationships based on past interactions.
2.2.3.1 Monitoring
Reorganization phases are carried out in a distributed way by each pair of agents. The
monitoring phase is proactively carried out by each pair of agents, which evaluate
their relationship by taking into account their history of interactions. The internal
logic for reorganization is provided at design time. The information that is monitored
is used on-line without stopping the execution and is also specified on-line since it
depends on the relationships of each agent at a specific moment.
Apart from this proactive reorganization, a reactive reorganization is also supported.
Agents can enter or exit the organization and can change their capabilities at prede-
fined times. When these events occur, a reorganization is reactively triggered. Sim-
ilarly to the proactive reorganization, the changes allowed to overcome these situa-
tions are related to the agent relationships. When an agent enters the organization,
it needs to be related to other agent/s. In this case, the reorganization is carried out
by evaluating the past interactions of the agent with other agents and predicting the
utility with other agents that they have not previously have relationships with. A reor-
ganization is also carried out reactively when an agent leaves the organization. With
regard to behavioural adaptation, the gain or loss of services by agents is another
kind of reorganization that is also considered. When this occurs, a reorganization
is carried out by measuring the historical interactions of the agents involved in the
process.
2. Related Work 33
2.2.3.2 Design
Every pair of agents chooses actions to establish or dissolve their relationship in or-
der to improve the utility function associated to this relationship. Based on their
current relationship, different modifications (form peer, remove peer, form subordi-
nate, remove subordinate) can be carried out. These represent different reorganization
alternatives proposed in the design phase.
2.2.3.3 Selection
Each alternative of relationship modification has an associate utility function that
is calculated as the expected benefits and costs associated to this alternative. Each
pair of agents selects and implements the modification that maximizes the utility
function of their relationship. Specific mechanisms are provided for evaluating the
performance of the organization at each time-step of the organization’s life-span. On
the one hand, organization cost defines the resources consumed by agents in terms of
messages that are sent in the whole organization. On the other hand, benefits define
the speed of each agent for completing its tasks. The organization performance is
measured as the difference between the benefits and costs.
The cost measurement for carrying out the reorganization is specified for each agent
in terms of a communication cost, which represents the reorganization costs. Further-
more, the impact of changing a relationship between a pair of agents is measured by
taking into account the tasks that would or would not been assigned to other agents
if a relationship is modified. This impact is associated to an increase or decrease of
the tasks received by these other agents. However, a reflexive impact that measures
the indirect costs and benefits caused to other agents is not represented. This im-
pact should be related to how a relationship modification between a pair of agents
can affect the agents that are not involved in the change, i.e. how these agents could
allocate their own tasks if a relationship between different agents is modified. This
issue is a consequence of the distributed reorganization process. Since reorganization
34 2.2. Approaches for Reorganization in Agent Societies
phases are carried out for each peer, the expected benefits and costs obtained are re-
lated to the information that is known by the pairs involved in the change. Therefore,
if several reorganizations are carried out simultaneously between different pairs, the
estimated costs and benefits might not be realistic since the structural topology may
be different.
2.2.3.4 Evaluation
In this approach there is not an specific evaluation provided for measuring the pro-
posal or the reorganization process. However, the performance of the future state of
the organization that is achieved after reorganization is considered for future reorga-
nizations, i.e., this evaluates which is the performance of the relationship after each
modification.
The self-adaptive way of the TSE approach avoids a centralized implementation that
could become a bottleneck. Nevertheless, since the process is not viewed from the
organization perspective, the impact of each modification could be more difficult to
measure than in centralized approaches, since every pair of agents does not have
information about how other agents would adapt their relationship. As an example,
if agents ax and ay form a relationship, several tasks could be allocated directly.
However, other agents could also use this relationship to delegate tasks, causing an
overload in ax and ay that would not be considered in the computation.
A reorganization viewed from the organization perspective would provide adaptation
decisions that can be measured more consistently, since all the information required
for reorganization is known by the whole organization. The impact associated to a
relationship modification can be measured not only from the tasks that would not
be allocated to other agents but also from the tasks that these other agents would
allocate by taking into account this relationship modification. A distributed reor-
ganization would provide more scalability, which would allow the applicability of
the approach to problems that are composed by large agent organizations. However,
2. Related Work 35
more efforts have to be done in order to keep the consistence of the system when
several reorganizations are carried out simultaneously.
A disadvantage of this approach is that it is specifically constrained to structural re-
organization and TSEs. Structural reorganization allow agents to reorganize their
interactions in order to improve the utility of the whole organization. However, if
other modifications were considered (e.g. changing the services provided by agents
or changing the agent population in order to improve the performance), this utility
might be improved since a wide range of alternatives would be considered. To the
extent that we analyzed this approach, this model does not provide enough flexibility
to incorporate reorganizations for different dimensions. One of the main advantages
of this approach is the detailed computation of the reorganization consequences, at
least for the agents involved in the relationship modification. This approach provides
a specific detailed measurement of the benefits and some of the costs of the reor-
ganization such as the cost of sending messages and changing relationships. Even
though, the measurement is provided at the model level, the model is focused on spe-
cific applications related to this domain, making it difficult to extend these definitions
to other applications.
2.2.4 Autonomic Electronic Institutions
Autonomic Electronic Institutions (AEIs) [18, 16] (Table 2.4) provide a paradigm for
adapting the regulations of Electronic Institutions in order to accomplish institutional
goals. In general, AEI involves the following elements: agents playing roles within
scenes in a so-called performative structure, which defines the behavior of agents
according to their role; goals, which are reached through interactions among agents;
and norms, which specify the regulations of the system.
36 2.2. Approaches for Reorganization in Agent Societies
Table 2.3: Reorganization phases in TSEs
Self-organization in TSEsMonitoring Proactive reorganization carried out in a distributed way by each pair of agents.
The reorganization logic is predefined and cannot be changed, but the informa-tion that is monitored depends on the current relationships of each agent. Areactive reorganization is carried out when agents enter/exit the organizationor when agents change their capabilities at predefined times.
Design Each pair of agents designs each possible modification in their relationship.Structural adaptation: changes in the relationships.
Selection Each pair of agents selects and implements the action that is better to theirrelationship. The utility function used for obtaining this alternative considerhow the pair of agents involved in this change are affected in terms of bene-fits and costs. In addition, costs of sending messages and costs of changingrelationships are also considered for measuring the reorganization costs.
Evaluation The performance of the link after each modification is evaluated in a distributedway by each pair of agents.
2.2.4.1 Monitoring
The monitoring phase is implemented in a proactive way, in which several institu-
tional agents are involved. These agents are able to detect situations such as a re-
organization requirement due to a norm has been violated. The information that is
required to be monitored is specified off-line but it is used on-line. The logic for
reorganization is predefined at design time.
2.2.4.2 Design
The design phase is implemented in a centralized way by the institution itself. The
changes that are considered are related to normative and performative structure adap-
tation. On the one hand, normative adaptation refers to changing the pre-conditions
of a norm, its effects, or both. Since each norm is represented as a set of parame-
ters, changing a norm is aimed at changing the values of these parameters. On the
other hand, performative structure adaptation refers to changing the number of agents
playing a role within each scene.
2. Related Work 37
2.2.4.3 Selection
The institution explores the space of parameter values in order to find the configura-
tion that provides the best degree of satistaction of institutional goals. After obtaining
which are the values that provide the best degree of satisfaction of institutional goals,
these values are set by the institution. A domain-dependent fitness function is defined
to measure the degree of goal accomplishment; therefore, the objective of reorganiza-
tion is to better accomplish these goals. As an example, in [16], a reorganization over
a traffic scenario is proposed. In this example, goals are defined as a multi-attribute
function that takes into account the number of accidents, the number of traffic of-
fenses, and so on. Each time step, the AEI simulates different configurations for the
penalties and institutional agents by using a learning model. In this scenario, norm
adaptation is related to changing the penalties that are applied to cars that do not fol-
low norms, while performative structure adaptation is related to changing the number
of instutional agents in charge of detecting norm violations.
Costs for reorganization are not considered in AEIs. An agent of the AEI has an
associated type of maintainance cost that limits the population of agents according
to the benefits that these agents provide. However, this model does not incorporate
mechanisms for measuring the impact (measured in terms of costs and benefits) of
modifying a norm or the costs for carrying out the reorganization process. These
mechanisms would provide more accurate simulations that consider not only the best
performing configuration but also the best performing configuration by taking into
account the costs of applying this configuration.
2.2.4.4 Evaluation
With regard to the evaluation phase, this reorganization approach do not incorporate
mechanisms to measure how a reorganization has been carried out. However, in [17],
they propose the use of case-based reasoning by the institution, in order to apply
similar reorganization proposals under similar reorganization requirements. Even
38 2.2. Approaches for Reorganization in Agent Societies
Table 2.4: Reorganization phases in AEIs
AEIMonitoring Proactive reorganization carried out in a distributed way by institutional agents.
The information that is monitored is specified off-line but it is used on-line.The reorganization logic is predefined and cannot be changed.
Design Centralized design carried out by the institution itself. Functional adaptation:changes in the number of agents playing a role. Normative adaptation: changesin the parameters associated to a norm.
Selection The institution explores the space of values in order to find the configurationthat maximizes the institution utility. Then, this configuration is set by theinstitution. The utility is measured as the benefits provided by all the agents.
Evaluation Proposal evaluation that uses case-based reasoning for taking decisions undersimilar situations.
though this technique allows the prediction of the AEI with specific configurations,
it does not measure how the reorganization process is carried out.
2.2.5 2-LAMA
The Two Level Assisted MAS Architecture (2-LAMA) [22, 21] (Table 2.5) is another
approach that provides support for reorganization. This approach was first based on
the AEI approach and then was extended to fit a more general model of organization.
The organization in this approach is composed of a social structure that consists of a
set of roles, groups, and the relationships among agents playing certain roles that be-
long to certain groups, social conventions that are expressed as interaction protocols
and norms, and goals that describe the purpose of the organization.
Reorganization in the 2-LAMA approach is aimed at improving the accomplishment
of the goals, for example, by modifying a norm.
2. Related Work 39
2.2.5.1 Monitoring
Reorganization in the 2-LAMA approach can be reactive since several events occur
(e.g. if an agent enters the organization), but it can also be proactive (e.g. if a norm is
considered to be adapted in order to improve the accomplishment of the organization
goals). Monitoring is carried out in a distributed way between assistant agents. The
information required to be retrieved is specified off-line but it is used on-line without
stopping the execution. The logic for reorganization is predefined at design time.
Each assistant is in charge of managing the reorganization of a subset of agents.
During the monitoring phase, each assistant perceives partial information about a
cluster of agents and this information is shared with other assistants in order to take
the decisions.
2.2.5.2 Design
After the monitoring phase, each assistant provides a reorganization proposal for
each different component’s related function based on the information available and
the system goals. This corresponds to a distributed design phase.
Several adaptation functions are defined for updating the specific social structure
and the norms of the organization. These adaptation functions evaluate the current
organization in order to modify the specific components.
2.2.5.3 Selection
The assistants vote to select the reorganization, which is selected by agreement and
implemented in a distributed way. Several criteria are used to select the specific
changes in the 2-LAMA approach. As an example, in [21], assistant agents integrate
two different methods based on heuristics and case-based reasoning. This approach
considers reorganization costs (in time and/or resources) that should be taken into
account in order to decide the reorganization frequency. Costs are computed by each
40 2.2. Approaches for Reorganization in Agent Societies
assistant and are classified into different categories such as the cost of collecting the
information required, the cost associated to the time and resources that are required
to compute the adaptation function, or the reorganization cost of transforming the or-
ganization into the adapted one. Costs define the minimal frequency required to keep
the costs below the benefits that the reorganization generates. Otherwise, a higher
frequency would cause a higher associated cost and, therefore, the reorganization
may not be worth it.
However, these costs are not considered in the design nor in the selection phases. As
we stated above, the driving force behind the reorganization is the accomplishment
of the goals. Therefore, changes are introduced with the aim of inducing greater
accomplishment of the current goals regardless of the costs, as long as these take
into account the reorganization frequency. As an example, in peer-to-peer scenarios
[21, 96], a social structure adaptation is carried out through modifications of relation-
ships between peers with the aim of creating the optimal network composed by the
paths with the shortest latencies. However, these modifications could have associated
costs that would make it more profitable to adapt to a sub-optimal network that has
an associated lower cost to be adapted to. Even though it is assumed that the reorga-
nization frequency keeps costs below benefits, there is no support for achieving the
reorganization with the highest tradeoff between costs and benefits.
2.2.5.4 Evaluation
With regard to the evaluation phase, the 2-LAMA approach does not provide mech-
anisms for evaluating the degree of success of the reorganization process. However,
similar to the AEI approach, the 2-LAMA approach in [21] presents an example in
which assistants use case-based reasoning for proposing a reorganization solution
that is based on past experience. This kind of solution has been also extended to
regulate the norms of dynamic systems [78].
One of the main advantages of this reorganization approach is the support for specify-
2. Related Work 41
Table 2.5: Reorganization phases in 2-LAMA
2-LAMAMonitoring Proactive reorganization carried out in a distributed way by assistant agents.
Reactive reorganization is also supported when some event occurs. The in-formation that is monitored is specified off-line but it is used on-line. Thereorganization logic is predefined and cannot be changed.
Design Distributed designs are proposed by assistant agents. Structural adaptation: re-lationships between agents. Normative adaptation: changes in the parametersassociated to a norm.
Selection Distributed decision between the assistants, which vote the selected design.The selected design is implemented by each assistant. This is aimed at ob-taining a higher accomplishment of the goals (direct benefits caused by thereorganization). Reorganization costs: cost for transforming the organizationinto the new one. Computation costs: time and resources that are required toobtain the adaptation function.
Evaluation Proposal evaluation in which assistants use case-based reasoning for takingdecisions based on past experience.
ing the utilities for each individual component. Heterogeneous agents can be defined
since different communication capacities are defined for each peer. Furthermore,
each link between a pair of agents has its own associated communication capacity,
which is determined by its bandwidth. Another advantage is the consideration of
different dimensions of the organization to be adapted. However, support for jointly
considering changes on different dimensions simultaneously should be required.
2.2.6 MACODO
MACODO (Middleware Architecture for COntext-driven Dynamic agent Organiza-
tions) [100] (Table 2.6) is a middleware that provides support for the management of
organization adaptation. The organizational model used in this approach is composed
by agents, capabilities, roles, and laws. Capabilities are viewed as agent abilities to
perform tasks. A set of capabilities is required to play a role. Finally, laws describe
the dynamic reorganization of organizations and define the consistence of the system.
42 2.2. Approaches for Reorganization in Agent Societies
2.2.6.1 Monitoring
Reorganization is reactively triggered by external events (e.g. when an agents stops
playing a role) and changes in the environment (e.g. when the traffic state in the view-
ing range of an agent that collaborates in a traffic monitoring organization changes).
Reorganization purposes are specified by means of two kinds of laws: intra-organization
adaptation laws, which describe how agents can join and leave the organization (join
and leave laws); and inter-organization adaptation laws, which describe the restruc-
turing of organizations by merging and splitting organizations (merge and split laws).
A master controller agent is defined as being responsible for managing the dynamics
of each organization in a centralized way. Each master controller enforces the laws
that are related to the intra-organization adaptation of its organization (i.e. those that
define when agents join or leave the organization). This describes the monitoring
phase, which determines that a reorganization is required when a law is satisfied.
The logic for reorganization is defined at design time. The information required by
the master controller is specified off-line but it is used on-line.
Inter-organization adaptation requires information about more than one organization
in order to enforce laws. In this kind of reorganization, masters of multiple organiza-
tions need to collaborate in a distributed monitoring phase. Each master exchanges
a summary of the information regarding its organization with neighbouring mas-
ters. Similar to intra-organization adaptation, the monitoring phase is implemented
through laws. As an example, when a merge law is satisfied in both organizations, a
negotiation is initiated between the master of each organization involved in the merge
in order to select the new master of the merged organization.
2.2.6.2 Design
Once an intra-organization adaptation is required, the master controller is in charge
of designing the reorganization solution. In the case of inter-organization adaptation,
2. Related Work 43
a master is selected, which carries out the actions required for the reorganization,
completing the design phase. As we stated above, the changes that are supported are
regarding open system support and structural adaptation.
2.2.6.3 Selection
The master controller that is responsible of the reorganization design, is also in charge
of selecting and implementing this, which is finally carried out by updating the infor-
mation regarding the organization.
In [100], a traffic example is presented to show the behavior of the middleware. In
this example, master controllers decide to merge organizations when a traffic jam has
arisen in the streets that they observe. Due to the environment change, agents decide
to merge organizations because laws specify this condition. When the congestion
starts to dissolve, agents split up the organization based on the split law. Therefore,
we consider that the criteria is focused on accomplishing the organization goals when
some change occurs.
In MACODO, a cost is related to communications, which is associated to the cost for
merging and splitting organizations. This cost is used to evaluate the performance of
the middleware. However, this cost is not taken into account to decide that a reorgani-
zation is required or to design the reorganization. As we stated above, reorganization
is automatically caused when a law is triggered.
Event though a single master controller is in charge on carrying out the reorganization
once it is required, we consider that phases can be also carried out in a distributed way
because organizations can be viewed as sub-organizations since they can be merged.
In this sense, master controllers are able to detect a reorganization requirement based
on laws.
44 2.2. Approaches for Reorganization in Agent Societies
Table 2.6: Reorganization phases in MACODO
MACODOMonitoring Reactive reorganization triggered by external events and changes in the en-
vironment. Centralized intra-organization adaptation carried out by a mastercontroller, and distributed inter-organization adaptation carried out by severalagent controllers. The information that is monitored is specified off-line but itis used on-line. The reorganization logic is predefined and cannot be changed.
Design Depending on the reorganization type, the design can be centralized or dis-tributed. Open system support and structural adaptation.
Selection Centralized or distributed selection carried out by the master controller thatis in charge of the design. The selected reorganization is implemented by thismaster controller as well. The selection is focused on fulfilling the organizationgoals when some event occurs and prevents the organization to accomplish itsgoals.
Evaluation There is not any evaluation support implemented.
2.2.6.4 Evaluation
With regard to the evaluation phase, the MACODO approach does not provide mech-
anisms for incorporating information about the degree of success after a reorganiza-
tion is carried out. Even though laws allow the organization to be adapted, these laws
are defined at design time and cannot be modified depending on the information at
runtime.
2.2.7 MAGIQUE
The approach implemented in the MAGIQUE platform [86, 71, 72] (Table 2.7) pro-
vides a reorganization mechanism that focus on two kinds of reorganization: individ-
ual adaptation and social adaptation. The agent society model defines an organization
composed by agents, which are able to provide skills and can interact to each other
according to the relationships structure, which defines the links between agents.
In this approach reorganization is viewed as a mechanism for improving the inter-
action between agents, which improves the system’s performance. The underlying
2. Related Work 45
reorganization mechanism is based on changing the relationships structure and the
distribution of skills between agents in order to reduce the number of messages that
are exchanged in the system, and the time necessary for processing a request. It is
assumed that the overall system performance is an aggregation of the performance of
individual agents. Therefore, if the performance of an agent increases, this does not
negatively affect other agents of the system.
2.2.7.1 Monitoring
Monitoring in this approach is carried out in a distributed way since every agent is
capable of deciding when a reorganization is required. In the current implementation,
the monitoring strategy is reactive. Adaptation rules, which are specified by using
thresholds, are used to trigger reorganization. These rules are predefined at design
time. The information that is monitored is specified off-line but it is used on-line.
2.2.7.2 Design
After deciding that a reorganization is required, the design is autonomously carried
out by each agent involved in the process. The elements that are considered to be
changed are the relationships between agents (called acquaintances), the skills pro-
vided by agents (that can be mapped as the services that they provide), and the pop-
ulation of the system (by including new agents which can, in addition, learn specific
skills). The decision of creating relationships and acquiring skills depends on policies
that are specified by the system designer.
2.2.7.3 Selection
When an agent with the capabilities of designing a reorganization has carried out the
design, this is automatically selected and implemented by using the API provided.
The code mobility is used for learning skills.
46 2.2. Approaches for Reorganization in Agent Societies
The criteria used for selection is mainly focused on improving the benefits of the
agent involved in the change, which is assumed to improve the overall performance
of the whole organization as well. Therefore, indirect benefits and costs are not taken
into account. In addition, there is not a model which provides support for defining the
benefits that are associated to the reorganization, and this logic must be implemented
by the user designer using his own metrics and techniques.
2.2.7.4 Evaluation
Regarding evaluation phase, there is not any kind of support for measuring how the
reorganization has been carried out, except from those techniques that the agent de-
signer implements by himself at agent level.
The main disadvantage of this approach is that the reorganization phases must be
implemented by the system designer according to his own techniques and method-
ologies. As we stated above, a reactive monitoring is provided. However, reorgani-
zation could be considered to be carried out in a proactive way if the agent designer
implements an underlying reasoning mechanism at agent level. In addition, if the
reorganization is taken individually without considering indirect benefits and costs,
this may cause different consequences as expected. In the examples given by the au-
thors, the agent designer should consider how the addition of a link can affect other
agents (these agents may take in turn some advantage or disadvantage that is not
considered).
2.2.8 Reorganization in Agent-Organized Networks
Gaston & DesJardins [44] (Table 2.8) propose a reorganization approach for agent-
organized networks (AONs) that is based on an agent team formation model. This
model provides a dynamic environment in which agents form teams in a distribute
way in order to accomplish the tasks that are received in the network. The society
model defines an AON as a set of agents, which represent the nodes of the network,
2. Related Work 47
Table 2.7: Reorganization phases in MAGIQUE
MAGIQUEMonitoring Reactive reorganization triggered by rules. Distributed reorganization can be
carried out by agents. The information that is monitored is specified off-linebut it is used on-line without stopping the system. The reorganization logic ispredefined and cannot be changed.
Design Distributed design that can be carried out by any agent involved in the process.Structural adaptation: changes in the acquaintances; open system: changes inthe population; behavioral adaptation: changes in the agent skills.
Selection The agents involved in the design process select and implement the reorgani-zation in a distributed way. The criteria used for this selection is to improvethe direct benefits of the agents involved in the changes. The policy for thismeasurement must be implemented by the agent designer.
Evaluation There is not any evaluation support implemented.
relationships between agents, which represent the adjacency matrix of the network,
and skills, which are assigned to be provided by agents in order to perform tasks.
The reorganization that is considered in this approach is focused on allowing agents
to modify their current relationships in order to improve the performance. Agents use
local information in order to decide which links to delete and which to create.
2.2.8.1 Monitoring
Monitoring is carried out in a distribute way by any agent of the network. The moni-
toring strategy is proactive since each agent decides whether or not to adapt its links,
according to its reasoning mechanism, which in the work [44] is based on a probabil-
ity indicator. As agents remove their links and add new ones, we can consider that the
information that is monitored can be specified on-line depending on the current set
of links. In contrast, the reorganization logic (which is referred to the performance
measurement), is predefined at design time.
48 2.2. Approaches for Reorganization in Agent Societies
2.2.8.2 Design
Once an agent has decided that a reorganization is required, this agent is in charge
of designing the reorganization. In the AON this is referred at deciding which link
is removed and which link is added, based on estimations of performance increase.
Therefore, the design is also distributed. As we stated above, the elements that are
allowed to be changed in this approach are the relationships between agents, which
correspond to an structural adaptation.
2.2.8.3 Selection
After the design is proposed, this is automatically selected and implemented. The cri-
teria used for this selection is based on the improvement of the performance, which
is measured as the percentage of tasks for which teams successfully form. This im-
provement does not take into account how the link modification would affect other
elements of the organization. As the same authors state, each agent has only a partial
vision of the system and therefore, it is not possible to know all the information and
how a change would influence. This model could be applied in scenarios in which an
individual performance increase would be directly related to an organizational per-
formance increase. The costs related to the application of the changes and to the
reasoning process are not considered.
2.2.8.4 Evaluation
In this reorganization model there is not a support for evaluation. The same authors
present in [20] an evaluation model for improving the team joining process. In this
work, authors embedded agents in fixed network structures and focus on learning
team joining policies. These policies improve the aggregate performance of the net-
work. However, this learning model does not consider reorganization (modifications
in the agent relationships). A similar learning approach would be interesting in or-
2. Related Work 49
Table 2.8: Reorganization phases in AONs
AONsMonitoring Proactive reorganization triggered by any agent of the network in a distributed
way. The information that is monitored depends on the current relationships ofthe agent and it is also used on-line, while the reorganization logic is predefinedand cannot be changed.
Design Distributed reorganization carried out by the same agent that decided the re-organization requirement. Structural adaptation: changes in the links betweenagents.
Selection The agents involved in the design process are the responsible of selecting andimplementing this design in a distributed way. The criteria used for this selec-tion is to improve the direct benefits.
Evaluation There is not any evaluation support implemented.
der to select or predict the effect in the whole organization of adding and removing
relationships, by defining policies for creating and deleting relationships.
One of the main problems of taking reorganization decisions that are based on local
information is, as the authors claim, that local information provides a partial view of
the system that may cause to take incorrect decisions, which cause an organizational
performance decrease. In addition, if two agents decide to change their relationships
simultaneosly, the reorganization benefit could not finally be as it was expected.
2.2.9 Comparison
Based on the analysis carried out, we summarize the main feautures of the analyzed
approaches in Table 2.9. This table shows the different phases of the adaptation life-
cycle based on the parameters defined in Section 2.1.
2.2.10 Other reorganization approaches
In this section, we mention other works that are focused on reorganization issues,
but we do not provide an in-depth description of them. We only point out the most
50 2.2. Approaches for Reorganization in Agent Societies
relevant aspects. Some of these works only provide support to specific phases of the
reorganization life-cycle. Other works are focused on reorganization issues over spe-
cific domains or applications and, thus, the contributions of these approaches would
be difficult to extend to a general description that could be used in other domains.
Finally, other works represent the basis of some of the works that are detailed in
previous sections. We consider that these works also provide great contributions,
to covering all the angles of the current state of the art of reorganization in agent
societies.
In the work of [3], reorganization is viewed as a self-organizing mechanism that
changes relationships between agents in order to reduce the total service time in a
distributed task allocation domain. This approach uses a learning algorithm to op-
timize the agent policies based on how the agents interact with each other. In [49],
a model is proposed for reorganization based on max-flow networks. In this ap-
proach the reorganization is focused on adding new agents and relationships to the
organization. In the work of [97], an approach for a structural topology adaptation is
proposed. This approach considers changes in the relationships between roles and the
roles played by agents. Reorganization in this approach is carried out through pre-
defined rules that cannot change during runtime. A similar work is proposed by [59].
This work focuses reorganization on organizational structure reorganization based on
two primitives: spawning (creation of a new agent) and composition (merging several
agents). Similar to the work of [21], this approach also considers the frequency of
reorganizations. In [51], a system is proposed to provide support for changes in the
interactions in a consumer-transporter domain. A diagnostic system is used to de-
termine when an initial organization becomes potentially suboptimal. Then, changes
in the interactions between consumers and transporters are proposed to overcome
these insufficient resources. The reorganization is focused on minimizing the trans-
port cost according to the load of transporters and the requirements of consumers.
In this approach, several agents are involved in the selection of the reorganization.
Another interesting work is the one proposed by [7]. In this work, different reor-
ganization strategies for coping with different types of changes are presented. They
2. Related Work 51
model changes that affect organizational structures and social relationships in a crisis
management scenario.
Other works focus reorganization as being changes in the services provided or roles
played by agents. As an example, in [87], a self-organization approach for a resource
allocation environment is proposed. In this approach, the reorganization is carried
out individually by each agent of the organization. The reallocation algorithm is
implemented at the agent level, which takes allocation decisions based on predictions
of the future resource utilization. Even though this approach is specifically focused on
task allocation environments, an evaluation phase can be considered to be provided.
After a task has been executed according to the reallocation algorithm, the prediction
accuracy is evaluated and the history information is updated. Hoogendoorn et al.
[50] propose a reorganization model that considers changes in the roles played by
agents. In this approach, agents of a specific kind are in charge of a distributed
monitoring of the organization goals. Reorganization is implemented by means of
rules that are triggered when external circumstances cause that a requirement cannot
be satisfied. When this occurs, a reorganization is needed. Similar to previous works,
these rules are specified at design time. In the same context of role reallocation,
the works [81, 80] present a technique for quantitatively comparing different role
reallocations in order to decide which role allocation is the most beneficial. They use
a reward-taking policy to assess the utility of the reorganization process by taking
into account the benefits of a role reallocation process and the cost associated to
it. However this technique is focused on a team decision problem; therefore, since
the concept of organization is not considered, this technique could not be applied
in domains that require changes in other elements of the organization. In the work
[45], a reorganization model based on conventions is proposed. The objective of
reorganization is to maximize the agent utilities and the organization utility. The
utility of an agent depends on the roles it desires, the roles it has commited to, and the
confidence that it has in its roles. In this approach, reorganization costs are defined.
However, mechanisms for measuring these costs and the impact that changes produce
in all the agents of the organization are not provided. In a similar line of research as
52 2.3. Discussion and Open Challenges
the previous approach, [90] proposes a model for reorganization that is focused on
the role assignment to agents. These assignments try to maximize the utility of agents
for performing each role. Reorganization in this approach is carried out by predefined
norms that have associated specific actions for reorganization, such as modifying the
organization in order to have more agents playing a specific role.
With regard to the regulations of the system, MLAW [24] is a middleware for support-
ing the dynamic modification of the system regulations during runtime. This frame-
work supports changes in the permissions, prohibitions, and interaction protocols
that govern the interactions among agents. Examples of changes are the exclusion
of a permission that enables the entrance of an agent in a negotiation, the inclusion
of a payment obligation, or changes in the negotiation protocol to include two new
steps. The main drawback of this middleware is that changes are not reasoned by
the system. These are specified and the centralized mechanism is in charge of law
enforcement. The work of [94] presents a framework for allowing modification of the
regulations of the system. Unlike the work of AEI (Section 2.2.4), this work supports
the addition and deletion of norms and not only the modification of current norms.
However, this support is not integrated in an organizational framework but is carried
out by means of artifacts that control the norms of the system.
The work [48] is especially focused on the monitoring phase. In this paper, the au-
thors propose an architecture for reorganization based on a replication mechanism.
This architecture is composed of monitoring agents that are hierarchically organized
and it provides support for a distributed observation mechanism. Host monitors ex-
change their local information in order to build global information. Then, agent mon-
itors are in charge of executing the reorganization algorithms.
2.3 Discussion and Open Challenges
Given the analysis detailed in Section 2.2, there are some considerations that could
be of great interest in future developments. We point out some of these issues below.
2. Related Work 53
2.3.1 Monitoring
Detecting the reorganization requirement is a crucial phase for adaptive agent soci-
eties. There are some approaches that implement monitoring strategies as predefined
rules that are triggered when some specified change occurs (OMACS, MACODO).
Other approaches provide this phase through evaluations of the performance in time
intervals during the organization life-cycle (TSEs), or also when a condition is ac-
complished such as in the 2-LAMA approach. Nevertheless, the rules that regulate
the reorganization requirement are usually predefined at design time and cannot be
changed while the organization is running. This forces designing systems in which
the requirements for determining the reorganization must be known in advance, pre-
venting the development of applications in which these requirements are not specifi-
cally known or which could even be different throughout the organization’s life-span.
Furthermore, the useful information required to be monitored in this phase is also
usually specified off-line, before running the system.
It would be interesting for the next generation of adaptive agent societies to have
support that allow the dynamic specification of the rules that trigger a reactive reor-
ganization. As stated in [4], adaptive systems may cause monitoring requirements to
also change. Thus, dynamic support that can adapt to these changes becomes essen-
tial in order to develop real adaptive agent societies. As an example, in the proposed
workshop management system, a reactive reorganization can be required when an
agent reviewer exits the system, which requires a reallocation of its assigned papers
to other reviewers. However, this can be dependent (and also change) of execution
factors. As an example, a restriction could be added at runtime which causes to not
reallocate the specific paper if it has already two reviews. This support would pro-
vide more flexibility to dynamic systems, specially in scenarios in which is difficult
to specify at design time the logic for reorganization.
Furthermore, this support should also consider changes in the relevant information
that monitored. Thus, depending on the changing requirements of the system, the
information required can change throughout the agent society’s life-span. Static
54 2.3. Discussion and Open Challenges
Table 2.9: Comparison of reorganization approaches. (Distr.=Distributed Centr.=Centralized;Proact.=Proactive; React.=Reactive; Predef.=Predefined;)
The impact of agent ax to stop playing the current role rc is defined as i(delete plays((ax, rc))).
Once ax does not play this role, it can stop providing the services required to play rc
76 3.4. Multi-dimensional Transitions
that are no longer required for playing other roles in Of for an impact of:
ID(ax, rc) =∑
i(delete provides((ax, sc)))
for every service sc that (ax, sc) ∈ providesc∧ 6 ∃rd | (rd, sc) ∈ offersf ∧(ax, rd) ∈ playsf . Thus, the whole impact of agent ax to stop playing a current
4: do:5: OR ← role reallocation transition(Of )6: OA ← acquaintance transition(Of )7: OP ← agent population transition(Of )8: Of , OTI ← deliberation(OR, OA, OP , O
f )9: while OTI is improved10: τ ← Transition path(Oc, Of )11: return τ,OTI(τ)
• The first step calculates transitions in multiple dimensions from the current
organization Oc. These transitions correspond to the multi-dimensional transi-
tions considered in the Organization Transition Model: role reallocation transi-
tion, acquaintance transition, and agent population transition. Lines 5-7 obtain
three different future organizations that could be achieved from Oc with high
expected utility based on the cost for transition to these organizations. The
benefits and costs of transition are measured in terms of OTIs.
• With the three organizations obtained from the previous step, a deliberation
process (line 8) selects which of these three organizations has associated the
high expected utility based on the transition costs. This process is carried out
iteratively while an organization is found, which can be achieved with a better
OTI. Due to a loop execution is introduced, several changes in different dimen-
sions can be selected through different iterations. Since the number of changes
are limited and the impact improvement is lower each iteration, a solution is
found in a bounded number of iterations. If there is not any future organization
that can be achieved with a negative impact, the best decision is not transition
(the current organization is maintained).
• After obtaining the future organization Of , which is to be transitioned to, a
sequence of required events τ is obtained (line 10). These events allow to
86 4.2. Role Reallocation Transition
transform the current organizationOc intoOf . Then, the dependency of events
of τ is also calculated. In this case, dependent events must be split into different
subsets, providing a sequence that must be applied in order of dependence by
defining the transition path between both organizations.
4.2 Role Reallocation Transition
Algorithm 2 calculates the final organization Of , which can be transitioned from
Oc at the minimal OTI by a role reallocation transition. In this implementation, the
organizational objects, the relationships offers, and acquaintance are the same for
both organizations, and changes in the relationships provides and plays represent
the role reallocation transition.
To implement this algorithm, we used a modification of the the Hungarian algorithm
[68], which solves problems of task assignment in polynomial time. The classic ver-
sion of the algorithm solves problems given n workers and n tasks. Our modification
deals with problems that involve computation of non-square matrixes. The require-
ment of this mechanism is to find the role reallocation to agents that minimizes the
impact, thus other algorithms of task assignment could also be used. This problem is
similar to problems of resource allocation studied in other research areas such as the
work of Dolgov & Durfee [38].
The algorithm calculates a matrix of impacts I = |A| × |R| (lines 5-7), which rep-
resents the impact of role reallocation of each agent to each role according to the
services offered by each role and the services provided by each agent (as explained
in Section 3.4.1). |A| is the number of agents in the organization and |R| is the num-
ber of different roles of the organization. The element in the ith file and jth column
represents the impact of the agent located in row i to play the role located in column
j.
The first iteration of the algorithm attempts to reallocate each agent to the role that
Algorithm 2: Role Reallocation Transition1: INPUT: Oc
2: OUTPUT: Of
3: for each a ∈ Ac do:4: rc ← r ∈ Rc | (a, r) ∈ playsc5: for each r ∈ Rc do:6: Ia,r ← IR(a, rc, r)7: end for8: end for9: for each agent a and role r do:10: Ia,r ← Ia,r −min(a)−min(r)11: end for12: while ¬optimal(I) do:13: mark ag = mark r = ∅14: mark ag ← ¬assigned ag(I)15: while change(mark ag) ∨ change(mark r) do:16: mark r ← mark r ∪ roles(I, 0)17: mark ag ← mark ag ∪ assigned ag(mark r)18: end while19: min value← min(mark ag,¬mark r)20: for each Ia,r do:21: if a ∈ mark ag ∧ r ∈ mark r then22: Ia,r ← Ia,r +min value23: end if24: if a 6∈ mark ag ∧ r 6∈ mark r then25: Ia,r ← Ia,r −min value26: end if27: end for28: end while29: playsf ← reallocation(I)30: for all (a, r) ∈ playsf do:31: if (a, r) 6∈ playsc do:32: for all (r, s) ∈ offersf do:33: providesf ← add provides(providesc(a, s))34: end for35: end if36: end for37: Of ← 〈Rc, Sc, Ac, offersc, providesf , playsf , acquaintancec〉38: return Of
88 4.2. Role Reallocation Transition
requires the lowest transition impact. The impacts for each agent are updated by
taking into account these minimal impacts (line 10). If an optimal assignation cannot
be made by taking into account the requirements of the final organization (line 12),
the algorithm proceeds as follows:
• Step 1: Mark the rows of agents that are not assigned to any role because their
lowest role reallocation transition impact has been assigned to one or more
other agents (line 14).
• Step 2: Mark the columns of roles that have the lowest reallocation impact for
the previously marked agents (line 16).
• Step 3: Mark the rows of agents that are assigned to the previous roles (line
17).
• Step 4: Repeat steps 2 and 3 while new rows are marked.
• Step 5: Calculate the minimal value of the matrix by taking into account the
impacts of the marked rows and unmarked columns (line 19).
• Step 6: Recalculate the impacts of the matrix by adding the minimal value
to the elements of the marked rows and columns and subtracting the minimal
value of the unmarked rows and columns (lines 20-27).
Once the optimal assignment has been obtained, the specification of Of is completed
with the new plays and provides relationships. In order to calculate the optimal
assignment (line 12), we use an implementation of the Edmonds-Karp algorithm [39],
which has been applied in the literature for these kinds of problems. This algorithm
computes the maximum flow in a flow network in O(|N | · |A|2) (with N being the
nodes and A being the arcs of the flow network) by using a breadth-first search.
Finally, the provides relationships of the final organization Of are calculated de-
pending on the services offered by each role and the role played by each agent (lines
Algorithm 3 calculates the final organization Of , which can be transitioned from
Oc at the minimal OTI by an acquaintance transition. In this implementation, the
organizational objects, the relationships offers, provides, and plays are the same
for both organizations, and changes in the acquaintance relationships represent the
acquaintance transition.
To implement this algorithm, we used an iterative version which obtains the most
profitable acquaintance addition or deletion given the current state of the organization
Oc. The solution obtained do not consider changes that cause transitions to organi-
zation which do not satisfy the domain restrictions (e.g. if the maximum number of
acquaintances for each agent is achieved).
Algorithm 3: Acquaintance Transition1: INPUT: Oc
2: OUTPUT: Of
3: min impact← 04: for all a ∈ Ac do:5: for all b ∈ Ac ∧ b 6= a do:6: if (a, b) ∈ acquaintancec do:7: acquaintancei ← del acq(acquaintancesc, (a, b))8: else:9: acquaintancei ← add acq(acquaintancesc, (a, b))10: end if11: Oi ← 〈Rc, Sc, Ac, offersc, providesc, playsc, acquaintancei〉12: τ ← calc events(Oc, Oi)13: if OTI(τ) < min impact then:14: min impact← OTI(τ)15: Of ← Oi
16: end if17: end for18: end for19: return Of
This algorithm explores the different acquaintances modifications depending on the
90 4.4. Agent Population Transition
structural topology of the current organization Oc. The addition and deletion of a
single acquaintance between a pair of agents (lines 7 and 9, respectivelly) cause an
acquaintance transition to a final organization Oi. For each final organization that
can be achieved, the addition and deletion events required to transform Oc into Oi
are obtained (line 12). Finally, this algorithm returns the final organization Of that
can be achieved by an acquaintance modification that has associated the minimal
impact. It is assumed that the addition and deletion functions return a set of valid
acquaintances that fulfills any organizational domain-restriction (e.g. these functions
are not applied if the number of acquaintances per agent is violated).
4.4 Agent Population Transition
Algorithm 4 calculates the final organization Of , which can be transitioned from
Oc at the minimal OTI by an agent population transition. In this implementation,
the organizational objects roles and services, and the organizational relationships
offers are the same for both organizations, and changes in the rest of organizational
elements are considered.
This algorithm explores the range of final organizations that can be achieved when
any agent is deleted from the organization (line 5). The deletion of an agent modifies
the A objects, and may also modify other elements such as plays, provides, and
acquaintance, depending on the roles, services, and relationships that are associated
to this agent. Similarly to the acquaintance transition, the deletion function is applied
when the domain restrictions are satisfied. The algorithm also considers the addition
of a new agent b into the organization (line 13). In this case, it is assumed that agent b
is known by the organization and the addition impact can be measured. Depending on
the domain restrictions, the addition of a new agent may also cause that one ore more
services are assigned to be provided by the agent, some role is assigned to be played
by the agent, and acquaintances are assigned. However, the solution obtained do not
consider several changes if these are not required by the domain restrictions (e.g. if
the minimum number of acquaintances for each agent is 1, the algorithm relates the
new agent only with one existing agent). The algorithm returns the final organization
Of that has associated the minimal OTI.
Algorithm 4: Agent Population Transition1: INPUT: Oc, b2: OUTPUT: Of
3: min impact← 04: for all a ∈ Ac do:5: Ai, providesi, playsi, acquaintancei ← del agent(Oc, a)6: Oi ← 〈Rc, Sc, Ai, offersc, providesi, playsi, acquaintancei〉7: τ ← calc events(Oc, Oi)8: if OTI(τ) < min impact then:9: min impact← OTI(τ)10: Of ← Oi
11: end if12: end for13: Ai, providesi, playsi, acquaintancei ← add agent(Oc, b)14: Oi ← 〈Rc, Sc, Ai, offersc, providesi, playsi, acquaintancei〉15: τ ← calc events(Oc, Oi)16: if OTI(τ) < min impact then:17: min impact← OTI(τ)18: Of ← Oi
19: end if20: return Of
4.5 Deliberation
Once the organizations that minimizes the OTI for each dimension are calculated,
the next stage of the MTDM (line 8 of Algorithm 1) decides which transition is fi-
nally implemented depending on the deliberation strategy (Algorithm 5). The current
implementation is focused on selecting the transition that minimizes the OTI by con-
sidering several changes (line 7).
92 4.6. Calculating the transition path
Algorithm 5: Deliberation1: INPUT: OR, OA, OP , Oc
2: OUTPUT: Of
3: min impact← 04: τR ← calc events(Oc, OR)5: τA ← calc events(Oc, OA)6: τP ← calc events(Oc, OP )7: min impact← min(OTI(τR), OTI(τA), OTI(τP ))8: Of ← min(OR, OA, OP )9: if min impact < 0 then:10: return Of ,min impact11: end if12: return Oc, 0
Even though a single change is carried out by an individual execution of the ac-
quaintance transition algorithm and the agent population transition algorithm, several
changes can be obtained by executing different iterations of the algorithms (lines 4-9
of Algorithm 1). Thus, the future organization that is selected to be transitioned once
the loop ends, can be composed of combination of transitions (e.g. changing relation-
ships between some pairs of agents and then, swapping the roles played by some of
these agents). Since the number of changes are limited and the impact improvement
is lower each iteration, a solution is found in a bounded number of iterations. The
organization that is obtained after deliberation, represents the future organization Of
with the high expected utility based on the transition costs and considers changes in
different dimensions. If there is not any future organization that can be achieved with
a negative impact, the best decision is not transition.
4.6 Calculating the transition path
Once the final organizationOf that is transitioned to is selected, the final stage (Algo-
rithm 6) obtains the specific sequence of events τ that allow this transition fromOc to
Of and the impact associated to applying these events OTI(τ) (line 10 of Algorithm
2: OUTPUT: τ (ordered)3: τ ← calc events(Oc, Of )4: subset = 15: τsubset ← τ6: while τsubset 6= ∅ do:7: for all εi ∈ τsubset do:8: D ← calculate dependencies(εi, τsubset)9: if D 6= ∅ then10: move(εi, τsubset+1)11: end if12: end for13: subset++;14: end while15: return τ
First, the addition and deletion events required to transformOc intoOf are calculated
for each organizational component (line 3). These events represent objects that are
added and deleted from OcO in order to obtain OfO, and relationships that are added
and deleted from OcR in order to obtain OfR.
Finally, the last step is to find the transition path between Oc and Of according to the
dependency among the events of τ . The algorithm splits two dependent events until a
sequence of subsets of independent events is found. The application of the sequence
of subsets defines the transition path. This algorithm returns the ordered sequence of
subsets of events τi ∈ τ that allows a transition between Oc and Of by transitions to
intermediate organizations if they are required.
94 4.7. Conclusions
4.7 Conclusions
The MTDM presented in this chapter provides a deliberation mechanism for organi-
zation adaptation based on a multi-dimensional transition criteria. The organization
transition considers the impact of transition in terms of the utility caused by the tran-
sition, the costs associated to the transition, and how this transition would influence
all the components of the organization.
The MTDM provides an accurate estimation of the transition impact since the or-
ganization that is to be achieved is calculated by each transition. Thus, the impact
associated to each change that is required to carry out the transition, can be mea-
sured individually and more accurately than other approaches. The suitability of the
adaptation must be considered taking into account not only the benefits obtained by
adaptation but also the costs associated to this process. This issue is also important
in human organizations since most organizational changes may encounter problems:
they often take longer than expected and desired; the cost of managerial time may be
increased; and there may be resistance from the people involved in the change [67].
In the next chapter, we present the implementation of the adaptation framework that
In order to evaluate the scalability, the efficiency, and the performance of the RF, in
this chapter we present a first example which consists on an application of touristic
services. After describing the test-bed scenario, we focus the experiments on a spe-
cific type of transition: the role reallocation transitions. First, we present a trace of
execution in order to show the interaction between the organization manager and the
RF. Second, we test the scalability and the efficiency of the underlying algorithms
that are implemented in the RF service. Finally, we test the effectiveness of the role
reallocation transition by comparing the organization performance under different
conditions of adaptation.
105
106 6.1. Introduction
6.1 Introduction
The tourist application is composed of agents that are grouped into three different
organizations: user agents, broker agents, and provider agents. User agents require
tourist services and request information regarding different travel packages, which
involves booking of hotels, flights, trains, etc. These agents interact with broker
agents in order to obtain the reservations required. Provider agents are the agents
that belong to the specific hotels, airlines, and train companies, etc. Broker agents
are in charge of offering travel packages that are based on their negotiation with
different provider agents. Broker agents act as intermediaries between user agents
and provider agents. In this example, we focus on the organization of broker agents.
The organization of broker agents at a moment t is defined as Ot = 〈OtO, OtR〉. The
Organizational Objects OtO = 〈Rt, St, At〉 defines the individual objects of the orga-
nization. In this application, six different roles are defined asRt = 〈r0, r1, r2, r3, r4, r5〉for every moment t. Each one of these roles is specialized for a specific kind of travel
tivities (r4), cultural & sightseeing (r5), and family (r6). Each role offers a service
that is related to the management of the specific kind of travel packages that the role
is specialized in. As an example, role r1 offers the service s1 which is the honeymoon
& romance travel package management service.
The population of broker agents is defined as At = {a1, . . . , an} for a given moment
t. At a moment t, an agent ax plays the role ry if the service sy is provided by axat that moment. Nevertheless, this agent can provide other services and can play
different roles that it is not currently playing at a given cost. This cost represents the
penalization for returning the travel packages that have not been sold.
In a period of time between t and t′, each broker agent ax, which plays the role ry,
receives a number of requests from user agents that demand travel packages related
to the service sy. This number of requests is represented as R(ax, sy)t′t . Each broker
agent ax has an associated suitability for providing a service sy which is defined as
6. Organization Transitions in a Tourist Application 107
suitability(ax, sy). This suitability defines how well a broker agent can provide a
service and, thus, how well this agent can play a role.
From all the requests received at an agent ax for the service sy, a specific number
of these requests will finally be sold, which is represented as S(ax, sy)t′t , and corre-
sponds to the profit that ax generates to the organization. This number depends on
the suitability of ax for providing sy, which in this example, is represented as the
probability of a received request finally being sold. Apart from the profit, suitability
also influences the costs associated for leaving a role.
The aggregation of the requests received by every agent that plays the role ry repre-
sents the number of requests received in the whole organization:
R(A, sy)t′t =
∑ax∈At
R(ax, sy)t′t | plays(ax, ry) ∈ playst
In order to simulate this application, each request has associated the same probabil-
ity p = 1|playstry |
of being received by each agent ax that plays the role ry, where
|playstry | is the total number of agents that play ry at t.
The number of sales are represented as a random variable X that follows a binomial
distributionX ∼ B(n, p), with parameters n = R(ax, sy)t′t and p = suitability(ax, sy).
In order to simulate the number of sales carried out by each agent from the number
of requests received, a Bernoulli random numbers generator (Algorithm 10) is used.
This method is similar to the one used in [58] and generates n independent random
values, returning the number of these values that are less than or equal to p.
The utility of each agent ax that plays the role ry during the period of time between
t and t′ is represented as the number of sales by this agent multiplied by the profit
obtained from the sale of each individual travel package of the service sy:
U(ax)t′t = S(ax, sy)
t′t × profit(sy)
The utility of the organization between two time-steps t and t′ is measured as the
108 6.2. Impact Measurement of Organization Transition
Algorithm 10: Bernoulli random numbers generator1: INPUT: n, p2: OUTPUT: x3: x← 0, k ← 04: while k ≤ n do:5: Generate r ∼ random(0, 1)6: k ← k + 17: if u ≤ p then x← x+ 18: end if9: end while10 return x
profit generated by all the sales of the organization in this period:
U(O)t′t =
∑a∈A
U(ax)t′t
The objective of the organization is to maximize this utility. As we stated at the
beginning of this section, in this example we focus on role reallocation transitions.
At design time, it may not be possible to know what service distribution among the
agents provides the highest utility. Furthermore, even though the best performing
role allocation is known, it may not be the best one at every moment of the organi-
zation’s life-span because service demand may change, requiring a different distri-
bution. Therefore, organization transitions provide alternatives for improving utility.
In the following section, we illustrate how role reallocation costs and benefits are
measured in terms of impacts.
6.2 Impact Measurement of Organization Transition
The impact of role reallocation for agent ax is obtained by Eq. 3.3. This equation
calculates the impact of leaving the current role (Eq. 3.2) and playing a new role (Eq.
3.1). The term IA(ax, rn) (Eq. 3.1) represents the impact of agent ax providing the
6. Organization Transitions in a Tourist Application 109
services offered by the new role rn. In this example, we consider that each broker
agent is able to provide each service at a given suitability. Thus, this impact can be
assumed to be null since no cost is required to provide a service.
The term i(add plays((ax, rn))) (Eq. 3.1) measures how the organization utility
would be affected if ax plays the role rn. According to the law of large numbers
[14], if a large number of requests are received, these would be uniformly distributed
among all the agents that play the role ry. Being R(A, sn)t′t the requests received for
the service sn in the organization in a previous period of time, the number of these
requests that would be received by ax can be estimated as the number of requests
divided by the number of agents that would be playing rn: R(A,sn)t′t
|playst′rn |+1.
Given these received requests and the suitability of ax for providing the service sn,
the number of sales that would be carried out by ax is estimated as S(ax, sn)t′t by
using Algorithm 10 (Section 6.1).
In contrast, these requests would not be received by the agents that were already
playing rn, causing these requests to be reduced to:
R(A, sn)t′t −
R(A, sn)t′t
|playst′rn |+ 1=R(A, sn)t
′t × |playst
′rn |
|playst′rn |+ 1
Therefore, the benefits generated by the agents that were already playing rn would
be reduced to:S(A, sn)t
′t × |playst
′rn |
|playst′rn |+ 1
According to this, the estimated number of sales by all the agents that would be
playing rn can be calculated as:
S′(A, sn)t′t = S(ax, sn)t
′t +
S(A, sn)t′t × |playst
′rn |
|playst′rn |+ 1
According to the above estimations, the impact i(add plays((ax, rn))) is calculated
110 6.2. Impact Measurement of Organization Transition
as the difference between the profits obtained by the sales that are carried out when
ax is not playing rn and the sales that would be carried out if ax was playing rn:
(S(A, sn)t′t − S′(A, sn)t
′t )× profit(sn)
A high impact represents that the utility is expected to decrease if ax plays the role
rn while a low impact represents an expected increase in utility.
The impact ID(ax, rc) (Eq. 3.2) refers to the cost required for ax to return the travel
packages regarding the service sc that remain unsold. In this example, agents that
provide a service with higher suitability are able to return the unsold travel packages
at a lower cost, while agents that provide a service with lower suitability have a higher
cost for returning the unsold travel packages. Therefore, the impact ID(ax, rc) is
calculated as the number of unsold travel packages that are returned at the price that
they should have been sold, according to the agent suitability:
The case study presented in this chapter is focused on testing the effectiveness of
the MTDM by comparing the organization performance under different conditions
of adaptation. This example is based on a network of data servers. After describ-
ing the case of study, we define the impact measurement for the three organization
transitions provided by the MTDM. Then, a set of experiments is presented in order
to demonstrate the contributions of the three principles of the MTDM: organization
adaptation, cost-aware computation, and multi-dimensional transitions.
7.1 Introduction
Service Provider Networks (SPNs) represent environments for modeling agents that
provide services to other agents. We model a SPN as an organization that is com-
posed of agents that play different roles according to the services that they offer.
129
130 7.1. Introduction
Each service involves a different kind of data resources, and external agents of the
organization request these resources in order to retrieve them. In this example, we
assume that each service sy is provided by the role ry.
Each agent of the organization is directly connected to other agents through bidirec-
tional links. This is represented in the organization by acquaintance relationships.
A single acquaintance (ax, ay) or (ay, ax) is sufficient to determine that agents axand ay are directly connected. We represent by L(ax), the acquaintances agent axat the current moment: L(ax) = {(i, j) ∈ acquaintancec : i = ax ∨ j = ax}.Depending on the number of acquaintances, an agent ax has associated an specific
bandwith BWax that is computed as the division of a global bandwith BW between
the number of acquaintances of ax: BWax = BW|L(ax)| . The global bandwith BW in
this example is defined as constant for every agent.
A link between a pair of agents ax and az , which are directly connected, has an
associated bit-rate BR(ax, az), which represents the transfer speed when data re-
sources are transferred through this link. This bit-rate is computed as the minimal of
the bandwith of both agents: BR(ax, az) = min(BWax , BWaz). When agents are
asked for a data resource that belongs to a service that is not provided by them, they
must retrieve this data resource from any other agent of the organization by requiring
a time for retrieving this data. There exists a path that connects any pair of agents axand az . The path that has the minimal number of links between a pair of agents, is
the path through which all the transferences between these agents are carried out.
Each agent ax receives a number of requests from agents for a service sy in a time
period between t′ and t, which is represented as R(ax, sy)tt′ . If the agent provides
the requested service, it can send the data resource immediately, making the time
required to have the data available to be null: AT (ax, R(ax, sy)tt′ , sy) = 0.
If the agent does not provide the requested service, it must retrieve the data resource
from another agent of the organization through its nearest providerNP (ax, sy). This
agent is the agent that is directly connected to ax, which defines a path that has
associated to it the minimal number of links for accessing an agent provider of service
7. Organization Transitions on a Service Provider Network 131
sy. Thus, the whole time required by ax to have the data available can be calculated
as AT (ax, R(ax, sy)tt′ , sy):
R(ax, sy)tt′ ×Avg.(sy)
BR(ax, NP (ax, sy))+AT (NP (ax, sy), R(ax, sy)
tt′ , sy) (7.1)
being Avg(sy) the average size of an individual data resource of the service sy. The
first addend of Eq. 7.1 corresponds to the time required for ax to obtain the data
from its nearest provider NP (ax, sy), while the second addend corresponds to the
time required for this agent for, in turn, obtain the data requested. Depending on the
acquaintances between agents, a higher or a lower number of internal requests would
be required.
In a SPN environment, data is usually transferred through links in both directions.
Therefore, the transference time for each link between two agents ax and az repre-
sents the whole time required for transfering all the data demanded through this link
in a period of time between t′ and t, i.e., the requests for each service retrieved from
ax and from az during this period of time that require this link. This transference
time is represented as T (ax, az)tt′ :
∑R(ax, sy)
tt′ ×Avg(sy) +
∑R(az, sw)tt′ ×Avg(sw)
BR(ax, az)(7.2)
for all sy, sw such that az = NP (ax, sy) ∧ ax = NP (az, sw).
The delay time of agent ax represents the time required by ax for retrieving all the
data requested in a period of time. This is calculated as the maximum time required
132 7.1. Introduction
by all the acquaintances of ax for retrieving all the data requested between t′ and t:
D(ax)tt′ = max(i,j)∈L(ax)
T (i, j)tt′ (7.3)
In this example, the utility of the organization can be represented as inversely pro-
portional to the average delay time for retrieving all the requests received in the or-
ganization:
D(Ot) =
∑ax∈AD(ax)tt′
|A|(7.4)
We used this notation to provide a consistent sense of utility measurement so that the
system maximizes it, i.e. the system minimizes the average delay time for the whole
organization.
The objective of the organization in this example is to minimize the time delay, i.e.
to maximize the utility. At design time, it may be not posible to know what the
best distribution of the services among the agents will be. Furthermore, according to
the requests received, the best distribution may change while the system is running,
and the organization must adapt to these new requirements. Therefore, organization
transitions provide adaptation alternatives for improving this utility.
Following, we define how impacts are measured in this domain for the three types of
organization transitions.
7. Organization Transitions on a Service Provider Network 133
7.1.1 Role Reallocation Transition Impact Estimation
The impact of role reallocation for an agent ax is obtained by Eq. 3.3. This equation
calculates the impact of playing a new role an stop playing the current role. The term
IA(ax, rn) (Eq. 3.1) represents the impact for agent ax of providing the services
offered by the new role rn. In this example, since a single service is provided by
a role, this impact refers to the time required to transfer the whole database for the
service sn to the agent ax from the nearest provider of ax.
According to Eq. 7.1, this time can be calculated as the availability time required forretrieving this database:
The impact ID(ax, rc) (Eq. 3.2) represents the time required for deleting the database
of the service provided by the current role rc from agent ax in a SPN environment.
We assume this impact to be null because the time required for this operation can be
minimal.
The term i(delete plays((ax, rc))) represents the impact of stopping ax from play-
ing the role rc once the current database is deleted. This impact measures how the
134 7.1. Introduction
average delay time would be affected if ax does not play the role rc anymore. Similar
to the impact i(add plays((ax, rn))), this impact can be estimated as the time that
would be required to provide the services requested between t′ and t if agent ax had
not been playing rc. These requests would be retrieved from the nearest provider of
ax:
i(delete plays((ax, rc))) = AT (ax, R(ax, sc)tt′ , sc)
7.1.2 Acquaintance Transition Impact Estimation
In a SPN environment, an acquaintance addition between a pair of agents causes the
time required for transfering any data between these agents to decrease, since fewer
links are required. This also may influence the nearest providers of all the agents of
the organization. However, as stated in Section 7.1, the addition of a link between
agents ax and az causes the bandwith for any link of these agents to be reduced to
BWax ×|L(ax)||L(ax)|+1 for ax and BWaz ×
|L(az)||L(az)|+1 for az .
Similarly, deleting a link between agent ax and az causes the bandwith for any link
of these agents to be increased to BWax×|L(ax)||L(ax)|−1 for ax and BWaz ×
|L(az)||L(az)|−1 for
az .
These bandwith modifications may cause the bit-rate of links that include one of these
agents to be changed toBR(i, j) = min(BWi, BWj), for all (i, j) ∈ acquaintancest
such that i = {ax, az} ∨ j = {ax, az}.
Similarly to the role reallocation transition estimation, the impact of adding and delet-
ing acquaintances between agents can be estimated according to the requests that
have been received between t′ and t. Since a modification of an acquaintance may
influence the nearest providers of other agents, requests that would be received at
each agent can be recalculated according to this modification.
This causes that a new delay is calculated by following Eq. 7.3 and a new average
delay time DN (Ot) is estimated according to Eq. 7.4.
7. Organization Transitions on a Service Provider Network 135
In order to compute the impact of adding an acquaintance between a pair of agents axand az , the difference between the average delay time of the current organization and
the average delay time of the new organization is calculated. Moreover, a fixed cost
associated to the time required for setting up the link is represented as cs(ax, az).
Thus, the impact for adding an acquaintance between this pair of agents is calculatedas:
The impact related to the deletion of an agent ax is represented as IP (ax) by fol-
lowing Eq. 3.7. This impact involves a fixed impact i(delete agent(ax)) that rep-
resents the time required for turning off the agent as ct(ax). The deletion of all
the links require a fixed impact for turning off these links that can be represented
as ct(ax, L) =∑ct(i, j) for all (i, j) ∈ L(ax). This also causes the bit-rate of
acquaintances to be recalculated.
Finally, the impact for agent ax to stop playing the role rc is represented as IP (ax, rc)
and can be calculated by following Eq. 3.2. This impact is composed by ID(ax, rc)
and i(delete plays((ax, rc))). As stated in Section 7.1.1, the impact ID(ax, rc) can
be considered null, while the impact i(delete plays((ax, rc))) can be estimated as
AT (ax, R(ax, sc)tt′ , sc).
Similar to the addition operation, we assume that requests received at agent ax would
have been distributed between the rest of the agents of the organization if ax is
deleted.
Then, the requests that would be received at every agent and the average delay timefor this new organization DN (Ot) can be calculated by following Eq. 7.4. Thus, wecan calculate the impact IP (ax) as: