social-based planning model for multiagent systems

19
Social-based planning model for multiagent systems Sara Rodríguez b,, Yanira de Paz b , Javier Bajo a , Juan M. Corchado b a Escuela Universitaria de Informática, Universidad Pontificia de Salamanca, Compañía 5, 37002 Salamanca, Spain b Departamento Informática y Automática, Universidad de Salamanca, Plaza de la Merced s/n, 37008 Salamanca, Spain article info Keywords: Multi-agent systems Virtual organizations Dynamic architectures Adaptive environments abstract An idea that seems to be gaining considerable ground is that modeling the interactions of a multi-agent system cannot be related exclusively to the actual agent and its communication capabilities, but must involve the use of concepts found in organizational engineering as well. It is possible to establish different types of agent organizations according to the type of communication, the coordination among agents, and the type of agents that comprise the group. Each organization needs to be supported by a coordinated effort that explicitly determines how the agents should be organized and carry out the actions and tasks assigned to them. This research presents a new global coordination model for an agent organization. The primary novelty of the model consists of the dynamic and adaptive planning capability to distribute tasks among the agent members of the organization as effectively as possible. This model is unique in its con- ception, allowing an organization in a highly dynamic environment to employ self-adaptive capabilities in execution time. This allows for the behavior of an agent to be determined by the goals it wishes to reach, while still giving consideration to the goals of other agents and any changes in the environment. The model is evaluated in a multi-agent system developed within an architecture oriented toward THO- MAS organizations and simulated in a virtual environment. Ó 2011 Elsevier Ltd. All rights reserved. 1. Introduction Services based on new technologies are generating new lines of investigation with respect to improving the interactive experience; eliminating any irrelevant services, or those that hold little or no interest, and adapting to the true needs of each user. One of the pri- mary tendencies in a tourist setting is to implement systems to help tourists plan their routes. Recommendation and guidance sys- tems are an attempt to mathematically model and technically emulate the real world recommendation process. These are recog- nized Artificial Intelligence techniques based on software compo- nents that are typical in e-commerce and tourist systems. CBCF (Content-Boosted Collaborative Filtering) (Melville, Mooney, & Nagarajan, 2002), LIBRA (Learning Intelligent Book Recommending Agent) (Mooney & Roy, 2000), MRS (Music Recommendation System) (Hung-Chen & Arbee, 2005), or TIP (Tourist Information Provider) (Hinze, Malik, & Malik, 2005; Hinze & Voisard, 2003) are some examples. MAS (multi-agent systems) stand out among the different AI techniques currently employed, having been used successfully in these types of applications (Bajo et al., 2009; Fonseca, Griss, & Letsinger, 2001; Kowalczyk, Ulieru, & Unland, 2002). Because of their particular characteristics, including autonomy, flexibility and the ability to cooperate, they are perfectly suited for dynamic environments such as these. The current trend with MAS systems is to employ organizational concepts in their design, which helps to focus their work in the field of tourism, since they establish a connection between a tourist organization and an organization at the software agent level with regards to structure, functionality, etc. Virtual organizations (Ferber, Gutknecht, & Michel, 2004) are a means of understanding system models from a sociological per- spective, which is closely related to the area in question. From a business perspective, a virtual organization model is based on the principles of cooperation among businesses within a shared network, and exploits the distinguishing elements that provide the flexibility and quick response capability that form the strategy aimed at customer satisfaction (Schertler, 1998). It is therefore in the best interest of tourist agencies to begin taking into consider- ation this type of organization, which takes advantage of the effi- ciency of new information and communication technologies, to improve their competitiveness among other agencies. Even so, within the development of organizations, both at the business and agent level, we find a set of requirements (Rodríguez, Pérez-Lancho, De Paz, Bajo, & Corchado, 2009) that call for the use of new social models in which the use of open (Zambonelli, Jennings, & Wooldridge, 2003) and adaptive (Di Marzo, Gleizes, & Karageorgos, 2004) systems is possible. Open systems are characterized by the heterogeneous quality of their participants, 0957-4174/$ - see front matter Ó 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.eswa.2011.04.101 Corresponding author. E-mail addresses: [email protected] (S. Rodríguez), [email protected] (Y.de Paz), jbajope@ upsa.es (J. Bajo), [email protected] (J.M. Corchado). Expert Systems with Applications 38 (2011) 13005–13023 Contents lists available at ScienceDirect Expert Systems with Applications journal homepage: www.elsevier.com/locate/eswa

Upload: sara-rodriguez

Post on 21-Jun-2016

220 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Social-based planning model for multiagent systems

Expert Systems with Applications 38 (2011) 13005–13023

Contents lists available at ScienceDirect

Expert Systems with Applications

journal homepage: www.elsevier .com/locate /eswa

Social-based planning model for multiagent systems

Sara Rodríguez b,⇑, Yanira de Paz b, Javier Bajo a, Juan M. Corchado b

a Escuela Universitaria de Informática, Universidad Pontificia de Salamanca, Compañía 5, 37002 Salamanca, Spainb Departamento Informática y Automática, Universidad de Salamanca, Plaza de la Merced s/n, 37008 Salamanca, Spain

a r t i c l e i n f o

Keywords:Multi-agent systemsVirtual organizationsDynamic architecturesAdaptive environments

0957-4174/$ - see front matter � 2011 Elsevier Ltd. Adoi:10.1016/j.eswa.2011.04.101

⇑ Corresponding author.E-mail addresses: [email protected] (S. Rodríguez), yanira

upsa.es (J. Bajo), [email protected] (J.M. Corchado).

a b s t r a c t

An idea that seems to be gaining considerable ground is that modeling the interactions of a multi-agentsystem cannot be related exclusively to the actual agent and its communication capabilities, but mustinvolve the use of concepts found in organizational engineering as well. It is possible to establish differenttypes of agent organizations according to the type of communication, the coordination among agents, andthe type of agents that comprise the group. Each organization needs to be supported by a coordinatedeffort that explicitly determines how the agents should be organized and carry out the actions and tasksassigned to them. This research presents a new global coordination model for an agent organization. Theprimary novelty of the model consists of the dynamic and adaptive planning capability to distribute tasksamong the agent members of the organization as effectively as possible. This model is unique in its con-ception, allowing an organization in a highly dynamic environment to employ self-adaptive capabilitiesin execution time. This allows for the behavior of an agent to be determined by the goals it wishes toreach, while still giving consideration to the goals of other agents and any changes in the environment.The model is evaluated in a multi-agent system developed within an architecture oriented toward THO-MAS organizations and simulated in a virtual environment.

� 2011 Elsevier Ltd. All rights reserved.

1. Introduction

Services based on new technologies are generating new lines ofinvestigation with respect to improving the interactive experience;eliminating any irrelevant services, or those that hold little or nointerest, and adapting to the true needs of each user. One of the pri-mary tendencies in a tourist setting is to implement systems tohelp tourists plan their routes. Recommendation and guidance sys-tems are an attempt to mathematically model and technicallyemulate the real world recommendation process. These are recog-nized Artificial Intelligence techniques based on software compo-nents that are typical in e-commerce and tourist systems. CBCF(Content-Boosted Collaborative Filtering) (Melville, Mooney, &Nagarajan, 2002), LIBRA (Learning Intelligent Book RecommendingAgent) (Mooney & Roy, 2000), MRS (Music RecommendationSystem) (Hung-Chen & Arbee, 2005), or TIP (Tourist InformationProvider) (Hinze, Malik, & Malik, 2005; Hinze & Voisard, 2003)are some examples.

MAS (multi-agent systems) stand out among the different AItechniques currently employed, having been used successfully inthese types of applications (Bajo et al., 2009; Fonseca, Griss, &Letsinger, 2001; Kowalczyk, Ulieru, & Unland, 2002). Because of

ll rights reserved.

@usal.es (Y.de Paz), jbajope@

their particular characteristics, including autonomy, flexibilityand the ability to cooperate, they are perfectly suited for dynamicenvironments such as these. The current trend with MAS systemsis to employ organizational concepts in their design, which helpsto focus their work in the field of tourism, since they establish aconnection between a tourist organization and an organization atthe software agent level with regards to structure, functionality,etc. Virtual organizations (Ferber, Gutknecht, & Michel, 2004) area means of understanding system models from a sociological per-spective, which is closely related to the area in question. From abusiness perspective, a virtual organization model is based onthe principles of cooperation among businesses within a sharednetwork, and exploits the distinguishing elements that providethe flexibility and quick response capability that form the strategyaimed at customer satisfaction (Schertler, 1998). It is therefore inthe best interest of tourist agencies to begin taking into consider-ation this type of organization, which takes advantage of the effi-ciency of new information and communication technologies, toimprove their competitiveness among other agencies.

Even so, within the development of organizations, both at thebusiness and agent level, we find a set of requirements (Rodríguez,Pérez-Lancho, De Paz, Bajo, & Corchado, 2009) that call for the useof new social models in which the use of open (Zambonelli,Jennings, & Wooldridge, 2003) and adaptive (Di Marzo, Gleizes, &Karageorgos, 2004) systems is possible. Open systems arecharacterized by the heterogeneous quality of their participants,

Page 2: Social-based planning model for multiagent systems

13006 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

limited trust factor, opposing individual objectives, and a highprobability of discontent with the specifications (Giret, Botti, &Valero, 2005). Adapting to the environment is a goal that has beenrecognized in the most recent research (Capera, Georgé, Gleizes, &Glize, 2003; Razavi, Perrot, & Guelfi, 2005; Reitbauer et al., 2004;Weyns, Schelfthout, Holvoet, & Glorieux, 2004; Zambonelli, Gle-izes, Mamei, & Tolksdorf, 2004). It involves software systems capa-ble of responding and acting on their own accord when dealingwith changes in their environment. This requires the availabilityof theories, models, mechanisms, methods and tools that can de-velop systems with the ability to reorganize and adapt to futurechanges in their environment. Even when focusing on the field oftourism, it is possible to see that adaptation is considered a com-mon denominator within the research in this area: adaptation of(i) the offer (a specific tourist context, and several basic servicerequirements needed to perform this activity); (ii) the providers(the tourist information and the data base for available routes);(iii) the consumers/users (the user models). Each of these factorsis critical when personalizing a tourist route adapted to the servicethat the tourist agency wishes to offer.

The tourists themselves are a fundamental part of the system.Those who are motivated to engage in a tourist route must choosewhere to go, how to arrive at their destination, and what to do oncethey arrive. The planning process for the route is complicated be-cause of the numerous factors involved in this process, such as apreference for certain attractions, means of transport, services, aswell as the time and money restrictions of each tourist. The processof creating personalized routes or itineraries based on the user’sprofile and certain restrictions, can be solved by applying tech-niques that are well known in Operational Research (OR). OR isan interdisciplinary science that applies scientific methods to solvedaily problems within an organization, and seeks to improve effi-ciency. Some of the algorithms associated with the planning pro-cess are based on the Traveling Salesman Problem (TSP)(Traveling Salesman Problem (Held & Karp, 2005), Traveling Sales-man Problem with Time Windows (Dumas, Desrosiers, Gelinas, &Solomon, 1995), Generalized Traveling Salesman Problem (GTSP)(Henry-Labordere, 1969) Orienteering Problem (OP) (Golden, Levy,& Vohra, 1987), Chinese Postman Problem (CPP) (Thimbleby,2003)) but these algorithms do not incorporate any critical restric-tions for the functional tourist system. Each of these solutions fo-cuses on aspects related to mobility. Their objective is to find aroute between a start and end point that maximizes a specific ben-efit and minimizes costs within a specific period of time for a singleuser. Although these solutions have been studied for a considerableamount of time, there is still no optimal solution for the problem ofplanning scalable routes to non-deterministic environments areasor those shared by several members of an organization. This prob-lem poses a considerable calculation, and there does not yet exist asolution to finding a self-adaptive planning for the variation ofpoints along the route.

Some of the algorithms that currently exist can be used to cal-culate routes within the tourism sector. The routes can be person-alized based on the tourist’s profile, the attractions and theinformation about the trip. Each route typically begins by planningthe day very generally. This phase is important, although it wouldbe much more useful to create a dynamic itinerary in which thesystem likewise offers a list of recommended attractions basedon the interests of the users, the other users, and the possiblereplanning of the plans. The problem with self-adaptive planningwithin an organization can be extrapolated to other situationsand daily life case studies (business, educational, entertainment,etc., environments).

Given the advantages provided by the unique characteristicsfound in the development of MAS from an organizational perspec-tive, and the absence of an adaptive planning process for any social

