Test 7: Overtaking people with movement disabilities

Test 7: Overtaking people with movement disabilities

PASS

1. Definition

Room 1 (5 m by 4 m) and room 2 (5 m by 4 m) are joined by a ramp 12 m long and 1.5 m wide, with a 1 m exit at the end of room 2. Room 1 contains zone 1, which holds 24 occupants walking at 1.25 m/s with the model’s default body size, and zone 2, a 1 m strip at the ramp entrance. In Scenario 1 zone 2 holds one occupant with a disability: 0.8 m/s on flat ground, 0.4 m/s on the ramp, occupying more than half the ramp width (0.75 m), for example a wheelchair user. In Scenario 2 the zone-2 occupant is like the other 24. Everyone must reach the exit. A model that cannot represent such occupants documents that limitation.

Source: ISO 20414:2020, Test 7, Table 8, pp. 16-18, Fig. 4. 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

Top view of the scenario for Test 7

Scenario figure from the executed notebook.

3. What to expect

The zone-1 occupants reach the exit later in Scenario 1 than in Scenario 2. ISO calls the test a qualitative verification of emergent behaviour and sets no numeric limit.

Our criterion: Zone-1 occupants exit later (last and mean exit time) when a slower, larger occupant is present

12 m ramp (ISO 20414 Fig. 4). Scenario built by standards/utils/movement_disability.py. The disabled occupant’s ramp speed (0.4 m/s) is set every step in that builder, because jupedsim-scenarios 0.7.3 applies speed zones to every agent; the zone-1 delay is simulator output.

4. Our result

Status: PASS

Test cases of this row

CaseStatusResultRun
test_movement_disability_increases_evacuation_timePASSzone1_exit_time_disability_vs_control = 46.32, 26.47, 34.72, 20.59 sn = 25 · seed 42
  • test_movement_disability_increases_evacuation_time: bound: all 25 occupants evacuate in both runs; comparison: measured[0] (last zone-1 exit, disability) > measured[1] (last, control) and measured[2] (mean zone-1 exit, disability) > measured[3] (mean, control)

Result figure for Test 7

Result figure from the executed notebook.

Result figure for Test 7

Result figure from the executed notebook.

Result figure for Test 7

Result figure from the executed notebook.

5. Our implementation

Deviations from the standard:

  • The pass rule is the suite’s own (decision D8): both the last and the mean exit time of the 24 zone-1 occupants are later in Scenario 1 than in Scenario 2. The disabled occupant is not part of either measure.
  • The scenario is built in code (standards/utils/movement_disability.py) rather than loaded from a scenario file. The builder sets the disabled occupant’s desired speed at every step from its position, because the scenario harness applies speed zones to all agents.
  • The disabled occupant has a radius of 0.4 m (0.8 m wide) and a desired speed of 0.8 m/s on the flat and 0.4 m/s on the ramp. The other 24 occupants walk at 1.25 m/s everywhere, including on the ramp, with the suite’s default radius of 0.15 m.
  • The ramp is flat. The 1 m height difference between the rooms is not modelled. One seed (42) is run.

Model: CollisionFreeSpeedModel

6. Our notebook