Test 8: Exit route allocation
PASS1. Definition
Twelve rooms line a corridor section, six on each side, with a main exit and a secondary exit. Occupants have speeds and characteristics from the expected building population and no pre-evacuation time. The occupants of rooms 1, 2, 3, 4, 7, 8, 9 and 10 are allocated to the main exit and all others to the secondary exit. The tester reports how the destination is set and whether the allocation is a user-defined deterministic one or comes from a predictive sub-model.
Source: ISO 20414:2020, Test 8, Table 9, pp. 18-19, Fig. 5. This is a paraphrase, not the text of the standard.
Reference: ISO (2020). ISO 20414:2020, Fire safety engineering - Verification and validation protocol for building fire evacuation models. First edition. International Organization for Standardization, Geneva. https://www.iso.org/standard/78348.html (Page numbers are the printed page numbers of ISO 20414:2020 (the copy read is a proof, so numbers can differ by a page in the published edition). ISO states that its tests are examples and that a tester may use different tests that verify the same component equivalently.)
2. Scenario

Scenario figure from the executed notebook.
3. What to expect
Every occupant moves to the exit it was allocated to. ISO calls the test a qualitative verification of the model’s assignment.
Our criterion: Every agent reaches its allocated exit
ISO 20414 is inconsistent: Table 9 says 23 agents, Figure 5 shows 13 (1 person per room, 2 in room 3). The suite follows the text (23 agents: 2 per room, 1 in room 3), as RiMEA, NIST and IMO specify.
4. Our result
Status: PASS
Test cases of this row
| Case | Status | Result | Run |
|---|---|---|---|
test_ | PASS | wrong_exit_agents = 0 count accepted 0 – 0 count | n = 23 · seed 42 |
test_: bound: agents_remaining = 0; 0 <= measured <= 0 (agents at a non-allocated exit)each_ agent_ reaches_ allocated_ exit

Result figure from the executed notebook.
5. Our implementation
Deviations from the standard:
- ISO’s text and its figure disagree. Table 9 gives 23 agents. Figure 5 marks one person in each room except room 3, which has two, which is 13 agents. The suite follows the text: 23 agents, two in each room except one in room 3.
- The allocation is a user-defined, deterministic journey per room. The pass rule is the suite’s own: after the run every agent’s nearest exit, measured from its final position, is the exit allocated to its starting room.
- All agents walk at a constant 1.3 m/s instead of a speed distribution from the building population.
- The layout is redrawn from Figure 5 only approximately: the main exit is 0.9 m wide, and room outlines and exit positions differ in detail. One seed (42) is run.
Model: CollisionFreeSpeedModel
- Test function: tests/vv/test_iso.py::test_each_agent_reaches_allocated_exit
- Scenario file: Iso-08-route-allocation.zip