IF MotionSensor.fall_detected AND HeartRate.value > 100
THEN ACTION Alert("Possible fall with tachycardia")
PURPOSE emergency_response
IF Time.between("22:00","06:00") AND HeartRate.value > 120
AND Purpose.sensitivity == "low"
THEN ACTION DelayAlert("High HR at night") 10 minutes
"alert": "PossibleFall",
"wisdom_reason": "fall_detected AND tachycardia",
"knowledge": {"fall_detected": true, "HR": 140},
"time": "2025-06-01T10:00:00Z"
}
These events were spaced out and combined in various ways to create different test scenarios (some with single anomaly, some with multiple concurrently, etc.).
From these, we compute Detection Accuracy, Precision, Recall, and F1-Score.
We break down performance by event type (falls, arrhythmia, etc.) to see if any particular scenario is problematic.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Falls: Out of 10 fall events in the test set, the DIKWP system caught all 10 (100% recall) with 1 false alarm (it once thought a sensor glitch looked like a fall, which was a known limitation of our simple fall detection). The baseline caught 8/10 (missed 2 cases where a fall had no immediate high heart rate, so the baseline ignored them).
Tachycardia (arrhythmia): We simulated 20 episodes of arrhythmia. DIKWP caught 19, missed 1 mild case; baseline caught 17, missed 3 (and raised 4 false alarms in cases of exercise-induced HR rise which weren’t arrhythmias, due to lack of context).
Hypotension & dizziness: Simulated 5 cases, DIKWP caught 5, baseline 4.
Fever onset: Simulated 5 cases (fever defined as >38°C prolonged). Both systems caught all eventually, but DIKWP raised earlier alerts because it noticed the trend (gradual rise) and matched with slight HR increase, whereas baseline waited until a static threshold was breached. Early detection is a subtle benefit – not captured in just binary metrics, but qualitatively doctors would prefer an earlier heads-up.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|

