This page is published in English.
Outranking
IF-PROMETHEE - Intuitionistic Fuzzy PROMETHEE
Pairwise outranking under Intuitionistic Fuzzy uncertainty
Atanassov, K. T.1986doi:10.1016/S0165-0114(86)80034-3 ↗
Overview
IF-PROMETHEE extends crisp PROMETHEE to settings where each rating is an Intuitionistic Fuzzy Number (μ, ν). The algorithm (i) optionally aggregates K DMs via IFWA, (ii) complements cost columns to unify direction, (iii) computes pairwise signed deviation via the IF score function s = μ − ν, (iv) applies a preference function P_j (default Type V linear with thresholds q_j, p_j), (v) builds the multi-criteria preference index π(a, b) = Σ w_j P_j, (vi) derives leaving/entering flows φ⁺, φ⁻, (vii) the PROMETHEE II net flow φ = φ⁺ − φ⁻ ∈ [−1, 1]. Higher φ = better. Algorithm is INVARIANT across pure IF-PROMETHEE application papers (Liao-Xu 2014, Krishankumar et al. 2017); the preference function family and thresholds (q, p) are the parametric choices.
- Output
- preference flow, higher is better
- Data
- Intuitionistic Fuzzy, ifn tuples complete
- Weights
- Needs a weight source
- Size
- 2+ alternatives, 3-10 criteria works best
- Used for
- Supplier selection under epistemic uncertainty (Krishankumar 2017 case), Alternative energy selection (Liao-Xu 2014 case), MAGDM under epistemic uncertainty with linguistic terms, Expert-driven evaluation with IFN scales
How it works
- 1
Construct the IF decision matrix R = (r_ij) where r_ij = (μ_ij, ν_ij) is the IFN rating of alternative A_i on criterion C_j. For group-decision settings (K≥2 DMs), collect K such matrices and aggregate cell-wise via IFWA with DM weights λ_k before entering F2: r_ij = (1 − Π(1−μ_ij^{(k)})^{λ_k}, Π (ν_ij^{(k)})^{λ_k}).
Liao-Xu 2014 Step 1; Krishankumar 2017 Steps 1-2; Xu 2007 IFWA
- 2
Cost-criterion adjustment: for j ∈ J_c (cost criteria) replace r_ij = (μ_ij, ν_ij) with its IF complement r_ij* = (ν_ij, μ_ij); benefit criteria are unchanged. This converts the matrix to a uniform benefit-direction representation for pairwise comparison.
Liao-Xu 2014 Step 2; Krishankumar 2017 cost-complement convention
- 3
Pairwise signed deviation per criterion: d_j(a, b) = s(r_aj*) − s(r_bj*) where s(·) is the IF score function (default Chen-Tan 1994: s(α) = μ − ν ∈ [−1, 1]). A positive d_j(a, b) means a outranks b on criterion j; a negative value means b outranks a. The deviation lives in [−2, 2].
Liao-Xu 2014 Step 3 (signed IF distance); Krishankumar 2017 V function deviation; Chen-Tan 1994 score
- 4
Apply per-criterion preference function P_j(d) to the signed deviation. Default Type V (linear with thresholds): P_j(d) = 0 if d ≤ q_j; P_j(d) = (d − q_j)/(p_j − q_j) if q_j < d < p_j; P_j(d) = 1 if d ≥ p_j. The output P_j(d_j(a, b)) ∈ [0, 1] is the strength of preference of a over b on criterion j.
Liao-Xu 2014 Step 4 (Type V); Krishankumar 2017 V function; Brans-Vincke 1985 Type V
- 5
Multi-criteria preference index: π(a, b) = Σ_j w_j · P_j(d_j(a, b)) ∈ [0, 1]. π is asymmetric (π(a, b) and π(b, a) are independent) and represents how strongly a outranks b across all criteria, weighted by w_j.
Liao-Xu 2014 Step 5; Krishankumar 2017 IFPR aggregation; Brans-Mareschal 2002 Eq.(5)
- 6
Outranking flows. Leaving (positive) flow φ⁺(a) = (1/(m−1)) Σ_{b ≠ a} π(a, b) measures how much a outranks the rest of the set. Entering (negative) flow φ⁻(a) = (1/(m−1)) Σ_{b ≠ a} π(b, a) measures how much a is outranked by the rest. Both lie in [0, 1].
Liao-Xu 2014 Step 6; Krishankumar 2017 φ⁺/φ⁻ flows; Brans-Mareschal 2002 Eqs.(6)-(7)
- 7
Net outranking flow φ(a) = φ⁺(a) − φ⁻(a) ∈ [−1, 1]. By PROMETHEE II convention this is the single defuzzified score per alternative. Σ_a φ(a) = 0 always holds (algebraic identity).
Liao-Xu 2014 Step 7; Krishankumar 2017 net flow; Brans-Mareschal 2002 Eq.(8)
- 8
PROMETHEE II complete ranking: sort alternatives in descending order of φ(a); the largest φ(a) is the best. PROMETHEE I partial ranking (a P b iff φ⁺(a) ≥ φ⁺(b) and φ⁻(a) ≤ φ⁻(b) with at least one strict; incomparability otherwise) is available as a secondary output.
Liao-Xu 2014 Step 8; Krishankumar 2017 ranking; Brans-Mareschal 2002 PROMETHEE I/II
Fits when / Look elsewhere when
Fits when
- •Preserves intuitionistic uncertainty through the pipeline rather than premature crispification at elicitation
- •Native group-decision support (multi-DM aggregation built into the pipeline)
Look elsewhere when
- •Small dataset (m<3) - outranking machinery underutilised; use IF-EDAS or IF-TOPSIS instead
- •Compensatory utility ranking is preferred (use IF-EDAS or IF-TOPSIS)
- •Hesitation degree π must be modelled explicitly with μ+ν > 1 raw judgements - consider Pythagorean Fuzzy PROMETHEE or q-ROF PROMETHEE
Assumptions to verify
- Decision matrix entries are valid IFN tuples (μ, ν) with μ+ν ≤ 1
- All decision-makers use the same linguistic-to-IFN scale
- Criterion directions (benefit/cost) are explicitly labelled
- Criterion weights form a simplex
- Per-criterion thresholds (q_j, p_j) calibrated to the data's deviation scale
Limitations
- •Rank reversal known on alternative-set changes (ref: Inherited from crisp PROMETHEE base (Brans-Vincke 1985; Wang-Luo 2009): outranking flows are pairwise normalised by (m−1), so adding/removing an alternative rebalances every φ⁺/φ⁻ and may invert the net-flow order.)
Edge cases and pitfalls
- •IF decision matrix R = (r_ij) where r_ij = (μ_ij, ν_ij) is the IFN rating of alternative A_i on criterion C_j. For group-decision settings (K≥2 DMs), collect K such matrices and aggregate cell-wise vi
- •IF complement r_ij* = (ν_ij, μ_ij); benefit criteria are unchanged. This converts the matrix to a uniform benefit-direction representation for pairwise comparison.
- •default Chen-Tan 1994: s(α) = μ − ν ∈ [−1, 1]). A positive d_j(a, b) means a outranks b on criterion j; a negative value means b outranks a. The deviation lives in [−2, 2].
- •Default Type V (linear with thresholds): P_j(d) = 0 if d ≤ q_j; P_j(d) = (d − q_j)/(p_j − q_j) if q_j < d < p_j; P_j(d) = 1 if d ≥ p_j. The output P_j(d_j(a, b)) ∈ [0, 1] is the strength of preference
Confusing IFN (pair μ, ν) with TFN (triple a, b, c): IF-PROMETHEE values MUST be IFN tuples satisfying μ+ν ≤ 1, NOT triangular fuzzy numbers.
Forgetting the cost-criterion complement in F2: cost columns must be replaced by (ν, μ) before pairwise comparison; otherwise the direction is inverted and the ranking is wrong.
Using the absolute deviation |d_j(a, b)| in F3 instead of the signed difference: PROMETHEE's preference function P_j is designed to be zero for non-positive deviations. Taking the absolute value destroys the asymmetry of π(a, b) vs π(b, a).
Choosing p_j too small (e.g. p_j = q_j): the linear ramp collapses and P_j becomes a step function - every preferring pair gets weight 1 regardless of magnitude. Calibrate p_j to the actual deviation scale of your data (e.g. ~max d_j observed).
Reporting only PROMETHEE II net flow when partial-order PROMETHEE I disagrees: φ_net can rank two alternatives but the φ⁺/φ⁻ pair may flag them as incomparable. Surface both views in the engine output.
Works with
Commonly takes its weights from
How to cite
Atanassov, K. T. (1986). Intuitionistic fuzzy sets. Fuzzy Sets and Systems. https://doi.org/10.1016/S0165-0114(86)80034-3
System ID, as it appears in reports and the API
IF-PROMETHEE