model, this study proposes a model that can coordinate a dynamicand adaptive planning system in an agent organization. Using acombination of multi-agent technology and OR-based planningtechniques, it is our goal to develop an optimal distribution of tasksfor the member agents of an organization. The model is unique inits conception and can provide an organization with self-adaptivecapabilities in execution time for highly dynamic environments.This allows the behavior of the agent to be determined by the goalsit wishes to achieve, while taking into account the goals of othermember agents as well as changes in the environment. In orderto evaluate the model, a case study was carried out within thetourist sector, which has always strived to optimize the processof generating plans and distributing resources. The case study de-signed for this research project has significant bearing. However,the objective of the research project itself is not to provide a disser-tation on behavior within a tourist environment, but to validate theproposed planning model through the simulation of an organiza-tion within this sector.

The article is structured as follows: Section 2 describes the pri-mary characteristics of the agent organizations and the state of theart for current studies in this field. Section 3 presents the structureof the proposed planning model, and ties it to the concepts of theCBP-BDI agent. Section 4 demonstrates how the model can be usedin a specific case study; to this end, the context, the concepts andthe model of the system will be explained. Section 5 will provide aclear example of planning within the developed system. And finally,Section 6 will emphasize the results and conclusions obtained.

2. State of the art

The usefulness of any technology, including multi-agent sys-tems (MAS) can be judged by two criteria: (i) its ability to solvenew types of problems and (ii) its ability to improve the efficiencyof existing solutions (Jennings & Wooldridge, 1998). With this inmind, agents and multi-agent systems provide a natural methodof characterizing intelligent systems. Intelligence and interactionare two concepts that are inextricably joined, a fact that is wellestablished in agent technology.

When discussing MAS, the idea of a single agent is expanded toinclude an infrastructure for interaction and communication. Ide-ally, MAS include the following characteristics (Huhns & Stephens,1999):

� They are typically open with a non-centralized design.� They contain agents that are autonomous, heterogeneous and

distributed, each with its own ‘‘personality’’ (cooperative, self-ish, honest, etc.).� They provide an infrastructure specifically for communication

and interaction protocols. Open MAS should allow the partici-pation of heterogeneous agents with different architecturesand even different languages (Zambonelli et al., 2003). How-ever, this makes it impossible to trust agent behavior unlesscertain controls based on norms or social rules are imposed.To this end, developers have focused on the organizationalaspects of agent societies, using the concepts of organization,norms, roles, etc. to guide the development process of thesystem.

MAS agents based on organizational concepts coordinate andexchange services and information; they are capable of negotiatingand coming to an agreement; and they can carry out other morecomplex social actions. At present, research focusing on the designof MAS from an organizational perspective seems to be gainingmost ground. The emergent thought is that modeling the interac-tions in a MAS cannot be related exclusively to the actual agent

Page 3: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13007

and its communication capabilities; instead, organizational engi-neering is necessary as well. The concepts of rules (Zambonelli,2002), norms and institutions (Esteva, Rodriguez, Sierra, Garcia, &Arcos, 2001) and social structures (Parunak & Odell, 2002) arerooted in the idea of needing a higher level of abstraction, indepen-dent from the agent, that explicitly defines the organizations inwhich the agents reside.

Coordination and communication are very important themeswithin MAS. Over the years, many different types of architecturesand models to manage the organization and coordination in MAShave been proposed (Wiederhold, 1992; Wooldridge & Jennings,1994). All of the architectures have one point in common: the con-cern for coordinating agent behavior. Agents can jointly coordinatetheir knowledge, goals, abilities, tasks and plans to resolve a globalobjective. To perform tasks, an agent may need system resources,in which case it would have to coordinate with the other systemagents that need the same resource. The coordination allows theagents to consider all of the tasks and regulate them so as to avoidexecuting undesirable actions such as:

� The agents not generating or communicating sub-solutions thatwould lead to the solution of a problem.� The agents generating and communicating redundant solutions.� An inappropriate distribution of the workload among agents.

This coordination is related to the action planning required forsolving tasks:

� High level understanding and ability to predict the behavior ofthe other system agents.� Exchange intermediate results that progress toward the solu-

tion of a global task.� Avoid redundant actions, if they are undesirable.

Having the agents carry out tasks can be organized in variousways, such as: each agent executing one of the tasks; or dividingthe tasks into sub-tasks, which can be done by a breakdown mech-anism for problems, that are performed by various agents. Thetasks that an agent should perform depend, among other things,on the role that the agent assumes in the system. For example, inan ‘‘office’’ system, an agent ‘‘person’’ assumes the role of ‘‘secre-tary’’ and performs all duties related to that role. That same agentcould assume the role of ‘‘boss’’ and perform very different tasksrelated to this new role. To carry out these tasks, an agent mayneed system resources, in which case it must coordinate with theother system agents that need to use the same resource.

Agent organizations depend on the type of coordination andcommunication among agents, as well as the type of agents thatcomprise the group. There are several different organizationalapproaches: MOISE (Boissier & Gateau, 2007), OperA (Dignum,2004), INGENIAS (Pavon & Gomez-Sanz, 2003), the Gaia Method-ology (Omicini, Ricci, & Viroli, 2004; Zambonelli et al., 2003).However, while these studies provide mechanisms for creatingcoordination among participants, there is much less work fo-cused on adapting organizational structures in execution time,or on norms defined in design time. For example, Hubner, Sich-man, and Boissier (2004) proposes a model for controlling adap-tion by creating new norms. Gasser and Ishida (1991) propose adistributed model for reorganizing their architecture. Artikis,Kaponis, and Pitt (2009) require agents to follow a protocol toadapt the norms. Each of these studies focuses on the structureand/or norms based on adapting the coordination amongparticipants.

There are other approaches, such as those based on social norms(on the role of a social group and the effect on the appearance andsupport of social norms) (Hales, 2002; Lakkaraju & Gasser, 2008).

Another possibility is the development of a MAS that focuses onthe concept of organization/institution. Human interactions areregulated by institutions (North, 1990) that represent the rules ofthe game in a society, and define what the individuals can and can-not do and under what conditions. This perspective defends theadoption of a mimetic strategy whose objective is to tackle thecomplexity of the development of open MAS from an organiza-tional concept. One electronic institution (Esteva, 2003; Garcia,2009; Noriega, 1999; Rodríguez-Aguilar, 2003) should be consid-ered a social middleware between the external participatingagents and the selected communication layer responsible foraccepting or rejecting the agent actions. There are also differentstudies that focus this theme on the definition of ‘‘AutomaticElectronic Institutions’’, an extension of electronic institutions withself-adaptive capabilities (Bou, López-Sánchez, & Rodriguez-Aguilar, 2007a, 2007b; Bou, López-Sánchez, Rodríguez-Aguilar, &Simao, 2009). The primary difference with the other proposals isthat the adaption is carried out by the institution instead of bythe agents.

Other points of view (Kittock, 1993; Shoham & Tennenholtz,1992, 1997; Walker & Wooldridge, 1995) focus on the mechanismsfor regulating behavior. Here the key factor is ‘‘imitation’’, whichrefers to the social conventions that occur through propagationand contagion (Burt, 1987; Conte & Paolucci, 2001).

Lastly, there are approaches in which the agents use the infor-mation obtained during their interactions (Axelrod, 1986; Castel-franchi & Conte, 1995; Sen & Airiau, 2007). In these studies,social norms (as special types of social conventions) are used bythe agents to self-regulate their behavior according to social infor-mation: prior history, reputation, etc. The research focuses onsocial group mechanisms based on the social information gatheredduring the interactions (Villatoro & Sabater-Mir, 2008a, 2008b,2008c). They study the effects of the information transmissionalgorithms in recognizing and forming social groups.

None of these approaches is capable of coordinating tasks forthe member agents of the organization to solve a common prob-lem, nor do they consider that task planning should adapt tochanges in the environment. The social model used in the architec-ture selected for this study is THOMAS (MeTH ods, Techniques andTools for Open Multi- Agent Systems) (Carrascosa et al., 2009; Giretet al., 2009), which focuses on defining the structure and norms.The adaptation feature used in these models is based on the coor-dination among organization participants. The following sectionwill present the proposed coordination model whose goal is to car-ry out an adaptive planning process within an agent organization.

3. Proposed model

This research proposes a coordination model that facilitates aself-adaptation feature within an agent society. We will use acooperative MAS in which each agent is capable of establishingplans dynamically in order to reach its objectives. Additionally,there should be a global mechanism that can optimally assignactivities to the agents so that they can work in a coordinated ef-fort. The global mechanism considers the global objective of thesociety, as well as its norms and roles.

The proposed model clearly demonstrates that the suppositionsset forth in Section 2 do not occur. The agents have limited capabil-ities, which make it difficult for them to have complete and accu-rate knowledge about the environment. Furthermore, the effects ofthe agents’ actions can vary for different reasons (changes in theinternal structure of the agents, changes in the norms, etc.). Thebehavior of the agents will be determined by the individual goalsthat each agent wishes to obtain, but while also bearing in mindthe goals of other agents and any changes in the environment.

Page 4: Social-based planning model for multiagent systems

13008 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Section 3.1 presents the deliberative CBP-BDI agent architectureproposed to construct the model, as well as the planning modelused by the CBP-BDI agent to reach its individual objectives. Sec-tion 3.2 details the global coordination mechanism used in thestudy.

3.1. CBP-BDI agents

Among the different agent architectures that attempt to providea satisfactory solution to these requirements, there is one model ofparticular interest that is based on the notion of deliberative rea-soning (Bratman, Israel, & Pollack, 1988; Corchado, 2004) and hasgiven rise to the BDI (Belief-Desire-Intentions) architecture. ABDI agent emphasizes the reasoning process directed at an action,i.e., determining what the agent should do (Wooldridge, 2002,chap. 4). This process involves two fundamental activities: (a)determining which goals should be achieved (deliberation) and(b) deciding how to reach these goals (planning). Both processesshould be carried out by taking into account the limited resourcesof each agent. In other words, the reasoning processes should con-sider the restrictions imposed within the system for selecting theactions in an effective manner.

BDI architectures exhibit interesting properties that can dealwith situations involving high level coordination among the agentsavailable at a given time, and suggest the necessary extensions forthis model, thus allowing the agents to engage in the correct socialbehavior.

The model proposed in this study includes a type of agent capa-ble of planning from the perspective of an agent organization. Thisparticular agent is a deliberative CBR-BDI agent (Corchado & Laza,2003). The primary characteristic of this agent is the ability to inte-grate a CBR reasoning mechanism (Aamodt & Plaza, 1994). A CBRsystem initiates a reasoning cycle comprised of four sequentialphases: retrieve, reuse, revise and retain.

This cycle is integrated within the activities of the BDI agent(Corchado & Laza, 2003) and identifies the phases as tasks or rolesthat the agent should be able to perform. This makes up for one ofthe primary deficiencies in the BDI model, which involves the man-ner in which memory and past experiences are handled. Bajo et al.(2008), Carrascosa, Bajo, Julián, Corchado, and Botti (2008),Corchado, Glez-Bedia, de Paz, Bajo, and de Paz (2008) and Glez-Bedia (2004) present a method for incorporating a CBR engine tothe BDI model.

The main idea in these studies is the use of the mechanisms thatthe deliberative BDI model provides, specifically Beliefs, Desiresand Intentions, to be able to obtain a representation of the caseand initiate the CBR reasoning cycle.

To integrate the CBR reasoning system within the structure of adeliberative BDI agent, Corchado et al. (2008) and Glez-Bedia(2004) propose a formula that can relate the concept of case tothe fundamental concepts of BDI.

One specialization of the CBR-BDI agent is the CBP-BDI agent(Corchado et al., 2008). Its internal structure is similar, but it differsfrom the CBR-BDI agent in that the solution that the agent carriesout is not a model, but an actual plan, i.e., a sequence of actions. ACBP-BDI agent should incorporate a planning mechanism that gen-erates plans as solutions to the given problem.

A CBP-BDI agent can incorporate different planning mecha-nisms (Bajo, Corchado, & Rodríguez, 2007; Bajo et al., 2008; Corch-ado, Aiken, & Bajo, 2007; Corchado et al., 2008). Corchado et al.(2008) presents a replanning mechanism for CBP-BDI agents inwhich the main characteristic is the ability to replan in executiontime. A CBP-BDI agent calculates the plan or intention that is mosteasy to replan: Most RePlannable Intention (MRPI). This is the planthat can most easily be replaced by another plan in case it is

interrupted (for example, if a user changes preferences while theplan is being executed).

In a dynamic environment, such as an agent society, the abilityto have alternate plans is very important for maintaining efficiencywithin the system. As previously mentioned, it is increasingly com-mon to model a MAS not only from the perspective of the agentand its communication capabilities, but by including organiza-tional engineering as well. The primary function of a society is toallow its members to coexist in a shared environment and to carryout their respective goals while cooperating, or not, with the othermembers. The coordination of tasks that are combined to solve acommon problem requires either a centralized or distributed typeof planning that can be carried out by the system agents them-selves. This constitutes an open problem for which traditionalplanning systems are inadequate. It is necessary to have a planningfeature that can adapt to these circumstances.

