12
MCDA & Agents: Supporting Effective Resource Federation in Virtual Organizations Pavlos Delias and Nikolaos Matsatsinis May 7, 2012 Abstract A Virtual Organization is a linkage of organizations where participants contribute resources for mutual exploitation. A critical issue to reach cooperative resource federation is a transparent sharing strategy as well as load balancing. An equivalent situation in the case of Grid computing, where the shared resources are computing resources. In this work we propose an multi-agent, multiple criteria approach to support the design of such a strategy. In particular, the proposed methodology pointedly supports the decision about which application environments should be hosted in an IaaS cloud computing context, in order not only to have an efficient and cost effective data center, but to satisfy the collective preferences of all parties as much as possible. Through the text, the advantages of adopting the MCDA paradigm when designing multi-agent systems are revealed. 1 Introduction A Virtual Organization (VO) is a linkage of organizations, which share some of their resources to achieve their individual goals. A common instantiation of this practice is the case of Grid computing [6] where the shared resources are computing resources. Trying to create a rich resource pool by aggregating the participants’ resources is called resource federation. To this end, and in order to continuously manage the resources, formally defined resource sharing strategies are needed to guide the decisions and actions of individuals or groups. This task is left to the VO administrator who is responsible for the resource allocation. Even in the case of the Grid, it is common for resources to be managed on a central approach basis, by local resource management systems such as Condor [10] and PBS [1]. Every participant has different interests and aims (self-interest) when con- tributing resources to a VO, and much effort and time are spent to generate a mutual acceptance between VO administrator and participants who demand for access in a particular resource. There should be strategies to support the cooperative resource federation and to facilitate transparent sharing and load 1

Multiple Criteria Decision Aid and Agents: Supporting Effective Resource Federation in Virtual Organizations

  • Upload
    tuc

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

MCDA & Agents: Supporting EffectiveResource Federation in Virtual Organizations

Pavlos Delias and Nikolaos Matsatsinis

May 7, 2012

Abstract

A Virtual Organization is a linkage of organizations where participantscontribute resources for mutual exploitation. A critical issue to reachcooperative resource federation is a transparent sharing strategy as wellas load balancing. An equivalent situation in the case of Grid computing,where the shared resources are computing resources. In this work wepropose an multi-agent, multiple criteria approach to support the designof such a strategy. In particular, the proposed methodology pointedlysupports the decision about which application environments should behosted in an IaaS cloud computing context, in order not only to havean efficient and cost effective data center, but to satisfy the collectivepreferences of all parties as much as possible. Through the text, theadvantages of adopting the MCDA paradigm when designing multi-agentsystems are revealed.

1 IntroductionA Virtual Organization (VO) is a linkage of organizations, which share someof their resources to achieve their individual goals. A common instantiation ofthis practice is the case of Grid computing [6] where the shared resources arecomputing resources. Trying to create a rich resource pool by aggregating theparticipants’ resources is called resource federation. To this end, and in order tocontinuously manage the resources, formally defined resource sharing strategiesare needed to guide the decisions and actions of individuals or groups. This taskis left to the VO administrator who is responsible for the resource allocation.Even in the case of the Grid, it is common for resources to be managed on acentral approach basis, by local resource management systems such as Condor[10] and PBS [1].

Every participant has different interests and aims (self-interest) when con-tributing resources to a VO, and much effort and time are spent to generatea mutual acceptance between VO administrator and participants who demandfor access in a particular resource. There should be strategies to support thecooperative resource federation and to facilitate transparent sharing and load

1

balancing. An automated, policy-compromising method is needed to reducethe workload for VO administrator in resource federation and to reach satisfiedparticipants (clients).

A VO could enforce policies with static rules, but that would yield sub-optimal performance (e.g. wasteful resource utilization) and therefore, to tacklethe above problem, negotiation approaches are popular [15]. Under this ap-proach, one could enumerate game-theoretical, market-driven methods [14],multiple criteria methods [11, 17], Open Grid Services Architecture âĂŞbased(OGSA) methods [7], combinations of the above or even other intelligent tech-niques [3]. A dominant feature in the negotiation paradigm is multiple agents[5].

In this work, we claim that the same results could be also achieved by adifferent way: Indicating candidates to join the VO according to the collectivelypreferable resources could pointedly support sharing and load balancing. Anequivalent case is Infrastructure as a Service (IaaS) cloud computing. In thatcase the decision that should be made concerns the choice of the applicationenvironment, which should be hosted in order to have an efficient, and costeffective data center.

