Knowledge-Based Systems 35 (2012) 271–278
Contents lists available at SciVerse ScienceDirect
Knowledge-Based Systems journal homepage: www.elsevier.com/locate/knosys
Directed graph-based multi-agent coalitional decision making Xiaohan Yu a, Zeshui Xu b,⇑ a b
Institute of Communications Engineering, PLA University of Science and Technology, Nanjing Jiangsu 210007, China Institute of Sciences, PLA University of Science and Technology, Nanjing Jiangsu 210007, China
a r t i c l e
i n f o
Article history: Received 7 January 2012 Received in revised form 26 April 2012 Accepted 15 May 2012 Available online 24 May 2012 Keywords: Multi-agent coalitional decision making Directed graph Tabu search Integral optimization Coalitional strategy
a b s t r a c t In this paper, we investigate a new kind of decision making problems called multi-agent coalitional decision making (MACDM) problems. In this kind of problems it is analyzed how the actions (strategies) of the agents among a concerned coalition (camp) enhance their own benefits or damage other camps. A special kind of MACDM problems are the MACDM problems with two camps which exist broadly in practice, especially in the situations of two camps (departments, combat forces, enterprises, etc.) competing with each other. This kind of problems is firstly described by the corresponding directed graphs, in which every possible strategy is figured as a directed arc. In this case, each coalitional strategy of the concerned camp is a directed subgraph, and thus can be represented as a simplified adjacency matrix. We construct two integer programming models so as to select the best coalitional strategy by maximizing the benefit of the concerned camp or the damage of the other camp. By considering the characteristic of the integer programming models, we utilize a tabu search algorithm to solve them and prove that the optimal solution can always be reached when the relevant parameters are fixed properly. At length, a simple example is taken to illustrate how to deal with the MACDM problem with two camps. Ó 2012 Published by Elsevier B.V.
1. Introduction Decision making is an analytical and cognitive process resulting in the selection of a course of action among several alternative scenarios. Every decision making process produces a final choice (alternative) and outputs an action or an opinion of choice by means of some scientific approaches or techniques. In a situation that there are several conflicting criteria during decision making processes, we always want to devise a process to come to a compromise, which is a multi-criteria decision making (MCDM) [6,23]. MCDM has been used in almost all fields of human society during its development, and proven to be an effective tool to solve actual problems [16]. Generally speaking, the decision factors of the MCDM problems consist of decision makers, alternatives and criteria, etc., and most MCDM methods serve a kind of problems that there exist no relations among any decision factors (it is independent between any two decision makers, alternatives or criteria). However, the relations among these decision factors are more or less existent in lots of actual applications. Some literatures have already paid attention to this issue. Fan and Feng [7] proposed a multi-criteria decision making method using individual and collaborative criteria data so as to solve actual multi-criteria decision making problems with both individual criteria data of a single alternative and collaborative criteria data of pairwise alternatives. Antuchevicˇiene et al. [2] integrated the Mahalanobis distance, ⇑ Corresponding author. E-mail addresses:
[email protected] (X. Yu),
[email protected] (Z. Xu). 0950-7051/$ - see front matter Ó 2012 Published by Elsevier B.V. http://dx.doi.org/10.1016/j.knosys.2012.05.007
which offers an option to take the correlations among the criteria into consideration, into the usual algorithm of TOPSIS in the process of MCDM. Besides, Xu [17] used Choquet integral to propose some intuitionistic fuzzy aggregation operators, which can not only consider the importance of the elements or their ordered positions, but also reflect the correlations of the elements or their ordered positions. By considering multi-criteria aggregation problems where there exists a prioritization relationship over the criteria, Yager [19,20] introduced a number of prioritized aggregation operators. A stochastic simulation model, which is based on decision variables and stochastic parameters with given distributions, was constructed to solve the MCDM problems according to Lahdelma et al. [14]. The simulation model determines a joint probability distribution for the criteria to quantify the uncertainties and their interrelations. By considering various kinds of relations among the decision factors, we shall establish an integer programming model aiming at multi-agent coalitional decision making (MACDM) problems. In general, the MACDM problem considered can be divided into two parts: internal environment (i.e., the concerned camp) and external environment (i.e., other camps). There may be cooperative or supportive relation between two agents in the internal environment, and meanwhile there is a competitive or hostile relation between two agents in different camps. For example, a commander always makes good decisions to win battles against his rivals in the situations of modern complex combined operations, or entrepreneurs make plans to develop their enterprises by competing with other enterprises in the complex market environments,
272
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
and so on. Then the internal environment can be the relations among different operational units in the same battle camp, and among different departments in an enterprise, and the external environment can be rivals involved, or concretely basic operational units or departments of the rivals. In this case, we shall solve the MACDM problems by considering multiform relations among the agents, and it is key point in this paper how to select the best coalitional strategy for the concerned camp. For this purpose, we model the MACDM problems by using directed graphs so as to describe the multiform relations as some arcs, and then analyze how the multiform relations influence coalitional strategies. At length, we derive the best coalitional strategy by calculating the integer optimization models by using the tabu search algorithm. The rest of this paper is organized as follows. Section 2 introduces some basic concepts and terminologies. In Section 3, the MACDM problems are described in detail and the directed graphs are devised to model the MACDM problems. Then some integer programming models are developed in order to solve the MACDM problems and select the best coalitional strategy in Section 4. The integer programming models can be solved by using the tabu search algorithm. Thus we devise the solution processes for the MACDM problems on the basis of the tabu search algorithm, and prove that the best solution can be reached according to this approach in Section 5. Section 6 illustrates the feasibility and practicability of the approach with a numerical example. Finally, we conclude the paper in Section 7. 2. Preliminaries In this section, we introduce some basic concepts, including directed graphs, and aggregation functions, which will be used in the next sections. 2.1. Directed graphs Intuitively, a directed graph is formed by vertices connected by directed edges of arcs, which can be defined as follows: Definition 2.1 [3]. A directed graph G is a pair (V, E), where V is the vertex set and E is the set of vertex pairs as in ‘‘usual’’ graphs. Each element (u, v) of E is the ordered pair, which denotes the arc from the vertex u to v, while the pair (v, u) means the opposite direction arc. A graph can be represented by an adjacency matrix [3]. In the following sections, we will apply the adjacency matrix to formularize a directed graph so as to solve a relevant optimization model mathematically. Therefore, it is necessary to first introduce the adjacency matrix: Definition 2.2 [3]. The adjacency matrix of a directed graph b ¼ ð^ G = (V, E) is an n n matrix M eij Þnn , where ^ eij is the number of arcs that come out of the ith vertex and go into the jth vertex. In this paper, by considering some vertices from which there are no arcs come out, we can simplify the adjacency matrix. Definition 2.3. For some vertices from which no arcs come out, the b are deleted, and a corresponding rows in the adjacency matrix M matrix M = (eij)mn(m < n) obtained in such a way is called the simplified adjacency matrix of the directed graph G = (V, E). 2.2. Aggregation functions For a fixed n 2 Nþ , n P 2 (Nþ denotes the set of positive integer), the mapping AF : Rn ! R (R denotes the set of real numbers)
is called an aggregation function whenever it is non-decreasing, and AF(0, 0, . . . , 0) = 0. Aggregation functions are of diverse kinds [4,12], such as the weighted averaging operator [13], the ordered weighted averaging operator [18,21], the weighted geometric averaging operator [1] and the prioritized averaging operator [19], and so on. Every kind of aggregation functions are used in some specific fields, and for the same inputs, different results can be obtained by using different aggregation functions. Thus we shall select a proper aggregation function according to a concrete problem. The most common aggregation function is weighted averaging (WA) operator, which will be used to explain multi-agent coalitional decision making in this paper. Definition 2.4 [13]. Let WA:Rn ? R. If
WAw ða1 ; a2 ; . . . ; an Þ ¼
n X wi ai
ð1Þ
i¼1
where w = (w1, w2, . . . , wn)T is weight vector of (a1 , a2, . . . , an)T, P wi 2 [0, 1](i = 1, 2, . . . , n) and ni¼1 wi ¼ 1, then the function WA is called a weighted averaging (WA) operator.
3. Multi-agent coalitional decision making (MACDM) problems In this paper, we focus on a special kind of MACDM problems, in which there are only a rival for the concerned camp, i.e., the internal environment is related to a camp and the external environment is related to the other. We denote the two camps as two sets A and B, where A = {a1, a2, . . . , an} depicts the concerned camp with n agents, and there are m agents {b1, b2, . . . , bm} in the set B. Besides, for each agent in A there are several possible strategies (to compete with the agents in B or to support the other agents in A). If all strategies of an agent ai(i = 1, 2, . . . , n) are to compete with the agents in B, then the agent is called a competitor; but if all strategies of ai are to support the other agents in A, then ai is called a supporter; otherwise, ai is called an all-rounder. All possible strategies of an agent in A can form a set of the agent’s possible strategies, for example, if there are two strategies: to compete with bj(2B) or to support ak(2A) for an agent ai(i – k), then ai is an all-rounder and its set of possible strategies can be denoted as Si = {(ai, bj), (ai, ak), /}, where / in Si denotes nothing will be done for ai. In order to make a coalitional decision for the camp A, each agent ai selects a strategy si 2 Si. We will use s = (s1, . . . , sn)T to denote the coalitional strategy and S = iSi to denote the set of all possible ways in which the agents in A can pick strategies (i.e., coalitional strategy space). Example 1. Suppose that there are two camps A = {a1, a2, a3, a4} and B = {b1, b2, b3}, where a1 can support a2 or a4, a2 can compete with b1 or b2, a3 can compete with b1 or b3, and a4 can compete with b2 or b3. In this case, there are four sets of all possible strategies for the corresponding ai(i = 1, 2, 3, 4):
S1 ¼ fða1 ; a2 Þ; ða1 ; a4 Þ; /g; S3 ¼ fða3 ; b1 Þ; ða3 ; b3 Þ; /g;
S2 ¼ fða2 ; b1 Þ; ða2 ; b2 Þ; /g S4 ¼ fða4 ; b2 Þ; ða4 ; b3 Þ; /g
If each agent selects a strategy from the four sets respectively, then we can derive a coalitional strategy, such as the coalitional strategy s = ((a1, a2), (a2, b2), /, (a4, b3))T. All possible coalitional strategies constitute the coalitional strategy space S ¼ 4i¼1 Si . Generally speaking, the coalitional strategy cannot be considered as a simple combination of several agents’ strategies, that is because the overall damage is generally different from the summation of two respective damages when two agents in A decide to compete with an agent in B at one time. In addition, the damage will be increased for the rival agent due to the support of a
273
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
supporter. Therefore, different coalitional strategies will produce different damages (which can be used to assess the corresponding coalitional strategies). If we want to calculate the damages exactly, we must clarify the relations among the agents when coalitional strategies are selected. In what follows, directed graphs are applied to describe the MACDM problems with two camps, and the coalitional strategies can be well represented. Any MACDM problem with two camps can be described by a directed graph G = (V, E), where V = A [ B(A = {a1, . . . , an};B = {b1, . . . , bm}) is the set of vertices (i.e., the set of the agents in A and B), and E is the set of ordered vertex pairs (i.e., the set of possible strategies). Similar to the adjacency matrix of a graph if there are n agents in A and m agents in B, we can describe E mathematically by using a simplified adjacency matrix M = (eij)n(n+m), where (1) If ai can support aj for all ai, aj 2 A, then eij = 1. (2) If ai can compete with bk for all ai 2 A and bk 2 B, then ei,n+k = 1; otherwise, eij = 0 for i = 1, 2, . . . , n and j = 1, 2, . . . , m. The situation, that a coalitional strategy s is selected, can be regarded as a directed subgraph of G, which is formularized as ðsÞ G(s) = (V, E(s)). Its simplified adjacency matrix is M ðsÞ ¼ eij nðnþmÞ satisfying:
8X nþm > ðsÞ > eij ¼ 0 or 1; <
ð2Þ
> > : e _ 1 eðsÞ ¼ 1 ij ij
1 0 0 0 0 0
3
0 0 0 1 0 07 7 7 0 0 0 1 0 05 0 0 0 0 0 1
For any coalitional strategy, we can use an n (n + m) matrix to formularize it, but how to select the best coalitional strategy is the key point of the MACDM problems, i.e., we should devise a method to assess the coalitional strategies or the corresponding simplified adjacency matrices. In the following section, we will construct a model to solve the MACDM problems and select the best coalitional strategy.
4. Optimization model for solving the MACDM problems In an MACDM problem with two camps A and B, the agents in A want to damage the agents in B as much as possible. In such a case, we can construct a multi-objective integer programming model to select the best coalitional strategy: Model 1:
max dk ðM ðsÞ Þ;
k ¼ 1; 2; . . . ; m
ðsÞ
eij ¼ 0; 1; ðsÞ eij _ 1 eij ¼ 1; ðsÞ
eij 6 1;
Example 2. A directed graph G = (V, E) can be used to describe the MACDM problem in Example 1 (see Fig. 1), where V = A [ B = {a1, a2, a3, a4, b1, b2, b3}, and
E ¼ fða1 ;a2 Þ; ða1 ; a4 Þ;ða2 ;b1 Þ; ða2 ;b2 Þ; ða3 ;b1 Þ; ða3 ;b3 Þ; ða4 ;b2 Þ; ða4 ;b3 Þg In this case, we get the simplified adjacency matrix:
3 0 1 0 1 0 0 0 7 6 60 0 0 0 1 1 07 7 M¼6 7 6 40 0 0 0 1 0 15 2
0 0
M ðsÞ
0 60 6 ¼6 40 0
n þm X
where _ denotes ‘‘Max’’. For explanatory purpose, we describe the MACDM problem in Example 1 on the basis of the directed graph as follows:
0 0
2
s:t:
for i ¼ 1; 2; . . . ; n
j¼1
Then the simplified adjacency matrix of the coalitional strategy s can be
0 1 1
Suppose that a coalitional strategy s = {(a1, a2), (a2, b1), (a3, b1), (a4, b3)}: a1 supports a2, a2 and a3 compete with b1, and a4 competes with b 3, then the coalitional strategy can be described by a directed subgraph G(s) = (V, E(s)) (see Fig. 2), where E(s) = s = {(a1, a2), (a2, b1), (a3, b1), (a4, b3)}.
Fig. 1. The directed graph of the MACDM problem.
j¼1
i ¼ 1; 2; . . . ; n; where M
ðsÞ
¼
ðsÞ eij
j ¼ 1; 2; . . . ; n þ m
nðnþmÞ
is the simplified adjacency matrix with
respect to the coalitional strategy s, dk(M(s)) means the quantified damage of the kth agent in B suffered from the coalitional strategy of A, and eij is the element of M mentioned in Section 3. The constrained condition is to assure that the coalitional strategy s is feasible, i.e., the simplified adjacency matrix with respect to s satisfies the condition in (2). However, how to calculate the damage of each agent in B with respect to a selected coalitional strategy? If Model 1 is to solve a command and control problem, we usually adopt a method to calculate a damage probability of each agent in B which is used in weapon–target assignment problems [15,5]. For example, for bk 2 B, if there are ai and aj attacking it according to a coalitional strategy s at one time, and the damage probabilities of ai and aj attacking bk are pik and pjk respectively, then the overall damage probability of bk can be pk = 1 (1 pik)(1 pjk). In this case, dk(M(s)) can be equal to pk. Besides, if there exist another agent al supporting ai to damage bk, we can fix on an exponential k(>1) according to the support ability of al, then the overall damage probability of bk can be dk(M(s)) = pk = 1 (1 pik)k(1 pjk). In
Fig. 2. The directed subgraph of a coalitional strategy.
274
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
addition, we can utilize a suitable computing method [8,22] to calculate the damage of each agent in B according to a concrete MACDM problem, as we can introduce some coefficients (P1 generally) to calculate the damages of b1, b2 and b3 in the MACDM problem mentioned in Examples 1 and 2. Example 3. For the coalitional strategy s in Example 2, it is clear that a2 and a3 compete with b1 and a1 supports a2 in its action. If we assume that the coefficient of support is cs, the coefficient of joint competition is cc, and the basic damage of bk 2 B is d, then the damage of b1 with respect to s can be
d1 ðM ðsÞ Þ ¼ cs cc d Also if cs = 1.8, cc = 1.5 and d = 1, then d1(M(s)) = 2.7. In this method, cs and cc mean more damage will be produced if there exit supports or joint competitions. Note 1. The method in Example 3 will be used in Section 6 to calculate the damages of the agents in B. From the above analysis, we shall first find out all the agents in A that have influence on an agent bk 2 B with respect a certain coalitional strategy s, and then calculate the damage of bk by using a proper computing method. The process for calculating all damages of the agents in B with respect to s can be described as follows: Step 1. Initialize j = 1 and Js = ;. ðsÞ Step 2. Find out all i 2 {1, 2, . . . , n} satisfying ei;nþj – 0. If none is (s) found, then dj(M ) = 0, j = j + 1 and go to Step 2; otherwise, Js = Js [ {(ai, bj)}. ðsÞ Step 3. For ai 2 Js and all k 2 {1, 2, . . . , n}, if ek;i ¼ 1, then Js = Js [ {(ak, ai)} and calculate the damage of bj according to a proper computing function f: Js ? R (R denotes the set of all real numbers), i.e., dj(M(s)) = f(Js), and j = j + 1. Step 4. If j 6 m 1, then set Js = ; and go to Step 2. Step 5. End. Note 2. The above process is to find all the agents in A (the set of the relevant agents is denoted as Js) that have influence on each bj 2 B based on the description of directed graph, and then calculate the damage of bj. The computing function f may be a proper tool to calculate the damage according to the corresponding coalitional strategy (such as the probability method, and the coefficient method aforementioned). Example 4. According to the above process, we can calculate the damages dj (M(s))(j = 1, 2, 3) of the agents bj(j = 1, 2, 3) in B with respect to the coalitional strategy s in Example 2 as follows: Step 1. Initialize j = 1 and Js = ;. ðsÞ ðsÞ Step 2. From e2;5 ; e3;5 – 0ðn þ j ¼ 4 þ 1 ¼ 5Þ we get Js = {(a2, b1), (a3, b1)}. ðsÞ Step 3. It follows from e1;2 ¼ 1 that Js = {(a2, b1), (a3, b1), (a1, a2)}. In this case, we know that the damage d1(M(s)) of b1 is related to a supporter a1, and two competitors a2 and a3, thus according to the method in Example 3, we can calculate d1(M(s)) = cs cc d = 2.7. Step 4. Set j = j + 1 = 2 and Js = ;. ðsÞ Step 5. Because there is no i 2 {1,2,3,4} such that ei;6 – 0, then (s) d2(M ) = 0. Set j = j + 1 = 3. ðsÞ Step 6. It follows from e4;7 – 0 that Js = {(a4, b3)}. ðsÞ Step 7. Since none can be found satisfying ek;4 ¼ 1 ðk 2 f1; 2; 3; 4gÞ, then Js = {(a4, b3)}, and we can calculate d2(M(s)) = d = 1. From the above process, we can calculate the damages of the agents in B with respect to the coalitional strategy s, i.e.,
d1 ðM ðsÞ Þ ¼ 2:7;
d2 ðMðsÞ Þ ¼ 0;
d3 ðM ðsÞ Þ ¼ 1
The multi-objective integer programming model (Model 1) is hard to be solved, even though all damages can be derived accurately. A good solution is to transform the multi-objective integer programming model into a single-objective integer programming model as follows: Model 2:
max dðMðsÞ Þ s:t:
ðsÞ
eij ¼ 0; 1; ðsÞ eij _ 1 eij ¼ 1; nþm X
ðsÞ
eij 6 1;
j¼1
i ¼ 1; 2; . . . ; n;
j ¼ 1; 2; . . . ; n þ m
In Model 2, we devise an aggregation function AF:Rn ? R so as to aggregate the damages of all the agents in B into an overall damage, i.e.,
dðM ðsÞ Þ ¼ AFðd1 ðMðsÞ Þ; d2 ðM ðsÞ Þ; . . . ; dm ðM ðsÞ ÞÞ
ð3Þ
Aggregation functions are various, and we will obtain different results by means of different aggregation functions for the same input damages, as mentioned in Subsection 2.2. Thus we shall select a proper aggregation function according to the characteristics of certain MACDM problems. For example, if we assume that the weights of the agents in B are w1, w2 and w3 respectively, then the WA operator in Definition 2.4 can be used to aggregate the damages of the agents in B to an overall one with respect to the coalitional strategy s in Example 2, i.e.,
dðM ðsÞ Þ ¼ w1 d1 ðMðsÞ Þ þ w2 d2 ðMðsÞ Þ þ w3 d3 ðM ðsÞ Þ ¼ ðw1 cs cc þ w3 Þ d ð4Þ However, we must notice that other aggregation functions can also be used to aggregate the damages in accordance with the preference of decision maker, the characteristics of the pending problems and the given information. In accordance with Model 2, if we find a coalitional strategy s in all possible coalitional strategies, which maximizes the overall damage d(M(s)), then s is the best one. In the following section, we will devise a method to solve the MACDM problem based on Model 2 by using the tabu search algorithm. 5. The solution to the MACDM problem by using the tabu search algorithm In this section, we utilize tabu search algorithm to solve the multi-agent coalitional decision making (MACDM) problems with two camps, i.e., to solve the integer programming model (Model 2) in Section 4. In what follows, we will introduce the main components of the tabu search framework and describe how to solve the MACDM problem aforementioned by means of the tabu search. Tabu search algorithm, introduced by Glover [9–11], is a promotion of local neighborhood search algorithm. Since adaptive memory is incorporated into the algorithm, the tabu search successfully applies artificial intelligence into the combinatorial optimization algorithms. In order to develop new solutions by giving a current solution, the tabu search algorithm performs moves in specified neighborhoods, and determines quality moves which are stored in the tabu list. Moves located on the tabu list are considered for a specified amount of time, which is known as the tabu tenure. However, if the aspiration criterion is achieved, a tabu move will be allowed. Often, a tabu move, whose resulting objective function value is
275
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
the best so far, can be feasible in accordance with the aspiration criterion. The above processes will be repeated at each iteration until the stopping criterion is satisfied. Some items are required in the tabu search algorithm including initial solution, neighborhood generating mechanism, tabu list, stopping criteria, and aspiration criterion and so on. We can determine the relevant items aiming at the integer programming model (Model 2): (1) Search space During the search, all feasible coalitional strategies will be searched possibly, thus the search space is the set of all feasible coalitional strategies. Because a coalitional strategy s can be represented as a simplified adjacency Pnþm ðsÞ ðsÞ matrix M ðsÞ ¼ eij satisfying e and j¼1 ij 6 1 nðnþmÞ ðsÞ eij [ 1 eij ¼ 1 as mentioned in Section 3, the search space can be a set:
S¼
ðsÞ MðsÞ ¼ eij
i ¼ 1; 2; . . . ; n;
nðnþmÞ
X nþm ðsÞ e 6 1 and eij _ 1 eðsÞ ¼ 1; ij ij j¼1
j ¼ 1; 2; . . . ; n þ m
ð5Þ
where M = (eij)n(n+m) is the simplified adjacency matrix with respect to the MACDM problem. (2) Initial solution There are many methods to generate this initial solution, including random generation or greedy algorithms. In this paper, initial solution is randomly generated, and any element in S can be an initial solution. (3) Evaluation function Generally speaking, we can regard the objective function (i.e., the overall damage function in Model 2) as the evaluation function. When the number of the agents is too large, we can use a simple function, which can be compatible with the change of the objective function, as the evaluation function. (4) Neighborhood Neighborhoods contain all of the potential moves that can be performed on the given solution. Each solution is associated with a neighborhood. The neighborhood N(s) in Model 2 is defined as the set of simplified adjacency matrices with respect to coalitional strategies in which for each coalitional strategy there is only one strategy is different from the current solution s. That is to say, N(s) can be the set of relevant adjacency matrices which belong to S, and only one row in each element of N(s) is different from the corresponding row in M(s), which can be formularized as follows: ( ) nþm X ðsÞ ðs0 Þ ðs0 Þ NðsÞ ¼ M 2 Sj9 only one i 2 f1; 2; . .. ; ng with jeij eij j – 0 j¼1
ð6Þ
(5) Tabu list The tabu list, which is used to avoid solution cycling, consists of two parts: the criteria associated with recent moves and the tabu tenure. The former can be the agent associated with the recent move. If the recent move is from M(s) to 0 Mðs Þ ð2 NðsÞÞ and the ith rows in the two matrices are different, then we can forbid this row, i.e., the ith agent ai. In general, we can set the value of the tabu tenure according to the number of the agents in A, i.e., the value of the tabu tenure can be nn, where n is a coefficient and nn 2 {0, 1, 2, . . . , n}. We can represent the tabu list as a multi-tuple T. The maximal volume of T is nn, and the component of T is an agent in A. If there are nn components in T and another agent is
forbidden, then the first component in T will be unforbidden and then removed from T. We must notice that n can be changed with respect to the iterations if the corresponding MACDM problems are complex, because the larger n is better for leaving away from local optimal solutions and for searching the global optimal solution, and the smaller n can converge the current solutions at the optimal one as fast as possible. (6) Aspiration criterion According to the aspiration criterion, a tabu move, whose resulting objective function value is the best so far, can be removed from the tabu list. (7) Stopping criterion The tabu search algorithm is heuristic, and we have no idea to determine when the optimal solution is reached. Thus a method must be used to determine when the search procedure terminates. The search is stopped when the optimal solution is unchanged during the process of a fixed number of iterations. In this paper, we set the stopping criterion as fn, which means the search will be stopped when the optimal solution is unchanged during fn iterations, where n is the amount of agents in the camp A and f P 1 is a regulative coefficient. The tabu search algorithm, which incorporates artificial intelligence into the local neighborhood search algorithm, has the same neighborhood structure as the local neighborhood search algorithm. Thus, the neighborhood connectivity is the necessary condition that the global optimal solution can be reached by means of the tabu search algorithm. Definition 5.1 [3]. A set C is called of the neighborhood connectivity, if for any x, y 2 C, there exist some xi 2 C (i = 1, 2, . . . , l) and x = x1, x2, . . . , xl = y such that N(xi) \ {xi+1} – ;, i = 1, 2, . . . , l 1, where N is a neighborhood mapping. Theorem 5.1 ([9–11]). If the relevant neighborhood mapping N is connective in the feasible region of solutions, then a tabu search algorithm can be constructed to reach the global optimal solution. Theorem 5.2. The tabu search algorithm can reach the global optimal solution in the MACDM problem with two camps. Proof. For any two coalitional strategies s and s0 , the correspond0 ing simplified adjacency matrices are M(s) and M ðs Þ . Since M(s) Pnþm ðsÞ Pnþm ðs0 Þ ðs0 Þ and M belong to S, then j¼1 eij ¼ 0 or 1 and j¼1 eij ¼ 0 or 1 for i = 1, 2, . . . , n. Thus the number of the elements that 0 are different between M(s) and M ðs Þ , is smaller than 2n. Then we need to construct k + 1(k 6 2n) matrices 0 MðsÞ ¼ M ðx1 Þ ; M ðx2 Þ ; . . . ; Mðxkþ1 Þ ¼ Mðs Þ as follows: Step 1. Initialize l = 1. Step 2. If there are elements, which equal to 1 in M ðxl Þ , and the cor0 responding elements equal to 0 in M ðs Þ , then we construct ðxlþ1 Þ a matrix M by changing one of these elements in M ðxl Þ to 0, set l = l + 1 and then go to Step 2; otherwise, go to Step 3. Step 3. If l 6 k, then we need to find out an element, which equals to 0 in Mðxl Þ , and the corresponding element equals to 1 in 0 M ðs Þ . In such a case, we change the value of the element to 1 so as to form a new matrix M ðxlþ1 Þ , set l = l + 1 and go to Step 3. Step 4. End. 0
ðsÞ
Since M(s) and M ðs Þ belong to S, then eij [ ð1 eij Þ ¼ 1 and eij _ ð1
ðs0 Þ eij Þ
tioned
above,
¼ 1. According to the construction method menit
is
obvious
that
ðx Þ
eij _ ð1 eij l Þ ¼ 1
and
276
Pnþm j¼1
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278 ðx Þ
eij l ¼ 0 or 1 for l = 1, 2, . . . , k + 1, where Mðxl Þ ¼ ðeðxl Þ ÞnðnþmÞ , ðxl Þ
that is to say M 2 S for l = 1, 2, . . . , k + 1. Meanwhile, according to the construction method, we can always find one and only Pnþm ðxl Þ ðxlþ1 Þ j ¼ 1 for one i 2 {1, 2, . . . , n} such that j¼1 jeij eij
and calculate the overall damage of B with respect to the coalitional strategy s0:
dðM ðs0 Þ Þ ¼ 1:04
l = 1, 2, . . . , k, thus M ðxlþ1 Þ 2 Nðxl Þ. In this case, it always holds that the search space S is of the neighborhood connectivity according to Definition 5.1, and the tabu search algorithm can reach the global optimal solution in the MACDM problem with two camps in accordance with Theorem 5.1. h In this case, we can reach the best coalitional strategy in the MACDM problems with two camps by means of the tabu search algorithm. In what follows, we will elaborate briefly the process of the tabu search algorithm used to solve the MACDM problems in this paper:
In this case, we can update the best solution, the current solution in Step 1, and the corresponding overall damages, i.e., ðsÞ ðs Þ ðsÞ ðs Þ Mbest ¼ M1 c ¼ M ðs0 Þ , d Mbest ¼ d M 1 c ¼ dðMðs0 Þ Þ ¼ 1:04, and the tabu list T = ;. Step 2. During this iteration, we derive four candidate solutions with the better overall damages from the neighborhood ðs Þ of the current solution M 1 c . In this case, we can obtain the set of candidate solutions: 2 3 4 o n 1 ðs Þ C M1 c ¼ Mðs Þ ; 1:2 ; Mðs Þ ; 1:55 ; Mðs Þ ; 1:16 ; Mðs Þ ; 0:86
Step 1. Fix the relevant parameters (such as tabu criterion, tabu tenure, and stopping criterion), randomly generate the initiative solution Mðs0 Þ , and set the tabu list T = ;. Step 2. If the stopping criterion is reached, i.e., the optimal solution is unchanged during a fixed number of iterations Is, then the calculation ends and output the optimal results (including the optimal coalitional strategy and the corresponding overall damage); otherwise, go to the next step. Step 3. Derive the neighborhood N(sc) of the current solution M ðsc Þ , and then choose a certain number of coalitional strategies from N(sc) as the candidate solutions. Step 4. If the aspiration criterion is reached, then add the agent associated with the move from the current solution M ðsc Þ ðsÞ to M bsf (the best solution so far) into T, and release the earliest agent forbidden in T if the volume of T is larger than ðsÞ the tabu tenure. Meanwhile the corresponding M bsf of the candidate solutions substitutes for the current solution ðsÞ Mðsc Þ , i.e., M ðsc Þ ¼ M bsf , and then go to Step 2. Step 5. Select the best unforbidden one in the candidate solutions as the current solution, add the corresponding agent into T, and release the earliest one if it is necessary, then go to Step 2.
where 2
M ðs
1Þ
0 60 6 ¼6 40 0 2
M ðs
3Þ
0 60 6 ¼6 40 0
0 0 0 0
3 2 0 1 0 0 0 0 1 7 60 0 0 0 1 0 07 6 ðs2 Þ 7 M ¼6 40 0 0 0 1 0 05 0 0 0 1 0 0 0
1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1
0 0 0 0
0 0 0 0 0 1 0 1 0 0 0 1
3 2 0 0 1 0 0 0 7 60 0 0 0 1 07 6 ðs4 Þ 7 M ¼6 40 0 0 0 0 15 0 0 0 0 0 0
0 0 0 1
3 0 07 7 7 05 0 3 0 07 7 7 05 0
2 ðsÞ ðs Þ ðsÞ ðs Þ In this case, we have Mbest ¼ M2 c ¼ M ðs Þ , d Mbest ¼ d M2 c ¼ 1:55, and T = {a2} which means the 2nd rows of the corresponding simplified adjacency matrices are forbidden to change in the following two iterations. Step 3. Also we derive four best candidate solutions from the ðs Þ
neighborhood of M 2 c : n 1 2 3 4 o ðs Þ M ðs Þ ; 1:55 ; M ðs Þ ; 1:65 ; M ðs Þ ; 1:4 ; M ðs Þ ; 1:35 C M2 c ¼
where 6. Illustrative example
2
In this section, we will solve the multi-agent coalitional decision making (MACDM) problem with two camps mentioned in Examples 1 and 2 by using the tabu search algorithm. First of all, we can obtain the best coalitional strategy by solving Model 2, and the objective function is to calculate the overall damage of the camp B as mentioned in Section 4. In accordance with Example 3, we assume that the coefficient of support: cs = 1.8, the coefficient of joint competition: cc = 1.5, and the basic damage: d = 1. Also suppose that the weights are 0.2, 0.5 and 0.3 respectively when we apply the weighted averaging operator (in Definition 2.4) as the aggregation function to calculate the overall damage of B according to the method mentioned in Section 4. Step 1. Let the number of iterations be Is = 16 (the stopping criteria), and the tabu tenure be 2, then we randomly generate the initiative solution:
2 M
ðs0 Þ
0 1 0 0 0
0 0
M ðs
1Þ
2
M ðs
3Þ
0 60 6 ¼6 40 0
0 0 0 0
0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 1
1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0
ðsÞ
ðs Þ
3 2 0 0 7 60 07 2 6 ðs Þ 7 M ¼6 40 05 0 0
1 0 0 0
0 0 0 0
0 0 0 0
3 2 0 0 1 0 0 7 60 0 0 0 07 4 6 ðs Þ 7 M ¼6 40 0 0 0 05 1 0 0 0 0
2
ðsÞ
0 0 0 0
0 1 0 1
3 0 07 7 7 15 0
3 0 0 0 0 1 07 7 7 0 0 05 0 1 0
ðs Þ
In this case, Mbest ¼ M3 c ¼ Mðs Þ , dðMbest Þ ¼ dðM3 c Þ ¼ 1:65, and T = {a2, a3}. Step 4. We derive four best candidate solutions from the neighðs Þ borhood of M 3 c : n 1 2 3 4 o M ðs Þ ; 1:65 ; M ðs Þ ; 1:55 ; M ðs Þ ; 1:35 ; M ðs Þ ; 1:35 C M 3ðsc Þ ¼
where
3 2 0 0 0 1 0 0 0 0 7 6 6 60 0 0 0 0 1 07 60 2 7 6 6 ðs Þ ¼6 7 M ¼6 60 0 0 0 0 0 17 60 5 4 4 0 0 0 0 0 1 0 0 2
3
60 0 0 0 1 0 07 6 7 ¼6 7 40 0 0 0 1 0 05 0 0 0 0 0 1 0
0 60 6 ¼6 40 0
M
ðs1 Þ
1 0 0 0 0 0
0
0 0
3
7 0 1 07 7 7 0 0 1 0 07 5 0 0 0 1 0 0 0
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
277
Fig. 3. The best coalitional strategies.
3 2 0 1 0 0 0 0 0 0 7 6 6 60 0 0 0 0 1 07 6 7 6 60 ðs4 Þ ¼6 7 M ¼6 60 0 0 0 0 0 07 60 5 4 4 0 0 0 0 0 1 0 0 2
M
ðs3 Þ
2
1 0 0 0 0 0 0 0
0
3
7 0 0 0 1 07 7 7 0 0 0 0 17 5 0 0 0 0 1
3
Since a3 is in the tabu list T, Mðs Þ and Mðs Þ are unconsidered as the 1 ðsÞ ðs Þ next current solutions. In this case, Mbest ¼ M4 c ¼ M ðs Þ and ðsÞ ðsc Þ dðMbest Þ ¼ dðM 4 Þ ¼ 1:65. Considering the tabu tenure is 2, we add a1 into T and release the earliest forbidden agent a2, i.e., T = {a3, a1}. Step 5. We derive four best candidate solutions from the neighðs Þ borhood of M 4 c : n 1 2 3 4 o ðs Þ M ðs Þ ; 1:65 ; Mðs Þ ; 1:4 ; M ðs Þ ; 1:55 ; M ðs Þ ; 1:35 C M4 c ¼
where 2
M ðs
1Þ
3 2 0 1 0 0 0 0 0 0 0 60 0 0 0 0 1 07 60 0 2 6 7 6 ðs Þ ¼6 7 M ¼6 40 0 0 0 0 0 15 40 0 0 0 0 0 0 1 0 0 0 2
M ðs
3Þ
0 60 6 ¼6 40 0
0 0 0 0
0 0 0 0
1 0 0 0
0 0 1 0
0 1 0 1
0 0 0 0
1 0 0 0
3 2 0 0 0 0 1 60 0 0 0 07 4 7 6 ðs Þ 7 M ¼6 40 0 0 0 05 0 0 0 0 0
1
3
0 1 0 0
0 0 0 1
3 0 07 7 7 15 0
3 0 0 0 0 1 07 7 7 0 0 05 0 1 0
4
Since a1 and a3 are in the tabu list T, Mðs Þ , M ðs Þ and Mðs Þ are uncon2 ðs Þ sidered as the next current solutions. In this case, M5 c ¼ Mðs Þ , ðsc Þ dðM5 Þ ¼ 1:4, and T = {a1, a2}.
7. Conclusions We have discussed the multi-agent coalitional decision making (MACDM) problems with two camps in detail in order to select the best coalitional strategy for the concerned camp to maximize the damage of the other camp in this paper. After using the directed graphs to describe the MACDM problems, we have devised two integer programming models so as to select the best coalitional strategy. According to the characteristic of the integer programming models, the tabu search algorithm has been adopted to solve them and proven that the optimal solution would always be reached in this case. However, in lots of actual applications, we shall make plans for the concerned camps by considering other camps’ possible strategies, but not consider only the concerned camp’s actions stated in this paper. Meanwhile, due to changeful decision environment of some actual MACDM problems, part or all decision factors, such as agents of both camps, the possible strategies of agents, and the damages of the corresponding strategies, will be changed from moment to moment. Thus how to deal with dynamic MACDM problems with feedback is a meaningful topic, which is worthy of investigation in the future. Acknowledgments The authors are very grateful to the anonymous reviewers for their insightful and constructive comments and suggestions that have led to an improved version of this paper. The work was supported by the National Natural Science Foundation of China (No. 71071161). References
Similarly, we can continue this process until the stopping criterion is met. Since the overall damage of the best solution keeps the same from Step 3 to Step 18, thus the computation will be stopped in Step 18 according to Is = 16. In this case, the best overall damage of B is 1.65, and the optimal solution is
3 0 1 0 0 0 0 0 60 0 0 0 0 1 07 7 6 ¼6 7 40 0 0 0 0 0 15 2
ðsÞ
Mbest
0 0 0 0 0 1 0 or
3 0 0 0 1 0 0 0 60 0 0 0 0 1 07 7 6 ¼6 7 40 0 0 0 0 0 15 2
ðsÞ
Mbest
0 0 0 0 0 1 0 Thus the corresponding coalitional strategies are s = {(a1, a2), (a2, b2), (a3, b3), (a4, b2)} or s = {(a1, a4), (a2, b2), (a3, b3), (a4, b2)} (see Fig. 3).
[1] J. Aczél, C. Alsina, Synthesizing judgments: a functional equation approach, Mathematical Modeling 9 (1987) 311–320. [2] J. Antuchevicˇiene, E.K. Zavadskas, A. Zakarevicˇius, Multiple criteria construction management decisions considering relations between criteria, Technological and Economic Development of Economy 16 (2010) 109–125. [3] J. Bang-Jensen, G.Z. Gutin, Digraphs: Theory, Algorithms and Applications, Springer- Verlag, London, 2008. [4] G. Beliakov, A. Pradera, T. Calvo, Aggregation Functions: A Guide for Practitioners, Springer-Verlag, New York, 2007. [5] H.P. Cai, Y.W. Chen, The development of the rearch on weapon–target assignment (WTA) problem, Fire Control and Command Control 31 (12) (2006) 11–15. [6] S.J. Chen, C.L. Hwang, Fuzzy Multiple Attribute Decision Making: Methods and Applications, Springer, New York, 1992. [7] Z.P. Fan, B. Feng, A multiple attributes decision making method using individual and collaborative attribute data in a fuzzy environment, Information Sciences 179 (2009) 3603–3618. [8] A. Galeotti, S. Goyal, M.O. Jackson, F. Vega-Redondo, Network games, The Review of Economic Studies 77 (2010) 218–244. [9] F. Glover, Future paths for integer programming and links to artificial intelligence, Computers and Operations Research 13 (1986) 533–549. [10] F. Glover, Tabu search: part I, ORSA Journal on Computing 1 (1989) 190–206. [11] F. Glover, Tabu search: part II, ORSA Journal on Computing 2 (1990) 4–32. [12] M. Grabisch, J.L. Marichal, R. Mesiar, E. Pap, Aggregation Functions, Cambridge University Press, Cambridge, UK, 2009.
278
X. Yu, Z. Xu / Knowledge-Based Systems 35 (2012) 271–278
[13] J.C. Harsanyi, Cardinal welfare, individualistic ethics, & interpersonal comparisons of utility, Journal of Political Economy 63 (1955) 309–321. [14] R. Lahdelma, S. Makkonen, P. Salminen, Modelling dependent uncertainties in stochastic multicriteria acceptability analysis, in: C. Henggeler Antunes, J. Figueira, J. Climaco, (Eds.), Multiple Criteria Decision Aiding, Proc 56th EWG/ MCDA Meeting, October 3–5, 2002, 2004, pp. 197–212. [15] Z.J. Lee, S.F. Su, C.Y. Lee, Efficiently solving general weapon–target assignment problem by genetic algorithms with greed eugenics, IEEE Transactions on Systems, Man, and Cybernetics – Part B 33 (2003) 119–120. [16] Y.C. Tang, C.T. Chang, Multicriteria decision-making based on goal programming and fuzzy analytic hierarchy process: an application to capital budgeting problem, Knowledge-Based Systems 26 (2012) 288–293. [17] Z.S. Xu, Choquet integrals of weighted intuitionistic fuzzy information, Information Sciences 180 (2010) 726–736.
[18] R.R. Yager, On ordered weighted averaging aggregation operators in multicriteria decisionmaking, IEEE Transactions on Systems, Man, and Cybernetics 18 (1988) 183–190. [19] R.R. Yager, Prioritized aggregation operators, International Journal of Approximate Reasoning 48 (2008) 263–274. [20] R.R. Yager, Prioritized OWA aggregation, Fuzzy Optimization and Decision Making 8 (2009) 245–262. [21] W. Yang, Z.P. Chen, The quasi-arithmetic intuitionistic fuzzy OWA operators, Knowledge-Based Systems 27 (2012) 219–233. [22] X.H. Yu, Z.S. Xu, Graph-based multi-agent decision making, International Journal of Approximate Reasoning 53 (2012) 502–512. [23] H.M. Zhang, L.Y. Yu, MADM method based on cross-entropy and extended TOPSIS with interval-valued intuitionistic fuzzy sets, Knowledge-Based Systems 30 (2012) 115–120.