3.2. Planning model for a CBP-BDI agent

The main objective of this study is to obtain a planning modelthat can, within an architecture geared toward the developmentof agent organizations (THOMAS (Carrascosa et al., 2009; Giretet al., 2009)) take into account the changes that are produced with-in an environment during the execution of a plan. The particularfeature that must be considered in this case is that the plans areexecuted by the member agents of an organization. The plansshould take into account not only the restrictions imposed by anindividual agent, but also the commitments, restrictions andnorms within the organization. The planning process should definethe actions that the society of agents will have to execute andshould therefore also take into account the particular circum-stances of each of its members. Essentially, this is an adaptiveplanning method within an agent organization. To achieve this, aCBP-BDI agent, as previously described, must be used, applyingthe following planning model that is particularly suited fororganizations.

A plan p within an organization is defined as p = hE, O, O0, R, R0i,where: E is the environment that represents the type of problemthat the organization solves, and is characterized by a set of statesE = {e0, e⁄} for each agent, where e0 represents the initial state ofthe agent when the plan begins, and e⁄ is the state or set of statesthat the agents try to achieve. O represents the set of objectives forthe individual agent and O0 is the set of objectives reached once theplan has been executed. R is the set of available resources for thegiven agent and R0 is the set of resources that the agent has usedduring the execution of the plan.

Given the initial state of the organization, the term global plan-ning is used to describe the search for a solution that can reach thefinal state, all the while complying with a series of requirementsfor the organization. The problem can be represented in a planningspace that is delimited by the restrictions imposed by therequirements.

Given a common objective, specified resources available andtasks to perform, the aim is to find a global plan that allows theorganization to find the optimal solution, To this end, the planningagent should bear in mind the optimal plans p⁄(t) obtained for eachindividual agent. It is not necessary for all of the agents within theorganization to know how to meet the objectives, but they shouldknow how to perform some of the tasks that contribute towardreaching those objectives for the organization. Various genericplans are generated to solve a problem. They will be subsequentlybroken down into different tasks that will be distributed amongthe agents in the group (Fig. 1).

Upon initiating the process, certain agents will be retrievedfrom the memory of cases to perform at least one of the problemtasks. For each task that is not completed by any of the retrieved

Page 5: Social-based planning model for multiagent systems

Fig. 1. Planification model.

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13009

agents, at least one new agent will be incorporated. This agent willhave the greatest probability of successfully completing the giventask. The idea is to count on the necessary agents so that no taskis left unassigned; that is, that grouping the tasks that the agentscan perform should at the very least involve the set of tasks thatmust be performed in order to carry out the plan.

Let us assume that the common objective for agents ‘‘m’’ has ‘‘n’’states or tasks with m, n 2 N.

Each agent has its own characteristics with regard to whichtasks it can perform, which resources to use, and the amount oftime available to perform the tasks. In other words, each agenthas its own profile.

Given a state ‘‘j’’ for each agent ‘‘i’’ where i 2 {1, . . ., m}m2N , itcan be defined with a tuple zij – where each coordinate in the tuplerefers to the characteristic that defines it.

The following binary variables are defined as:

aij ¼1 if agent \i" is assigned to task \j"

0 otherwise

�ð1Þ

For each problem related to assigning tasks, an objective func-tion is defined whose goal is to minimize and maximize the costused by agents ‘‘m’’ to perform the common objective. For exam-ple, minimize or maximize the cost of using one of the agents toreach an objective, or maximize an efficiency function as needfor each case.

A new efficiency function is introduced in order to assign tasksto the agents. Its aim is to visit the greatest number of points withthe lowest possible cost. The aim of the previous efficiency func-tion (Corchado et al., 2008), was to find, after having first assignedthe tasks to the agents, the best possible route for completing theplan. The new efficiency function depends on the number of pointsvisited and the total cost that this implies.

Cost is another function that depends on the time that agent ‘‘i’’has spent working on task ‘‘j’’, on the resources used, and on thetype of agent assigned to each task. This is represented as: ci

tijrij.

The efficiency function is defined as:

Efficiency ¼ No: points v isitedPmi¼1

Pnj¼1ci

tijrij� aij

ð2Þ

Let us assume we want to maximize the efficiency function:

Max ¼ No: points v isitedPmi¼1

Pnj¼1ci

tijrij� aij

ð3Þ

where tij is the time it takes agent ‘‘i’’ to perform the task, andtij ¼ Max

kftijkg where tijk indicates the time it takes agent ‘‘i’’ to per-

form task ‘‘j’’ for tourist ‘‘k’’. Taking the maximum value of ‘‘k’’ (typeof tourist), we can ensure that the guide has time to perform thenecessary task regardless of the type of tourist. These times are ini-tially estimated.

Let us now define the restrictions of the problem.

1. We want each state to be completed by an agent, which inmathematical terms can be stated, for each state ‘‘k’’ as:

Xm

i¼1

aik ¼ 1 8k 2 f1; . . . ;ng ð4Þ

2. We want each state to be completed within a specified period oftime. Let us assume that state ‘‘k’’ should be completed withintime tk. The restriction would be:

Xm

i¼1

tikaik 6 tk 8k 2 f1; . . . ;ng ð5Þ

3. Each state ‘‘k’’ needs a set of resources to be executed. There isno reason for all of the agents to have these resources.Given state ‘‘k’’, we need rk

h resources with h 2 N, whereðrw ¼ Maxfrk

hgk¼1;...;nh2N .

The variables frkxgx2f1;...;wg 8k 2 f1; . . . ;ng are defined in binary

form:

rk

x ¼1 if the agent \k" needs the resource \x"

0 otherwiseð6Þ

The agent that performs state ‘‘k’’ must at the very least have atits disposable the resources that are needed to perform state ‘‘k’’,for which, given state ‘‘k’’, for each resource from the setfrk

xgx2f1;...;wg 8k 2 f1; . . . ;ng we can define the followingrestriction:

Page 6: Social-based planning model for multiagent systems

13010 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Xm

i¼1

rixaik P rkx 8k 2 f1; . . . ; ng; 8x 2 f1; . . . ;wg ð7Þ

The variables frixgx2f1;...;wgforalli 2 f1; . . . ;mg are binary variables:

rix ¼1 if the agent \i" has the resource \x"

0 otherwise

�ð8Þ

4. Each agent ‘‘i’’ has a minimum and maximum time for work,depending on the type of agent. These times are representedas tTurn on

i and tTurn offi respectively.

tTurn oni 6

Xn

j¼1

tij 6 tTurn offi 8i 2 f1; . . . ;mg ð9Þ

For the majority of agents, as we will see in the case study, themaximum number of working hours is equal to a regular 8 hwork day.

5. Every time we assign tasks to an agent, we want it to performthe mínimum number of tasks, which varies according to thetype of agent.

Xn

j¼1

aij P NumberTaski 8i 2 f1; . . . ;mg ð10Þ

If the suggested problem of non-linear programing were incom-patible, we would add agents to make it compatible. The agentadded would be the one with the highest probability a priori ofperforming the necessary tasks.

If a norm (restriction) changes, it would be necessary to assigntasks once again.

This allows us to obtain a plan for the tasks that need to be per-formed by the agent organization. In other words, we can obtain aglobal plan composed of all the tasks and agents in the organiza-tion that will carry them out. Every agent in the organization rec-ognizes the tasks that it needs to perform. These agents, which areCBP-BDI agents, integrate the 4 phases of a CBR system (retrieval,reuse, revise and retain). In each of these phases, the case-basedplanning performs the following actions (Corchado et al., 2008):

� Retrieval phase: Select the plans with the information most sim-ilar to the problem case.� Reuse phase: During this phase the agent creates a hyper-dimen-

sional vector space that includes all of the restrictions for theproblem, using the B-spline technique. At this point, all of theplans meeting the user’s requirements are identified. This pro-cess involves geodesic curves (in the hyper-dimensional vectorspace), which can be calculated using the Euler theorem.Geodesic plans ensure a minimum risk and constant efficiency,and they satisfy the objectives of the agent. The minimumJacobi field identifies the plan with the greatest density of planssurrounding it. This implies that if the plan is interrupted, it ispossible to find another plan close by that should be able toreach the initial objectives. The CBP-BDI agent recommendsthe most easily replannable plans to the user.� Revise phase: During this phase the user confirms the plan.� Retain phase: During this phase the plans are stored according to

the efficiency obtained.

In this way it is possible to obtain a planner that focuses on pro-viding the most optimal and efficient plan with minimal risk, incase of interruption, for a CBP-BDI agent. The planning problemconsidered is confined by certain restrictions.

To solve a constraint satisfaction planning problem, if we startwith a set of states or tasks E = {e0, . . ., en} that must be completed,it is posible to define an individual plan, such as a sequence of

actions that start from state e0 and define the sequence of statesthrough which an agent needs to pass in order to provide the mostoptimal completion of its tasks:

aj : Eeij

!!

EajðeijÞ¼ ekj ð11Þ

The dynamic relationship that is established between an agent’sbehavior and the changes that are produced in its surroundingenvironment can be modeled through the following equation,which indicates that the behavior of an agent can be representedby its function of action aA(t) "t, which is defined as a connectionbetween the instance of time t and the action selected by the agent

Agent A ¼ faAðtÞgt2T # N ð12Þ

Based on the definition of the function of action, it is posible todefine a new relationship that represents the idea of a plan ofaction for an agent.

pA : T � Aðt;aAðtÞÞ

!!

ApAðtÞ

ð13Þ

in the following way:

pAðtnÞ ¼Xn

i¼1

aiAðti � ti�1Þ ð14Þ

This makes it possible to obtain a discrete time expression for aplan of action for an agent. However, the objective of the CBP-BDIagent is to obtain a dynamic planning system. Therefore, to obtainthe definition of a plan for a CBP-BDI agent, we must present a con-tinuous time extension for the expression proposed in the equa-tion. In other words:

pAðtnÞ ¼Z tn

t0

aAðtÞdt ð15Þ

The environment in which a plan is executed is dynamic, and theplan for an agent pA(t) can vary. Additionally, according to the CBP-BDI model, a plan can also be modified according to the known suc-cess or failure of plans that were previously executed. All of theplans have an associated efficiency function defined by a measurethat can value the soundness of a plan according to its initial objec-tives, the resources used to obtain the objectives, and the results ob-tained after executing the plan. The efficiency expression for a planis defined by the relationship between the objectives reached andthe resource consumed. O indicates the initial objectives for the planand O0 represents the objectives reached after executing the plan. Ris the total amount of resources available for executing the plan andR0 represents the resources consumed by the agent during the plan’sexecution. The operator # represents the cardinal point of a set

Eff ¼#ðO0 \ OÞ

#R0ð16Þ

The planner should provide plans of optimal efficiency and min-imal risk; it should search among the optimal efficiency plans forthose with the best possibility of replanning in case of an interrup-tion (Corchado et al., 2008).

Given an initial state e0 for an agent, the term individual plan-ning is used to describe the search for a solution that enablesreaching the final state ei � e⁄ 2 E that satisfies a set of require-ments. At this point we have a plan p⁄(t), which enables an agentto reach its objectives as optimally as possible, and subsist in a dy-namic environment. p⁄(t) provides all of the states through whichan agent must pass in order to carry out a solution considered tobe the most optimal for completing the defined tasks, while bear-ing in mind the resources available (Corchado et al., 2008). We canobtain a structure for a CBP-BDI planning agent with dynamic attri-butes, i.e., the agent considers the possibility that there are changesthat take place during the execution of a plan.

Page 7: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13011

When introducing a problem to be solved in the organization, itwill be necessary to take all restrictions into account. For example,only certain agents can carry out plans that arrive at the optimalsolution. Once those agents have been identified, it will be neces-sary to assign the actions that each agent will carry out, and to gen-erate a global plan that will indicate the states through which it isnecessary to pass before arriving at the solution. It will also be nec-essary to define which agent will be in charge of passing from onestate ei to ej and the agents will have to coordinate in order to fulfillthe global plan. Additionally, the norms that indicate the methodof communications among the agents (obligations, permission,etc.) will have to be defined in the architecture, as well as the ser-vices that each agent can perform and with which role.

According to the model put forth in this study, at a given time tduring the life of an organization, there are three possible situa-tions that can occur:

1. If a planning agent has a problem, it must prepare a replanningprocess on its own. If that is not possible (it cannot carry out thetasks assigned by the coordinator), it will be necessary to pro-ceed to the reassignment of global tasks, which can alter thetasks assigned to each planning agent.

