Hospital Placement, Revisited
A follow-up to Optimizing Hospital Placement. Same problem, simpler model, better result.
What changed
The original measured coverage as exponential decay over distance:
coverage = exp(-distance / 5)
covered if coverage ≥ 0.3
shortfall = max(0, 0.95 - fraction_covered)
objective = facilities × 1 + shortfall × 1000
Three knobs (decay rate, coverage threshold, target fraction) and a normalized-percent shortfall that needed a large multiplier to dominate the facility count.
The new model drops the decay and works on distance directly:
for each target:
d = distance to nearest active facility
if d > maxDistance, add (d - maxDistance) to totalViolation
objective = facilities × facilityCost + totalViolation × exceedancePenalty
One knob — maxDistance — and the violation is measured in kilometers, not a percentage. Once every target sits inside maxDistance, the violation term is zero on its own.
Result
View the Barbados facilities map
| Original | New | |
|---|---|---|
| Slots | 15 | 10 |
| Coverage rule | exp(−d/5) ≥ 0.3 |
d ≤ 8 km |
| Tuning knobs | 3 | 1 |
| New facilities | 3 | 2 |
| Objective | 4.00 | 3.00 |
The two rules are not directly comparable — the original's decay threshold of 0.3 effectively cuts off around 6 km, the new one at 8 km, so some of the reduction comes from the wider radius. The point is not the objective number. It is that the new formulation matches the question people actually ask: how far is the nearest hospital? No decay constant to defend, no normalized coverage fraction to interpret. Distance in kilometers, threshold in kilometers, penalty in kilometers.
═══════════════════════════════════════════════════════
FACILITY PLACEMENT RESULTS — BARBADOS
═══════════════════════════════════════════════════════
FIXED FACILITIES:
FIXED-1 13.0955°N, 59.6096°W
NEW FACILITIES:
NEW-1 13.2425°N, 59.6064°W
NEW-2 13.1746°N, 59.5098°W
═══════════════════════════════════════════════════════
Total facilities: 3
Objective value: 3.00
Maximum acceptable distance: 8.0 km
═══════════════════════════════════════════════════════
Why redo it
Every model carries knobs someone has to defend and transformations where reality slips. The cleaner the formulation, the closer the math sits to the question being asked. We keep revisiting old models because the better version usually exists — it just takes a second pass to find it.