1. Construct bipolar fuzzy decision matrix B = [(μ⁺_ij, ν⁻_ij)]. Normalize cost criteria via BFN complement: (1−μ⁺, |ν⁻|−1). Convert all BFNs to crisp scores using score function Δ(B)=(1+μ⁺+ν⁻)/2 ∈ [0,1]. All subsequent steps operate on the resulting crisp score matrix x_ij = Δ(B*_ij).
Δ(B)=21+μ++ν−∈[0,1]Bij∗={(μij+,νij−)(1−μij+,∣νij−∣−1)j∈J+j∈J−xij=Δ(Bij∗)
2. Determine the best f_j* and worst f_j^- value of every criterion across alternatives, respecting benefit/cost direction.
fj∗={maxixijminixijj∈Jj∈J′,fj−={minixijmaxixijj∈Jj∈J′
3. Compute the group utility S_i and the individual regret R_i. S aggregates weighted normalised regret (L_1-metric); R is the maximum weighted regret (L_∞-metric).
Si=j=1∑nwjfj∗−fj−fj∗−xij,Ri=jmax[wjfj∗−fj−fj∗−xij]
4. Compute the VIKOR index Q_i as a convex combination of normalised S and R, weighted by the compromise coefficient v.
Qi=vS−−S∗Si−S∗+(1−v)R−−R∗Ri−R∗, S∗=iminSi, S−=imaxSi, R∗=iminRi, R−=imaxRi
5. Propose A^(1) (the lowest-Q alternative) as compromise solution iff both C1 (acceptable advantage) and C2 (acceptable stability) hold. If C1 fails, return the maximum prefix A^(1)..A^(M) for which Q(A^(M)) − Q(A^(1)) < DQ. If only C2 fails, return {A^(1), A^(2)}.
DQ=m−11;C1:Q(A(2))−Q(A(1))≥DQ;C2:A(1) is best in S or in R