Enabling Agents to Perform Prioritized Multi-Criteria Aggregation Ronald R. Yager Machine Intelligence Institute Iona College New Rochelle, NY 10801 E-mail: yager@panix.com Abstract Many agent based decisions involve an aggregation of the satisfaction to multiple criteria. We consider the situation where there exists a prioritization relationship over the criteria. In this situation increase in satisfaction to a lower priority criteria doesn't readily compensate for a decrease in satisfaction in higher priority criteria. Typically the relationship between safety and cost manifests this property. We suggest that prioritization between criteria can be modeled by making the weights associated with a criteria dependent upon the satisfaction of the higher priority criteria. We discuss a number of methods for obtaining the associated weights. Introduction Many agent based decision problems involve the selection of an alternative based upon its satisfaction to a collection of criteria. In these problems we have a collection of criteria C = {C 1 , ..., Cn }, a set of alternatives X = {x1, ..., xm } and the availability of a measure of the satisfaction of criteria Ci by each alternative, C i (x) ∈ [0, 1]. One commonly used approach is to calculate for each alternative x a score C(x) as an aggregation of the Ci(x), C(x) = F(C1(x), ......, Cn(x)) and then order the alternatives using these scores. Since the score for any alternative x just depends on only x's satisfaction to each of criteria, it is pointwise, this type of approach satisfies the Arrow condition of independence to irrelevant alternatives (Arrow 1951, Luce and Raiffa 1967) that is adding a new alternative will not effect the score of x The form for F depends upon the agents desired imperative for performing this multi-criteria aggregation (Yager 1988). A commonly used form for F is the weighted average of the Ci(x). In this case we calculate n C(x) = ∑ i=1 wi Ci(x) where the weights satisfy wi ∈ [0, 1] and sum to one. Here the weights correspond to the importance of the individual of the criteria. It is easy to see that this type of aggregation is monotonic, if Ci(x) ≥ Ci(y) for all i then C(x) ≥ C(y). It is bounded Mini[C i(x)] ≤ C(x) ≤ Max[Ci(x)). It is also idempotent, if all Ci(x) = a then C(x) = a. Because of these properties this is an averaging operator. Central to this type of aggregation is the ability to trade off between criteria. In particular wk is the wi relation between criteria Ci and Ck . In this type of aggregation we can compensate for a decrease of ∆ in satisfaction to criteria Ci by gain wk ∆ in satisfaction wi to criteria Ck. In many important applications we do not want to allow this kind of compensation between criteria. Consider the situation in which we are selecting a bicycle for our child based upon the criteria of safety and cost. In this situation we may not want a benefit with respect to cost to compensate for a loss in safety. Here we have a kind of prioritization of the criteria. Safety has a higher priority. More generally decisions involving issues related to safety and homeland security often manifest this type of prioritization of criteria (Popp and Yen 2006). In organizational decision making criteria desired by superiors generally have a higher priority then those of their subordinates. In this work we suggest an averaging type aggregation operator that allows for the inclusion of priority between the criteria. Central to our approach will be the modeling of priority by using a kind of importance weight in which the importance of a lower priority criteria will be based on its satisfaction to the higher priority criteria. As we shall see this results in a situation in which importance weights will not be the same across the alternatives. PRI-AVE: A Prioritized Averaging Operator In the following we assume that we have a collection of criteria partitioned into q distinct categories, H1 , H2 , ..., Hq such that Hi = {Ci1 , Ci2 , ..., Cin ). Here Cij are the criteria in category Hi. We i assume a prioritization between these categories H1 > H2, ... > Hq. The criteria in class Hi have a higher priority than those in Hk if i < k. The total collection of criteria is C = q ∪ q Hi. We assume n = ∑ i=1 i=1 n i the total number of criteria. We assume that for any alternative x ∈ X we have a value Cij (x) ∈ [0, 1] indicating its satisfaction to criteria Cij. In the following we introduce an aggregation operator which we refer to as the Prioritized Averaging (PRI-AVE) aggregation operator which allows us to calculate C(x) for any alternative. The form of our aggregation operator is C(x) = ∑ij wij(x) Cij(x) Here the weights, which depend on x, will be used to reflect the priority relationship. In order to obtain the weights for a given alternative x we proceed as follows. For each priority category Hi we calculate Si = Minj[Cij(x)] Here Si is the value of the least satisfied criteria in category Hi under alternative x. Using this we will associate with each criteria Cij a value uij called its preweight. For those criteria in category H1 we have u1j = 1. For those criteria in category H2 we have u2j = S1. For those criteria in category H2 we have u3j = S1S2. For those criteria in category H4 we have u4j = S1S2S3. More generally uij is the product of the least satisfied criteria in all categories with higher priority than Hi. We can more succinctly and more generally express uij = Ti where i Ti = ∏ k=1 Sk-1 with the understanding that S0 = 1 by default. We note that we can also express Ti as Ti = Si-1 Ti-1 This equation along with the fact that T1 = S0 = 1 gives a recursive definition at Ti. We now see that for all Cij ∈ Hi we have uij = Ti. Using this we obtain for each Cij a weight wij with respect to alternative x such that u ij w ij = q ni ∑ ∑ u ij i=1j=1 More precisely we should use the notation wij (x) however for simplicity we use wij. Ti Since u ij = Ti .this simplifies to w ij = . q ∑ n iT i q Furthermore if we denote T = ∑ i=1 niT i this further i=1 T simplifies to wij = i . It is easily seen that the wij ∈ T [0, 1] and sum to one.. Using these weights we then get the aggregated score for alternative x under this prioritization of criteria as C(x) = ∑ij wij Cij(x) = 1 ∑ T C (x) T ij i ij Before studying the properties of this aggregation technique we look at an example E x a m p l e : Consider the following prioritized collection of criteria: H1 = {C11, C12}, H2 = {C21} H3 = {C31, C32, C33}, H4 = {C41, C42} Assume for alternative x we have: C11(x) = 0.7, C12(x) = 1, C21(x) = 0.9, C31(x) = 0.8, C23(x) = 1, C33(x) = 0.2, C41(x) = 1, C42(x) = 0.9 We first calculate S1 = Min[C11(x), C12(x)] = 0.7 S2 = Min[C21(x)] = -.9 S3 = Min[C31(x), C32(x), C33(x)] = -.2 S4 = Min[C41(x), C42] = 0.9 Using this we get T1 = 1 T2 = S1T1 = 0.7 T3 = S2T2 = (0.9) (0.7) = 0.63 T4 = S3T3 = (0.2)(0.63) = 0.12 From this we obtain u11= u12 = T1 = 1 u21 =T2 = 0.7 u31 = u32 = u33 = T3 = 0.63 u41 = U42 = T4 = 0.12 q We obtain T = ∑ u ij = i,j Let us denote C(x) = M where M = ∑ T i ai and T i=1 4 ∑ n iT i q i=1 T = 2T1 + T2 + 3T3 + 2T4 = 4.83 From this we get w = w12 = T1 = 0.20 11 T w21 = T2 = 0.145 T w31 = w32 = w33 = T3 = 0.13 T T 4 w41 = w42 = 0.025 T We now calculate C(x) = ∑ij wij Cij(x) = 0.79 Properties of the PRI-AVE Operator T = ∑ i=1 T i . For monotonicity to hold we have to show that ∂C(x) ≥ 0 for any j. This requires that ∂aj ∂M ∂T T -M ∂aj ∂aj ≥ 0. Hence we must show that the 2 (T) numerator is non–negative, T ∂M - M ∂T ≥ 0. ∂aj ∂aj ∂T i Before preceding we note that = 0 for i ≤ j and ∂aj q ∂Ti = Ti for i > j. We also note that M = ∑ T i ai = ∂aj aj i=1 q We now investigate the properties of this aggregation method. In the following for simplicity let us denote aij = Cij (x). Using this we have C(x) = ∑ ij w ij aij . First we see that this method of aggregation is idempotent and bounded by the maximum and minimum of the arguments. First consider the boundedness. Assume a = Minij[aij] and b = Maxij[aj] then since ∑ij wij = 1 we have C(x) = ∑ij wij aij.≥ ∑ij wij a ≥ a and ∑ij wij aij. ≤ ∑ij wij b ≤ b. Hence Minij[aij] ≤ C(x) ≤ Maxij[aj] . Consider now the case where all the aij are the same, aij = d. In this case since ∑ ij wij = 1 we get C(x) = ∑ ij wij d = d and hence the operation is idempotent. We now consider the issue of monotonicity. For simplicity we shall look at the situation in which there is only one criteria at each priority level. Here we denote the criteria Cj, j = 1 to q. We shall denote the satisfaction of each criteria to x as aj = Cj(x). We note that in this case with one criteria at each level, Si = ai. Here then T1 = 1, T2 = a1 and more generally Ti = i ∏ k=1 ∑ i=1 Ti+1 since Ti ai = Ti+1. However we shall find it q+1 more useful to express M = We shall denote A = ∂M ∂aj q ∑ C(x) = i = 1 Ti ai T T i. q+1 = 1 ∑ T i. aj i = j+1 We q shall also let B = ∂T hence since T = ∑ Ti we have ∂aj i=1 q B = ∂T = 1 ∑ T i. From this we observe that A ≥ ∂aj aj i = j+1 B. In the following we shall find it convenient to j denote E = ∑ i=2 T i. Consider now the term T ∂M - M ∂T = AT - BM. ∂aj ∂aj We now observe that q T= ∑ j i=1 Ti = ∑ i=1 Ti + aj B. Since T 1 = 1 then T = 1 + E + aj B. We further observe that q+1 M= ∑ i=2 Sk-1. Using this we have ∑ i=2 Ti. = E + aj A. Using the relations we see that AT - BM = A( 1 + E + aj B) - B( E + aj A) AT - BM = A + EA + aj BA - BE - aj BA AT - BM = A + E(A - B) Since A ≥ B it follows that AT - BM ≥ 0 The proof of monotonicity in the case where we can have multiple criteria at each level, although slightly more complicated, follows in the same spirit We now look at some further properties of the proposed aggregation method. We recall Hi = {Cij | j = 1 to ni} where the criteria in category Hi have priority over those in Hk if ii i < k. Again letting aij = Cij(x) Cij(x) = aij. Using this notation then we defined So = 0 Si = Mini[aij] for i = 1 to q i Ti = T= i we have Si = Minj[aij] and So = 1 and Ti = q ∏ k=1 Sk-1. Here with uij = Ti and T = ∑ n i Ti we have wij = i=1 uij Ti = we have T T q q ni ni C(x) = ∑ ( ∑ wij aij) = 1 ∑ Ti( ∑ aij) Ti = 1 i=1 j=1 j=1 ni q ∑ aij we have C(x) = T1 ∑ Ti Ai. j=1 i=1 We see that the weight associated with the elements Letting Ai = i in the ith category are Ti where Ti = ∏ S k-1 . Thus T k=1 the criteria in Hi contribute proportion to the product of the satisfaction of the higher order criteria. Thus poor satisfaction to any higher criteria reduces the ability for compensation by lower priority criteria. We also observe that if there exists some category Hr such that Crj(x) = 0 for some criteria in Hr.then Sr = r 0 and Ti = 0 for i > r and hence C(x) = 1 ∑ T i Ai. Ti = 1 Note: While in the preceding we assumed Cij(x) ∈ [0, 1] this is not necessarily required. If we let Fij R → [0, 1] be some function from the real numbers into the unit intervals such that Fij(Cij(x)) is some measure of how satisfied we are with a score Cij(x) for criteria Cij then we allow the values of Cij(x) be any number if we calculate Si = Minj[Fij(Cij(x) ] Here we just transfer the Cij(x) into numbers in the unit interval for calculating Si. Alternative Determination of Weights In the preceding we introduced a prioritized multicriteria aggregation method in which our criteria are partitioned into q categories, Hi = { Cij/j = 1 to ni } where category Hi had priority over Hk if i < k. Here a given alternative x its satisfaction to criteria Cij is ∏ k=1 q ∑ Sk-1 for 1 = to q n iT i i=1 With wij = Ti we obtained as our aggregated value T q q ni ni 1 w a = C(x) = ∑ ∑ ij ij ∑ ∑ Tiaij T i=1 j=1 i=1 j=1 ni Letting Ai = ∑ aij we can express this as j=1 n C(x) = 1 ∑ TiAi . T i=1 In the preceding we assumed that the satisfaction to the priority class Hi = {Ci1, ..., Cin } under alternative i x was determined by the least satisfied criteria in Hi, S i = Min j [C ij (x) ]. Here we shall suggest some alternative methods for calculating Si. One method we shall consider will be based on the OWA aggregation operator (Yager 1988, Yager and Kacprzyk 1997). Here we associate with each priority class Hi a vector V i of dimension ni called the OWA weighting vector. The components Vik of Vi are such that Vik ∈ [0, 1] and ni ∑ k=1 Vik = 1. Additionally we let ind i (k) be an index of function so that bik (x) = C ind (k)(x) is the kth largest of Cij(x). Using this we i now calculate ni Si = ∑ k=1 Vik bik(x) We see that if Vin = 1 and Vik = 0 for k ≠ ni then we i get Si = Minj [ C ij (x)], the original method. An important special case is where Vik = 1/ni for all k. In ni this case Si = 1 ∑ Cij(x). Here we take as Si the ni j = 1 average of the satisfactions of the criteria in category H i. Another special case is when Vil = 1 and Vik = 0 for k ≠ 1. In this case Si = Maxj[C ij(x) ]. Here we take Si as the score of the most satisfied criteria in category Hi. Many other weight vectors are possible for example if Viq = 1 for some q Si simply becomes the qth largest of the Cij(x). In this framework we can associate with each weighing vector V i a measure called its attitudinal character denoted, A-C(V i) (Yager 2002). We define this as ni 1 ∑ V (n - k) ik i ni - 1 k = 1 It can easily be shown that for the case where Vin = 1 i we get A-C(V i ) = 0. For the case where A–C(V i ) = 1 then A-C(V i) = 0.5 and for the case ni - 1 where Vi1 = 1 we have A-C(Vi) = 1. If we denote A-C(Vc) = αi then we see in figure #1 the relationship between the value of α i and the form for the calculation of Si. Here then α can be seen as a ι measure of the t o l e r a n c e in determining the satisfaction of the category. While it is not necessary, it would be seen that the default situation is to assume αι is the same for all Hi. α i 1 0 0.5 A-C(Vi) = S S i = Ave j [C ij (x)] [C (x)] i = Min j ij S [C i = Max j ij (x)] Figure #1. Relationship between α i and the form of Si. Many of the techniques available for calculating the OWA weights (Xu 2005) can be tailored for this particular application. A particularly interesting possibility is to use a variation of the method originally suggested by O'Hagan (O'Hagan 1990, Fuller and Majlender 2003). In this case we would supply a desired level of tolerance α i and solve the following mathematical programming problem for the Vik ni Min ∑ (ViK)2 K=1 Such that: ni 1 ∑ V (n - k) = α ik i i ni - 1 k = 1 ni ∑ k=1 V ik = 1 V ik ≥ 0 We provide an of the preceding variation using the earlier example Example:H1 = {C11, C12}, H2 = {C21} H3 = {C31, C32, C33}. H4 = {C41, C42} For alternative x we have C11(x) = 0.7, C12(x) = 1, C21(x) = 0.9, C31(x) =0 .8, C32(x) = 1, C33(x) = 0.2 C41(x) = 1, C42(x) = 0.9 Consider the case where Si = Maxj[Cij(x)]. Here then S1 = 1, S2 = 0.9, S3 = 1, S4 = 1 From this we get : T1 = 1 T 2 = S1 T1 = 1 T3 = S2 T2 = 0.9 T4 = S3 T3 = 0.9 In this case 4 T= ∑ n iT i i=1 T = (2)(1) + (1)(1) + (3)(0.9) + (2)(0.9) = 7.5 ni 4 With C(x) = 1 ∑ A i Ti where Ai = ∑ C ij(x) we Ti = 1 j=1 have C(x) = 1 ((1)(1.7) + (1)(.9) + (0.9)(2) + (0.9)(1.9) 7.5 C(x) = 1 (6.11) = 0.815 7.5 Another approach for calculating the Si involves associating with each criteria in Hi an additional local weight. In this case our form for Hi is Hi= {(Cij, gij) | j = 1 to ni } where the gij indicates the importance of Cij in calculating Si. Here we assume that gij ∈ [0, 1] and ni ∑ g ij = 1. Using these weights we can calculate j=1 ni Si = ∑ gijCij(x) . j=1 An interesting special case of this is where some criteria Cij has gij = 0. In this case the criteria plays no role in the determination of Si but still is able to contribute to the overall calculation of C(x). Another available method for calculating the Si involves the idea of combining these local weights with a tolerance level. Here we assume for each Hi we have Hi = {(Cij, gij), j = 1 to ni} gij ∈ [0, 1] and ni ∑ j=1 g ij = 1, where again g is the ij indication at the importance of Cij in calculating Si. In addition we assume a tolerance level α i ∈ [0, 1] associated with Hi . Using one of the methods for generating OWA weights we can obtain a set of OWA weights, Vik, for k = 1 to ni. Let ndi be an index such ndi(k) is the index of the k largest of the Cij(x). That is b ik = Ci,nd (k)(x) is the value of the k most satisfied i criteria in H i . With di k = gi,nd being the i(k) importance weight associated with this kth most satisfied criteria on H i we calculate hi k = dik ⋅ Vik Using this we calculate S i = n i ∑ dik ⋅ Vik ∑ h ik bik. In the special case when Vik = 1 for all n k=1 ni K=1 i k this reduces to the weighted average introduced earlier, ni Si = ∑ g ij Cij(x). j=1 Conclusion We considered criteria aggregation problems where there is a prioritization relationship over the criteria. We suggested that prioritization between criteria can be modeled by making the weights associated with a criteria dependent upon the satisfaction of the higher priority criteria. This resulted in a situation in which the weights associated with the criteria depended upon the alternative being evaluated. We introduced a number methods for obtaining the weights. References Arrow, K. J. 1951. Social Choice and Individual Values, John Wiley & Sons: New York. Fuller, R. and Majlender, P. 2003. "On obtaining minimal variability OWA weights," Fuzzy Sets and Systems 136, 203-215. Luce, R. D. and Raiffa, H. 1967. Games and Decisions: Introduction and Critical Survey, John Wiley & Sons: New York. O'Hagan, M. 1990. "A fuzzy neuron based upon maximum entropy-ordered weighted averaging," in Uncertainty in Knowledge Bases, edited by BouchonMeunier, B., Yager, R. R. and Zadeh, L. A., SpringerVerlag: Berlin, 598-609. Popp, R. L. and Yen, J. 2006. Emergent Information Technologies and Enabling Policies for CounterTerrorism, John Wiley & sons: Hoboken, NJ. Xu, Z. 2005. "An overview of methods for determining OWA weights," International Journal of Intelligent Systems 20, 843-865. Yager, R. R. 1988. "On ordered weighted averaging aggregation operators in multi-criteria decision making," IEEE Transactions on Systems, Man and Cybernetics 18, 183-190. Yager, R. R. 2002. "On the cardinality index and attitudinal character of fuzzy measures," International Journal of General Systems 31, 303-329. Yager, R. R. and Kacprzyk, J. 1997. The Ordered Weighted Averaging Operators: Theory and Applications, Kluwer: Norwell, MA, 1997.