2. If the structure of the society changes because, for example, anew agent enters and forms part of the society, it would benecessary to globally reassign tasks so that all agents arereplanned.

3. The same thing occurs if there is a change in the norms. It wouldbe necessary to reassign tasks at the organizational level.

These situations will force the system to adapt itself dynami-cally to the initially established plan, adjusting the tasks that theorganization must carry out accordingly. The aim is to minimizeas much as possible any changes to the initial objectives. To thisend, it is necessary to provide an individual plan for each agent.This should be simple enough since the plan that was initially cho-sen by each planning agent is the most optimal plan, the mostreplannable in case of a problem. However, if this is not possible,there will then be a global reassignment of tasks. The followingsection presents a case study that tests the defined model. To doso, it is necessary to have an agent organization specialized in cer-tain tasks (those related to tourism) and a plan that should be car-ried out by the agents in the organization. It will be necessary toapply the defined model to carry out the plan and to verify thatit is possible to replan in the event of a mishap during the execu-tion time.

4. Case study

In order to evaluate the model proposed in Section 3 of this re-search, several experiments were carried out using the THOMASarchitecture, a technology developing virtual agent organizationsin open environments (Carrascosa et al., 2009; Giret et al., 2009).The reorganization and adaptation features in the agent’s behaviorare necessary for this platform, for which we have proposed themodel outlined in this article, which will be tested in a case study.The objectives of the case study are:

� Develop an agent society that includes:– Definition of agent roles: we will define the general features

required for the correct functioning of the society, as well asthose of the defined case study. This will determine thebehavior of the agents that comprise the organization. It isimportant to note that we will use an open system, whichmeans that the definition of these roles should not make itimpossible to carry out other similar case studies.

– Definition of the necessary services for the correct function-ing of an organization.

– Definition of the norms that control the society and influencethe interaction and behavior of the agents.

– Definitinon of the messages and interactions of the agentsthemselves.

� Simulation of the behavior of the organization in a specific caseinvolving the coordination and adaptation of its agents.� Validation of the proposed planning model by simulating the

organization in a case study.

This section is divided into 3 parts. The first will describe thecontext in which the case study was developed, presenting boththe internal system features (general functioning of the model)and the external (agents that exist in the world). The second partwill provide a brief explanation of the concept of an intelligent vir-tual agent, used in the case study simulation. Lastly, Section 4.3will present the system designed for this study.

4.1. Context

The case study presents a society whose aim is to offer tourguide services to tourists. This society is implemented by usingthe model proposed in Section 3 and is represented in a virtualworld containing a set of cultural heritage sites. The virtual worldsenable the incorporation of numerous interactive capabilities be-tween the system elements, making it possible to carry out a sig-nificant number of tasks. The simulation within the virtual worldrepresents a tourist environment in which there are guides andtourists, and in which the tour guide’s tasks will be performed inadherence to a defined set of norms.

To establish the interactive model, it is necessary to analyze theneeds and expectations of the potential users of the proposed vir-tual world. From this analysis it is possible to deduce the roles ofthe users that participate in the virtual world, and the manner inwhich they exchange information. The roles that have been identi-fied within the case study are:

� Tourist: This agent is in constant communication with theCoordinator agent to obtain the planning routes it requestswithin a defined area, and to know which tour group it isassigned to. An area will be a location within the virtual worldwith certain characteristics that may be appealing to the tour-ist. For example, within a given area there can be severalmuseums, historical buildings, scenic routes, musical events,etc. The profile for the tourist agent will be characterized bya set of variables specific to the agent (time, available funds,preferences, etc.).� Monument: A monument agent can be one of two types: static

(for example, a museum or building), which is characterizedby its immobile state within our world; or dynamic (for exam-ple an exhibit or concert), which may or may not take placewithin our world at a given time. The attributes for each typeare similar.� Guide: An agent guide will be a specialized Tour agent with

additional capabilities. In this case, besides being in constantcommunication with the Coordinator agent to obtain plannedroutes within the area, it will have a number of visitorsassigned to it (‘‘a group of tourists’’) to carry out the plannedroute. Included in its profiles are attributes such as the com-pany it works for, the assigned group of tourists and visitors,the route to follow, the number of additional guides available,its specialized knowledge of certain monuments (preferredrelationship with specific Monument agents), as well as itsown abilities such as knowledge of a particular language.

Page 8: Social-based planning model for multiagent systems

13012 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Within the society, the Coordinator agent will be in charge ofassigning route, tasks and visitors to the available guide.� Visitor: A Visitor agent is also a type of specialized Tourist agent,

but with fewer capabilities. A Visitor will not have access capa-bilities through mobile devices, but will have its own profilewith time, funds and preferences, and will be assigned to aGuide agent to follow a route within the area. These agentsare a static specialization of the Tourist agent (their data donot change much over time).� Coordinator: An agent that assumes this role will be able to

assign the routes to take for both the Guide agent and the Tour-ist agent. It also has reorganization capabilities.� Notification: This agent will be in charge of sending information

throughout the system.� Manager: This agent is responsible for the overall control of the

system. It controls the connection and disconnection of theTourist, Visitor and Guide agents to the system.

A Guide agent can automatically and dynamically generatethe routes that a tourist or guide will follow, independent ofother agents, but depending on the resources and profile foreach of them. It will be the planning agent of the proposed

Fig. 2. System funct

organization. The Coordinator agent will be responsible forassigning each agent with the tasks to carry out according tothe best global plan. In other words, there may be certain indi-vidual restrictions for each agent that must be taken into consid-eration by the Guide agents in order to generate a route, but it isthe Coordinator agent who takes into account the restrictions forthe entire society of agents in order to distribute and assigntasks to the Guide and Tourist agents. We can say that the Guideagent as well as the Coordinator agent will have access to theinformation on monuments, guide and tourist profiles, etc.,stored in the system.

The information stored is a data base of cases that considers thetask performed and the resources generated by each agent. Whenthe Coordinator agent should assign a task, it must take into ac-count the case base of all the tasks and agents, and retrieve thosethat contain at least one of the tasks that are proposed withinthe objectives of the organization. This way the Coordinator agentensures that the task can at least be carried out. If none of the tasksare found in the case base, it would be necessary to look at the suc-cess probability of each agent to carry out the given task.

Fig. 2 provides an outline of how the system functions. Firstof all, we can see the CBR system that coordinates the

ioning schema.

Page 9: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13013

organizational tasks and stores the tasks carried out by theagents. We can also see how each CBP-BCI Guide agent, as sug-gested in (Corchado et al., 2008), is assigned a cycle in which itwill obtain its personalized optimal plan.

This is not a typical guiding system in which each guide is as-signed to a group of tourists and visitors, and follows the touristroute for the group as assigned by the business office. Our casestudy uses a much more open system. The initial planning, bothin terms of assigning tourist (and visitor) groups to a guide, andin determining the routes to take, can vary. A dynamic plan is cre-ated for a specific moment, according to the guides available, thepreferences and location of the tourists and the events availableon this particular tour. This may force the agent society to adaptitself to new requirements.

For example, if at a particular moment the tour stops for a ‘‘mu-seum visit’’, it may be necessary to form two groups of 5 tourists toenter the museum. If the groups were initially composed of 10individuals, the system should be able to reassign the groups(change the structure of the organization) and introduce a newagent that can perform the role of Guide for the newly formedgroup.

As another example, if there is a change in the tourists’ prefer-ence, it may be necessary to change the group of tourists (and theguide assigned to them) at a particular time so that they may visitother parts of the world that are more in line with their interests(exhibits of a particular nature, shorter visits to monuments, etc.).

4.2. Intelligent virtual agents

To simulate agent behavior, we will use the IVA (intelligentvirtual agent) environment (Aylett & Luck, 2000; Lozano &Calderón, 2004) in which intelligent agents are represented inthree-dimensional models and form part of a simulated virtualenvironment (West & Hubbold, 1998).

An intelligent agent is a software entity that draws from its ownknowledge of the environment to perform operations, whether onits own initiative or because a particular situation calls for it, thatfulfill an objective. Intelligent agents can be considered individualentities within a program, as in our virtual environment, that con-trol their own life and movement within the same environment. Anintelligent virtual agent possesses characteristics that are exclusiveto virtual environments (Aylett & Luck, 2000) and intelligentagents:

� They reside within a 3D simulated environment.� They are represented as a 3D graphic within the world they live

in and are capable of perceiving, adapting and reacting to theirenvironment.� They can express their behaviors graphically, as would a live

being.� Although they only exist and function within a specific environ-

ment, they are aware of the changes that are produced aroundthem and are capable of responding to them autonomously.

The goal of the behavior (animation) associated with theseagents is to make it as realistic as posible. There are AI techniquesthat are useful in reaching this goal (Becheiraz & Thalmann, 1998;Caicedo & Thalmann, 2000). The complex behaviors are particu-larly important in this type of intelligent virtual environment,and can be divided into the following categories:

� Motivated by emotions that are felt by the actor as a result ofperceiving objects, actions and/or events. These are character-ized by conditions for each emotion and variables that measuretheir intensity.

� Motivated by beliefs or reasonings, whereby agent behavior isoriented toward an objective. The decision-making processincludes an objectives planner, dynamically managing beliefs,and evolving objectives, internal states and levels of trust.

The present study focuses on the second category. We haveseen how CBP-BDI agents provide the integration of reasoningand planning mechanisms that enable carrying out functions ofadaptation and reorganization. We have also examined the princi-ple techniques that try to solve the problem of finding a sequenceof transitional states from a starting point (state) to a final destina-tion (state), locating the optimal solution that solves the problemaccording to the target goal. Lastly, we have defined a social modelto perform adaptive planning within an agent organization. Nowwe take all that has been set forth in this study and apply it to areal case study.

4.3. Multi-agent environment for our planning model

TouristOrg is a multi-agent organization-based system. The sys-tem was designed according to the findings in Agüero, Rebollo,Carrascosa, and Julián (2009a, 2009b, 2010), which apply a MDD(Model Driven Development) focus on organization-orientedmethodologies. It is possible to design an organization that is uni-fied, intuitive, and has a high level of abstraction. Given these fea-tures, it becomes easier and simpler to design a MAS fororganizations and obtain a model for a virtual organization thatcan be implemented on different platforms. The fundamental ideais to create different models for different levels of abstraction, andthen combine them to achieve a full implementation. We usedGORMAS (Argente, 2008) as the design methodology and THOMAS(Carrascosa et al., 2009; Giret et al., 2009) as the final platformdesign.

GORMAS (Guidelines for Organization-based MultiAgent Sys-tems) is a guide methodology for the design of open MAS fromthe perspective of human organizations. It includes an analysisphase, a structural organization design phase, and a dynamic orga-nization design phase. Together these phases specify which ser-vices the organization will offer, what the internal structure isand what norms control its behavior. Following the guidelinesindicated in the methodological guide from Argente (2008), oneof the first tasks is to instantiate a functional view (mission) ofthe organizational model, which represents the products and ser-vices offered by the system, the type of environment, the globalobjectives that it is pursuing (mission and justification), the inter-est groups that are affected, and the information they use. We cansee this in Fig. 3a.

The main service or product that the system offers is the touristroutes, which are required by the guides and the tourist them-selves. Another product it offers is the cultural information aboutthe monuments in the system. The service responsible for provid-ing information on the characteristics of each monument is theMonument agent. The Guide agents can also be considered a‘‘product’’ since they can contain personal information in their pro-file, which they generate themselves, although the same informa-tion can be used and consulted by other members of theorganization that must perform their assigned tasks. In this case,a guide could: (i) be a client when it wishes to obtain system infor-mation about a particular route to follow, or about the monumentsit has been assigned to; (ii) be a provider when it offers route plansgenerated by the system or information about its own profile ‘‘Ser-vice Information Guides’’. The system will offer the necessary ser-vices for generating and assigning routes to the guides, it willconsult the information for each guide (profile), assign guides tothe tourists, and consult information on the monuments (culturalinformation). It can also solve incidents (for example, whether a

Page 10: Social-based planning model for multiagent systems

Fig. 3. (a) Organization model diagram (functional view). Mission of the system. (b) Updated diagram for the organization model, showing the internal and external agentsand their respective roles.

13014 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Page 11: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13015

monument is or is not available) and generate new routes. Theseincidents are provided by the Manager, who is in charge of inform-ing on everything that occurs in and for the system. The mission ofthe organization is twofold: to minimize the guiding system whileattempting to generate the best routes with the fewest resources(time, money, etc.); and to maximize production, i.e., to generatemore benefits by creating as many routes as possible. The twoobjectives are complementary and proportional, meaning that aminimal cost with the most routes implies the greatest production.