Although the proposed solution is not directly comparable to the existingworks cited in the previous paragraph, our approach emphasizes:

1. The policy satisfaction for both parties (VO administrator and partici-pants or Data center owner and clients) since participants (clients) stressesself-interested resource utilization while global resource utilization is im-portant for a VO (data center). The key element to address this issue isto derive collective utility functions consistent with individual preferenceswhile reflecting participants’ significance. The goal is to improve chancesfor a satisfied federation (or equivalently for an efficient, and cost effectivedata center)

2. Handling the incompleteness of preferences in terms of allowing partici-pants (clients) to express them through an agile framework. Participantsdeclare just some simple preferences relationships while quantitative as-sessments are derived following an aggregation-disaggregation approach.

The rest of the paper is organized as follows: The next Section, is a concisedescription of the intuition behind using multiple criteria decision aid (MCDA)in agent modeling and multi-agent systems design. Section 3 illustrates theproblem and its mathematical formulation while some experimental results arepresented in the immediate following section. Finally a concluding section sum-marizes the paper and discusses some inherent limitations.

2

2 The Intuition of Multiple Criteria Decision Aidin Multi-agent Systems

According to [18] there are three main ways to build agents (three major cat-egories for agents’ architectures): the deliberative one, which is the dominant;the reactive; and the median way âĂŞ the hybrid approaches. In these threebroad categories a lot of approaches have been proposed [2]. To those archi-tectures that agents need to be built as some kind of deliberative entities, twomain problems appear:

1. The transduction problem: How to symbolically represent the world, theagents’ universe

2. The representation / reasoning problem: How to adequately representinformation and make useful decisions based on that representation.

Roy’s seminal multiple criteria modeling methodology [12] can address boththese issues. This methodology is ultimately expressed in four levels:

• Level 1: Object of the decision, including the definition of the set ofpotential actions A and the determination of a problematic applied on A.

• Level 2: Modeling of a consistent family of criteria assuming that thesecriteria are non-decreasing value functions, exhaustive and non-redundant.

• Level 3: Development of a global preference model, to aggregate themarginal preferences on the criteria.

• Level 4: Decision-aid or decision support, based on the results of level 3and the problematic of level 1.

Let us demonstrate in a few lines how this methodology can be applied to theagents modeling problems: a consistent family of criteria (level 2) can sufficientlymodel the world âĂŞ respective to the object of the decision (level 1). A globalpreference model (level 3) is able to guide agents’ decisions. Finally, agents’actions will be realized based upon the decision support step (level 4).

Multiple criteria methodologies could contribute as a methodological back-ground for agents modeling as well as a tool for their real-time implementation[8]. However, in this work we stress their potential for modeling support. Inthis respect, the contribution potentials lie across two levels:

Agent design level: The multiple criteria modeling can respond to the rep-resentation issue discussed earlier. Existing methods can provide agentswith critical decision making elements

Multi agent level: Existing methods can profile Decision Makers, thus facil-itate coordination âĂŞ negotiation. In addition, DM’s profiles can beexploited to assign roles or tasks to agents

3

In a previous work [4], the benefits of using the disaggregation-aggregation ap-proach in multi-agent systems design were described. Table 1 summarizes thesebenefits, albeit broadening the respect to the overall MCDA concepts (not justthe D-A paradigm).

Table 1: MCDA Contribution potentials to multi-agent systems

IssueContribution

Agent Level RepresentInformation

Criteria Modeling âĂŞ Criteriamust fulfill specific properties

Make Decisionsbased on therepresentation

Preference Model Construction

Multi-agent levelNegotiationProtocol

Structured Process

Negotiation IssuesCriteria trade-offs

NegotiationReasoning Model

Multiple Criteria LinearFunction (Preference Model)

Task / RoleAssignment

A global Criterion as "FitnessMeasure"

3 Resource Federation Applied

3.1 Describing the Problem in a Cloud Computing Con-text

In a VO, participants act the part of clients while the role of provider is left forthe VO administrator. Narrow the available resources into computing resources(e.g. CPU, disk storage, bandwidth, memory), and the VO becomes the equiva-lent of a data center. In that case, the VO "sells" its infrastructure as a service(IaaS cloud computing). A crucial decision that can have a significant impacton the VO’s attractiveness is which application environments are hosted to itsphysical or virtual machines. Clients have the right to demand service levelagreements for the application environment that is allocated to them, accordingto their preferences (which are usually high demanding for some parameters andless demanding for the rest ones). On the other hand, the VO administrator (orthe data center owner) is expected to aim at the maximization of its profit, ascalculated by revenue minus expenses, revenue being contingent on the number

