-
Technisches Gebiet
-
Die Erfindung betrifft sicherheitskritische Systeme, wie Anwendungen in Kraftfahrzeugen, und insbesondere Verfahren zur Parametrisierung von datenbasierten Modellen in sicherheitskritischen Anwendungen.
-
Technischer Hintergrund
-
Die Implementierung von Algorithmen in Steuergeräten von sicherheitskritischen Anwendungen, die datenbasierte Modelle verwenden, erfolgt in der Regel basierend auf einem unveränderlichen Parametersatz oder basierend auf einem Parametersatz mit nur wenigen frei kalibrierbaren Parametern. Üblicherweise werden die Parameter des Parametersatzes in nicht standardisierter Form in dem Steuergerät der sicherheitskritischen Anwendung zur Verfügung gestellt.
-
Bei der Kalibration von datenbasierten Modellen wird in der Regel die Konsistenz der Parameterdaten sowohl nach der Erstellung der Parametersätze als auch nach dem Speichern in einem entsprechenden Steuergerät nicht überwacht. Jedoch führt im Gegensatz zu Algorithmen, die physikalisch basierte Modelle implementieren, eine Inkonsistenz der Parameterdaten nicht lediglich zu einer beherrschbaren Abweichung des Modellausgabewerts, sondern kann zu vollständig unvorhersehbaren Modellausgaben führen.
-
Offenbarung der Erfindung
-
Erfindungsgemäß sind ein Verfahren zum Kalibrieren eines in einem Steuergerät implementierten datenbasierten Modells gemäß Anspruch 1 sowie ein Kalibrierungssystem gemäß dem nebengeordneten Anspruch vorgesehen.
-
Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Gemäß einem ersten Aspekt ist ein Verfahren zum Kalibrieren eines Steuergeräts für eine sicherheitskritische Anwendungen, insbesondere einer automotiven Anwendung, mit mindestens einem datenbasierten Modell in einem Entwicklungsprozess vorgesehen, mit einer ein- oder mehrfachen Ausführung der folgenden Schritte:
- - Generieren von Trainingsdaten auf einem Prüfstand oder aus einem laufenden Betrieb der sicherheitskritischen Anwendung;
- - Bereitstellen und Generieren eines Parametersatzes aus mindestens einem Konfigurationsparameter und mindestens einem Modellparameter für das datenbasierte Modell;
- - Bereitstellen eines serialisierten Parametersatzes mithilfe eines Absicherungsmechanismus;
- - Speichern des vollständigen Parametersatzes in das Steuergerät, insbesondere mithilfe eines Software-Standard-optimierten Interpreters;
- - Verifizieren des in das Steuergerät gespeicherten Parametersatzes.
-
In datenbasierten Modellen, wie beispielsweise neuronalen Netzen, GaußProzess-Modellen und dergleichen, werden im Gegensatz zu regelbasierten bzw. physikalisch motivierten Modellen die Kernfunktion durch Parametersätze bestimmt, die Konfigurations- und Modellparameter umfassen. Die Konfigurationsparameter umfassen die Konzeption des datenbasierten Modells, wie z.B. deren Dimensionalität, und geben beispielsweise für neuronale Netze die Anzahl der Schichten und die Anzahl der Neuronen jeder Schicht an. Die Modellparameter entsprechen den funktionsbestimmenden Parametern und im Falle eines neuronalen Netzes geben die Modellparameter die entsprechenden Gewichtungen bzw. Bias-Werte der einzelnen Neuronen an.
-
Bei der Auswertung eines datenbasierten Modells, der sogenannten Inferenz, wird kein Verändern der Parametersätze zugelassen, so dass eine Modellausgabe lediglich von zugeführten Eingabegrößen abhängt.
-
Insbesondere bei sicherheitskritischen Anwendungen, wie beispielsweise in automobilen Steuergeräten, ist eine solche Nutzung erstrebenswert, da im Vorfeld der Parametersatz ausgiebig getestet werden kann, um einen Betrieb des Steuergeräts und die Wirkung der modellierten Funktion nachvollziehbar zu machen, um unerwünschte und unvorhergesehene Modellausgaben zu vermeiden.
-
Während der Funktionsentwicklung sollen jedoch die Parametersätze zur Erprobung noch veränderlich sein, und die Parametersätze, d. h. die Konfigurationsparameter und Modellparameter, erst zum Ende des Entwicklungsprozesses festgeschrieben werden. Für einen effizienten Entwicklungsprozess sind deshalb Freiheitsgrade bei der Neukalibrierung und Neufestlegung der Parametersätze erforderlich, ohne jedoch eine beliebige Überschreibbarkeit der einzelnen Parameter zuzulassen.
-
Für die Durchführung des obigen Kalibrierungsverfahrens ist daher vorgesehen, die Parametersätze in einem vorbestimmten Datenformat in serialisierter Form insbesondere mit einer Prüfinformation vorzusehen. Das Steuergerät verfügt weiterhin über eine Metainformation über die Interpretation des bereitgestellten Datenformats. Auf diese Weise können datenbasierte Modelle mit einer großen Anzahl von Freiheitsgraden ausgebildet werden, die durch Konfigurationsparameter und Modellparameter in Form von zusammenhängenden Speicherbereichen bzw. Feldbereichen abgelegt werden. Das Einschreiben des Parametersatzes in das Steuergerät erfolgt mit einem Absicherungsmechanismus. Insbesondere kann nach dem Einschreiben des Parametersatzes in das Steuergerät daher zunächst mithilfe der Prüfinformation die Konsistenz der geschriebenen Daten überprüft und erst nach erfolgreicher Konsistenzprüfung die Nutzung der Daten zugelassen werden. Die Interpretation des Parametersatzes kann mit einem steuergerätspezifischen Interpreter in der Steuergeräte-Software erfolgen, der den Sicherheitsstandard des Steuergeräts erfüllt, insbesondere zum Beispiel MISRA für automotive Anwendungen.
-
Weiterhin kann das datenbasierte Modell in Form eines mehrlagigen Perzeptrons (MLP: Multiple-Layer Perceptron), eines mehrdimensionalen Kennfelds, eines SVM (Support Vector Machine) , eines TCM oder eines LSTM (Long Short Term Memory) implementiert sein, wobei insbesondere bei einem mehrlagigen Perzeptron der mindestens eine Konfigurationsparameter die Anzahl der Neuronenschichten und die Anzahl der betreffenden Neuronen sowie deren Aktivierungsfunktionen in jeder Neuronenschicht angibt und wobei der mindestens eine Modellparameter die Gewichtungen und Bias-Werte der einzelnen Neuronen angibt. Alternativ kann das datenbasierte Modell in Form eines Gaußprozesses implementiert sein, wobei der mindestens eine Konfigurationsparameter einen Hyperparameter angibt und wobei der mindestens eine Modellparameter die Stützstellen oder Kovarianzmatrix des Gaußprozesses angibt.
-
Weiterhin kann das Speichern des Parametersatzes in das Steuergerät nur als vollständiger Datensatz zugelassen werden.
-
Es kann vorgesehen sein, dass der Parametersatz mit einem Standarddatenformat, insbesondere DCM, bereitgestellt wird, wobei die Interpretation des Standarddatenformats mithilfe einer Metainformation, die insbesondere mithilfe einer geeigneten Schemadatei angegeben ist, festgelegt wird.
-
Es kann vorgesehen sein, dass das Bereitstellen des serialisierten Parametersatzes mithilfe von Flatbuffers insbesondere mit entsprechenden Absicherungselementen, insbesondere Prüfsummen, durchgeführt wird.
-
Gemäß einem weiteren Aspekt ist eine Vorrichtung zur Durchführung eines der obigen Verfahren vorgesehen.
-
Figurenliste
-
Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigt:
- 1 eine schematische Darstellung des Entwicklungsablaufs unter Nutzung eines Kalibrierungsverfahrens gemäß einer Ausführungsform der Erfindung.
-
Beschreibung von Ausführungsformen
-
1 zeigt schematisch den Entwicklungsprozess für die Parametrisierung eines datenbasierten Modells in einem automotiven Steuergerät. Das datenbasierte Modell kann beispielsweise in Form eines mehrlagigen Perzeptrons (MLP: Multiple-Layer Perceptron) implementiert sein. Das MLP wird durch Konfigurationsparameter konfiguriert, dass die Anzahl der Neuronenschichten und der Beschreibung jeder einzelnen Schicht, die die Anzahl der betreffenden Neuronen sowie deren Aktivierungsfunktionen umfassen kann. Auch andere Arten von datenbasierten Modellen, wie beispielsweise SVM (Support Vector Machines), CNN (convolutional neural networks), Gaußprozessmodelle und dergleichen können vorgesehen sein. Bei Gaußprozessmodellen können Hyperparameter den Konfigurationsparametern entsprechen.
-
Weiterhin ist das datenbasierte Modell durch Modellparameter bestimmt. Im Fall eines neuronalen Netzes als datenbasiertes Modell können die Modellparameter, die Gewichtungen und Bias-Werte der einzelnen Neuronen angeben. Bei einem Gaußprozess als datenbasiertes Modell können die Modellparameter als Stützstellen bzw. die Kovarianzmatrix angegeben sein.
-
Im Entwicklungsprozess soll das datenbasierte Modell des Steuergeräts durch ein- oder mehrfache Umparametrisierung oder Vorgabe geänderter Parametersätze konfiguriert werden. Der Parametersatz, der die Konfigurationsparameter und Modellparameter umfassen soll, kann beispielsweise mit einem Standarddatenformat, wie z.B. FlatBuffers, serialisiert werden, um diesen an das Steuergerät zu übertragen.
-
Die Interpretation des Standarddatenformats kann mithilfe einer Metainformation mithilfe von geeigneten Schemadateien festgelegt werden. Diese Schemadateien bilden die Grundlage für die Kalibrations-Tool-Entwicklung sowie der Implementierung des datenbasierten Modells in dem Steuergerät mithilfe der Parametersätze.
-
Andere Ausprägungen des datenbasierten Modells, wie beispielsweise in Form eines LSTM (Long Short-Term Memory) oder CNN (Convolutional Neural Network), aber auch andere datenbasierte Modelle, wie SVM (Support Vector Machines) oder Decision Tree, lassen sich in vergleichbarer Weise mit einer entsprechenden Schemainformation abbilden.
-
Das Verfahren zur Kalibrierung eines datenbasierten Modells im Entwicklungsprozess sieht zunächst vor, in Schritt S1 die Daten im Fahrzeug oder auf dem Prüfstand zu erfassen, die die Grundlage für das Training oder die Erstellung des datenbasierten Modells sind.
-
Anschließend wird in Schritt S2 in einem Kalibrierungswerkzeug, das beispielsweise mit Software Tools, wie Keras (MIT), TensorFlow (Google), ASCMO (ETAS) oder dergleichen ausgestattet ist, ein datenbasiertes Modell konfiguriert und parametrisiert, um entsprechende Konfigurationsparameter und Modellparameter für das datenbasierte Modell zu erhalten.
-
Der so erhaltene Parametersatz wird mit Hilfe eines spezifischen Exportschritts S3, der auch mithilfe geeigneter Exportier-Tools erfolgen kann, umgewandelt. Das Ergebnis ist ein serialisierter Parametersatz, wie zum Beispiel Flatbuffers mit entsprechenden Absicherungselementen, wie zum Beispiel Prüfsummen, etc.
-
Anschließend wird in Schritt S4. der so erhaltene serialisierte Parametersatz im Standard-Datenformat in ein Kalibrationsaustauschformat, wie z. B. DCM, umformatiert, insbesondere wird der Datensatz als Binary Large-Objekt im DCM codiert.
-
In Schritt S5 wird der umcodierte Parametersatz in das Steuergerät eingeschrieben und insbesondere im Steuergerät mit Hilfe eines dem Software-Standard und Richtlinien (z.B. MISRA, ASIL, Static Code Checks) entsprechend programmierten Interpreters verarbeitet.
-
Nachfolgend wird die Implementierung in Schritt S6 modifiziert und validiert. Die Verifikation des in das Steuergerät gespeicherten Parametersatz erfolgt durch insbesondere Prüfung der Prüfinformation und anschließendes Testen der implementierten Funktion des datenbasierten Modells, beispielsweise anhand von Validierungsdatensätzen oder durch eine Testanwendung.
-
Gegebenenfalls wird in dem Entwicklungsprozess zu Schritt S1 zurückgesprungen, um basierend auf neuen Trainingsdaten eine verbesserte Kalibrierung des datenbasierten Modells mithilfe von neuen Trainingsdaten vorzunehmen.