Each of the services identified in the previous functional view isdetailed and a corresponding activity model is created. The func-tions offered are also established; this includes the services thatshould be publicized as well as the policies involved in acquiringor releasing roles. Decisions are made regarding which functionsshould be implemented by internal agents in the system, andwhich will be provided by external agents. This makes it possibleto model the dynamic nature of the organization as an open sys-tem. The Monument, Tourist, Visitor and Guide roles are accessibleto external agents, but must be acquired through the proper proce-dures. The Manager, Notification and Coordinator roles are associ-ated with internal agents, as they are not accessible. Fig. 3b showsthe organization model and indicates the external agents (A-Agents), the internal agents (Agents) and the roles that each as-sumes (Fig. 3b).

In our case, the management and services roles associated tothe organizational units will be made available through the THO-MAS platform (Carrascosa et al., 2009; Giret et al., 2009). An OMS(Organization Management System) offers the necessary servicesfor the correct functioning of an organization. It provides the ser-vices needed to register or unregister structural components,

Fig. 4. Tridimensional models used to represent physically the monument agents inthe environment (Cathedral of Salamanca, Church San Esteban, ‘‘Casa Las Conchas’’).

Fig. 5. THOMAS

specifically the roles, norms and units that already exist in thesystem. It also offers services that identify each component.

The virtual environment in which our agents would reside willinclude the stored documentation of tourist information based onimages, phrases and other contents. For our simulation, we se-lected 20 virtual agents that represent visitors, an average of 7guides, 1 dynamic monument and 3 that are static. For the simula-tion model we used REPAST (North, Tatara, Collier, & Ozik, 2007;Repast, 2009), a collection of Java libraries that allow the develop-ers to create simulated environments and agents in social net-works, to gather simulation data automatically, and to easilybuild user interfaces. Fig. 4 shows 3 of the 3D models used to rep-resent the virtual environment to the three Monument agentsidentified in the case study.

The simulations were performed with Visitor agents (not Tour-ist agents) since their data does not change throughout the testingperiod. To evaluate the adaption of the model for replanning andreorganizing, we used variations of the Guide agents.

The agents that take on the role of Guide are those that willcarry out dynamic planning according to the tasks they need tocarry out for each group of tourists. The generated plans shouldensure that all of the visitors assigned to a tour guide are able tofollow their tourist route. They will be personalized according tothe Guide’s profile and work habits, and should take into accountthe restrictions directly related to each agent on an individualbasis, as well as the restrictions of the organization itself. Theserestrictions are imposed according to the norms for the society ofagents. In the proposed model, we could see, for example, that ata specific time during the life of the organization, there were threekinds of situations that could require a dynamic replanning: (i) theagent could have a problem, (ii) the agent could change thestructure, or (iii) the norms for the society could be modified. Inour case study, the norms for the society included:

� the work schedule for a Guide agent (8 h),� the maximum number of Tourist agents assigned to a guide,� visiting days and hours for certain monuments,� the máximum number of Guide agents that can participate on a

route,� the mínimum number of points to visit on a route.

In light of posible changes that an agent may make while exe-cuting a task, the society should be capable of reorganizing dynam-

modules.

Page 12: Social-based planning model for multiagent systems

13016 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

ically, of adapting to the changes and continuing with the plansthat enable them to reach the initially stated objectives. In a previ-ously mentioned example, it was necessary to form groups of 5tourists in order to enter a certain museum, although the initialgroups were made up of 10 individuals. This is the type of situationin which the system should be able to reassign groups and intro-duce a new agent that can perform the role of Guide for the newlyformed group. This case produces a global reassignment. An exam-ple of an individual replanning situation within the case study mayinvolve a delay in entering a museum (in a live situation, therecould be long lines, for example). In this situation, the Guide agentperforming the task can replan an individual plan and leave thetask of visiting the museum for another time. This would producea re-ordering of its tasks. If this were not possible, however, itwould be necessary to reorganize the remaining Guide agents,which would call for a global reassignment.

While the system adapts to the changes, taking the planningmodel into account, it will at all times attempt to minimize costsrelated to the objective; costs that are proportional to the time thata Guide agent is working, the resources used, and the associatedprofile. The profile of a Guide agent is related to its specialization.The known information for each agent includes:

� type of monument it specializes in (painting, sculpture, etc.),� language(s),� size of group it can handle,� type of group it specializes in (children, seniors, etc.).

These different options were taken into account for the casestudy, but it would be possible to add more features according tothe desired level of detail that we want for the Guide. For example,if a Guide specialized in a certain type of monument is assigned toa route in which it is not specialized, it would have a greater asso-ciated cost than would another Guide that is specialized in thesame route.

If it were necessary to recover from a system failure, the mon-itoring process would still continue. Each agent stores its own datawithin a data base. Because they are most prone to crashing, theTourist and Guide agents save their data every hour. When anagent crashes, THOMAS uses the most recent back up file to gener-ate a new instance of the agent. The database and the server shouldbe able to recover from crashes and control redundancies. To thisend, the system chosen for the server was the RAID (RedundantArray of Inexpressive Disk) system. The virtual world simulationis executed in the server, which works in collaboration with theTHOMAS architecture (Fig. 5)

5. Examples of planning

Guide agents can be considered the planning agents of the orga-nization. The objectives of the Guide agents are to dynamicallygenerate the plans that they must carry out, and to maintain re-ports on the tasks they perform. This is done to ensure that the Vis-itors assigned to the Guide are able to follow their route. In otherwords, the Guide agent plans the workday by obtaining plansdynamically according to the necessary tasks requested by the Vis-itors. The Guide agent offers 3 basic services within thearchitecture:

� ConsultGuide: to consult data related to a specific Guide,� SolveIncident: to solve situations (such as if a monument is

closed, or a tourist must abandon the route) and replan ifnecessary,� GenerateRoute: to generate the most replannable solution (plan)

for the agent organization, given a list of preferences for a par-ticular problem.

If there is a set of beliefs B compatible with the planning prob-lem E that the agent organization wants to carry out, it is possibleto generate a plan that contains all of the possible plans producedby the combination of compatible beliefs.

One of the tasks is a Java objective that contains the data for aVisitor or Tourist agent that requests a service, a description ofthe service, and the time constraints in carrying it out. One or moregoals are established for each task. A goal is also a Java objective,and identifies what a Guide agent wants to achieve (completedtask) and under what restrictions. To achieve its goals, the agentgenerates plans that are also processes written in Java code. Onegoal can create new goals (sub-goals). For example, for the task‘‘Visit Museum 1’’, the Guide agent creates a new goal for each spe-cific execution. The CBP system builds plans as a sequence of tasksthat the Guides need to carry out. A description of a problem willbe formed by the tasks that each Guide agent needs to perform,the available resources, and the allotted time.

For every task j, the Coordinator agent is responsible forassigning a Guide i to carry out that task. Prior to assigning thetask, the Coordinator agent must take into consideration the casebase in which each Guide agent stores the cost associated withperforming that task in the past. Once the Coordinator has iden-tified all of the agents in the organization that are needed to car-ry out the plan, it assigns each task to the agent responsible forcompleting it. At that moment each Guide agent becomes awareof its tasks and designs an individual plan. Each Guide agent is atype of CBP-BDI agent capable of providing efficient plans in exe-cution time. To do so, it incorporates a case-based planning (CBP)planner. The purpose of these agents is to adapt solutions thathave been used to solve problems in the past. In this case, thenew problems are defined by the set of tasks that have been as-signed by the Coordinator agent. Knowing the tasks it must com-plete, the Guide agent goes through its cycle to generate themost replannable plan (MRPI) in execution time (Corchadoet al., 2008).

If at any time during the execution one of the Guide agents isunable to follow through with the plan it had created, it will at-tempt to replan the task by generating a new plan with the tasksassigned by the Coordinator agent. If it is unable to obtain a newplan, it will have to inform the Coordinator agent, who can thenreassign tasks among the remaining Guide agents in the organiza-tion. In this case, the Coordinator agent will have to take into ac-count the tasks that have been performed up until that moment,and generate a new global plan in which each Guide agent is reas-signed with some of the tasks that still need to be done. Fig. 2 illus-trates this process. The organization is capable of adapting withminimal change to its structure. It will attempt to replan the tasksat the agent level; if this not possible, it will implement a reorga-nization in which all tasks are reassigned among the agents withinthe society. As a final option, it will modify its structure (for exam-ple, bringing new agents into the organization, or reorganizing thegroups of agents). We will now look at this process in greaterdetail.

With regard to generating plans for each Guide agent, it isimportant to underscore that during the retrieve phase of theCBP cycle, the agent retrieves the most similar descriptions byapplying various similarity algorithms (cosine, clustering, etc.).During this phase, it is possible to search the beliefs base to recoverdescriptions of problems within a range of similarity closest to theoriginal problem. In our case we allowed a 20% tolerance level.Once the majority of the descriptions have been retrieved, wecan obtain the solutions associated to them. A solution containsplans (sequence of tasks) that have been carried out in the past(assuming that replanning is possible) to solve similar problems fo-cused on meeting the objectives that a tourist Guide has on a given

Page 13: Social-based planning model for multiagent systems

Table 1Task example.

Task Data

TaskId 66TaskType 23TaskDescript Visit cathedralTaskPriority 3TaskGoal 0TaskIncidents 0TouristId 6GroupTouristId 2TouristIdiom SpanishMinTime 13:00MaxTime 13:45TaskResources Tickets cathedral

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13017

work day. The efficiency rate is also calculated for every solution(Table 1).

A Guide agent can control the execution of a plan. It takes intoconsideration the objectives and resources needed for each task, aswell as the objectives that it must achieve and the resources avail-able for carrying out its plan. The objectives or plans that eachGuide has are determined according to the previously mentionedrestrictions, such as workload (8 h) or the time available for a givenproblem (time for visiting a tourist site). The available time is aproblem restriction that will also influence the hyperplane ofrestriction, specifically the ranges of positive values on the z-axis.The resources needed for the tasks can include entry tickets for amuseum, money, or equipment needed to visit a particular touristsite. With this information the Guide agent can handle the inci-dents and the interruptions that can occur during planning.

For each Guide agent in the organization, it is necessary to com-plete the process of assigning tasks. We have seen how the Guideagents individually calculate the optimal plan for the tasks theymust perform. Prior to this, however, they must know which ofall of the planning tasks in the organizations are the ones that onlythey must perform. It is necessary to implement a global reassign-ment in the agent organization so that tasks are distributed as opti-mally as possible among all of the Guides in the organization. Thisis the job of the Coordinator agent. The following example showshow the Coordinator agent works.

First of all, it is necessary to bear in mind that each Guide agenthas a different profile according to its qualifications and the tasks ittends to carry out. Given a state ‘‘j’’ for each agent ‘‘i’’ wherei 2 {1, . . ., m}m2N, we can define the tuple zij, where each coordinateof the tuple refers to a characteristic that defines it. In other wordswe consider the vector in which the profile of each Guide agent isstored in the virtual world. It is appropriate to manage the Guideprofiles since our intention is to maximize efficiency, for whichwe must minimize costs, and these depend on the profile of eachGuide agent. When the tasks need to be assigned to the Guideagents, all of the previous experiences as well as the profile ofthe Guide are retrieved and taken into account for the new prob-lem. The tasks correspond to the number of Tourists and/or Visitors(a group) that will be assigned to one of the Guides in the organi-zation. The profile of a Guide includes the specializations of thatagent. For example, not all Guides can speak all languages. If oneGuide is better qualified to speak a particular language, it will beassigned to the group that speaks that same language, althoughother restrictions must also be accounted for, including workload(8 h). Consequently, the number of tourists and visitors assignedto a Guide depends on the time required to complete a touristroute. The Manager agent will consider the level of satisfaction thatthe tourists indicate at the end of the route, as well as the arrival ofnew tourists to the organization .

Secondly, the time needed for each task must be stored inthe memory of beliefs. The time is described as tij, the time thatGuide agent ‘‘i’’ takes to complete the state or tasks ‘‘j’’ wheretij ¼ Mhatax

kftijkg and tijk indicates the time that agent ‘‘i’’ takes to

perform task ‘‘j’’ for tourist ‘‘k’’. Taking the máximum value of ‘‘k’’(type of tourist), we can ensure that the guide has enough timeto complete the tasks, regardless of the type of tourist. These timesare initially estimated by simulating the visits prior to offering theservice to the tourists.

Of all the available Guides, priority is given to the Guide whoseprofile is most compatible (since it is only possible to assign certaintypes of tasks to the Guide agents that can actually carry them out).

