Das Problem fängt aber schon bei der Messung an. So 'n Rohsignal von einem Accelerometer ist ziemlich mies. Da kannst du normalerweise auch so Sachen wie die Motordrehzahl, Atmung und Herzschlag drin finden und dann fährst du auch noch durch die Gegend. Drin finden heißt übrigens nicht, dass dir das ins Gesicht springt. Es ist nur einfach irgendwo da und überlagert, was du wissen willst. Also jagst du das durch diverse Filter. Das macht träge, glättet dir aber die groben Ausschläge weg. Du hast zwar nun weniger Rauschen im Signal aber dafür auch weniger Information. Jetzt ist aber doof, dass du am Sensorausgang eigentlich was über die Realität wissen willst, die hast du aber gerade durch ein Sieb gedrückt. Also baust du weitere Sensoren ein, um das auszugleichen und wieder mehr Informationen in deine Daten zu kriegen, jetzt hast du aber mehr Signale, was mehr Rechenaufwand macht. Das wirfst du dann alles in einen Topf, rührst um und liest in der Suppe. Dieser ganze Kram ist gar nicht so einfach für geeignete Werte von richtig. Tatsächlich ist das oft sehr unintuitive Statistik ob das auslöst oder nicht.
Hinzukommt, dass du halt schnell sein musst. Helite gibt 61ms als Auslösezeit an. Das kannst du entweder mit Geld erschlagen, was deine Produktionskosten treibt oder du versuchst das so dumm wie möglich zu halten und machst das auf 'nem ESP32 mit 1kB RAM für 3¢ pro Stück. Der eingangs erwähnte Filter hat dir mindestens schon 10% deiner Auslösezeit geklaut. (Disclaimer: Ich hab nichts zum Versuchsaufbau gefunden. Damit lässt sich die angegebene Auslösezeit nicht objektiv einordnen).
Worauf ich hinaus will: Es ist egal, was du am Sensor misst, und was du damit machst. Du weißt nicht ob es ein Unfall ist, du versuchst einfach mehr oder weniger intelligent zu raten. Mit der Theoriebrille drauf geschaut, bin ich mir nicht mal sicher, ob das wirklich ein Algorithmus ist, das wäre aber auch Korinthenkackerei.
Bsp.: Du bist auf einer Pflasterstraße unterwegs, dein Accelerometer sagt dem Steuerteil "Ey alter, hier sind 2g". Das Accelerometer kennt aber keine Richtung. Könnte ein Schlagloch sein. Also baust du ein Gyro dazu. Das Gyro sagt, "wir fahren rechtsrum". Elektronik fragt sich "Auslösen oder nicht?". 2g kann heißen, du bremst gerade mit dem Gesicht auf der Straße. Was du jetzt willst, ist in die Vergangenheit schauen. Hat mir das Gyro vor der Beschleunigung von 2g große Lageänderungen gemeldet. Wenn ja, dann war es wahrscheinlich ein Unfall, du bist aber schon spät dran, weil das Gesicht bremst ja schon mit 2g. Sorum funktioniert es also nicht.
Du kannst das Spiel so endlos weiterspielen. Das ist Äbstimmungssache, wie beim Fahrwerk. Das passt nicht in jeder Kurve, aber auf die gesamte Runde haut es halt hin oder eben nicht.
Jetzt machen wir noch eine Marketingüberlegung: Grundannahme ist, dass die meisten Kunden ihren Airbag nie brauchen. Der Anteil derer, bei denen er berechtigt auslösen sollte, ist also deutlich geringer. Daraus folgt aber auch, dass der Anteil derer, deren Airbag im Ernstfall nicht ausgelöst hat, noch viel geringer ist. Wenn ich aber eine Gruppe nicht verärgern will, dann ist es die große Käufergruppe. Wenn sich da zehn von denen Beschweren, dass das Ding bei der Fresspause im Schwarzwald ausgelöst hat, ist das aus Marketingsicht wesentlich schlimmer als bei den 2 Überlebenden, bei denen er fälschlicherweise nicht ausgelöst hat. Also legst du das schon prinzipiell recht konservativ aus um nicht unnötig fehlerhaft auszulösen.
Im Rahmen der Klassifikation Unfall oder nicht will ich insgesamt den Anteil meiner Falschklassifikationen vermeiden. Nun hab ich aber großes Bias. Wenn 90% aller Airbags nie Auslösen, dann hab ich schon in 90% der Fälle richtig entschieden, indem ich einfach nie Auslöse, auch nicht wenn es wirklich ein Unfall ist. Macht 90% glückliche Kunden, 8% die nie wieder einen Airbag kaufen und 2% bedauerliche Einzelfälle die entweder zur Konkurrenz gehen oder das Hobby aufgeben. Ja, ist makaber, aber ist leider so.