4

of application environment hosted and on the percentage of their faultless per-formance (according to the quality parameters) and expenses being contingenton equipment cost, energy consumption, financial expenses etc. Since near allexpenses are proportional to the number of computational units [9], the goal isto minimize their number, i.e. to provide the smallest possible number of appli-cation environments that does not violate the clients’ service level agreementsand guarantees their satisfaction.

Thus the problem emerges as a configuration of the application environmentsproblem. In particular, what CPU, disk storage, bandwidth, memory levelsshould be assigned to an application environment in order to satisfy all parties?What are the criteria levels that are collectively the most preferable? (Theequivalent question in the more general case of a virtual organization would be:which participant would be more favored to join the VO based on the resourceshe offers?)

3.2 Problem ModelingLet m be the number of the existing clients of a data center, namely thosewho use its infrastructure as a service on a contract basis. These clients actas autonomous, self-interest agents. The notation C = C1, C2, . . . , Cm shall beused to symbolize them. Every agent (client) Ct has a weight of significance wtfor the data center owner. This weight could represent the relative value thatevery agent has for the data center or it could be a parameter declared in thecontract. In any case, there should always be

∑mt=1 wt = 1.

Let n be the number of criteria G = g1, g2, . . . , gn, which will be used toevaluate the alternative solutions. The alternative solutions set can be of anyfinite size and it shall be notated as A = a, b, . . .. Alternative solutions in thispaper are nothing else than configurations of applications environment, i.e.,specific levels of performance on the evaluation criteria. Besides the existingsolutions, the methodology suggested in this work introduces a set of referencealternatives AR. According to [16] this set could be: a set of past decisionalternatives past actions; a subset of decision actions, especially when A islarge; or a set of fictitious actions, consisting of performances on the criteria,which can be easily judged by agents to perform global comparisons.

The concept of reference alternatives is common in the aggregation-disaggregationparadigm of the MCDA, however, the novelty of this method consists in nondemanding a complete comparisons table. In particular, every agent (client) isasked to express his/her preferences over just a subset of these reference alterna-tives. Representing by ARt the set of the reference alternatives used for compar-isons by the tth agent, the following should hold: AR = AR1

⋃AR2

⋃. . .⋃

ARm.In order to compare alternatives, let us denote an outranking relation S onA×A, in a way that aSb means “alternative a is at least as good as b”.

The ultimate goal of the methodology is to model the collective prefer-ences of agents (clients). To this end an additive value function u is intro-duced as following:u

(g)=∑nj=1 uj (gj). Each uj(gj) is piecewise linear on

Gj = g1j , g2j , . . . , gj (αj), αj being the number of level of performance of the jth

5

Figure 1: Choreography diagram

criterion. In addition, the worst and the best performance have standard valuesas: uj (gj∗) = 0 and

∑nj=1 uj

(gαj

j

)= 1. Finally, the outranking relation is

expressed on a value function basis as: aSb⇔ u[g (a)

]− u

[g (b)

]≥ 0.

Figure 1 captures how the key participants of the proposed methodoogyinteract with each other. In particular, it illustrates the choreography amongthe VO administrator and the clients (agents) using the BPMN 2.0 notation. Itshall be noted that the collapsed activity (Negotation) can iterate until resultsare satisfying. If this is not possible, then the process terminates with failure.

3.3 Assessing Agents’ Value Function for Resource Feder-ation

Each agent provides just two basic pieces of information: The first consists of aset of pairwise comparisons of some reference alternatives. These comparisonsare made in terms of the outranking relation defined in the previous section.This way, the tth agent provides a comparisons set Rt ⊆ AR×AR, which couldbe of any size and include any reference alternatives. A comparison in that set(a row of the matrix) would indicate two alternatives (e.g. a and b) for whichthe outranking relation aSb holds. The second piece of information needed is aset of intensities about the outranking relations between couples of alternativesof ARt. Again, this comparisons’ set does not have to be complete. Morespecifically, let It be the set of the "intensities" of the tth agent. An element ofIt would declare if a comparison (an element in Rt) is more "intense" than anyother element in Rt. For example, aSb is more intensive than cSd.

