Destinations
Viable (≥20%)
Evacuee groups
Total evacuees
Mean MC success
Uncertainty
GK blocked sites
Operational
Partial
Blocked
Unknown
★ = gatekeeper factor (blocked → hard cap at 20% readiness)
Assignment Matrix — Composite Scores & Monte Carlo Success Rates
Outcome Summary per Evacuee Group
Uncertainty Impact — MC Success Rate vs Field Uncertainty (0 → 100%)

AI Role in Civilian Protection — Simulation Findings

Generating scenario…

Methodology & Model Documentation

1 Readiness Scoring Model

Destination readiness is computed as a weighted average of seven factor scores. Two factors — Security and Local Authority Consent — are designated gatekeepers and receive double weight, reflecting their role as non-substitutable prerequisites under IHL: a destination that is physically dangerous or legally inaccessible cannot be made viable by strong food supply or willing hosts.

readiness = (Σ wi × scorei) / Σ wi w = 2 (gatekeeper) | w = 1 (standard) If any gatekeeper is BLOCKED: readiness = min(readiness, 0.20)
StatusScoreRationale
Operational1.0 × confFully functional; confidence-scaled
Partial0.5 × confDegraded function; confidence-scaled
Blocked0.0Non-functional; gatekeeper triggers cap
Unknown0.30 × (0.5 + 0.5·conf)Epistemic conservatism — see §2

2 Uncertainty Model

Uncertainty operates at two levels:

Factor-level confidence — each factor carries a base confidence value (0–1) generated at scenario creation, reflecting how well-assessed that factor is. The global Field Uncertainty slider scales all confidences multiplicatively:

effectiveConf = baseConf × (1 fieldUncertainty)

Unknown status treatment encodes a key epistemic distinction: a known unknown is less dangerous than an unknown unknown. A factor assessed as "unknown" with high confidence (we are sure we don't know) scores higher than the same status with low confidence (we are not even sure our ignorance is accurate):

scoreunknown = 0.30 × (0.5 + 0.5 × effectiveConf) effectiveConf = 1.0 → score = 0.30 (known unknown) effectiveConf = 0.0 → score = 0.15 (unknown unknown)

This models the real-world asymmetry in which a field team that reports "we could not assess food supply" provides actionable information, whereas a report produced under conditions where the team itself was unreliable provides less.

3 Monte Carlo Outcome Simulation

For each (evacuee group, destination) pair, 100 Monte Carlo runs simulate the outcome distribution arising from field uncertainty. In each run, every factor's assessed status is independently subjected to a perturbation test:

P(perturb) = 0.85 × (1 effectiveConf) If perturbed: status shifts ±1 level operational ↔ partial ↔ blocked ↔ unknown

Success in a single run requires all three conditions:

  • Readiness ≥ 40% (minimum viability threshold)
  • Destination capacity ≥ group size (physical absorption)
  • No gatekeeper factor blocked (legal/security access maintained)

The reported success rate is the proportion of runs meeting all three criteria. Standard deviation across runs quantifies outcome uncertainty — high SD indicates a volatile scenario where small real-world changes could flip the outcome.

4 Assignment Algorithm

Each evacuee group is assigned to the destination with the highest composite score, a linear combination of four sub-scores:

composite = 0.40 × readiness + 0.30 × capacity_fit + 0.20 × proximity + 0.10 × vulnerability_match capacity_fit = min(1, dest_capacity / group_size) proximity = 1 (distance / max_distance) vulnerability_match = 1.0 if medical=operational & special needs = 0.5 otherwise

Weights reflect the priority ordering in humanitarian evacuation planning: protection quality first, physical fit second, operational burden third, population needs fourth. The capacity_fit cap at 1.0 prevents over-rewarding destinations that vastly exceed need.

5 Synthetic Data Engine

All data is generated from a seeded pseudo-random number generator using the Park-Miller Linear Congruential Generator (LCG):

sn+1 = (sn × 16807) mod 2147483647 Period: 2³¹ − 2 ≈ 2.1 × 10⁹ Source: Park & Miller (1988), CACM 31(10)

Using a seeded RNG means every scenario is fully reproducible by seed number — a critical requirement for thesis research where peer reviewers must be able to regenerate results exactly.

Destination capacity follows an exponential distribution (λ = 3, mapped to [200, 5000]) to reflect the realistic skew of humanitarian site sizes: many small sites, few large camps. Factor status distributions are weighted differently for gatekeepers (more likely impaired in active conflict) versus standard factors.

6 Evacuee Group Archetypes

Groups are drawn from eight ecologically valid archetypes grounded in ICRC field taxonomy and IHL protected-person categories. Each archetype has fixed vulnerability, special-needs, and urgency properties; only group size is randomised per scenario.

ArchetypeVuln.NeedsUrgency
Elderly & mobility-impaired5mobilityimmediate
Families with children4urgent
Wounded & medical cases5medicalimmediate
Unaccompanied minors5medicalimmediate
Pregnant women4medicalurgent
Unaccompanied adults2can-wait
Mixed general population2can-wait
Journalists & aid workers2urgent

The vulnerability_match sub-score in §4 rewards destinations with operational medical capacity when a group has medical or mobility needs — operationalising the IHL principle of proportionate protection for the most vulnerable.

7 Modelling Assumptions & Limitations

Assumptions

  • Factor statuses are treated as independent — real-world correlation (e.g. security and authority consent often co-vary) is not modelled.
  • The 40% readiness success threshold is an operational approximation; the exact threshold should be calibrated against field data in applied use.
  • Status perturbation shifts by exactly one ordinal level — this is a simplification; real mis-assessments may jump multiple levels (e.g. operational reported as blocked).
  • Groups are assigned independently; no capacity contention is modelled (two groups could be assigned to the same destination even if combined size exceeds capacity).
  • Distance is used as a proxy for operational burden; real routing constraints (road access, checkpoints, fuel) are not modelled.

Scope & intended use

  • This is a conceptual demonstration tool, not a decision-support system. Outputs are not suitable for real operational planning without validation against empirical data.
  • The tool is designed to illustrate how uncertainty propagates through an evacuation chain and to support the thesis argument that AI-assisted field assessment would improve outcome predictability.
  • All random values use the seeded RNG — Math.random() is not called anywhere, ensuring full reproducibility.
  • MC runs (N=100) are sufficient for directional insight but not for tight confidence intervals; production use would warrant N≥1000.

Parameter reference — all values are in the PARAMS constant at the top of the script and can be adjusted for sensitivity analysis without touching any other code.