rules.py — every consecutive AIS ping pair checked against all rules simultaneouslydetect_going_dark() in rules.pymax_gap_hours / 2detect_loitering_transfers()detect_draft_change()count × 15 — highest weightdfsi_results.csv| MMSI | DFSI Score |
|---|---|
| 246782000 | 140 |
| 245223000 | 140 |
| 210399000 | 80 |
| 210388000 | 80 |
| 111265586 | 73 |
Blue = last known position · Red = reappearance · Orange line = AIS blackout gap
Blue = Vessel A (southern cluster) · Orange = Vessel B (northern cluster) · Dashed = same MMSI, same time, two locations
Cyan = last known position · Orange = reappearance · Purple line = impossible jump (30 min to 24h gap)
Heatmap overview, speedup scaling, runtime behaviour, and Amdahl's Law fit across chunk sizes and worker counts
Peak memory scaling, per-worker footprints, and system RSS breakdown at 250K and 100K chunk sizes