-
Die vorliegende Erfindung betrifft ein Verfahren zum Ermitteln von Freigabebedingungen für eine Funktion sowie eine Recheneinheit und ein Computerprogramm zu dessen Durchführung.
-
Hintergrund der Erfindung
-
Bei der Steuerung und Regelung verschiedener Fahrzeugfunktionen ist es häufig nötig, eine bestimmte Funktion abhängig von Freigabebedingungen zu machen. Beispielsweise könnte ein Diagnoseverfahren, das einen bestimmten Motorparameter überwacht, nur innerhalb bestimmter Grenzen bzw. unter bestimmten Betriebsbedingungen aussagekräftig sein. Werte, die an anderen Betriebspunkten gewonnen werden, sollten dann nicht weiterverwendet werden. Ebenso ist denkbar, dass eine bestimmte aktive Funktion, wie die Ausführung einer Messung, oder andere Funktionen nur durchgeführt werden sollen, wenn bestimmte Betriebsbedingungen vorliegen. Vor dem Durchführen der jeweiligen Funktionsschritte wird also geprüft, ob bestimmte Parameter in einem Bereich liegen, in dem die Funktion gültig ist.
-
Als Beispiel kann eine Funktion zur Schätzung der eingespritzten Kraftstoffmenge in einem Verbrennungsmotor mit Common-Rail-Einspritzsystem mittels eines neuronalen Netzes betrachtet werden, wie sie in der
DE 10 2018 213 114 A1 beschrieben ist. Dort wird ein trainierbares Funktionsmodell verwendet, um aus verschiedenen Parametern wie Drehzahl, Raildruck und Sollmenge die Kraftstoffmenge zu bestimmen.
-
Zur Definition eines gültigen Betriebsbereichs einer Funktion werden üblicherweise Grenzwerte oder durch obere und untere Schwellwerte eingegrenzte Bereiche definiert. Ebenso werden auch Kennfelder eingesetzt. Sofern mehrere Eingangsparameter verwendet werden, ist so nur ein gültiger Betriebsbereich möglich, dessen Grenzen orthogonal zueinander stehen. Falls beispielsweise zwei Parameter berücksichtigt werden, für die jeweils ein oberer und ein unterer Grenzwert festgelegt sind, wird damit ein rechteckiger Raum des gültigen Betriebsbereichs aufgespannt.
-
Offenbarung der Erfindung
-
Erfindungsgemäß werden ein Verfahren zur Definition von Freigabebedingungen für ein Funktionsmodell sowie eine Recheneinheit und ein Computerprogramm zu dessen Durchführung mit den Merkmalen der unabhängigen Patentansprüche vorgeschlagen. Vorteilhafte Ausgestaltungen sind Gegenstand der Unteransprüche sowie der nachfolgenden Beschreibung.
-
Insbesondere wird ein Verfahren vorgeschlagen, bei dem zunächst ein Funktionsmodell mit bekannten Ergebniswerten für mehrere vorgegebene Referenz-Betriebspunkte trainiert wird, wobei das Funktionsmodell zum Ausgeben eines Ergebniswerts in Abhängigkeit von einem Betriebspunkt eingerichtet ist, und wobei ein Betriebspunkt jeweils durch zwei oder mehr Parameter bestimmt ist. Die vorgegebenen Referenz-Betriebspunkte werden dann zum Trainieren eines Freigabemodells verwendet, wobei das Freigabemodell dazu eingerichtet ist, eine optimale Abgrenzung zwischen mindestens einem ersten Bereich und mindestens einem zweiten Bereich eines Vektorraums zu ermitteln, wobei der Vektorraum durch die zwei oder mehr Parameter definiert ist. Dabei umfasst der erste Bereich die mehreren vorgegebenen Referenz-Betriebspunkte, und der zweite Bereich umfasst dagegen keinen der mehreren vorgegebenen Referenz-Betriebspunkte. Auf dieser Basis kann dann, in Abhängigkeit von der ermittelten Abgrenzung, festgelegt werden, ob ein Ergebniswert des Funktionsmodells an einem bestimmten Betriebspunkt gültig oder nicht gültig ist.
-
Insbesondere kann dann gemäß einer möglichen Ausführungsform ein Ergebniswert des Funktionsmodells als gültig festgelegt werden, wenn sich der zugehörige Betriebspunkt, an dem der Ergebniswert gebildet wurde, in dem ersten Bereich befindet.
-
Indem die Referenz-Betriebspunkte, also Punkte aus dem Betriebsbereich, der zum Training des Funktionsmodells genutzt wurde, zum Training eines weiteren Freigabemodells genutzt werden, kann auch eine komplexe Abgrenzung des gültigen Betriebsbereichs in Freigabebedingungen übersetzt werden. Da für die Freigabe nur von Interesse ist, ob ein Betriebspunkt in einem gültigen Betriebsbereich liegt oder nicht, reicht hier eine binäre Klassifizierung des Betriebsbereichs aus. Mit der Nutzung des Freigabemodells kann sichergestellt werden, dass die Funktion nur im trainierten und damit zuverlässigen Bereich genutzt wird.
-
Zusätzlich oder alternativ kann der erste Bereich auch noch abgeändert werden. Es kann dann ein korrigierter erster Bereich durch Addieren oder Subtrahieren eines Abstandswerts zu der ermittelten Abgrenzung zwischen dem ersten und dem zweiten Bereich gebildet werden, wobei ein Ergebniswert des Funktionsmodells als gültig festgelegt wird, wenn der zugehörige Betriebspunkt, an dem der Ergebniswert gebildet wurde, sich in dem korrigierten ersten Bereich befindet. Auf diese Weise erhält man Freigabebedingungen, die den gültigen Betriebsbereich sicher im trainierten Bereich halten und einen definierten Randbereich ausschließen.
-
Das vorliegende Verfahren kann insbesondere mit einem Freigabemodell durchgeführt werden, das eine „Support Vector Machine“ (SVM) umfasst. Diese Methode bietet eine zuverlässige Möglichkeit, auch in mehreren Dimensionen (d.h. bei Betriebspunkten, die durch mehrere Parameter definiert sind) und bei nichtlinearen Klassengrenzen die optimale Abgrenzung zu finden. Eine SVM dient als Klassifikator und Regressor und unterteilt eine Menge von Objekten so in Klassen, dass um die Klassengrenzen herum ein möglichst breiter Bereich frei von Objekten bleibt; sie ist ein sogenannter „Large Margin Classifier“ (dt. „Breiter-Rand-Klassifikator“).
-
Darüber hinaus kann das Verfahren auch das Bilden von bekannten Ergebniswerten für vorgegebene Referenz-Betriebspunkte umfassen, also das Bilden von Trainingsdaten, wobei die Ergebniswerte durch eines oder mehrere der folgenden gebildet werden: Berechnen des Ergebniswerts aus einem oder mehreren Eingabewerten, Bilden des Ergebniswerts als Klassifizierung von einem oder mehreren Eingabewerten, und Messen von einem oder mehreren Ergebniswerten durch Messeinrichtungen. Beispielsweise können bestimmte Werte auf einem Prüfstand an definierten Betriebspunkten gemessen werden.
-
Vor dem Bilden der Trainingsdaten kann auch zunächst ein allgemeiner Trainingsraum festgelegt werden, der also ein Unterraum des durch die Parameter definierten Vektorraums ist. Anschließend können Referenz-Betriebspunkte zum Bilden der Trainingsdaten innerhalb dieses Trainingsraums festgelegt werden. Der Trainingsraum kann beispielsweise aus bekannten Betriebs- bzw. Fahrprofilen abgeleitet werden. Bevorzugt können die mehreren vorgegebenen Referenz-Betriebspunkte so festgelegt werden, dass sie möglichst gleichmäßig über den Trainingsraum verteilt sind. Dazu können beispielsweise pseudorandomisierte Verteilungen oder eine Sobol-Verteilung genutzt werden.
-
Mit der Einteilung der Betriebsbereiche in gültige und ungültige Bereiche für eine bestimmte Funktion kann dann beispielsweise im aktiven Betrieb ein Ergebniswert des Funktionsmodells für einen aktuellen Betriebspunkt ermittelt werden, und falls dieser aktuelle Betriebspunkt als nicht gültig festgelegt wurde, kann der Ergebniswert verworfen werden. Zusätzlich oder alternativ kann vorgesehen sein, dass eine beliebige Funktion nur dann ausgeführt wird, falls ein aktueller Betriebspunkt als gültig festgelegt wird.
-
Das Verfahren kann grundsätzlich für beliebige Freigabestrukturen angewendet werden. Besonders vorteilhaft ist die Anwendung aber mit einem Funktionsmodell, das ebenfalls trainiert wird, wie etwa einem nicht-parametrischen Funktionsmodell oder einem neuronalen Netz. Solche Modelle können außerhalb des trainierten Bereichs ungenaue oder unzuverlässige Ergebnisse liefern. Durch die Festlegung des trainierten Bereichs mit Hilfe eines Freigabemodells kann sichergestellt werden, dass die Ergebnisse des Funktionsmodells nur im trainierten Bereich angewendet werden.
-
Zur Verwendung der Abgrenzung, die von dem Freigabemodell ermittelt wurde, kann beispielsweise ein Datensatz aus Freigabebedingungen gebildet werden. Ein solcher Datensatz kann beispielsweise eine Zuordnung zwischen Betriebspunkten und einer Festlegung als ungültiger oder gültiger Betriebspunkt umfassen. Dieser Datensatz kann dann wiederum auf einem Steuergerät oder einer anderen Steuereinheit zur Freigabe der jeweiligen Funktionen genutzt werden.
-
Eine erfindungsgemäße Recheneinheit, z.B. ein Steuergerät eines Kraftfahrzeugs, ist, insbesondere programmtechnisch, dazu eingerichtet, ein erfindungsgemäßes Verfahren durchzuführen.
-
Auch die Implementierung eines erfindungsgemäßen Verfahrens in Form eines Computerprogramms oder Computerprogrammprodukts mit Programmcode zur Durchführung aller Verfahrensschritte ist vorteilhaft, da dies besonders geringe Kosten verursacht, insbesondere wenn ein ausführendes Steuergerät noch für weitere Aufgaben genutzt wird und daher ohnehin vorhanden ist. Schließlich ist ein maschinenlesbares Speichermedium vorgesehen mit einem darauf gespeicherten Computerprogramm wie oben beschrieben. Geeignete Speichermedien bzw. Datenträger zur Bereitstellung des Computerprogramms sind insbesondere magnetische, optische und elektrische Speicher, wie z.B. Festplatten, Flash-Speicher, EEPROMs, DVDs u.a.m. Auch ein Download eines Programms über Computernetze (Internet, Intranet usw.) ist möglich. Ein solcher Download kann dabei drahtgebunden bzw. kabelgebunden oder drahtlos (z.B. über ein WLAN-Netz, eine 3G-, 4G-, 5G- oder 6G-Verbindung, etc.) erfolgen.
-
Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und der beiliegenden Zeichnung.
-
Die Erfindung ist anhand von Ausführungsbeispielen in der Zeichnung schematisch dargestellt und wird im Folgenden unter Bezugnahme auf die Zeichnung beschrieben.
-
Figurenliste
-
- 1 zeigt beispielhaft einen durch eine „Support Vector Machine“ (SVM) definierten Betriebsbereich in zwei Dimensionen;
- 2 zeigt Datenpunkte in einem zweidimensionalen SVM-Modell, in dem ein Bereich innerhalb eines gültigen Bereichs ausgenommen ist;
- 3 zeigt ein weiteres Beispiel eines durch eine SVM definierten Betriebsbereichs in drei Dimensionen; und
- 4 zeigt Verfahrensschritte eines beispielhaften Verfahrensablaufs.
-
Ausführungsformen der Erfindung
-
Anstelle von Schwellwerten und Kennfeldern kann gemäß einer Ausführungsform der Erfindung zur Definition gültiger Betriebsbereiche für eine Funktion, z.B. eine Funktion in einem Steuergerät eines Fahrzeugs, eine „Support Vector Machine“ (SVM) verwendet werden. Dabei handelt es sich um ein Verfahren zur Klassifizierung einer Menge von Objekten, das insbesondere für das maschinelle Lernen eingesetzt werden kann. Im vorliegenden Fall kann dabei jedes Objekt einer Kombination von Parameterwerten entsprechen und durch einen Vektor in einem Vektorraum repräsentiert werden. Grundsätzlich können die nachfolgend beschriebenen Verfahrensschritte für jede Art von Freigabestruktur verwendet werden, in der ein gültiger Betriebsbereich für eine auszuführende Funktion festgelegt werden soll. Als Beispiele seien etwa die Bestimmung der Einspritzkraftstoffmenge in einem Verbrennungsmotor abhängig vom Relativdruckverlauf genannt, oder generell verschiedene Verfahren der Onboard-Diagnose.
-
Eine SVM dient dabei generell zur Klassifizierung von Daten. Ziel einer Klassifizierung ist immer, anhand vorhandener Daten oder Datenzuordnungen zu entscheiden, welcher Klasse ein neues Datenobjekt zugeordnet werden soll. Zu diesem Zweck können bekannte Daten, deren Klassenzuordnung bekannt ist, als Trainingsdaten genutzt werden, auf deren Grundlage dann ein Klassifizierungsmodell gebildet wird. Da keine kontinuierlichen Werte für einen ganzen Bereich vorliegen, sondern die Trainingsdaten aus einzelnen, diskreten Datenobjekten bestehen, ist es von besonderer Bedeutung, wo genau die Grenze bzw. Grenzen zwischen den verschiedenen Klassen bei der Klassifizierung gezogen werden. Eine SVM beruht darauf, Klassengrenzen bzw. Trennungsebenen (Hyperebenen) zu finden, die möglichst weit von den nächstliegenden Objekten der jeweiligen Klassen entfernt sind.
-
Anhand einer trainierten SVM kann dann im aktiven Betrieb für jedes aktuelle Datenobjekt (z.B. eine Kombination bestimmter gemessener oder modellierter Parameterwerte) bestimmt werden, ob dieses sich in einem gültigen oder ungültigen Betriebsbereich befindet. 1 zeigt ein Beispiel für eine SVM mit zweidimensionalem Betriebsbereich für eine Funktion, so dass also der Betriebsbereich durch die Werte zweier Parameter x und y bestimmt wird. Im vorgenannten Beispiel der Modellierung einer eingespritzten Kraftstoffmenge kann beispielsweise auf der x-Achse die Motordrehzahl und auf der y-Achse der Raildruck, also der Druck in dem gemeinsamen Kraftstoffspeicher bzw. der gemeinsamen Zuleitung zu den Einspritzdüsen mehrerer Zylinder aufgetragen werden. Diese beiden Parameter definieren dann jeweils in Kombination einen Betriebspunkt, d.h. ein Datenobjekt in dem beschriebenen Vektorraum.
-
Dabei soll die Funktion (z.B. das modellierte Ergebnis der Kraftstoffmenge) nur in dem Betriebsbereich aktiv sein, der in 1 durch durchgezogene Linien 102 dargestellt ist, während alle Werte außerhalb dieses Bereichs als ungültiger Betriebsbereich gelten sollen, in der Figur durch gestrichelte Linien 104 dargestellt. Die breit dargestellte Linie 110 bildet dabei die Grenze zwischen dem gültigen und dem ungültigen Betriebsbereich. Damit können also komplexe Strukturen für die Definition von Betriebsbereichen für eine Funktion dargestellt werden. Diagnosewerte, die nicht innerhalb des gültigen Betriebsbereichs bestimmt wurden, können dann beispielsweise verworfen werden, oder es kann festgelegt werden, dass eine Funktion nicht ausgeführt wird, wenn die Parameter nicht innerhalb des gültigen Betriebsbereichs liegen.
-
2 zeigt ein weiteres Beispiel für die Definition eines unregelmäßigen, zweidimensionalen gültigen Betriebsbereichs 202. In diesem Fall soll auch ein Bereich 205 innerhalb des gültigen Bereichs zusätzlich als ungültiger Bereich definiert werden. Somit wird durch die Klassengrenzen 210 und 211 ein unregelmäßiger ringförmiger Bereich 202 gebildet, innerhalb dessen die Betriebspunkte liegen, an denen die zugehörige Funktion gültig ist. Betriebspunkte außerhalb 204 dieses Bereichs, also außerhalb der Linie 210, sowie im innen zusätzlich ausgenommenen Bereich 205, also innerhalb der Linie 211, sollen als nicht-gültig klassifiziert werden. Die Betriebspunkte im gültigen Bereich sind als Punkte dargestellt, während die Betriebspunkte in den ungültigen Bereichen als Kreuze dargestellt sind.
-
3 zeigt einen ähnlich wie in 2 definierten Betriebsbereich, der aber hier dreidimensional aufgespannt ist, also drei Parameter zur Definition der Betriebspunkte umfasst. Auch hier ist ein äußerer Bereich 304 als ungültig festgelegt und ein weiterer, innenliegender Bereich 305 zusätzlich ausgenommen. Die Betriebspunkte im gültigen Bereich sind als Punkte dargestellt, während die Betriebspunkte in den ungültigen Bereichen als Kreuze dargestellt sind. Man erhält im gezeigten Beispiel also einen gültigen Betriebsbereich 302, der näherungsweise einer Kugelschale entspricht, wobei es sich versteht, dass diese Bereiche auch deutlich komplexer und asymmetrisch ausgeformt sein können. Generell ist auch die Anzahl der verwendbaren Dimensionen nicht begrenzt, so dass auch komplexe Bedingungen für die Freigabe einer Funktion definiert werden können.
-
In den Figuren ist eine nichtlineare Trennung zwischen den gültigen und nichtgültigen Betriebsbedingungen gezeigt. Grundsätzlich sind aber auch lineare Klassengrenzen ebenso möglich.
-
Die Verwendung einer SVM zur Definition von Freigabebedingungen eignet sich insbesondere bei der Verwendung von Methoden des maschinellen Lernens für die freizugebende Funktion. In den meisten Fällen liefern solche Methoden, z.B. neuronale Netze, nur innerhalb des trainierten Bereichs gute Ergebnisse. Der trainierte Bereich entspricht dabei den Betriebspunkten, die als Trainingsdaten für das neuronale Netz genutzt werden. Dagegen liefert eine Funktion auf Basis eines neuronalen Netzes in Bereichen außerhalb der Trainingsdaten häufig unzuverlässige bzw. schlechte Ergebnisse. Es ist in solchen Fällen also besonders wichtig, zuverlässig zu bestimmen, ob die erhaltenen Ergebnisse (z.B. die Ausgaben des neuronalen Netzes) des Funktionsmodells gültig sind. Als gültig können dann Werte bestimmt werden, die innerhalb des trainierten Bereichs erhalten wurden, während alle Betriebspunkte außerhalb des trainierten Bereichs als ungültig festgelegt werden können. Falls aktuelle Parameterwerte einem Betriebspunkt entsprechen, der als außerhalb oder ungültig klassifiziert wird, können dann die Ergebniswerte des neuronalen Netzes (also die Ausgabewerte der eigentlichen, freizugebenden Funktion) verworfen werden oder auch gar nicht erst bestimmt werden.
-
Die Verwendung einer SVM zur Prüfung von Freigabebedingungen kann aber auch in anderen Fällen genutzt werden, in denen kein maschinelles Lernen in der freizugebenden Funktion angewendet wird. Der trainierte Bereich ergibt sich auch dann aus den Daten, die zur Modellbildung bzw. zur Festlegung der Funktion genutzt wurden.
-
Die Bildung einer SVM zum Prüfen von Freigabebedingungen wird im Folgenden beispielhaft unter Bezug auf die Verfahrensschritte in 4 beschrieben. Dabei sollen Freigabebedingungen erstellt werden, anhand derer entschieden werden kann, ob das Ergebnis eines Funktionsmodells an einem bestimmten Betriebspunkt gültig ist oder nicht. Der Begriff des Funktionsmodells ist hier breit zu verstehen und kann jedes Modell bzw. jede Funktion umfassen, die sich auf bestimmte bekannte Referenz-Daten stützt, wie etwa ein nicht-parametrisches Funktionsmodell oder auch ein neuronales Netz, das mit vorgegebenen, also bekannten Trainingsdaten trainiert wird.
-
Dabei kann zunächst in Schritt 410 ein Trainingsraum 412 für das Funktionsmodell, also der Bereich, der während der Datenerfassung für die Trainingsdaten abgedeckt werden soll, festgelegt werden. Diese Festlegung kann beispielsweise einfache Grenzwerte für einen breiten Bereich umfassen, z.B. durch Festlegung von Grenzen für die einzelnen Parameter, die die Vektorkomponenten des Vektorraums bilden. Der Trainingsraum kann beispielsweise auf der Grundlage realer Fahrprofile eines Fahrzeugs gebildet werden und bildet einen breiten Bereich, in dem das Funktionsmodell später verwendet werden soll. Die Parameter dieses Bereichs könnten also beispielsweise alle im Fahrbetrieb real vorkommenden Motorgeschwindigkeiten, Drücke, Temperaturen etc. umfassen.
-
Anschließend kann in Schritt 420 festgelegt werden, welche Referenz-Betriebspunkte 422 in diesem Trainingsraum 412 zum Training des Funktionsmodells verwendet werden sollen. Die Referenz-Betriebspunkte können generell frei gewählt werden. Bevorzugt können für ein optimales Training die verwendeten Referenz-Betriebspunkte zur Ermittlung von Trainingsdaten so gelegt werden, dass sie den gesamten interessierenden Betriebsbereich möglichst gleichmäßig abdecken. Eine Möglichkeit, um möglichst gleichmäßig verteilte Referenz-Betriebspunkte innerhalb des festgelegten Trainingsraums zu definieren, besteht beispielsweise in der Verwendung einer Sobol-Verteilung, die grundsätzlich im Fach bekannt ist. Es sind aber auch andere Möglichkeiten denkbar, um eine gleichmäßige Verteilung zu definieren.
-
Alternativ oder zusätzlich können aber auch andere Faktoren bei der Auswahl der Referenz-Betriebspunkte zum Training berücksichtigt werden, z.B. ob an diesen Betriebspunkten auf einfache und kosteneffiziente Weise sinnvolle Messwerte zu ermitteln sind, oder ob ein Modell an diesen Betriebspunkten zuverlässige Daten liefern kann. Es ist ebenso möglich, solche Faktoren bereits bei der Festlegung des Trainingsraums in Schritt 410 mit einfließen zu lassen.
-
An den festgelegten Referenz-Betriebspunkten 422 werden dann in Schritt 430 die entsprechenden Trainingsdaten 432 erfasst bzw. erzeugt. Dies kann beispielsweise durch Messung von bestimmten Messwerten an einem Prüfstand mit definierten Betriebsbedingungen erfolgen. Ebenso ist es je nach Art des Funktionsmodells auch möglich, dass Trainingsdaten in diesem Schritt für jeden der festgelegten Referenz-Betriebspunkte modelliert werden, oder dass die Trainingsdaten eine Kombination aus gemessenen und modellierten Daten umfassen.
-
So wird ein Datensatz aus modellierten und/oder gemessenen Trainingsdaten, also bekannten Referenz-Ergebniswerten für das Funktionsmodell erzeugt, der möglichst alle der festgelegten Referenz-Betriebspunkte im Trainingsraum abdeckt. Mit diesem Datensatz von Trainingsdaten kann dann in Schritt 440 das zu trainierende Funktionsmodell trainiert werden. Als Beispiel könnte mit den Trainingsdaten ein neuronales Netz trainiert werden, welches einen Modellwert einer eingespritzten Kraftstoffmasse im Fahrzeugmotor berechnen soll. In diesem Fall könnten als Eingangswerte die Parameter Drehzahl, Raildruck, Einspritzbeginnwinkel und Sollmenge verwendet werden. Selbstverständlich sind jedoch auch andere Parameter wählbar.
-
Darüber hinaus kann nun in Schritt 450 ein zusätzliches Freigabemodell trainiert werden, wobei als Trainingsdaten für das Freigabemodell die Referenz-Betriebspunkte 422 verwendet werden, die zuvor in Schritt 420 für die Erzeugung der Trainingsdaten für das Funktionsmodell festgelegt wurden. Als Freigabemodell kann insbesondere eine SVM wie zuvor beschrieben genutzt werden. Dabei werden bevorzugt alle Betriebspunkte, an denen Trainingsdaten erzeugt wurden, als ‚gültig‘ vorklassifiziert. Das Freigabemodell kann also mit diesen Daten eine optimale mehrdimensionale Klassengrenze zwischen zwei Bereichen bilden, wobei in einem ersten Bereich alle Betriebspunkte enthalten sind, an denen Trainingsdaten für das Funktionsmodell erzeugt wurden, also alle Referenz-Betriebspunkte. Dagegen soll der zweite Bereich frei von Betriebspunkten sein, an denen Trainingsdaten für das Funktionsmodell erfasst wurden. Das Freigabemodell beschreibt also den Betriebsbereich, der zum Training des Funktionsmodells verwendet wurde.
-
Durch das so trainierte Freigabemodell kann dann eine Bereichsgrenze zwischen gültigen und ungültigen Betriebspunkten ermittelt werden, so dass bei Eingabe der Parameter eines beliebigen Betriebspunkts (d.h. der Vektorkomponenten des zugehörigen Datenobjekts) das trainierte Freigabemodell eine Klassifizierung als gültiger oder ungültiger Betriebspunkt ausgeben kann. Als einfachste Variante kann die gefundene Klassengrenze zwischen Trainingsbereich und Nicht-Trainingsbereich einer Einteilung in gültige und nichtgültige Betriebspunkte entsprechen, so dass alle Betriebspunkte im ersten Bereich des Freigabemodells als gültig klassifiziert werden.
-
Es ist aber auch möglich, die durch das Freigabemodell gefundenen Klassengrenzen zunächst noch zu korrigieren oder abzuändern, bevor daraus die endgültigen Freigabebedingungen abgeleitet werden. Beispielsweise könnte optional ein Sicherheitsabstand definiert werden, um den die Grenze zwischen dem ersten und dem zweiten Bereich verschoben wird. Damit wird nicht mehr der gesamte trainierte bzw. zur Bildung des Funktionsmodells genutzte Bereich als zulässiger Betriebsbereich berücksichtigt. Dabei kann beispielsweise zusätzlich ein fest definierter Randbereich innerhalb des trainierten Bereichs als ungültiger Betriebsbereich definiert werden, so dass der gültige Betriebsbereich kleiner ist als der Bereich, aus dem die Trainingsdaten stammen. Auf diese Weise erhält man eine konservative Freigabebedingung, bei der zwar manche Betriebspunkte innerhalb des trainierten Bereichs als außerhalb bzw. ungültig klassifiziert werden, aber im Gegenzug alle außerhalb des trainierten Bereichs liegenden Betriebspunkte auch zuverlässig als ungültig klassifiziert werden. Damit kann sichergestellt werden, dass nur sicher gültige Betriebspunkte verwendet werden, also möglichst wenig falsch-positive Ergebnisse erhalten werden. Grundsätzlich ist natürlich auch eine Verschiebung der Klassengrenze in die umgekehrte Richtung möglich, so dass der gültige Bereich vergrößert wird.
-
In Schritt 460 kann optional aus diesem Freigabemodell ein Datensatz aus Freigabebedingungen erstellt werden, der von einer geeigneten Recheneinheit, z. B. einem Steuergerät, welches die Funktion umsetzt, verwendet werden kann. Dazu kann beispielsweise eine Freigabefunktion in Abhängigkeit von den Betriebspunktparametern gebildet werden. Das üblicherweise rechenintensive Freigabemodell selbst, d.h. die SVM, muss damit nicht zwingend im eigentlichen Steuergerät oder einer sonstigen Einheit, in der die Freigabebedingungen angewendet werden sollen, implementiert sein, sondern kann separat davon verwendet werden, um die Freigabebedingungen in einem vorherigen Schritt z.B. herstellerseitig festzulegen. Bei der Verwendung der Freigabefunktion in einem Fahrzeug, zum Beispiel zur Freigabe von Diagnosefunktionen, kann der Datensatz aus Freigabebedingungen beispielsweise im Motorsteuergerät vorab abgespeichert sein. Es ist aber auch möglich, dass separate Steuergeräte für bestimmte Funktionen vorhanden sind, z.B. für die Ansteuerung und Diagnose eines Abgasreinigungssystems, und dass die Freigabebedingungen von solchen weiteren Steuergeräten angewandt werden. Grundsätzlich ist auch möglich, dass die Freigabebedingungen durch eine andere Einheit überprüft wird als die, in der das Funktionsmodell ausgeführt bzw. angewendet wird. So könnten Ergebnisse des Funktionsmodells für bestimmte Betriebspunkte von einer Recheneinheit an eine andere übermittelt werden und dort auf Einhaltung der Freigabebedingungen überprüft werden.
-
Wenn für einen bestimmten Betriebspunkt festgestellt wird, dass die Freigabebedingungen nicht erfüllt sind, dass also dieser Betriebspunkt sich im zweiten, als ungültig klassifizierten Bereich befindet, dann kann abhängig davon beispielsweise das Ergebnis des Funktionsmodells (z.B. eines neuronalen Netzes) für diesen ungültigen Betriebspunkt nicht weiterverwendet bzw. verworfen werden. Alternativ ist auch möglich, dass in diesem Fall für einen ungültigen Betriebspunkt überhaupt kein Ergebniswert des Funktionsmodells bestimmt wird. Auch allgemeinere Freigaben sind denkbar, wie etwa, dass eine bestimmte Funktion eines Steuergeräts (z.B. ein Filterabbrand) nur durchgeführt wird, wenn die aktuellen Parameterwerte für vorgegebene Parameter einem gültigen Betriebspunkt entsprechen.
-
Falls für das Funktionsmodell vorgesehen ist, dass zu einem späteren Zeitpunkt weitere Trainingsdaten verwendet werden, das Funktionsmodell also beispielsweise im Betrieb aktiv nachtrainiert wird, kann auf der Basis der zusätzlichen und der ursprünglichen Trainingsdaten erneut das Verfahren zur Ermittlung der Freigabebedingungen durchgeführt werden. Falls in der Vorrichtung keine ausreichenden Ressourcen bereitstehen, um ein aktualisiertes Freigabemodell zu bestimmen, können die zusätzlichen Trainingsdaten optional auch an eine andere Einheit übermittelt werden, wo dann die Freigabebedingungen auf Basis des Freigabemodells neu erstellt und anschließend zurückgesendet werden.
-
Das hier beschriebene Verfahren zur Bestimmung von Freigabebedingungen kann praktisch für jede Art von Freigabestruktur verwendet werden, wenn sich der gültige Betriebsbereich nicht einfach durch Schwellwerte eingrenzen lässt bzw. eingeschränkt werden soll. Insbesondere ist das Verfahren nicht auf bestimmte Funktionsmodelle oder trainierte Funktionsmodelle beschränkt, sondern kann immer eingesetzt werden, wenn für eine Funktion eine Reihe von Referenz-Betriebspunkten bekannt ist, auf deren Grundlage die Funktion festgelegt wurde. Die Anzahl der möglichen Eingangsdimensionen ist theoretisch nicht begrenzt; es ist aber möglich, dass aufgrund von Speicherbedarf sowie benötigter Rechenzeit ein Kompromiss zwischen Selektivität, Sensitivität und Ressourcenbedarf gefunden werden muss.
-
Generell könnte anstelle einer SVM auch ein anderes Verfahren genutzt werden, das eine nicht-lineare Klassifizierung in einem mehrdimensionalen Raum ermöglicht. Da sich die SVM aber insbesondere auf die kritischen Punkte nahe an den Klassengrenzen stützt, kann damit eine gute Festlegung des gültigen Betriebsbereichs getroffen werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 102018213114 A1 [0003]