Maritime Science Life

Calculations with context

VIKOR compromise workbench

Explore classical linear VIKOR S, R and Q scores, the chosen v weight and C1/C2 conditions; retain compromise sets with disclosed tie and zero-span rules.

Decision laboratory

Classical VIKOR compromise ranking

Best–worst loss, group utility S, worst regret R and an explicit compromise set

VIKOR looks for a defensible compromise between aggregate weighted loss and the largest single weighted shortfall. It first ranks options, then checks whether the leading option has enough advantage and stability to stand alone. A first place in Q is not automatically a unique recommendation.

Edit the decision matrix

Use 2–8 alternatives and 2–6 criteria. Enter a unit for each criterion (use “1” for dimensionless data). Values are 0 or have absolute magnitude 10⁻¹² to 10¹²; this is a numerical software envelope, not an operating limit. Decimal point or decimal comma and scientific notation are accepted; grouping and unit suffixes are not.

Raw weights are 0 or 10⁻⁶–10⁶, with at least one positive. v lies in [0,1].

Criteria
Editable performance matrix
AlternativeCriterion 1Criterion 2Criterion 3

Results appear after calculation. The article below is available without JavaScript.

Calculations and explicit CSV downloads stay in this page. No network requests or persistent storage are used.

Method and assumptions

VIKOR: from losses to compromise setWeighted criterion losses split into their sum S and maximum R. Normalized S and R combine with v and 1 minus v into Q. Q ranking is followed by C1 advantage and C2 stability tests; the outcome is one alternative or an explicit set.Weighted losseswⱼ gᵢⱼSᵢ = Σⱼ wⱼgᵢⱼAggregate lossRᵢ = maxⱼ wⱼgᵢⱼWorst single lossQ: v, 1−vAscendingC1 + C2One / set
S and R enter Q only after normalization by their own spans. Minimum Q does not replace the acceptance tests.

1. Define best and worst

Choose a monotonic benefit or cost direction for every criterion. Best and worst are observed extrema within the current alternative set. Normalize each option’s distance from best to the interval [0,1]. A constant criterion has no observed discrimination; this tool explicitly gives it zero loss.

2. Calculate S and R

Normalize the supplied nonnegative weights to sum one, including zero and constant-criterion weights in the declared vector. S sums all weighted losses; R takes the largest. Smaller values are better. These values express modeled dissatisfaction, not accident probability.

3. Balance the strategies

Normalize S and R across the alternatives. Q combines their normalized values with v and 1 − v. v = 1 emphasizes total loss, v = 0 emphasizes the worst single weighted loss; 0.5 is a chosen balance, not an empirically optimal value.

4. Test and retain the compromise set

Sort S, R and Q ascending. Let a′ and a″ occupy first and second Q positions. C1 requires Q(a″) − Q(a′) ≥ 1/(m−1). C2 requires a′ also to be best in S or R. Both pass: retain a′ alone. Only C2 fails: retain the first two positions, expanded to include any tied runner-up. If C1 fails: retain every alternative with Qᵢ − Qmin < 1/(m−1).

gᵢⱼ = (bestⱼ − xᵢⱼ)/(bestⱼ − worstⱼ)

Sᵢ = Σⱼ wⱼgᵢⱼ; Rᵢ = maxⱼ(wⱼgᵢⱼ)

Qᵢ = v(Sᵢ − Smin)/(Smax − Smin) + (1−v)(Rᵢ − Rmin)/(Rmax − Rmin)

DQ = 1/(m−1); C1: Q(a″) − Q(a′) ≥ DQ

Symbols and units
SymbolDefinition
i, mAlternative index and count; 2 ≤ m ≤ 8
j, nCriterion index and count; 2 ≤ n ≤ 6
xᵢⱼPerformance of option i on criterion j, in its declared column unit
wⱼDimensionless nonnegative criterion weight; sum is 1 when defined
gᵢⱼDimensionless normalized distance from the criterion best
Sᵢ, RᵢSum and maximum of weighted losses; smaller is better
vStrategy parameter in [0,1]; a stated preference, not a probability
QᵢDimensionless compromise index; smaller is better
DQ, C1, C2Required advantage, advantage test and S-or-R stability test

Worked maritime example

These four service-vessel options and all quantities are original, synthetic teaching data. They are not measured vessel performance, a procurement recommendation or safety approval.

Objective: Compare synthetic port service vessel options. v = 0.5.

The original formulas divide by criterion ranges and S/R spans. Our explicit extensions give a constant criterion zero loss and a numerically unresolved S or R span a zero normalized term. A span ≤ 64 × machine epsilon × maximum absolute score is unresolved; the raw span and threshold remain in the intermediate table and CSV. No hidden weight redistribution occurs. If all Q values tie, the full set remains, with no invented single winner.