Once the process of assigning tasks to the Guide agents is com-plete, the assignment is communicated to each Guide. At thatpoint, the planning process begins. The Guide agent should keepin mind the time it has available, and the time required for eachtask that it has been assigned. Additionally, it must consider thenecessary and available resources. In the process of creating anew plan, the Guide agent recovers the cases from the memoryof beliefs that contain a problem description similar to the currentproblem, and then combines the solutions (plans) that were usedto solve them. A number of different measures are involved in nor-malizing the time needed to arrive at a given museum, or to take agroup of tourists or visitors from one museum to another. Thesetimes are included directly in the time assigned for each task.

A plan can be interrupted for a variety of reasons. Those thathave been implemented into the virtual world include: lack of re-sources (insufficient funds to purchase tickets), unavailability of aGuide and the need to assign a new one (global reassignment),inability to complete a visit within the allotted time (individualreplanning), an emergency situation, etc. If a Guide agent is in a sit-uation involving a plan that is interrupted, it rejects the originalplan and proposes an alternative. The first action that the agentwill attempt is to replan the tasks while attempting to maintainthe original assignments made by the Coordinator agent. Thenew plan should meet the original objectives and restrictions. Ifthis is not possible, it will be necessary to reassign tasks to theGuides. This reassignment is done while limiting the number of re-quired changes, while at once taking into account the tasks thatwere originally assigned to the Guides, the development of theplans (the tasks that have been performed and those still pending)and the Guide profiles (prioritizing the tasks that were not com-pleted). When a new task is introduced, there is a reassignmentand the Guide who receives the task must replan in order to in-clude the new task in its plan.

Lastly, depending on the plan’s efficiency, it will be storedaccording to its level of efficiency in the beliefs base so that itcan be used for similar problems in the future. Similarly, the tasksperformed by the Guide agent will also be stored for future use bythe Coordinator agent to carry out the next task assignment for theorganization. The following paragraph provides a detailedexample.

Let Eg ¼ feg0; . . . ; eg

hg be the tasks carried out by a group of tour-ists and visitors ‘‘g’’ in order of priority. We have the followingproblem E ¼

SgEg ¼ fe0; . . . ; eng, where E represents the complete

set of tasks that must be completed (for this reason they are notsuperscripted). Let us assume there are 10 guides. Randomlyselecting a Guide i 2 {1, �, 10}, (specifically, i = 3), the task assign-ment according to their profile is:

1. Agent Task: Visit the cathedral with tourist group 2 � e21;

t31 = 30 min.2. Agent Task: Take tourist group 2 to the aqueduct � e2

2; t32 = 15min.

3. Agent Task: Take tourist group 2 to the hermitage � e23; t33 = 10

min.

Page 14: Social-based planning model for multiagent systems

13018 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

4. Agent Task: Visit the hermitage � e24; t34 = 10 min.

5. Agent Task: Take tourist group 2 to the Roman city� e25; t35 = 20

min.6. Agent Task: Visit the Roman city � e2

6; t36 = 30 min.7. Agent Task: Take tourist group 2 to the ravine � e2

7; t37 = 50min.

8. Agent Task: Hike along the ravine with group 2 � e28; t38 = 20

min.9. Agent Task: Return to the cathedral with group 2 � e2

9; t39 = 10min.

Calculating the assigned tasks ensures both that the totalamount of time assigned to a Guide does not exceed 8 h, and thatany other restrictions corresponding to the norms of the organiza-tion are also respected. Once the task assignment is complete, theGuide agent implements the generation and execution of its plan.To do, it searches the beliefs base to retrieve past assignments withsimilar characteristics, as well as the corresponding plans thatwere used to carry out those assignments, and then generates anew plan. To execute the new plan, the Guide agent displays eachtask on a mobile device. Once the task is completed, the Guideagent asks a human guide to input the results obtained after havingcompleted the task. Each task has a set of objectives that must bemet so that the global plan can be successfully completed. To per-form each task, the Guide agent should have the number of avail-able resources. For example, the task ‘‘Buy tickets for museum 1’’corresponds to the objective ‘‘Visit museum 1’’� O0and ‘‘breakfast,lunch, tea and dinner’’ correspond to the objective � O2,4,6,7(task 2indicates breakfast, task 4 indicates lunch, task 6 indicates tea, and7 indicates dinner). A similar coding is used for resources. It wasdecided that the objectives and resource variables should be

Fig. 6. (a) Representation of a space R3 for tasks . (b) Representation of a space R3

for replanned tasks.

dichotomic (binary) with a value of 0 to 1 in order to indicatethe absence or presence of a resource or objective. As shown inFig. 6a, value 1 indicates the resource that is needed or the objec-tive to be met, while zero denotes the contrary. Fig. 6a shows therepresentation of a space R3 for tasks according to the followingthree coordinates: time, number of objectives achieved, and num-ber of resources used (coordinates taken from similar retrievedcases). Specifically, Fig. 6a shows a hyper plan of restrictions andthe plan followed for a case retrieved from the beliefs base, consid-ered to be similar to the new case. The retrieved case includes agroup of tourists that want to visit the Cathedral museum, theaqueduct, the hermitage, the Roman arch and its surroundings,and the ravine. The distance between the Cathedral and the aque-duct can be covered on foot, but the rest must be travelled by busdue to the geographic location of each point of interest, the visitinghours, etc.

� The catedral has a schedule of liturgical events and visitinghours for the museum.� The hermitage does not have a museum, but does have liturgi-

cal events and is surrounded by beautiful landscapes.� The aqueduct, the arch and the ravine must be seen in the light

of day.� There are 120 possible routes, not all of which are viable

because of the previously mentioned restrictions.

In a simulated scenario where the Coordinator assigned thisgroup of tourists to a Guide, the planning process used by theGuide for the tasks it needed to perform is the same as that shownin Fig. 6a.

The guide met with the group at the entrance to the Cathedral,provided a guided tour of the Cathedral (30 minutes), then contin-ued on foot to the aqueduct (15 minutes). From there the grouprode on the bus (10 minutes) to visit the hermitage (10 minutes),got back on the bus (20 minutes) and went toward the ruins ofthe Roman city (30 minutes visit). Once again the tourists rodeon the bus (50 minutes) to arrive and hike along the ravine (20minutes). This route is the most replannable because of the loca-tion of the hermitage. While boarding the bus at the aqueduct,we were informed that there was a wedding at the hermitageand that the bride arrived late. So as to not arrive during the cere-mony, the route is replanned, resulting in the plan shown in Fig. 6b.

The group rides the bus (15 minutes) toward the Roman ruins(30 minute visit), then boards the bus again (50 minutes) to arriveat the ravine for a hike (20 minutes). From there the bus (20 min-utes) heads toward the hermitage (10 minutes), the tourists boardthe bus once again (10 minutes) and arrive back at the entrance tothe cathedral. The task assignment for Guide 3 would be asfollows:

1. Agent Task: Visit the catedral with tourist group 2 � e21; t31 = 30

min. Done.2. Agent Task: Take tourist group 2 to the aqueduct � e2

2; t32 = 15min. Done.

3. Agent Task: Take tourist group 2 to the Roman city� e25; t35 = 15

min.4. Agent Task: Visit the Roman city � e2

6; t36 = 30 min.5. Agent Task: Take tourist group 2 to the ravine � e2

7; t37 = 50min.

6. Agent Task: Hike along the ravine with group 2 � e28; t38 = 20

min.7. Agent Task: Take tourist group 2 to the hermitage � e2

3; t33 = 20min.

8. Agent Task: Visit the hermitage � e24; t34 = 10 min.

9. Agent Task: Return to the cathedral with group 2 � e29; t39 = 10

min.

Page 15: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13019

To keep Fig. 6a from being too large, and in order to easilyappreciate the plan, the time axis has been rescaled (axis z), estab-lishing an isomorphism between the intervals [0, 1] and [0, 8]:

The isomorphism is as follows:

k ½0;1�z!!

½0;8�kðzÞ¼8�z

ð17Þ

Fig. 7. (a) Number of agents working simultaneously. (b) Efficiency in the agent’sorganization, with and without planning.

For similar cases that are retrieved, the procedure is the same. Thenew plan for the agent is generated in parts so that it is surroundedby the greatest density of plans.

The figures illustrate the plan as it was carried out. To under-stand the graphical representation, let us focus on the initial taske1 and the final task e9. In between these two tasks, the Guide agentcould carry out other tasks that would involve the same or differ-ent tourists and visitors.

The idea presented in the planning model is to select the opti-mal plan, the one with the most plans surrounding it, as the solu-tion. We can see in Fig. 6b that the selected plan is the one with themost plans surrounding it, having tasks that could be reassigned ifthe plan were interrupted.

Another plan proposed for our example was:

� Organization task: Assign Guide 1 to group 2, Guide 2 to group4, Guide 3 to group 5, Guide 4 to group 6.� Agent Task: Take tourist group 2 to the cathedral � e2

1; t11 = 30min.� Agent Task: Visit the cathedral with tourist group 2 � e2

3;t13 = 60 min.� Agent Task: Serve breakfast to tourist group 2 � e2

2,t12 = 60 min.� Agent Task: Serve breakfast to groups 4, 5 and 6 � e4

2, e52y e6

2,tv5 = 120 min with v 2 {2, 3, 4}.� Agent Task: Hike along the ravine with 2,4,5 and 6, � e2

4, e44, e5

4,e6

4, ts4 = 120 min with s 2 {1, 2, 3, 4}.

During the visit to the catedral, it is necessary to reorganize thestructure of the system since the limit is four people per group. Anew guide must appear in the plan since group 2 has 6 people.The profile of the new guide must also include the ability to speakFrench since it is the language spoken by the tourists in the group.The new plan would be as follows:

� Organization task: Assign Guide 1 to group 2.� Agent Task: Take tourist group 2 to the cathedral � e2

1; t11 = 30min.� Organization task: Form new Visitors Unit: group 7.� Organization task: Assign Guide 5 to group 7.� Agent Task: Visit cathedral with tourist groups 2 and 7 � e2

3 ande7

3; tb3 = 60 min with b 2 {1, 5}.� Agent Task: Serve breakfast to tourist group 2 � e2

2,t12 = 60 min.� Agent Task: Serve breakfast to tourist groups 4, 5 and 6 � e4

2, e52y

e62, tv5 = 120 min with v 2 {2, 3, 4}.

� Agent Task: Take groups 2,4,5 and 6 on a hike along the ravine� e2

4, e44, e5

4, e64, ts4 = 120 min with s 2 {1, 2, 3, 4}.

In this example, the organization can adapt the time accordingto the changes that affect the member agents. The Guide agentscan plan tasks as well as replan tasks, and the Coordinator agentcan reorganize and redistribute tasks among all agents if they arethemselves unable to adapt to the change.

The mathematical calculations for obtaining h(x), using Duchontechniques, the set of geodesics {gn(x)}n 2 N 960 using the resolu-tion of the Euler and transversability equations, or for obtainingthe Jacobi field, are carried out with the �Mathematica 5.1 programand the Jspline+ and Jlink java libraries.

6. Results and conclusions

There is no doubt that the results of this study are an importantaspect of the case study designed for the organization. However,the objective of the study is not to provide a precise simulationof the behavior that takes place within a touristic environment,but to validate the proposed planning model through the organiza-tion simulation for the case study. In order to interpret the resultsmost conveniently, it is necessary to carefully study the function-ing of the proposed scenario to determine whether the plannerworks. The following studies were carried out:

Given the same tourists attractions to be visited on the sameday, and the same number of tourists per group, one group usedthe planner and the other did not.

The results for different days, as far as the number of Guideagents used, can be observed in Fig. 7a. The color blue representsthe average number of guides needed each day using the planner,and red the number without using it. The proposed model helpsthe organization utilize fewer guides, thus minimizing its costs.

Another important point for evaluating the effectiveness of theplanner is to compare the efficiency between when it was and wasnot used. We can recall that efficiency relates the cost of using theagents with the number of sites visited. Using the previous case inwhich there was a specific number of tourist sites to visit, the effi-ciency for both cases can be represented graphically (Fig. 7b).

The results of the study establish the model, along with thearchitecture presented in this article (THOMAS), as a powerfulalternative with respect to other architectures used for developingagent organizations. The restrictions related to the use of the plan-ning model are minimal. Additionally, the diversity of elementsthat influence how the proposed plans are generated makes it eas-ily adaptable to diverse contexts and problems.

The proposed social planning model is among the very few thatoffer the possibility of deliberative and social behavior. It is worthmentioning that this is a unique model that incorporates its ownreorganization and social adaption mechanism. THOMAS facilitatesthe development of MAS in an organizational paradigm and the so-cial model adds the reorganization and adaptation functions.

Page 16: Social-based planning model for multiagent systems

Fig. 8. (a) Approaches to task distribution based coordination. (b) Distributed planning vs. central planning in time