The collective value function will be calculated through a linear regressionproblem. To this end, two variables ztk and ytp are introduced. The formerrefers to the kth outranking relationship of the tth agent and the latter to thepth intensity declared by the tth agent. The linear problem is formulated asfollows:

6

min z =

m∑t=1

wt |Rt|∑k=1

ztk + wt

|It|∑p=1

ytp

(1)

subject to:

u[g (a)

]− u

[g (b)

]+ ztk ≥ 0,∀t = 1, 2, . . . ,m; k = 1, 2, . . . , |Rt| (2)

(u[g (a)

]− u

[g (b)

])−(u[g (c)

]− u

[g (d)

])+ ytp ≥ 0,

∀t = 1, 2, . . . ,m; p = 1, 2, . . . , |It|(3)

uj(gl+1j

)− uj

(glj)≥ 0, j = 1, 2, . . . , n l = 1, 2, . . . , αj − 1 (4)

uj(g1j)= 0 (5)

n∑j=1

uj(gαj

j

)= 1 (6)

uj(glj)≥ 0, j = 1, 2, . . . , n l = 1, 2, . . . , αj ; ztk ≥ 0; ytp ≥ 0;

t = 1, 2, . . . ,m; k = 1, 2, . . . , |Rt| ; p = 1, 2, . . . , |It|(7)

3.3.1 Robustness Analysis

Robustness analysis of the results provided by the Linear Problem is consid-ered as a post-optimality analysis problem. What is actually applied is a slightalteration of the polyhedron defined by the constraints of the initial linear prob-lem. The polyhedron is augmented by the additional constraint ζ ≤ ζ∗ + ε, ζ∗

being the minimal error of the initial LP, and ε a very small positive num-ber. A number of T =

∑nj=1 (αj − 1) new linear problems are constructed

and T value functions are calculated by maximizing and minimizing each valueuj(g

lj), j = 1, 2, . . . , n; l = 2, âĂęαj , on the augmented polyhedron.As a measure for the robustness of the marginal value functions the average

stability indices ASI(i) are used. An average stability index ASI(i) is the meanvalue of the normalized standard deviation of the estimated marginal values onith criterion and is calculated as

ASI(i) = 1− 1

αi − 1

∑αi−1k=1

√(T

(∑Tj=1

(ujk

)2)−(∑T

j=1 ujk

)2)T

αi−1

√(αi − 2)

(8)

7

Table 2: Alternatives performance over the criteria vectorAlternative a Alternative b Alternative c Alternative d Alternative e

CPU 3 2 2 2 1Disk storage 3 3 3 2 4Memory 2 3 2 2 1

where ujk is the estimated value of the kth parameter in the jth additive valuefunction.

The global robustness measure will be the average of ASI(i) over all thecriteria. If robustness measures are judged satisfactory, i.e. ASI indices areclose to 1, then the final solution is calculated as the barrycentral value function.Else, the sets Rt and It should be enriched for one or more agents. The wayto guide the Rt and It redefinition process is by checking the magnitude of thevariables ztk and ytp. In particular, the larger these variables are, the greaterthe inconsistency they will prompt. So, agent t (who is related with ztk andytp) shall be contacted by priority.

4 An Illustrative ExampleThe proposed methodology is exemplified in this section through the followingcase: Consider a data center that strives to optimize the application environ-ments that it hosts. For the sake of simplicity, let us assume that each appli-cation environment is configured around just three criteria: CPU, disk storage,and memory. In addition, let us assume that the owners of the data centerrealize the need to negotiate with their clients over some rough levels of per-formance over those criteria, therefore they use verbal / descriptive scales ofcriteria measurement. In particular, they use a 3-level scale for the CPU andmemory criteria (e.g. low, average, high) and a 4-level scale for the disk storagecriterion.

Five agents (clients) are currently negotiating a contract with the data cen-ter, i.e. to get hosted in an application environment that best fits their needs.The data center owners have estimated (e.g. according to the contract value)the following significance weights for all the clients: C1 = 0.22, C2 = 0.18, C3 =0.15, C4 = 0.18 and C5 = 0.27. Recall that the sum of all weights should equal1. Suppose also, that clients are given a set of indicative alternatives and thatthey are asked to express their preferences for them. This reference set of al-ternatives along with their performance over the criteria vector is presented inTable 2.