Input matrix and metadata
CriterionUnitPreference directionRaw weight
Daily energykWh/dayCost: minimize4
Duty capacityjobs/dayBenefit: maximize3
Maintenance timeh/monthCost: minimize2
Editable performance matrix
AlternativeDaily energyDuty capacityMaintenance time
Vessel A100612
Vessel B120910
Vessel C80518
Vessel D11088
Best / Worst
CriterionBestWorstRangeWeight w
Daily energy80120400.44444444
Duty capacity9540.33333333
Maintenance time818100.22222222
Normalized distance from best g
AlternativeDaily energyDuty capacityMaintenance time
Vessel A0.50.750.4
Vessel B100.2
Vessel C011
Vessel D0.750.250
Weighted criterion loss wg
AlternativeDaily energyDuty capacityMaintenance time
Vessel A0.222222220.250.088888889
Vessel B0.4444444400.044444444
Vessel C00.333333330.22222222
Vessel D0.333333330.0833333330
Calculation result
AlternativeSRS termR termQS RankR RankQ RankCompromise set
Vessel A0.561111110.25100.5412Yes
Vessel B0.488888890.444444440.510.75244No
Vessel C0.555555560.333333330.961538460.428571430.69505495323No
Vessel D0.416666670.3333333300.428571430.21428571121Yes
Intermediate calculations
ParameterValue
v0.5
Smin0.41666667
Smax0.56111111
Rmin0.25
Rmax0.44444444
S raw span0.14444444
R raw span0.19444444
S span tolerance7.9738685e-15
R span tolerance6.3159354e-15
DQ0.33333333
ΔQ0.28571429
C1: acceptable advantageNo
C2: acceptable stabilityYes

Compromise set: Vessel D, Vessel A

C1 fails: retain all options strictly within DQ of the best Q, with the declared numerical tolerance.

Substitute the values

w₁ = 4 / (4 + 3 + 2) = 0.44444444

g₁₁ = (80 − 100) / (80 − 120) = 0.5

S₁ = 0.22222222 + 0.25 + 0.088888889 = 0.56111111; R₁ = max(0.22222222, 0.25, 0.088888889) = 0.25

Q₁ = 0.5 × 1 + (1 − 0.5) × 0 = 0.5

DQ = 1 / (4 − 1) = 0.33333333; ΔQ = 0.5 − 0.21428571 = 0.28571429

Sensitivity checks

Hold raw weights fixed and vary v over 0, 0.25, 0.5, 0.75 and 1. Read the full compromise set at each value. This grid does not establish global robustness to weights, data error or changes in alternatives.

Sensitivity checks
vQ: Vessel AQ: Vessel BQ: Vessel CQ: Vessel DCompromise setC1: acceptable advantageC2: acceptable stability
0010.428571430.42857143Vessel AYesYes
0.250.250.8750.561813190.32142857Vessel A, Vessel D, Vessel CNoYes
0.50.50.750.695054950.21428571Vessel D, Vessel ANoYes
0.750.750.6250.82829670.10714286Vessel DYesYes
110.50.961538460Vessel DYesYes

Tables display 8 significant digits. Calculations use unrounded binary64 values; CSV preserves round-trip numeric precision. “Undefined” is never replaced by an invented score.

Interpretation and limits

  • The original formulas divide by criterion ranges and S/R spans. Our explicit extensions give a constant criterion zero loss and a numerically unresolved S or R span a zero normalized term. A span ≤ 64 × machine epsilon × maximum absolute score is unresolved; the raw span and threshold remain in the intermediate table and CSV. No hidden weight redistribution occurs. If all Q values tie, the full set remains, with no invented single winner.
  • Ranks are competition ranks using an absolute 10⁻¹² tolerance from each group’s anchor. C1 accepts a gap within that tolerance of DQ. The strict compromise cutoff excludes differences within 10⁻¹² of DQ. This numerical boundary policy, runner-up tie closure and tied-minimum stability are implementation interpretations, not extra original-paper claims.
  • For m = 2 the original DQ is 1. It is not capped at 0.5. At v endpoints or with a zero span the Q gap can be smaller than 1, leaving a compromise set. Single-alternative inputs are not supported.
  • VIKOR uses compensatory weights and observed extrema. Different alternatives, benefit/cost choices, priorities or preprocessing can change the ranking. It does not verify feasibility, regulatory compliance or safety constraints; apply those before comparing feasible options.
Check your understanding: option D has the lowest Q but the gap to the runner-up is below DQ. Should the calculator name D as the unique accepted compromise?

No. C1 fails. The output must retain the alternatives whose Q difference from the best is strictly below DQ, including all tied leaders.

Primary methodology sources

Opricovic & Tzeng (2004), European Journal of Operational Research 156, 445–455, pp. 447–448, equations (1)–(3), acceptance conditions.

The declared zero, tie and numerical edge-case policies are implementation choices of this tool. vikor v1.0.0.

Related context

The method explanation and worked example are on this page. The articles below provide additional context.

All calculators