13020 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Assigning and reorganizing tasks in the proposed planningmechanism could have been carried out in a variety of differentways, three of which are shown in Fig. 8. In order to evaluate theresults, two of these possibilities were compared in order to vali-date how the system would react if instead of a distributed coordi-nation, it would have used a model in which the planning of all thetasks in the organization was done in a centralized manner.

Using a centralized planning method to manage the organiza-tion, there is a leader agent (coordinator and planner) responsablefor generating the plans that will be subsequently carried out bythe remaining agents. To ensure that each plan is correct, the orga-nization needs to acquire a great amount of information about thetourists, the guides and the monuments in order to determinewhether the followers (guides) can correctly carry out their tasks.

The distributed planning diagram reduces the amount of re-quired information by distributing its objectives. In this case, thecoordinator will have to take into account a subset of informationabout the collective state, with less precise information about theguide agents, and produce an abstract plan with enough detail tobe able to distribute tasks objectively among the guides. It sendsspecific objectives to each guide who in turn generates its optimalsolution to carry it out.

Another way of coordinating this effort would be to use contractnetworks in which a leader announces a task to a group of follow-ers, each of which proposes a way to carry it out, and the leader se-lects the method to use according to the best offer. This isunnecessary in our case because of the CBR mechanism that alwaysassigns tasks optimally, taking previous experiences into account.

Comparing the first two models, the system showed significantimprovement when increasing the number of tasks, reducing theamount of time used to plan and replan the tasks (Fig. 8b).

The MAS presented in this research uses THOMAS in a dynamicenvironment, as well as the self-adaption capabilities that wereadded. THOMAS can be compared to other platforms currentlyavailable to create agent organizations. Each of them should take

certain aspects into account, such as structural organization (sup-porting groups, assuming roles, topology, interactions, and socialrules) and the dynamic aspect of the organization (entry and exitof external agents, creating roles, life cycle of the agents, control-ling behavior, adaption and coordination). Table 2 compares someof the most popular platforms and shows the available support orexclusion of these aspects. THOMAS provides a clear advantagewith respect to the others. Additionally, along with the social plan-ning model, it provides the reorganization and adaptation featuresrequired in dynamic environments, such as the one proposed inthis study.

Perhaps the most similar model to the one proposed in thisstudy is the model presented in the study on RETSINA (ReusableEnvironment for Task-Structured Intelligent Network Agents)(Giampapa & Sycara, 2002), in which was proposed a social coordi-nation model based on HTN (Hierarchical Task Network) planningand attempts to revise the plans that are carried out by the organi-zation in execution time. Even so, in comparing the two proposalswe can see how the model in the present study provides severaladvantages not included in the other. Our proposed model is capa-ble of reorganizing the society in execution time and planning inexecution time; but additionally it is capable of obtaining the opti-mal route for its organization, i.e., the most easily replannableroute, and of learning from the experiences that occur throughoutthe life-cycle of the organization. This is due to the the case-basedreasoning mechanism included in the model. Along these lines, theresearch that is currently taking place involves the application ofreasoning and learning techniques for agent organization models.Specifically, Bou, López-Sánchez, and Rodríguez-Aguilar (2008)and Bou et al. (2009) provides a proposal in which Automatic Elec-tronic Institutions are combined with CBR to solve situations thathave occured in the past; however in this case, the aspect of dy-namic adaptation and reorganization is not considered.

In conclusion, we can affirm to have achieved out stated objec-tives: (i) develop agent societies; (ii) simulate the behavior of an

Page 17: Social-based planning model for multiagent systems

Table 2Architectures comparison.

Platforms/features JADEa AMELIb MADKITc JACK TEAMSd S-MOISE+e AEI RETSINA THOMAS

Model Agent * **ISLANDERf(EI) **JACOBg **ISLANDER * **GORMASh

Organization **ISLANDER(EI) **JDKi **ISLANDER * **GORMASServices * **ISLANDER(EI) **JDK **ISLANDER * **GORMAS

Functional BDI Model * **,j * **aBuilder *,k *

Taxonomic Group * * * **AMELI * *

Topology (EI)l HOLONS **,m * **AMELI * *

Roles * * * * **AMELI * *

Interactions * * * * * **AMELI * *

Normative Norms * **JESSn * **AMELI * *

Dynamics Agent Joining * * * * **AMELI * *

Role Enactment * * * * **AMELI * *

Behavior control * * * * * **AMELI * *

Org. Joining * * * * **AMELI * *

Adaptation * *

Coordination Planning **JPLo HTNp *

Optimums Planning *

Replanning HTN *

Reorganization * *

Agent simulation Simulation 2D ** * * **Simdeiq **

Simulation 3D ** **Simdei **

* Provides that feature.** Provides this feature with some additional module.

a JADE: http://jade.tilab.com/.b Electronic Institutions (Esteva, 2003).c Madkit: www.madkit.org.d JackTeams: www.agentsoftware.comshareddemosNdocsJACK_Teams_Manual.pdf.e Hubner, Sichman, and Boissier (2006).f ISLANDER (Electronic Institutions Editor).g JACOB (Jack Object Modeller) http://www.aosgrp.com/products/jack/registration/regform.html.h GORMAS (Argente, 2008).i Jack Development Kit.j Not specified architecture, it is possible to extend the BDI model.k ETSINA is an open MAS system that provides infrastructure for different types of deliberative, goal directed agents. In this sense, the architecture of RETSINA exhibits

some of the ideas of BDI agents.l Topology of Electronic Institutions.

m Team Structure (Formation of the team).n Possibility of extension with Jess (a rule based engine).o CK Plan Language (JPL) Jack provides an agent-specific plan language for writing JACK Plans.p TSINA planner.q MDEI allows to run discrete event simulations.

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13021

organization in a specific case involving the coordination and adap-tion of its agents; and (iii) validate the proposed planning modelthrough a simulation of the organization in a case study.

Lastly, the model used the THOMAS architecture in its very gen-eral state, without presenting particular restrictions to the domainduring its application. Consequently, its ability to adapt to specificproblems does not imply a diminished efficiency in the applica-tions that are developed.

Acknowledgment

This work has been supported by the Spanish Ministry of Sci-ence and Innovation project TIN2009-13839-C03.

References

Aamodt, A., & Plaza, E. (1994). Case-based reasoning: Foundational issues,methodological variations, and system approaches. Artificial IntelligenceCommunications, 7(1), 39–52.

Agüero, J., Rebollo, M., Carrascosa, C., & Julián, V. (2009a). Developing virtualorganizations using MDD. In Proceedings of the workshop on agreementtechnologies (WAT2009) (pp. 130–141).

Agüero, J., Rebollo, M., Carrascosa, C., & Julián, V. (2009b). Agent design using modeldriven development. In Seventh international conference on practical applicationsof agents and multi-agent systems (PAAMS2009) (pp. 60–69).

Agüero, J., Rebollo, M., Carrascosa, C., & Julián, V. (2010). MDD for VirtualOrganization design. In P. Pawlewski, V. J. Julián, F. Fdez Riverola, E.Corchado, R. Corchuelo, J. Bajo, et al. (Eds.), Eighth international conference on

practical applications of agents and multiagent systems. Advances in intelligent andsoft computing (Vol. 71, pp. 9–18). ISBN 978-3-642-12432-7.

Argente, E. (2008). Gormas. Guías para el desarrollo de sistemas multi-agente abiertosbasados en organizaciones. Ph.D. thesis, Universidad Politécnica de Valencia.

Artikis, A., Kaponis, D., & Pitt, J. (2009). In Multi-agent systems: semantics anddynamics of organisational models. IGI Globa.

Axelrod, R. (1986). An evolutionary approach to norms. American Political ScienceReview, 80(December), 1095–1111.

Aylett, R., & Luck, M. (2000). Applying artificial intelligence to virtual reality:Intelligent virtual environments. Applied Artificial Intelligence, 14(1), 3–32.

Bajo, J., Corchado, J. M., De Paz, Y., De Paz, J. F., Rodríguez, S., Martín, Q., et al. (2009).SHOMAS: Intelligent guidance and suggestions in shopping centres. Applied SoftComputing, 9(2), 851–862. doi:10.1016/j.asoc.2008.11.009. ISSN: 1568-4946.

Bajo, J., Corchado, J. M., & Rodríguez, S. (2007). Intelligent guidance and suggestionsusing case-based planning. In Proceedings of ICCBR’07. LNAI (Vol. 4626,pp. 389–403). Springer-Verlag.

Bajo, J., Julián, V., Corchado, J. M., Carrascosa, C., de Paz, Y., Botti, V., et al. (2008). Anexecution time planner for the artis agent architecture. Engineering Applicationsof Artificial Intelligence, 21(5), 769–784. ISSN: 0925-1976.

Becheiraz, P., & Thalmann, D. (1998). A behavioral animation system forautonomous actors personified by emotions. In Proceedings of the workshop onembodied conversational characters, WECC 98, Tahoe City, CA, USA, October, 1998.

Boissier, O., & Gateau, B. (2007). Normative multi-agent organizations: Modeling,support and control. Normative Multiagent Systems.

Bou, E., López-Sánchez, M., & Rodríguez-Aguilar, J. A. (2008). Using case-basedreasoning in autonomic electronic institutions. Coordination, organizations,institutions, and norms in agent systems III. Lecture notes in computer science(Vol. 4870, pp. 125–138). Berlin/Heidelberg: Springer. ISBN 978-3-540-79002-0. ISSN 0302-9743 (Print) 1611-3349 (Online). doi:10.1007/978-3-540-79003-7.

Bou, E., López-Sánchez, M., & Rodriguez-Aguilar, J. A. (2007a). Adaptation ofautonomic electronic institutions through norms and institutional agents.Engineering societies in an agents world. Lecture notes in computer science.Springer-Verlag.

Page 18: Social-based planning model for multiagent systems

13022 S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023

Bou, E., López-Sánchez, M., & Rodriguez-Aguilar, J. A. (2007b). Towards self-configuration in autonomic electronic institutions. Coordination, organization,institutions and norms in agent systems. Lecture notes in computer science.Springer-Verlag.

Bou, E., López-Sánchez, M., Rodríguez-Aguilar, J. A., & Simao, J. (2009). Adaptingautonomic electronic institutions to heterogeneous agent societies. In G.Vouros, A. Artikis, K. Stathis, & J. Pitt (Eds.). Organised adaptation in multi-agent systems. Lecture notes in artificial intelligence (Vol. 5368, pp. 18–35).Springer-Verlag.

Bratman, M., Israel, D. J., & Pollack, M. E. (1988). Plans and resource-boundedpractical reasoning. Computational Intelligence, 4(4), 349–355.

Burt, R. (1987). Social contagion and innovation: Cohesion versus structuralequivalence. American Journal of Sociology, 92, 1287–1335.

Caicedo, A., & Thalmann, D. (2000).Virtual humanoids: Let them be autonomouswithout losing control. In Proceedings of the 3IA international conference. (4thed.).

Capera, D., Georgé, J. P., Gleizes, M. P., & Glize, P. (2003). Emergence of organisations,emergence of functions. In Symposium on adaptive agents and multi-agentsystems (pp. 103–108).

Carrascosa, C., Bajo, J., Julián, V., Corchado, J. M., & Botti, V. (2008). Hybrid multi-agent architecture as a real-time problem-solving model. Expert Systems withApplications, 34(1), 2–17. doi:10.1016/j.eswa.2006.08.031.

Carrascosa, C., Giret, A., Julian, V., Rebollo, M., Argente, E., & Botti, V. (2009). Serviceoriented MAS: An open architecture (short paper). In K.S. Decker, J.S. Sichman,C. Sierra, & C. Castelfranchi (Eds.), Proceedings of the 8th international conferenceon autonomous agents and multiagent systems (AAMAS 2009), Budapest, Hungary,May 10–15, 2009 (pp. 1291–1292).

Castelfranchi, C., & Conte, R. (1995). The treatment of norms in modelling rationalagents: Cognitive issues. In Proceedings of ModelAge 95, general meeting of espritworking group 8319, INRIA, France.

Conte, R., & Paolucci, M. (2001). Intelligent social learning. Artificial Society andSocial Simulation, 4(1), 1–23.

Corchado, J. M. (2004). In J. L. Pérez de la Cruz (Ed.), Agentes Software y sistemasmulti-agente. Pearson Educación.

Corchado, J. M., Aiken, J., & Bajo, J. (2007). A CBP agent for monitoring the CO2

exchange rate. In P. Perner (Ed.). Case-based reasoning on signals and images.Studies in computational intelligence (Vol. 73). Springer-Verlag. ISBN: 978-3540731788.

