Skip to main content

Illustrative example: a representative scenario, not a customer story

Engineering

Bridge Maintenance Prioritization

Rank aging bridge infrastructure for maintenance scheduling based on structural condition, traffic volume, and budget constraints. Compromise programming balances urgency against available resources for optimal allocation.

The decision problem

Fifteen ageing bridges compete for one maintenance budget and a schedule has to be published. Structural condition argues for one order, traffic volume for another and the cost of the work for a third. No option satisfies everything, so the useful answer is the compromise that keeps the worst individual outcome tolerable, not the one with the best average.

What the decision matrix looks like

The typical shape of a study like this. Your own matrix can be larger or smaller; nothing here is fixed.

15

Alternatives

5

Criteria

Compromise under a budget constraint

Uncertainty type

#Criterion
C1Structural condition rating
C2Daily traffic
C3Detour availability
C4Maintenance cost
C5Remaining service life

Which method, and why

VIKOR is built for exactly that: it balances group utility against individual regret and reports whether the compromise solution is stable. PROMETHEE II runs the same matrix with preference functions, so a small difference in condition rating can be treated as no difference at all instead of a rank change. Entropy sets the weights from the data, so the schedule is not read as chosen by hand.

What you get out

Ranking and scores

Every alternative with its score, its rank and the intermediate matrices that produced them.

Weight sensitivity

One criterion weight moves at a time, so you see exactly where the leader changes.

Method agreement

When more than one ranking method is run, the orders are compared with Spearman rho and Kendall W.

Report and citation

PDF, DOCX and XLSX output carrying the seminal source of every method used.

Run this flow on your own data

Load the matrix, choose the weighting and ranking methods, read the sensitivity.

Other worked examples