Multiple-criteria sorting using ELECTRE TRI Assistant Roman Słowiński Poznań University of Technology, Poland Roman Słowiński
Weak points of preference modelling using utility (value) function Utility function distinguishes only 2 possible relations between actions: preference relation: a b U(a) > U(b) indifference relation: a b U(a) = U(b) is asymmetric (antisymmetric and irreflexive) and transitive is symmetric, reflexive and transitive Transitivity of indifference is troublesome, e.g. In consequence, a non-zero indifference threshold qi is necessary An immediate transition from indifference to preference is unrealistic, so a preference threshold pi qi and a weak preference relation are desirable Another realistic situation which is not modelled by U is incomparability, so a good model should include also an incomparability relation ? ?
Four basic preference relations and an outranking relation S Four basic preference relations are: {, , , ?} Criterion with thresholds pi(a)qi(a)0 is called pseudo-criterion The four basic situations of indifference, strict preference, weak preference, and incomparability are sufficient for establishing a realistic model of Decision Maker’s (DM’s) preferences gi(b) gi(a) gi(a)-pi(b) gi(a)-qi(b) gi(a)+qi(a) gi(a)+pi(a) ab ba ba ab ab preference
Four basic preference relations and an outranking relation S Axiom of limited comparability (Roy 1985): Whatever the actions considered, the criteria used to compare them, and the information available, one can develop a satisfactory model of DM’s preferences by assigning one, or a grouping of two or three of the four basic situations, to any pair of actions. Outranking relation S groups three basic preference relations: S = {, , } – reflexive and non-transitive aSb means: „action a is at least as good as action b” For each couple a,bA: aSb non bSa ab ab aSb bSa ab non aSb non bSa a?b
ELECTRE TRI: sorting problem (P) ... x x x x x x x x x x x x x x x A Class 1 Class 2 Class p Class p Class p-1 ... Class 1
ELECTRE TRI Input data: finite set of actions A={a, b, c, …, h} consistent family of criteria G={g1, g2, …, gn} preference-ordered decision classes Clt, t=1,…,p Decision classes are caracterized by limit profiles bt, t=0,1,…,p The preference model, i.e. outranking relation S is constructed for each couple (a, bt), for every aA and t=0,1,…,p g1 g2 g3 gn b0 b1 bp-2 bp-1 bp b2 Cl1 Cl2 Clp-1 Clp a d
ELECTRE TRI Preferential information (i=1,…,n) intracriteria: – indifference thresholds qit for each class limit, t=0,1,…,p – preference thresholds pit for each class limit, t=0,1,…,p intercriteria: – importance coefficients (weights) of criteria ki – veto thresholds for each class limit vit, t=0,1,…,p 0qitpitvit are constant for each class limit bt, t=0,1,…,p Concordance and discordance tests of ELECTRE TRI validate or invalidate the assertions aSbt and btSa
ELECTRE TRI - concordance test Checks how strong is the coalition of criteria concordant with the hypothesis aSbt (for each couple (a,bt), aA and t=0,1,…,p) Concordance coefficient Ci(a,bt) for each criterion gi: gi(bt) preference Ci(a,bt) 1 gain-type gi(bt)-pit gi(bt)-qit gi(bt)+qit gi(bt)+pit gi(a) gi(bt) gi(a) gi(bt)-pit gi(bt)-qit gi(bt)+qit gi(bt)+pit preference Ci(a,bt) 1 cost-type
ELECTRE TRI - concordance test Aggregation of concordance coefficients for a,bA: C(a,bt) [0, 1]
ELECTRE TRI - discordance test Checks how strong is the coalition of criteria discordant with the hypothesis aSbt (for each couple (a,bt), aA and t=0,1,…,p) Discordance coefficient Di(a,bt) for each criterion gi: gi(a) preference Di(a,bt) 1 gain-type Ci(a,bt) gi(bt)-vit gi(bt) gi(bt)-pit gi(bt)-qit gi(bt)+qit gi(bt)+pit gi(a) 1 Ci(a,bt) preference cost-type gi(bt)+vit Di(a,bt) gi(bt)-pit gi(bt)-qit gi(bt) gi(bt)+qit gi(bt)+pit
ELECTRE TRI – credibility of the outranking relation Conclusion from concordance and discordance tests – credibility of the outranking relation: (a,bt)[0, 1] What is the assignment of actions to decision classes ? (a,bt) (bt,a) a bt bt{}a a ? bt a{}bt not yes
ELECTRE TRI – exploitation of S and final recommendation Assignment of actions to decision classes based on two ways of comparison of actions aA to limit profiles bt, t=0,1,…,p Pessimistic: compare action a successively to each profile bt, t=p-1,…,1,0; if bt is the first profile such that aSbt, then aClt+1 Pessimistic, because for zero thresholds, aClt+1 gi(a)gi(bt) i, e.g. aCl1 g1 g2 g3 gn b0 b1 bp-2 bp-1 bp b2 Cl1 Cl2 Clp-1 Clp a comparison of action a to profiles bt
ELECTRE TRI – exploitation of S and final recommendation Assignment of actions to decision classes based on two ways of comparison of actions aA to limit profiles bt, t=0,1,…,p Optimistic: compare action a successively to each profile bt, t=1,…,p; if bt is the first profile such that bt{ }a, then aClt Optimistic, because for zero thresholds, aClt gi(bt)>gi(a) i, e.g. aCl2 g1 g2 g3 gn b0 b1 bp-2 bp-1 bp b2 Cl1 Cl2 Clp-1 Clp a comparison of action a to profiles bt
ELECTRE TRI - example kPRICE=3 kTIME=5 kCOMFORT=2 =0.75
ELECTRE TRI - example ?
ELECTRE TRI - example =0.75
Inferring an ELECTRE TRI model from assignment examples An ELECTRE TRI model M is composed of: limit profiles bt, t=0,1,…,p importance coefficients (weights) of criteria ki, i=1,…,n indifference and preference thresholds qit, pit, i=1,…,n, t=0,1,…,p veto thresholds vit, i=1,…,n, t=0,1,…,p assignment procedure – either pessimistic or optimistic We will apply a regression approach to infer an ELECTRE TRI model compatible with a set of assignment examples Inferring all elements of the model is computationnally hard and, moreover, the more elements are unconstrained, the larger is the set of all compatible models – then the choice of one model is uneasy We assume: no veto phenomenon occurs, i.e. vit=, i=1,…,n, t=0,1,…,p pessimistic assignment procedure
Inferring an ELECTRE TRI model from assignment examples General inference scheme of ELECTRE TRI Assistant: AR AR
Inferring an ELECTRE TRI model from assignment examples Let us suppose aj DM Clt, Clt=[bt-1, bt] aj DM Clt ajSbt-1 not ajSbt i.e. (aj,bt-1) and (aj,bt)< We define slack variables xaj0 and yaj>0, such that: (aj,bt-1) xaj = (aj,bt) + yaj = If xaj0 and yaj>0, then aj M Clt ’[yaj, +xaj] We consider set AR={a1, a2,…, ar} of reference actions, and assignment examples provided by the DM: aj DM Clt , j=1,…,r
Inferring an ELECTRE TRI model from assignment examples The regression problem will include the following variables: xaj and yaj, j=1,…,r (slack variables – 2r) (cutting level – 1) ki, i=1,…,n (weights – n) bit, i =1,…,n, t=0,1,…,p (limit profiles – np) qit, i=1,…,n, t=0,1,…,p (indifference thresholds – np) pit, i=1,…,n, t=0,1,…,p (preference thresholds – np) The objective of the regression problem: model M will be consistent with assignment examples iff xaj0 and yaj>0, for all j=1,…,r the objective should be to maximize
Inferring an ELECTRE TRI model from assignment examples If , then all reference actions are „correctly” assigned by model M, for all Objective takes into account the „worst case” only To improve the second, third, … „worst case”, we consider objective where is a small positive value Maximization of the new objective can be rewritten as: >
Inferring an ELECTRE TRI model from assignment examples The regression problem: n number of constraints & variables: r 2 np n(p+1) n+n(p+1)
Inferring an ELECTRE TRI model from assignment examples Nonlinear optimization problem with 2r+3n(p+1)+n+2 variables 4r+3n(p+1)+2 constraints
Inferring an ELECTRE TRI model from assignment examples Approximation of marginal concordance indices Ci(aj, bt) Ci(aj, bt) are piecewise linear functions (non-differentiable) We approximate Ci(aj, bt) by a differentiable sigmoidal function f(x):
Inferring an ELECTRE TRI model from assignment examples The approximation of Ci(aj, bt) by f(x) is such that x0=(pjt+qjt)/2, and (which influences the angle of inclination of Ci(aj, bt) in point (x0,0.5)) is chosen such that surface of overestimation A is equal to surface of underestimation B – then the approximation error is minimal = 5.55/ (pjt-qjt) ^ qj -pit -qit (-pit-qit)/2 gi(ai)-pit Ci(aj,bt) ^
Inferring an ELECTRE TRI model from assignment examples Illustrative example: There are 3 categories C1, C2, C3, separated by 2 limit profiles b1 and b2, defined on 3 criteria g1, g2, g3 with an increasing scale [0, 100]
Inferring an ELECTRE TRI model from assignment examples Optimization problem has 23 variables and 44 constraints Additional constraints , prevent any criterion to be a dictator Determination of the starting point: ki = 1, i=1,…,3 where nt is the number of reference actions assigned to Ct
Inferring an ELECTRE TRI model from assignment examples Initial values of indifference and preference thresholds: qit = 0.05 gi(bt), i=1,…,n, t=0,1,…,p pit = 0.1 gi(bt), i=1,…,n, t=0,1,…,p qi2 pi2 qi1 pi1 = 0.75
Inferring an ELECTRE TRI model from assignment examples Initial values of xaj and yaj: Inconsistency: a4 is assigned to C1, while DM assigned a4 to C2 = xa4 = –0.083 < 0
Inferring an ELECTRE TRI model from assignment examples Moreover, = 0.37, =0.629, k1=0.517, k2=1, k3=0.483 qi2 pi2 qi1 pi1
Inferring an ELECTRE TRI model from assignment examples Final values of xaj and yaj: Model M is consistent for all [0.629–0.37, 0.629+0.37], thus for all [0.5, 1] This proves the model is robust
ELECTRE TRI Assistant ELECTRE TRI Assistant permits to infer: weights ki, i=1,…,n cutting level Limit profiles, indifference and preference thresholds are fixed Assuming , the regression problem is a Linear Programming problem