Corchado, J. M., Glez-Bedia, M., de Paz, Y., Bajo, J., & de Paz, J. F. (2008). Conceptformulation and mechanism for agent replanification: MRP architecture.Computational intelligence. Blackwell Publishers.

Corchado, J. M., & Laza, R. (2003). Constructing deliberative agents with case-basedreasoning technology. International Journal of Intelligent Systems, 18(12),1227–1241.

Di Marzo, S., Gleizes, M.-P., & Karageorgos, A. (2004). AgentLink first technicalforum group self-organisation in multi-agent systems. AgentLink Newsletter(16), 23–24.

Dignum, V. (2004). A model for organizational interaction: Based on agents, founded inlogic. Ph.D. thesis.

Dumas, Y., Desrosiers, J., Gelinas, E., & Solomon, M. M. (1995). An optimal algorithmfor the traveling salesman problem with time windows. Operations Research,43(2), 367–371.

Esteva, M. (2003). Electronic institutions: From specification to development. Ph.D.thesis, Technical University of Catalonia.

Esteva, M., Rodriguez, J., Sierra, C., Garcia, P., & Arcos, J. (2001). On the formalspecifications of electronic institutions. In F. Dignum & C. Sierra (Eds.). Agent-mediated electronic commerce (the European AgentLink perspective). LNAI (Vol.1991, pp. 126–147). Springer.

Ferber, J., Gutknecht, O., & Michel, F. (2004). From agents to organizations: anorganizational view of multi-agent systems. In P. Giorgini, J. Muller, & J. Odell(Eds.). Agent-oriented software engineering VI. Lecture notes in computer science(Vol. 2935, pp. 214–230). Springer-Verlag.

Fonseca, S. P., Griss, M. L., & Letsinger, R. (2001). An agent mediated e-commerceenvironment for the mobile shopper. Technical report, HPL-2001-157, Hewlett-Packard Laboratories, July.

Garcia, A. (2009). Normative regulation of open multi-agent systems. Ph.D. thesis,Universidad Autonoma de Barcelona.

Gasser, L., & Ishida, T. (1991). A dynamic organizational architecture for adaptiveproblem solving. Proceedings of AAAI, 91, 185–190.

Giampapa, J. A., & Sycara, K. (2002). Team-oriented agent coordination in the RETSINAmulti-agent system. Technical report CMU-RI-TR-02-34, Robotics Institute,Carnegie Mellon University, December. Presented at AAMAS 2002 workshopon teamwork and coalition formation.

Giret, A., Botti, V., Valero, S. (2005). MAS methodology for HMS. In Proceedings of the2nd international conference on applications of holonic and multi-agent systems,HoloMAS 2005. LNAI (Vol. 3593, pp. 39–49).

Giret, A., Julian, V., Rebollo, M., Argente, E., Carrascosa, C., & Botti, V. (2009). An openarchitecture for service-oriented virtual organizations. In Seventh internationalworkshop on programming multi-agent systems. PROMAS 2009 (pp. 23–33).

Glez-Bedia, M. (2004). Fundamentos cognitivos para el diseño de arquitecturas deagentes planificadores en contextos dinámicos de acción. Thesis doctoral,Universidad de Salamanca.

Golden, B., Levy, L., & Vohra, R. (1987). The orienteering problem. Naval ResearchLogistics.

Jennings, N., & Wooldridge, M. (Eds.). (1998). Agent technology: Foundations,applications and markets. Springer.

Hales, D. (2002). Group reputation supports beneficent norms. The Journal ofArtificial Societies and Social Simulation (JASSS), 5(4).

Held, M., & Karp, R. M. (2005). The traveling-salesman problem and minimumspanning trees: Part II. Mathematical programming. Berlin/Heidelberg: Springer.ISSN 0025-5610 (Print) 1436-4646 (Online) Volume 1, Number 1 / diciembre de1971. DOI 10.1007/BF01584070. Páginas 6–25. Received: 19 October 1970. May2005.

Henry-Labordere, A. L. (1969). The record balancing problem: a dynamicprogramming solution of a generalized travelling salesman problem. RIRO B,2, 43–49.

Hinze, A., & Voisard, A. (2003). Location- and time-based information delivery intourism. In Advances in spatial and temporal databases (SSTD 2003). LNCS (Vol.2750).

Hinze, A., Malik, R., & Malik, P. (2005). Towards a TIP 3.0 service-oriented architecture:Interaction design. Technical report, No. 08/2005, August, Department ofComputer Science, University of Waikato.

Hubner, J. F., Sichman, J. S., & Boissier, O. (2004). Using the Moise+ for a cooperativeframework of MAS reorganisation. In LNAI proceedings of the 17th Braziliansymposium on artificial intelligence (SBIA’04) (Vol. 3171, pp. 506–515). Springer.

Hubner, J., Sichman, J., & Boissier, O. (2006). S-Moise+: A middleware for developingorganised multi-agent systems. In Proceedings of the International workshop onorganizations in multi-agent systems, from organizations to organization orientedprogramming in MAS. LNCS (Vol. 3913, pp. 64–78).

Huhns, M., & Stephens, L. (1999). Multiagent systems and societies of agents. In G.Weiss (Ed.), Multi-agent systems: a modern approach to distributed artificialintelligence. MIT Press.

Hung-Chen, C., & Arbee, L. P. (2005). A music recommendation system based onmusic and user grouping. Journal of Intelligent Information Systems, 24(2–3),.113–132. doi:10.1007/s10844-005-0319-3. ISSN 0925-9902 (Print) 1573-7675(Online).

Kittock, J. E. (1993). Emergent conventions and the structure of multi-agentsystems. Lectures in complex systems: The proceedings of the 1993 complexsystems summer school, Santa Fe institute studies in the sciences of complexitylecture, Santa Fe Institute (Vol. VI, pp. 507–521). Addison-Wesley.

Kowalczyk, R., Ulieru, M., & Unland, R. (2002). Integrating mobile and intelligentagents in advanced e-commerce: A survey. In Proceedings of the agenttechnologies, infrastructures, tools, and applications for e-services, NODe 2002.Lecture notes in computer science (Vol. 2592, pp. 295–313). Berlin: Springer.

Lakkaraju, K., & Gasser, L. (2008). Norm emergence in complex ambiguoussituations. In Proceedings of the AAAI workshop on coordination, organizations,institutions and norms AAAI, Chicago, July, 2008.

Lozano, M., & Calderón, C. (2004). Entornos Virtuales 3D clásicos e inteligentes:hacia un marco de simulación para aplicaciones gráficas interactivas.Inteligencia Artificial, Revista Iberoamericana de I.A. (AEPIA). N. 23. December2004. ISSN: 1137-3601 (c) AEPIA, 1997. Depósito Legal: V-169-1997.

Melville, P., Mooney, R. J., & Nagarajan, R. (2002) Content-boosted collaborativefiltering for improved recommendations. In Proceedings of the 18th nationalconference on artificial intelligence (AAAI-2002), Edmonton, Canada (pp. 187–192). ISBN: 0-262-51129-0.

Mooney, R. J., & Roy, L. (2000). Content-based book recommending using learningfor text categorization. In Proceedings of the 5th ACM conference, on digitallibraries (pp. 195–204). ACM Press.

Noriega, P. (1999). Agent-mediated auctions: The fishmarket metaphor. Monografíesof IIIA, No. 8, Barcelona.

North, D. (1990). Institutions, institutional change and economics perfomance.Cambridge U.P.

North, M. J., Tatara, E., Collier, N. T., & Ozik, J. (2007). Visual agent-based modeldevelopment with repast simphony. In Proceedings of the agent 2007 conferenceon complex interaction and social emergence, Argonne National Laboratory,Argonne, IL, USA, November 2007.

Omicini, A., Ricci, A., & Viroli, M. (2004). Coordination artifacts: Environment-basedcoordination for intelligent agents. In Proceedings of 3rd international jointconference on autonomous agents and multiagent systems (AAMAS 2004) (pp.286–293).

Parunak, H. V. D., & Odell, J. (2002). Representing social structures in UML. In M.Wooldridge, G. Weiss, & P. Ciancarini (Eds.). Agent-oriented software engineeringII. LNCS (Vol. 2222). Springer.

Pavon, J., & Gomez-Sanz, J. J. (2003). Agent oriented software engineering withingenias. Proceedings of CEECMAS, 2691, 394–403.

Razavi, R., Perrot, J., & Guelfi, N. (2005). Adaptive modeling: An approach and amethod for implementing adaptive agents. Lecture Notes in Artificial Intelligence,3446, 136–148.

Reitbauer, A., Battino, A., Karageorgos, A., Mehandjiev, P., Valckenaers, P., & Saint-Germain, B. (2004). The MaBE middleware: Extending multi-agent systems toenable open business collaboration. In International conference on informationtechonology for balanced automation systems in manufacturing and services –BASYS04.

Repast (2009). <http://repast.sourceforge.net>.Rodríguez, S., Pérez-Lancho, B., De Paz, J. F., Bajo, J., & Corchado, J. M. (2009).

Ovamah: Multiagent-based adaptive virtual organizations. In Twelfthinternational conference on information fusion, Seattle, Washington, USA, July2009.

Rodríguez-Aguilar, J. A. (2003). In J. A. Rodríguez-Aguilar, (Eds.), On the design andconstruction of agent-mediated electronic institutions. Monografíes of IIIA, No.14, Barcelona.

Page 19: Social-based planning model for multiagent systems

S. Rodríguez et al. / Expert Systems with Applications 38 (2011) 13005–13023 13023

Schertler, W. (1998). Virtual enterprises in tourism: Folklore and facts: Conceptualchallenges for academic research. In D. Buhalis, A. Min Tjoa, & J. Jafari (Eds.),Information and communication technologies in tourism. Springer.

Sen, S., & Airiau, S. (2007). Emergence of norms through social learning. In IJCAI 2007(pp. 1507–1512).

Shoham, Y., & Tennenholtz, M. (1992). Emergent conventions in multi-agentsystems. Proceedings of Knowledge Representation and Reasoning, 225–231.

Shoham, Y., & Tennenholtz, M. (1997). On the emergence of social conventions:Modeling, analysis, and simulations. Artificial Intelligence, 94(1–2), 139–166.

Thimbleby, H. W. (2003). The directed Chinese postman problem. Journal ofSoftware, Practice and Experience, 33(11), 1081–1096.

Villatoro, D., & Sabater-Mir., J. (2008a). Categorizing social norms in a simulatedresource gathering society. In Proceedings of the AAAI workshop on coordination,organizations, institutions and norms (COIN @ AAAI08).

Villatoro, D., & Sabater-Mir, J. (2008b). Mechanisms for social norms support invirtual societies. In Proceedings of the 5th conference of the european socialsimulation association (ESSA08).

Villatoro, D., & Sabater-Mir, J. (2008c). Towards the group formation through socialnorms. In Proceedings of the 6th European workshop on multi-agent systems(EUMAS08).

Walker, A., & Wooldridge, M. (1995). Understanding the emergence of conventionsin multi- agent systems. In ICMAS95 (pp. 384–389).

West, A., & Hubbold, R. (1998). Research challenges for systems supportingcollaborative virtual environments. In Proceedings, collaborative virtualenvironments 98, Manchester (p. 11).

Weyns, D., Schelfthout, K., Holvoet, T., & Glorieux, O. (2004). Role based model foradaptive agents. In Fourth symposium on adaptive agents and multiagent systemsat the AISB04 convention.

Wiederhold, G. (1992). Mediators in the architecture of future information systems.IEEE Computer Magazine.

Wooldridge, M. (2002). An introduction to multiagent systems. Practical reasoningagents. John Wiley and Sons, Ltd..

Wooldridge, M., & Jennings, N. R. (1994). Agent theories, architectures andlanguages: A survey. In M. J. Wooldridge & N. Jennings (Eds.), Intelligentagents (ECAI-94 workshop proceedings on agent theories, architectures andlanguages, Amsterdam, August 1994) (pp. 1–22). Berlin: Springer.

Zambonelli, F. (2002). Abstractions and infrastructures for the design anddevelopment of mobile agent organizations. In M. Wooldridge, G. Weiss, & P.Ciancarini (Eds.). Agent-oriented software engineering II. LNCS (vol. 2222,pp. 245–262). Springer-Verlag.

Zambonelli, F., Gleizes, M.-P., Mamei, M., & Tolksdorf, R. (2004). Spray computers:frontiers of self-organisation for pervasive computing. In Workshop on enablingtechonologies: Infrastructure for collaborative enterprises – WETICE04 (pp. 397–402). IEEE Computer Society.

Zambonelli, F., Jennings, N. R., & Wooldridge, M. (2003). Developing multiagentsystems: The Gaia methodology. ACM Transactions on Software Engineering andMethodology, 12, 317–370.