1. Structure the decision problem: alternatives, criteria, and K decision makers with linguistic SF importance.
(alternatives,criteria,DMs)
2. Each DM provides SF criterion weights and an SF decision matrix using linguistic terms. Compute DM weights ŵ_s.
w^sfromlinguisticDMimportance
3. Aggregate SF criterion weights via SWAM. Defuzzify with Ch.12 score function and normalise to obtain crisp w̄_sj with Σ w̄_sj = 1.
Score(α)=(μ−π/2)2−(ν−π/2)2[Ch.12score]wˉsj=Score(w~j);wˉsj←wˉsj/Σwˉsj
4. Aggregate the K SF decision matrices into a collective SF decision matrix via SWAM using DM weights ŵ_s.
x~ij=SWAMw^(x~(1)ij,…,x~(K)ij)
5. Construct the weighted SF decision matrix by multiplying each x̃_ij with w̄_sj using SF scalar multiplication.
x~ijw=wˉsj⋅x~ij
6. Determine the SF Negative-Ideal Solution (NIS) per criterion. CODAS uses ONLY the NIS (no PIS). For benefit criteria: NIS = min by score; for cost criteria: NIS = max by score.
NISj=argminiScore(x~ijw)forbenefitcriteriaNISj=argmaxiScore(x~ijw)forcostcriteria
7. Compute the SF normalized Euclidean distance D_E,i and SF normalized Spherical distance D_S,i of each alternative from the NIS.
DE,i=sqrt(1/(2n)⋅Σj((μij−μNIS,j)2+(νij−νNIS,j)2+(πij−πNIS,j)2))DS,i=(2/(nπ))⋅Σjarccos(μij⋅μNIS,j+νij⋅νNIS,j+πij⋅πNIS,j)
8. Construct the relative assessment matrix RA with entries s_ik = (D_E,i − D_E,k) + Φ(D_E,i − D_E,k) · (D_S,i − D_S,k), where Φ is a threshold function with τ = 0.02 default: Φ(x) = 1 if |x| ≥ τ, else Φ(x) = 0.
sik=(DE,i−DE,k)+Φ(DE,i−DE,k)⋅(DS,i−DS,k)Φ(x)=1if∣x∣≥τ,0otherwise;τ=0.02(default)
9. Compute assessment score AS_i = Σ_k s_ik for each alternative.
ASi=Σk=1..msik
10. Rank alternatives in DESCENDING order of AS_i. The highest-AS_i alternative is the best ranked.
rank:descendingASi
11. Sensitivity analysis: vary τ ∈ {0.01, 0.02, 0.05} and verify stability of the top alternative.
varyτ;checkrankstability