-
Die Erfindung betrifft ein Verfahren zum Ermitteln eines neuronalen Netzes. Die Erfindung betrifft des Weiteren eine Vorrichtung zum Ermitteln eines neuronalen Netzes. Die Erfindung betrifft des Weiteren ein Computerprogramm und ein computerlesbares Speichermedium zum Ermitteln eines neuronalen Netzes.
-
Die Erfindung betrifft des Weiteren ein Verfahren zum Betreiben eines Fahrzeuges. Die Erfindung betrifft des Weiteren eine Vorrichtung zum Betreiben eines Fahrzeuges. Die Erfindung betrifft des Weiteren ein Computerprogramm und ein computerlesbares Speichermedium zum Betreiben eines Fahrzeuges.
-
Ein Fahrzeug kann einen Fahrzeugbus aufweisen, der dazu ausgebildet ist, Daten und/oder Nachrichten zu übertragen. Eine zu hohe Buslast des Fahrzeugbusses kann dazu führen, dass Daten und/oder Nachrichten, die über den Fahrzeugbus übertragen werden sollen, nicht übertragen werden können. Beispielsweise kann eine sogenannte Zykluszeitverletzung auftreten. Dies kann einen sicherheitskritischer Fehler bezüglich des Fahrzeuges und/oder einen durch einen Benutzer des Fahrzeuges wahrnehmbaren Fehler bezüglich des Fahrzeuges zur Folge haben. Dadurch kann ein Zustand beim Betreiben des Fahrzeuges von einem Soll-Zustand beim Betreiben des Fahrzeuges abweichen.
-
Eine Aufgabe, die der Erfindung zugrunde liegt, ist es, ein Verfahren zu schaffen, das zu einem sicheren sowie komfortablen Betreiben eines Fahrzeuges beiträgt. Darüber hinaus sollen eine korrespondierende Vorrichtung, ein korrespondierendes Computerprogramm sowie computerlesbares Speichermedium geschaffen werden.
-
Die Aufgabe wird gelöst durch die Merkmale der unabhängigen Patentansprüche. Vorteilhafte Ausgestaltungen sind in den Unteransprüchen gekennzeichnet.
-
Gemäß einem ersten Aspekt zeichnet sich die Erfindung aus durch ein Verfahren zum Ermitteln eines neuronalen Netzes, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten.
-
Gemäß dem ersten Aspekt werden Eingangstrainingsdaten bereitgestellt. Die Eingangstrainingsdaten umfassen Kennzeichnungsinformationen von Nachrichten eines Fahrzeugbusses eines Fahrzeuges und Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten. Die Nachrichten wurden in einem ersten vorgegebenen Zeitraum über den Fahrzeugbus übertragen. Ausgangstrainingsdaten werden bereitgestellt. Die Ausgangstrainingsdaten sind repräsentativ für eine Buslast des Fahrzeugbusses in einem zweiten vorgegebenen Zeitraum. Der zweite vorgegebene Zeitraum ist zeitlich nach dem ersten vorgegebenen Zeitraum angeordnet. Abhängig von den Eingangstrainingsdaten und den Ausgangstrainingsdaten wird das neuronale Netz ermittelt. Das ermittelte neuronale Netz wird als vortrainiertes neuronales Netz gespeichert.
-
Durch das Verfahren gemäß dem ersten Aspekt ist es möglich, das neuronale Netz derart zu ermitteln, dass die Buslast des Fahrzeugbusses in dem zweiten vorgegebenen Zeitraum prädiziert werden kann.
-
Das neuronale Netz, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten ist beispielsweise ein rückgekoppeltes neuronales Netz.
-
Die Eingangstrainingsdaten und/oder die Ausgangstrainingsdaten können abhängig von Historiendaten (sogenannter „naturalistic data“), die von einem oder mehreren Fahrzeugen ermittelt wurden, ermittelt und/oder bereitgestellt werden. Das Fahrzeug gemäß dem ersten Aspekt ist eines dieser Fahrzeuge. Beispielsweise sind das eine bzw. die mehreren Fahrzeuge Teil einer Fahrzeugflotte. Beispielsweise ist das eine bzw. sind die mehreren Fahrzeuge sogenannte Entwicklungsfahrzeuge, welche zur Aufzeichnung der Historiendaten ausgebildet sind. Beispielsweise umfassen die Historiendaten Spur-Daten (sogenannte „Trace-Daten“), die repräsentativ sind für eine Aufzeichnung bzw. mehrere Aufzeichnungen einer jeweiligen Fahrzeugbuskommunikation des einen bzw. der mehreren Fahrzeuge. Eine Spur umfasst eine zeitliche Abfolge von Nachrichten, die über einen Fahrzeugbus des jeweiligen Fahrzeuges übertragen wurden, sowie den Nachrichten zugeordnete Übertragungszeitpunkte. Ein einer jeweiligen Nachricht zugeordneter Übertragungszeitpunkt kann auch als Zeitstempel der jeweiligen Nachricht bezeichnet werden.
-
Hierdurch ist es möglich, das neuronale Netz effizient und präzise zu ermitteln. Dies ist beispielsweise vorteilhaft gegenüber einem Verfahren, bei dem die Eingangstrainingsdaten und/oder die Ausgangstrainingsdaten abhängig von einer Simulation ermittelt werden.
-
Eine jeweilige Kennzeichnungsinformation einer jeweiligen Nachricht ist repräsentativ für eine Art der Nachricht. Des Weiteren ist die jeweilige Kennzeichnungsinformation einzigartig. Optional kann die jeweilige Kennzeichnungsinformation repräsentativ sein für eine Priorität der jeweiligen Nachricht bezüglich der Übertragung über den Fahrzeugbus.
-
Der Fahrzeugbus kann einen beliebigen Fahrzeugbus des Fahrzeuges umfassen, wie beispielsweise einen CAN-Bus (sogenanntes „Controller Area Network“) und/oder einen FlexRay-Bus und/oder einen MOST-Bus (sogenannter „Media Oriented Systems Transport“) und/oder einen Bus auf Basis von Ethernet und/oder ein LIN-Bus (sogenanntes „Local Interconnect Network“) oder dergleichen. Der Fahrzeugbus kann auch als Fahrzeugbussystem bezeichnet werden.
-
Beispielsweise entsprechen die Kennzeichnungsinformationen der Nachrichten des Fahrzeugbusses im Falle eines CAN-Busses den sogenannten Frame-IDs der Nachrichten. Eine Frame-ID ist repräsentativ für einen Zahlenwert, der einer Nachricht zugeordnet ist. Beispielsweise ist ein kleiner Zahlenwert der Frame-ID repräsentativ für eine hohe Priorität bezüglich der Übertragung der der Frame-ID zugeordneten Nachricht über den CAN-Bus. Beispielsweise können die Kennzeichnungsinformationen der Nachrichten des Fahrzeugbusses im Falle von anderen Fahrzeugbussen mehreren Datenfeldern der Nachrichten entsprechen.
-
Beispielsweise sind die Informationen bezüglich den zeitlichen Abständen zwischen den Nachrichten Informationen bezüglich zeitlicher Abstände zwischen den Übertragungszeitpunkten und/oder Sendezeitpunkten und/oder Empfangszeitpunkten der jeweiligen Nachrichten.
-
Beispielsweise ist der zweite vorgegebene Zeitraum zeitlich direkt nach dem ersten vorgegebenen Zeitraum angeordnet.
-
Die Buslast des Fahrzeugbusses in dem zweiten vorgegebenen Zeitraum ist repräsentativ für eine Anzahl von Nachrichten, die über den Fahrzeugbus in dem zweiten vorgegebenen Zeitraum übertragen werden. Beispielsweise sind die Ausgangstrainingsdaten repräsentativ für mehrere Buslasten des Fahrzeugbusses, wobei eine jeweilige der mehreren Buslasten einem Zeitpunkt des zweiten vorgegebenen Zeitraums zugeordnet ist. Zusätzlich oder alternativ ist die Buslast des Fahrzeugbusses in den zweiten vorgegebenen Zeitraum repräsentativ für eine Buslastrate. Die Buslastrate kann einen Wert von 0 bis 100 Prozent aufweisen. Beispielsweise wird die Buslastrate bezüglich einer Maximalbuslast des Fahrzeugbusses ermittelt. Die Maximalbuslast des Fahrzeugbusses in dem zweiten vorgegebenen Zeitraum ist repräsentativ für eine maximale Anzahl von Nachrichten die über den Fahrzeugbus in dem zweiten vorgegebenen Zeitraum übertragen werden können. Eine Buslastrate von 100 Prozent ist repräsentativ dafür, dass die Buslast der Maximalbuslast entspricht.
-
Gemäß einer optionalen Ausgestaltung des ersten Aspekts ist das neuronale Netz, das dazu ausgebildet ist zeitliche Abhängigkeiten zu verarbeiten, ein rekurrentes neuronales Netz, RNN, und/oder ein neuronales Netz mit langem Kurzzeitgedächtnis, LSTM, und/oder ein neuronales Netz mit gated-recurrent-unit, GRU.
-
Neuronale Netze, die dazu ausgebildet sind, zeitliche Abhängigkeiten zu verarbeiten, sind beispielsweise rekurrente neuronale Netze (RNN) und/oder neuronale Netze mit langem Kurzzeitgedächtnis (sogenanntes „Long short-term memory, LSTM“) und/oder neuronale Netze mit einer sogenannten „gatedrecurrent-unit (GRU)“ oder dergleichen.
-
Alternativ ist das neuronale Netz ein gefaltetes neuronales Netz (sogenanntes „Convolutional Neural Network, CNN“).
-
Hierdurch ist es möglich, das neuronale Netz effizient und präzise zu ermitteln. Des Weiteren kann hierdurch die zeitliche Abhängigkeit von Eingangsdaten des neuronalen Netzes bei der Ermittlung von Ausgangsdaten durch das neuronale Netz berücksichtigt werden. Beispielsweise ist das neuronale Netz mit der sogenannten „gated-recurrent-unit (GRU)“ in diesem Zusammenhang besonders vorteilhaft.
-
Gemäß einer weiteren optionalen Ausgestaltung des ersten Aspekts wird das neuronale Netz abhängig von einem Optimierungsverfahren ermittelt.
-
Das Optimierungsverfahren kann auch als Trainingsverfahren bezeichnet werden.
-
Das Optimierungsverfahren kann ein beliebiges Optimierungsverfahren bzw. einen beliebigen Optimierungsalgorithmus für neuronale Netze umfassen, wie beispielsweise ein sogenannter Adam-Optimierungsalgorithmus und/oder ein Gradientenabstiegsoptimierungsverfahren (sogenannter „stochastic gradient descent, SGD“) und/oder ein sogenanntes RMSprop-Optimierungsverfahren oder dergleichen.
-
Das neuronale Netz kann auch abhängig von mehreren Optimierungsverfahren ermittelt werden.
-
Hierdurch ist es möglich, das neuronale Netz effizient und präzise zu ermitteln.
-
Gemäß einer weiteren optionalen Ausgestaltung des ersten Aspekts umfasst der erste vorgegebene Zeitraum einen Zeitraum zwischen 10 und 100 ms und der zweite vorgegebene Zeitraum umfasst einen Zeitraum zwischen 1 und 10 ms.
-
Hierdurch ist es möglich, das neuronale Netz effizient und präzise zu ermitteln.
-
Insbesondere umfasst der erste vorgegebene Zeitraum einen Zeitraum von 60 ms. Insbesondere umfasst der zweite vorgegebene Zeitraum einen Zeitraum von 4 ms.
-
Gemäß dem zweiten Aspekt zeichnet sich die Erfindung aus durch ein Verfahren zum Betreiben eines Fahrzeuges.
-
Gemäß dem zweiten Aspekt wird ein vortrainiertes neuronales Netz bereitgestellt, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten. Abhängig von dem Fahrzeugbus des Fahrzeuges werden Eingangsdaten für das vortrainierte neuronale Netz bereitgestellt. Die Eingangsdaten umfassen Kennzeichnungsinformationen von Nachrichten eines Fahrzeugbusses des Fahrzeuges und Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten. Die Nachrichten wurden in einem ersten vorgegebenen Zeitraum über den Fahrzeugbus übertragen. Abhängig von den Eingangsdaten und dem vortrainierten neuronalen Netz wird eine Buslast des Fahrzeugbusses in einem zweiten vorgegebenen Zeitraum ermittelt. Der zweite vorgegebene Zeitraum ist zeitlich nach dem ersten vorgegebenen Zeitraum angeordnet. Abhängig von der ermittelten Buslast in dem zweiten vorgegebenen Zeitraum wird das Fahrzeug betrieben.
-
Beispielsweise ist das bereitgestellte vortrainierte neuronale Netz, das gespeicherte vortrainierte neuronale Netz gemäß dem ersten Aspekt und/oder dessen optionalen Ausgestaltungen.
-
Beispielsweise ist das Fahrzeug gemäß dem zweiten Aspekt unterschiedlich zu dem Fahrzeug gemäß dem ersten Aspekt. Alternativ kann das Fahrzeug gemäß dem zweiten Aspekt dem Fahrzeug gemäß dem ersten Aspekt entsprechen.
-
Durch das Verfahren gemäß dem zweiten Aspekt ist es möglich, die Buslast in dem zweiten vorgegebenen Zeitraum zu prädizieren. Somit kann die Buslast ermittelt werden, bevor beispielsweise eine Messung der Buslast erfolgen kann. Dies ist beispielsweise vorteilhaft gegenüber einer zeitlich rückwirkenden Ermittlung und/oder Messung der Buslast, die einen hohen Rechenaufwand und/oder eine komplexen Ermittlung aufweisen kann. Des Weiteren kann in diesem Fall eine hohe Buslast erst nach oder bei ihrem Auftreten ermittelt werden und somit ein dadurch ausgelöster Fehler nicht verhindert werden.
-
Die Ermittlung einer derartigen Prädiktion der Buslast kann zur Erkennung von einem Fehler beim Betreiben des Fahrzeuges verwendet werden. In weiterer Folge kann dadurch ein Beitrag zur Vermeidung von dem Fehler beim Betreiben des Fahrzeuges geleistet werden, wodurch eine Verkehrssicherheit des Fahrzeuges erhöht wird. Des Weiteren kann dadurch eine Zufriedenheit eines Benutzers des Fahrzeuges erhöht werden. Des Weiteren kann dadurch ein Komfort beim Betreiben des Fahrzeuges für den Benutzer erhöht werden.
-
Ein derartiger Fehler beim Betreiben des Fahrzeuges kann beispielsweise auftreten, wenn eine Nachricht nicht oder zu spät (sogenannte „Zykluszeitverletzung“) über den Fahrzeugbus übertragen wird. In weiterer Folge, kann beispielsweise eine Fahrzeugfunktion, die abhängig von dieser Nachricht ausgeführt werden soll nicht ordnungsgemäß ausgeführt werden. Dies kann insbesondere dann der Fall sein, wenn mehrere Nachrichten, die zu einem gleichen Zeitpunkt über den Fahrzeugbus übertragen werden sollen, eine gleiche Priorität bezüglich ihrer Übertragung über den Fahrzeugbus aufweisen und/oder die Buslast des Fahrzeugbusses bereits hoch ist (sogenannte „Buslastspitze“) bezüglich einer Maximalbuslast des Fahrzeugbus.
-
Das Verfahren gemäß dem zweiten Aspekt wird beispielsweise in dem Fahrzeug in Echtzeit zu einem Zeitpunkt t0 ausgeführt. In diesem Fall ist der erste vorgegebene Zeitraum repräsentativ für Zeitpunkte, die zeitlich vor t0 angeordnet sind, wie beispielsweise Zeitpunkte t-1, t-2, t-3 oder dergleichen. Zusätzlich kann der der erste vorgegebene Zeitraum den Zeitpunkt t0 umfassen. Der zweite vorgegebene Zeitraum ist in diesem Fall repräsentativ für Zeitpunkte, die zeitlich nach t0 angeordnet sind, wie beispielsweise Zeitpunkte t+1, t+2, t+3 oder dergleichen.
-
Der erste vorgegebene Zeitraum und/oder der zweite vorgegebene Zeitraum gemäß dem zweiten Aspekt können dieselben Eigenschaften aufweisen, wie der erste vorgegebene Zeitraum und/oder der zweite vorgegebene Zeitraum gemäß dem ersten Aspekt.
-
Der Fahrzeugbus, die Kennzeichnungsinformation, die Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten und die Buslast gemäß dem zweiten Aspekt können dieselben Eigenschaften aufweisen, wie der Fahrzeugbus, die Kennzeichnungsinformation, die Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten und die Buslast gemäß dem ersten Aspekt.
-
Beispielsweise wird das Fahrzeug abhängig von der ermittelten Buslast in dem zweiten vorgegebenen Zeitraum und einem vorgegebenen Buslastgrenzwert und/oder der Maximalbuslast betrieben. Der vorgegebene Buslastgrenzwert ist repräsentativ für einen Wert der Buslast, bei dem kein Fehler bezüglich des Betreibens des Fahrzeuges auftritt und/oder bei dem eine Auswirkung des Fehlers bezüglich des Betreibens des Fahrzeuges minimal ist.
-
Beispielsweise umfasst das Betreiben des Fahrzeuges abhängig von der ermittelten Buslast eine Buslastanalyse. Die Buslastanalyse ist kann dazu ausgebildet sein, eine Information zu ermitteln, die repräsentativ ist für eine Ursache der ermittelten Buslast. Die Buslastanalyse kann ein Verfahren für interpretierbares maschinelles Lernen (sogenanntes „Interpretable Machine Learning“) umfassen.
-
Gemäß einer optionalen Ausgestaltung des zweiten Aspekts werden die Eingangsdaten abhängig von dem Fahrzeugbus iterativ bereitgestellt, wenn eine weitere Nachricht über den Fahrzeugbus übertragen wird.
-
Hierdurch ist es möglich, die Prädiktion der Buslast lückenlos zu ermitteln.
-
Beispielsweise wird eine jeweilige weitere Nachricht in einem Bereich von einer bis wenigen Millisekunden über den Fahrzeugbus übertragen.
-
Gemäß einer weiteren optionalen Ausgestaltung des zweiten Aspekts wird das Fahrzeug abhängig von der ermittelten Buslast derart betrieben, dass abhängig von der ermittelten Buslast ein Busteilnehmer des Fahrzeugbusses, zur Anpassung der Übertragung von Nachrichten über den Fahrzeugbus durch den Busteilnehmer, ermittelt wird.
-
Hierdurch ist es möglich, einen Beitrag zur Vermeidung des Fehlers beim Betreiben des Fahrzeuges zu leisten, wodurch eine Verkehrssicherheit des Fahrzeuges erhöht wird. Des Weiteren kann dadurch die Zufriedenheit des Benutzers des Fahrzeuges erhöht werden. Des Weiteren kann dadurch der Komfort beim Betreiben des Fahrzeuges für den Benutzer erhöht werden.
-
Beispielsweise wird der Busteilnehmer abhängig von der ermittelten Buslast und/oder dem vorgegebenen Buslastgrenzwert und/oder der Maximalbuslast ermittelt.
-
Beispielsweise umfasst die Anpassung der Übertragung von Nachrichten über den Fahrzeugbus durch den Busteilnehmer die Ermittlung eines Steuerbefehls, der repräsentativ ist für die Anpassung der Übertragung von Nachrichten über den Fahrzeugbus durch den Busteilnehmer. Der Steuerbefehl kann dem Busteilnehmer bereitgestellt werden. Zusätzlich oder alternativ kann der Busteilnehmer abhängig von dem Steuerbefehl stummgeschalten werden bezüglich des Fahrzeugbusses. Stummschalten des Busteilnehmers bezüglich des Fahrzeugbusses ist repräsentativ dafür, dass der Busteilnehmer beispielsweise keine weitere Nachricht über den Fahrzeugbus übertragen kann.
-
Eine derartige Stummschaltung des Busteilnehmers kann beispielsweise für den zweiten vorgegebenen Zeitraum und/oder für vorgegebene Zeitpunkte des zweiten vorgegebenen Zeitraums und/oder für einen dritten vorgegebenen Zeitraum oder dergleichen erfolgen.
-
Zusätzlich oder alternativ umfasst die Anpassung der Übertragung von Nachrichten über den Fahrzeugbus durch den Busteilnehmer eine Anpassung der Kennzeichnungsinformation einer oder mehrere Nachrichten, die durch den Busteilnehmer übertragen werden können. Insbesondere kann eine Art der jeweiligen Nachricht und/oder eine Priorität der jeweiligen Nachricht bezüglich der Übertragung über den Fahrzeugbus angepasst werden. Beispielsweise kann dies abhängig von der Buslastanalyse erfolgen.
-
Der Busteilnehmer ist beispielsweise ein Steuergerät des Fahrzeuges und/oder ein Sensor des Fahrzeuges und/oder ein Aktor des Fahrzeuges oder dergleichen.
-
Beispielsweise können auch mehrere Busteilnehmer des Fahrzeugbusses, zur Anpassung der Übertragung von Nachrichten über den Fahrzeugbus durch die jeweiligen Busteilnehmer, ermittelt werden.
-
Gemäß einem dritten Aspekt zeichnet sich die Erfindung aus durch eine Vorrichtung, wobei die Vorrichtung dazu ausgebildet ist, das Verfahren zum Ermitteln eines neuronalen Netzes und/oder eine optionale Ausgestaltung des Verfahrens zum Ermitteln eines neuronalen Netzes und/oder das Verfahren zum Betreiben eines Fahrzeuges und/oder eine optionale Ausgestaltung des Verfahrens zum Betreiben eines Fahrzeuges auszuführen.
-
Gemäß einem vierten Aspekt zeichnet sich die Erfindung aus durch ein Computerprogramm, wobei das Computerprogramm Anweisungen umfasst, die, wenn das Computerprogramm von einem Computer ausgeführt wird, den Computer dazu veranlassen das Verfahren zum Ermitteln eines neuronalen Netzes und/oder eine optionale Ausgestaltung des Verfahrens zum Ermitteln eines neuronalen Netzes und/oder das Verfahren zum Betreiben eines Fahrzeuges und/oder eine optionale Ausgestaltung des Verfahrens zum Betreiben eines Fahrzeuges durchzuführen.
-
Gemäß einem fünften Aspekt zeichnet sich die Erfindung aus durch ein computerlesbares Speichermedium, auf dem das Computerprogramm gemäß dem vierten Aspekt gespeichert ist.
-
Optionale Ausgestaltungen des ersten Aspekts können auch entsprechend bei den weiteren Aspekten vorhanden sein und entsprechende Wirkungen aufweisen.
-
Beispielsweise kann bzw. können das Verfahren gemäß dem ersten Aspekt und dessen optionalen Ausgestaltungen und/oder das Verfahren gemäß dem zweiten Aspekt und dessen optionalen Ausgestaltungen sinngemäß auf andere Anwendungsbereiche angewandt werden, wie beispielsweise um den Datenverkehr in einem beliebigen Netzwerk und/oder einem Rechenzentrum zu prädizieren und entsprechende Maßnahmen frühzeitig zu ermitteln.
-
Das Verfahren gemäß dem ersten Aspekt und dessen optionalen Ausgestaltungen und/oder das Verfahren gemäß dem zweiten Aspekt und dessen optionalen Ausgestaltungen kann bzw. können unabhängig von einer Busspezifikation des Fahrzeugbusses und/oder unabhängig von einer Nachrichtenspezifikation der Nachrichten ausgeführt werden.
-
Das Verfahren gemäß dem ersten Aspekt und dessen optionalen Ausgestaltungen und/oder das Verfahren gemäß dem zweiten Aspekt und dessen optionalen Ausgestaltungen kann bzw. können sinngemäß auf zukünftige hier nicht genannte Fahrzeugbusse bzw. Bussystem angewandt werden.
-
Ausführungsbeispiele der Erfindung sind im Folgenden anhand der schematischen Zeichnungen näher erläutert.
-
Es zeigen:
- 1 eine schematische Zeichnung eines verteilten Systems,
- 2 ein Ablaufdiagramm eines ersten Programms zum Ermitteln eines neuronalen Netzes, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten, und
- 3 ein Ablaufdiagramm eines zweiten Programms zum Betreiben eines Fahrzeuges.
-
Elemente gleicher Konstruktion oder Funktion sind figurenübergreifend mit den gleichen Bezugszeichen gekennzeichnet.
-
Die 1 zeigt eine schematische Zeichnung eines verteilten Systems. Das verteilte System umfasst ein Fahrzeug 10.
-
Das Fahrzeug 10 weist eine erste Verarbeitungsvorrichtung 11 auf. Die erste Verarbeitungsvorrichtung 11 umfasst beispielsweise ein erstes Steuergerät des Fahrzeuges 10 und/oder einen ersten Sensor des Fahrzeuges 10 und/oder einen ersten Aktor des Fahrzeuges 10 oder dergleichen.
-
Des Weiteren weist das Fahrzeug 10 eine zweite Verarbeitungsvorrichtung 12 auf. Die zweite Verarbeitungsvorrichtung 12 umfasst beispielsweise ein zweites Steuergerät des Fahrzeuges 10 und/oder einen zweiten Sensor des Fahrzeuges 10 und/oder einen zweiten Aktor des Fahrzeuges 10 oder dergleichen.
-
Des Weiteren weist das Fahrzeug 10 eine dritte Verarbeitungsvorrichtung 13 auf. Die dritte Verarbeitungsvorrichtung 13 umfasst beispielsweise ein drittes Steuergerät des Fahrzeuges 10 und/oder einen dritten Sensor des Fahrzeuges 10 und/oder einen dritten Aktor des Fahrzeuges 10 oder dergleichen.
-
Des Weiteren weist das Fahrzeug 10 einen Fahrzeugbus 15 auf. Der Fahrzeugbus 15 kann einen beliebigen Fahrzeugbus des Fahrzeuges 10 umfassen, wie beispielsweise einen CAN-Bus (sogenanntes „Controller Area Network“) und/oder einen FlexRay-Bus und/oder einen MOST-Bus (sogenannter „Media Oriented Systems Transport“) und/oder ein Bus auf Basis von Ethernet und/oder ein LIN-Bus (sogenanntes „Local Interconnect Network“) oder dergleichen.
-
Des Weiteren weist das Fahrzeug 10 eine Vorrichtung 17 auf. Beispielsweise weist die Vorrichtung 17 ein vortrainiertes neuronales Netz auf und ist dazu ausgebildet, abhängig von dem vortrainierten neuronalen Netz eine Buslast des Fahrzeugbusses 15 zu ermitteln. Beispielsweise können der Vorrichtung 17 abhängig von dem Fahrzeugbus 15 Kennzeichnungsinformationen von Nachrichten des Fahrzeugbusses 15 und Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten bereitgestellt werden.
-
Die erste Verarbeitungsvorrichtung 11, die zweite Verarbeitungsvorrichtung 12, die dritte Verarbeitungsvorrichtung 13 und die Vorrichtung 17 sind über den Fahrzeugbus 15 signaltechnisch miteinander gekoppelt.
-
Beispielsweise weisen die erste Verarbeitungsvorrichtung 11, die zweite Verarbeitungsvorrichtung 12, die dritte Verarbeitungsvorrichtung 13 und die Vorrichtung 17 dafür entsprechende Kommunikationsschnittstellen auf.
-
Die erste Verarbeitungsvorrichtung 11 und/oder die zweite Verarbeitungsvorrichtung 12 und/oder die dritte Verarbeitungsvorrichtung 13 sind dazu ausgebildet, Nachrichten über den Fahrzeugbus 15 zu übertragen bzw. zu empfangen. Die erste Verarbeitungsvorrichtung 11 und/oder die zweite Verarbeitungsvorrichtung 12 und/oder die dritte Verarbeitungsvorrichtung 13 können auch als Busteilnehmer bezeichnet werden.
-
Die 2 zeigt ein Ablaufdiagramm eines ersten Programms zum Ermitteln eines neuronalen Netzes, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten.
-
Das erste Programm kann insbesondere von einer ersten Vorrichtung ausgeführt werden. Die erste Vorrichtung weist hierfür insbesondere eine erste Recheneinheit, einen ersten Programm- und ersten Datenspeicher, sowie beispielsweise eine oder mehrere erste Kommunikationsschnittstellen auf. Der erste Programm- und erste Datenspeicher und/oder die erste Recheneinheit und/oder die ersten Kommunikationsschnittstellen können in einer Baueinheit und/oder verteilt auf mehrere Baueinheiten ausgebildet sein. Die erste Vorrichtung ist beispielsweise die Vorrichtung 17.
-
Auf dem ersten Programm- und ersten Datenspeicher der ersten Vorrichtung ist hierfür insbesondere das erste Programm gespeichert.
-
Das erste Programm wird in einem Schritt S101 gestartet, in dem gegebenenfalls Variablen initialisiert werden können.
-
In einem Schritt S103 werden Eingangstrainingsdaten bereitgestellt. Die Eingangstrainingsdaten umfassen Kennzeichnungsinformationen von Nachrichten eines Fahrzeugbusses eines Fahrzeuges und Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten. Die Nachrichten wurden in einem ersten vorgegebenen Zeitraum über den Fahrzeugbus übertragen.
-
Optional umfasst in dem Schritt S103 der erste vorgegebene Zeitraum einen Zeitraum zwischen 10 und 100 ms.
-
Beispielsweise umfasst der erste vorgegebene Zeitraum einen Zeitraum von 60 ms.
-
In einem Schritt S105 werden Ausgangstrainingsdaten bereitgestellt. Die Ausgangstrainingsdaten sind repräsentativ für eine Buslast des Fahrzeugbusses in einem zweiten vorgegebenen Zeitraum. Der zweite vorgegebene Zeitraum ist zeitlich nach dem ersten vorgegebenen Zeitraum angeordnet.
-
Optional umfasst in dem Schritt S105 der zweite vorgegebene Zeitraum einen Zeitraum zwischen 1 und 10 ms.
-
Beispielsweise umfasst der zweite vorgegebene Zeitraum einen Zeitraum von 4 ms.
-
In einem Schritt S107 wird abhängig von den Eingangstrainingsdaten und den Ausgangstrainingsdaten das neuronale Netz, das dazu ausgebildet ist zeitliche Abhängigkeiten zu verarbeiten, ermittelt.
-
Optional ist in dem Schritt S107 das neuronale Netz, das dazu ausgebildet ist zeitliche Abhängigkeiten zu verarbeiten, ein rekurrentes neuronales Netz, RNN, und/oder ein neuronales Netz mit langem Kurzzeitgedächtnis, LSTM, und/oder ein neuronales Netz mit gated-recurrent-unit, GRU.
-
Optional wird in dem Schritt S107 das neuronale Netz abhängig von einem Optimierungsverfahren ermittelt.
-
Beispielsweise ist das Optimierungsverfahren ein sogenannter Adam-Optimierungsalgorithmus.
-
In einem Schritt S109 wird das ermittelte neuronale Netz als vortrainiertes neuronales Netz gespeichert.
-
Im Anschluss an den Schritt S109 wird das erste Programm in dem Schritt S111 beendet und kann gegebenenfalls wieder in dem Schritt S101 gestartet werden.
-
Die 3 zeigt ein Ablaufdiagramm eines zweiten Programms zum Betreiben eines Fahrzeuges 10.
-
Das zweite Programm kann insbesondere von einer zweiten Vorrichtung ausgeführt werden. Die zweite Vorrichtung weist hierfür insbesondere eine zweite Recheneinheit, einen zweiten Programm- und zweiten Datenspeicher, sowie beispielsweise eine oder mehrere zweite Kommunikationsschnittstellen auf. Der zweite Programm- und zweite Datenspeicher und/oder die zweite Recheneinheit und/oder die zweiten Kommunikationsschnittstellen können in einer Baueinheit und/oder verteilt auf mehrere Baueinheiten ausgebildet sein.
-
Beispielsweise ist die zweite Vorrichtung die Vorrichtung 17.
-
Auf dem zweiten Programm- und zweiten Datenspeicher der zweiten Vorrichtung ist hierfür insbesondere das zweite Programm gespeichert.
-
Das zweite Programm wird in einem Schritt S201 gestartet, in dem gegebenenfalls Variablen initialisiert werden können.
-
In einem Schritt S203 wird ein vortrainiertes neuronales Netz bereitgestellt, das dazu ausgebildet ist, zeitliche Abhängigkeiten zu verarbeiten.
-
In einem Schritt S205 werden abhängig von dem Fahrzeugbus 15 des Fahrzeuges 10 Eingangsdaten für das vortrainierte neuronale Netz bereitgestellt. Die Eingangsdaten umfassen Kennzeichnungsinformationen von Nachrichten eines Fahrzeugbusses 15 des Fahrzeuges 10 und Informationen bezüglich zeitlicher Abstände zwischen den Nachrichten. Die Nachrichten wurden in einem ersten vorgegebenen Zeitraum über den Fahrzeugbus 15 übertragen.
-
Optional werden in dem Schritt S205 die Eingangsdaten abhängig von dem Fahrzeugbus 15 iterativ bereitgestellt, wenn eine weitere Nachricht über den Fahrzeugbus 15 übertragen wird.
-
In einem Schritt S207 wird abhängig von den Eingangsdaten und dem vortrainierten neuronalen Netz eine Buslast des Fahrzeugbusses 15 in einem zweiten vorgegebenen Zeitraum ermittelt. Der zweite vorgegebene Zeitraum ist zeitlich nach dem ersten vorgegebenen Zeitraum angeordnet.
-
In einem Schritt S209 wird abhängig von der ermittelten Buslast in dem zweiten vorgegebenen Zeitraum das Fahrzeug 10 betrieben.
-
Optional wird in dem Schritt S209 das Fahrzeug 10 abhängig von der ermittelten Buslast derart betrieben, dass abhängig von der ermittelten Buslast ein Busteilnehmer des Fahrzeugbusses 15 zur Anpassung der Übertragung von Nachrichten über den Fahrzeugbus 15 durch den Busteilnehmer ermittelt wird.
-
Beispielsweise wird der Busteilnehmer abhängig von der ermittelten Buslast und einem vorgegebenen Buslastgrenzwert ermittelt.
-
Beispielsweise ist der ermittelte Busteilnehmer die erste Verarbeitungsvorrichtung 11.
-
Beispielsweise wird ein Steuerbefehl ermittelt, der repräsentativ ist für die Anpassung der Übertragung von Nachrichten über den Fahrzeugbus 15 durch den Busteilnehmer.
-
Beispielsweise wird der Steuerbefehl dem Busteilnehmer bereitgestellt und der Busteilnehmer abhängig von dem Steuerbefehl stummgeschalten bezüglich des Fahrzeugbusses 15.
-
Im Anschluss an den Schritt S209 wird das erste Programm in dem Schritt S211 beendet und kann gegebenenfalls wieder in dem Schritt S201 oder dem Schritt S205 gestartet werden.