In Table 2 the preferences set for each agent contains the outranking relationshe declares (for instance C1 has declared that “alternative a is at least as goodas c", "alternative b is at least as good as c" and "alternative d is at least asgood as e". The intensities matrix contains as many rows as the number of theintensities declared (rows are separated by columns). Each row contains two

8

Table 3: Agents’ preferencesAgent Preferences IntensitiesC1 {aSc, bSc, dSe} [1, 2; 1, 3]C2 {aSb, bSc, cSd, dSe} [1, 3; 2, 3; 2, 4]C3 {bSa, bSc, eSd} [2, 1]C4 {aSd, bSc, aSe, dSe} [2, 3; 2, 4; 3, 4]C5 {cSd, cSe, bSe} [1, 2; 3, 1]

Table 4: Example resultsWeight of significance Global Robustness

CPU 25.7%, u = [0.0; 0.615; 1]0.502Disk storage 44.8%, u = [0.0; 0.253; 0.383; 1]

Memory 29.5%, u = [0.0; 0.838; 1]

numerical values, which correspond to the indices of the preferences relationsinvolved. For example, C1 has declared that the first relation (aSc) is moreintense than the second (bSc) and the third one (dSe). The interesting partis that agents do not need to express their preferences over the entire set ofalternatives nor they need to declare intensities for every pair of relations. Thisis an important advantage of the proposed method that provides great flexibilityto both the decision makers (here the data center owners) and agents.

Table 2 and Table 3 contain all the necessary input for the method. Shouldwe apply the linear program presented in equations (1)-(8), the results of Table4 shall appear.

The critical results consist of the assessment of the collective preferences(in terms of criteria weights and their marginal utility functions) and of theirrobustness measures. For instance, the above results indicate that the mostimportant factor for clients is the disk storage capacity of the application envi-ronment. In the above example, it is also shown that the final solution is notrobust enough (the ASI index is not close to 1). In this case, data center ownersshould sum the variables ztk and ytp over t (i.e. for every agent) and ask fromthe one with the maximum value to enrich its preferences statements (i.e. setsRt and It). In this example case, this agent is C5. After redefining / adjustingC5’s statements, the linear program shall be resolved and new results shall becalculated. In particular, C5 declares an additional preference (aSe) in orderto make his point clearer. Moreover, he/she redefines his/her set of intensitiesas {cSd, cSe, bSe, aSe} − [2, 1; 3, 2; 3, 1; 4, 2; 4, 3]. With this much richer infor-mation on hand, the new ASI index is 0.612 while new criteria weights havebeen estimated (24.2% for the CPU, 43,2% for the Disk storage and 32.6% forthe memory). It seems that through this negotiation step, the significance ofthe Disk storage criterion is slightly decreased in favor of the other two criteria,in other words agent C5 accepts to consider the disk storage criterion to be alittle less important! If after this step, the ASI index is still not satisfactory,

9

the process iterates by contacting the next agent. Finally, and when a satisfyingASI index is reached, data center owners could evaluate different configurationscenarios over the multiple criteria and rank them according to their globalperformance.

5 ConclusionsIn this work a multi-criteria methodology to support resource federation in acloud computing context was presented. What guide the reasoning componentare the collective preferences of all agents. Therefore, the final solution dependsin a very direct way on the agent’s rationality. This infuses the system with animpressive flexibility but also with a disagreeable subjectivity. More specifically,modeling agents as rational optimizers based on the suggested multiple crite-ria approach there emerge the same limitations with those of classical decisionaid: There is a fuzzy borderline between what is and what is not feasible inreal decision making contexts; the Decision makers’ have seldom well shapedpreferences. "In and among areas of firm convictions lie hazy zones of uncer-tainty, half held belief, or indeed conflicts and contradictions" [13]; many dataare imprecise, uncertain, or ill-defined. In addition, sometimes, data may notbe reflected appropriately into linear utility functions. Even more, in a compu-tational context, such as the agents’ one, we shall not neglect complexity andtime-issues: decisions have to be made in real time.

Despite the above limitations, the multiple criteria paradigm emerges as anendeavor to make an objective place for agents’ decisions. It provides a way toformalize pro-activeness guiding agents to rational and transparent decisions.

References[1] B. Bode, D. M Halstead, R. Kendall, Z. Lei, and D. Jackson. The portable

batch scheduler and the maui scheduler on linux clusters. In Proceedingsof the 4th Annual Linux Showcase and Conference, 2000.

[2] Rafael Bordini. Multi-agent programming : languages, tools and applica-tions. Springer, New York ;;London, 2009.

[3] Wai-Khuen Cheng, Boon-Yaik Ooi, and Huah-Yong Chan. Resource feder-ation in grid using automated intelligent agent negotiation. Future Gener-ation Computer Systems, 26(8):1116–1126, 2010.

[4] Pavlos Delias and Nikolaos F. Matsatsinis. The multiple criteria paradigmas a background for agent methodologies. In Alexander Artikis, GregoryO’Hare, Kostas Stathis, and George Vouros, editors, 8th Annual Interna-tional Workshop "Engineering Societies in the Agents World", pages 227–237, 2007. Registered.

10

[5] P. Faratin, C. Sierra, and N. R Jennings. Negotiation decision functions forautonomous agents. Robotics and Autonomous Systems, 24(3-4):159–182,1998.

[6] Ian Foster. The grid: A new infrastructure for 21st century science. InFran Berman, Geoffrey Fox, and Tony Hey, editors, Wiley Series in Com-munications Networking & Distributed Systems, pages 51–63. John Wiley& Sons, Ltd, Chichester, UK, 2002.

[7] P.C.K. Hung, Li Haifei, and Jeng Jun-Jang. WS-Negotiation: an overviewof research issues. In 37th Annual Hawaii International Conference onSystem Sciences, 2004. Proceedings of the, page 10 pp., Big Island, HI,USA, 2004.

[8] David Hutchison, Takeo Kanade, Josef Kittler, Jon M. Kleinberg, Friede-mann Mattern, John C. Mitchell, Moni Naor, Oscar Nierstrasz, C. PanduRangan, Bernhard Steffen, Madhu Sudan, Demetri Terzopoulos, DoughTygar, Moshe Y. Vardi, Gerhard Weikum, Petr Tučník, Jan Kožaný, andVilém Srovnal. Multicriterial Decision-Making in multiagent systems. InVassil N. Alexandrov, Geert Dick Albada, Peter M. A. Sloot, and Jack Don-garra, editors, Computational Science – ICCS 2006, volume 3993, pages711–718. Springer Berlin Heidelberg, Berlin, Heidelberg, 2006.

[9] J. G Koomey, C. Belady, M. Patterson, A. Santos, and K. D Lange. As-sessing trends over time in performance, costs, and energy use for servers.Microsoft, Intel and Hewlett-Packard Corporation, Tech. Rep., 17, August2009.

[10] M. J Litzkow, M. Livny, and M. W Mutka. Condor-a hunter of idle work-stations. In Distributed Computing Systems, 1988., 8th International Con-ference on, page 104–111, 1988.

[11] Nikolaos Matsatsinis and Pavlos Delias. A multi-criteria protocol for multi-agent negotiations. In George Vouros and Themistoklis Panayiotopoulos,editors, Methods and Applications of Artificial Intelligence, volume 3025of Lecture Notes in Computer Science, pages 103–111. Springer Berlin /Heidelberg, 2004. 10.1007/978-3-540-24674-9_12.

[12] Bernard Roy. Multicritéria Methodology for Decision Aiding. Kluwer, Dor-drecht, 1996.

[13] Bernard Roy. Paradigms and challenges. In José Figueira, Salvatore Greco,and Matthias Ehrogott, editors, Multiple Criteria Decision Analysis: Stateof the Art Surveys, volume 78 of International Series in Operations Re-search & Management Science, pages 3–24. Springer New York, 2005.10.1007/0-387-23081-5_1.

[14] Kwang Mong Sim. Grid commerce, Market-Driven G-Negotiation, and gridresource management. IEEE Transactions on Systems, Man and Cybernet-ics, Part B (Cybernetics), 36(6):1381–1394, 2006.

11

[15] Kwang Mong Sim. Grid resource negotiation: Survey and new directions.IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applica-tions and Reviews), 40(3):245–257, 2010.

[16] Yiannis Siskos, Evangelos Grigoroudis, Nikolaos Matsatsinis, José Figueira,Salvatore Greco, and Matthias Ehrgott. UTA methods. In Multiplecriteria decision analysis: state of the art surveys, INTERNATIONALSERIES IN OPERATIONS RESEARCH & MANAGEMENT SCIENCE,page 297–344. Springer New York, 2005.

[17] T Wanyama and B Homayounfar. A protocol for multi-agent negotiation ina group-choice decision making process. Journal of Network and ComputerApplications, 30(3):1173–1195, 2007.

[18] Michael Wooldridge and Nicholas R. Jennings. Intelligent agents: theoryand practice. The Knowledge Engineering Review, 10(02):115, July 2009.

12