DE102019121589A1 - Verfahren zur Bestimmung einer Sensorkonfiguration - Google Patents

Verfahren zur Bestimmung einer Sensorkonfiguration Download PDF

Info

Publication number
DE102019121589A1
DE102019121589A1 DE102019121589.7A DE102019121589A DE102019121589A1 DE 102019121589 A1 DE102019121589 A1 DE 102019121589A1 DE 102019121589 A DE102019121589 A DE 102019121589A DE 102019121589 A1 DE102019121589 A1 DE 102019121589A1
Authority
DE
Germany
Prior art keywords
sensor
real
sensors
procedure according
determined
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102019121589.7A
Other languages
English (en)
Inventor
Rafael Fietzek
Stéphane Gérard Louis Albert Foulard
Ousama Esbel
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Compredict GmbH
Original Assignee
Compredict GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Compredict GmbH filed Critical Compredict GmbH
Priority to DE102019121589.7A priority Critical patent/DE102019121589A1/de
Priority to CN202080070877.1A priority patent/CN114556248A/zh
Priority to EP20753353.0A priority patent/EP4010769A1/de
Priority to PCT/EP2020/072196 priority patent/WO2021028322A1/en
Publication of DE102019121589A1 publication Critical patent/DE102019121589A1/de
Priority to US17/667,214 priority patent/US20220164660A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B23/00Testing or monitoring of control systems or parts thereof
    • G05B23/02Electric testing or monitoring
    • G05B23/0205Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
    • G05B23/0259Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
    • G05B23/0297Reconfiguration of monitoring system, e.g. use of virtual sensors; change monitoring method as a response to monitoring results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/211Selection of the most significant subset of features
    • G06F18/2113Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2134Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis
    • G06F18/21345Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on separation criteria, e.g. independent component analysis enforcing sparsity or involving a domain transformation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0019Control system elements or transfer functions
    • B60W2050/0028Mathematical models, e.g. for simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2132Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on discrimination criteria, e.g. discriminant analysis
    • G06F18/21322Rendering the within-class scatter matrix non-singular
    • G06F18/21326Rendering the within-class scatter matrix non-singular involving optimisations, e.g. using regularisation techniques

Abstract

Verfahren zum Bestimmen einer Sensorkonfiguration in einem Fahrzeug, das eine Vielzahl von Sensoren enthält, mit den folgenden Schritten: Bestimmen einer vorläufigen Sensorkonfiguration für das Fahrzeug, wobei die Sensorkonfiguration eine erste Anzahl von realen Sensoren enthält, von denen jeder ein reales Sensorsignal ausgibt; Bestimmen, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann; Ändern der vorläufigen Sensorkonfiguration in eine endgültige Sensorkonfiguration, die eine zweite Anzahl von realen Sensoren und mindestens einen virtuellen Sensor enthält, wobei die zweite Anzahl kleiner als die erste Anzahl ist.

Description

  • Die vorliegende Erfindung bezieht sich auf ein Verfahren zur Bestimmung einer Sensorkonfiguration in einem Fahrzeug, das eine Vielzahl von Sensoren umfasst.
  • Moderne Fahrzeuge verfügen über eine Vielzahl von Sensoren zur Erfassung einer Vielzahl von Zustandsgrößen, wie z.B. Drehzahlen von Rädern, von Wellen, von Zahnrädern etc., Temperatur, Kraft, Drehmoment, Spannung, Strom, Beschleunigung um Rollachse, um Nickachse, um Gierachse etc. Darüber hinaus enthalten Fahrzeuge manchmal Sensoren, die den Standort des Fahrzeugs oder den Abstand des Fahrzeugs zu anderen Fahrzeugen oder zu Hindernissen bestimmen. Andere Sensoren sind Kameras, die visuelle oder nicht-visuelle Bilder erfassen, z.B. Rückfahrkameras, Infrarotkameras usw.. Die Sensoren basieren auf einer Vielzahl unterschiedlicher Technologien, wie z.B. Drehgeber, Temperaturfühler, Voltmeter, Radar-Sender und -Empfänger, CCD-Chips, etc.
  • Die große Anzahl von Sensoren in einem Fahrzeug trägt zum Gewicht, zur Komplexität und zu den Kosten des Fahrzeugs bei.
  • Die vorliegende Erfindung zielt darauf ab, die oben genannten Probleme zumindest teilweise zu lösen.
  • Die obige Aufgabe wird durch ein Verfahren zum Bestimmen einer Sensorkonfiguration in einem Fahrzeug erreicht, das eine Vielzahl von Sensoren enthält, mit den folgenden Schritten: Bestimmen einer vorläufigen Sensorkonfiguration für das Fahrzeug, wobei die Sensorkonfiguration eine erste Anzahl von realen Sensoren enthält, von denen jeder ein reales Sensorsignal ausgibt; Bestimmen, ob wenigstens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann; und Ändern der vorläufigen Sensorkonfiguration in eine endgültige Sensorkonfiguration, die eine zweite Anzahl von realen Sensoren und wenigstens einen virtuellen Sensor enthält, wobei die zweite Anzahl kleiner als die erste Anzahl ist.
  • Ein echter bzw. realer Sensor ist eine Hardware, die eine bestimmte Zustandsgröße misst, insbesondere eine physikalische Einheit, wie z.B. eine Drehgeschwindigkeit, eine Kraft, ein Drehmoment, Licht usw.
  • Ein virtueller Sensor ist ein Softwaremodul, das mindestens ein Messsignal von einem realen Sensor und optional weitere Parameter und/oder Variablen oder Signale empfängt und aus diesen Eingaben einen physikalischen Zielwert („target value“), vorzugsweise in Echtzeit, berechnet.
  • Die Grundidee der vorliegenden Erfindung besteht darin, eine optimale Sensorkonfiguration sowohl hinsichtlich realer als auch virtueller Sensoren des Fahrzeugs zu finden, d.h. möglichst viele reale Sensoren durch virtuelle Sensoren zu ersetzen und möglichst ein Optimum zwischen der durch die virtuellen Sensoren erreichbaren Genauigkeit und den durch reale Sensoren verursachten Kosten zu finden.
  • Der Schritt zur Bestimmung, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, schließt vorzugsweise den Einsatz künstlicher Intelligenz ein, insbesondere den Einsatz von Technologie des maschinellen Lernens.
  • In vielen Fällen werden reale Sensorsignale aufgezeichnet und dann ausgewertet. Die Aufzeichnung der realen Sensorsignale kann während einer Testfahrt des Fahrzeugs erfolgen, wobei die Auswertung der aufgezeichneten realen Sensorsignale anschließend auf einem stationären Evaluationscomputer erfolgt.
  • In einer alternativen Ausführungsform wird die Aufzeichnung der realen Sensorsignale während einer Testfahrt des Fahrzeugs durchgeführt, wobei die Evaluation bzw. Auswertung der aufgezeichneten realen Sensorsignale und der Ersatz mindestens eines der realen Sensoren durch einen virtuellen Sensor während der Testfahrt auf einem mobilen Evaluationscomputer durchgeführt wird.
  • Darüber hinaus ist es möglich, mindestens einen Schritt von Aufzeichnen der realen Sensorsignale, Evaluation der aufgezeichneten realen Sensorsignale und Ersatz mindestens eines der realen Sensoren durch einen virtuellen Sensor auf einem Simulationsrechner durchzuführen.
  • Der Einsatz eines mobilen Evaluationscomputers hat den Vorteil, dass die Auswirkungen des Austauschs eines realen Sensors auf das Fahrzeugverhalten unmittelbar erfahrbar werden. Zum anderen hat der Einsatz eines Simulationsrechners den Vorteil, dass auf reale Testfahrten verzichtet werden kann.
  • In einigen Auswertebeispielen wird der Schritt der Bestimmung, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, nicht für jeden der realen Sensoren durchgeführt. Vielmehr können einige der realen Sensoren als „unersetzlich“ kategorisiert werden, z.B. aufgrund von Sicherheitsüberlegungen. Zweitens sind einige Sensoren sehr billig und haben ein geringes Gewicht. Daher könnte man erwägen, die Bewertung, ob ein bestimmter realer Sensor durch einen virtuellen Sensor ersetzt werden kann, nur dann durchzuführen, wenn der reale Sensor ein bedeutendes Gewicht hat und/oder erhebliche Kosten verursacht. Weiterhin können einige reale Sensoren in bestimmten Umgebungen als „muss ersetzt werden“ definiert werden. Dies gilt z.B. für Entwicklungsumgebungen, in denen die vorläufige Sensorkonfiguration nicht nur Sensoren umfasst, die in dem zu produzierenden Fahrzeug realisiert werden sollen. Vielmehr können solche Entwicklungsumgebungen auch Sensoren umfassen, die nur zu Entwicklungszwecken aufgebaut und angeschlossen werden. Diese „Entwicklungssensoren“ sind im Serienfahrzeug nicht mehr verfügbar und gelten daher als „muss ersetzt werden”.
  • Darüber hinaus kann die Genauigkeit des virtuellen Sensors eine relevante Überlegung sein, ebenso wie eine Zeitverzögerung, die ein virtueller Sensor im Vergleich zum realen Sensor haben könnte. Die Zeitverzögerung kann durch komplexe Berechnungen auf der Grundlage der Eingaben in den virtuellen Sensor verursacht werden. Andererseits sind einige virtuelle Sensoren möglicherweise nicht so genau wie der reale Sensor, der durch diesen virtuellen Sensor ersetzt wird. Der Genauigkeitsverlust und die Zeitverzögerung können einen Einfluss auf das Fahrzeugverhalten haben, das in einigen Fällen ebenfalls analysiert und bewertet werden muss, um festzustellen, ob der Ersatz eines realen Sensors möglich ist oder nicht. Die Frage, ob ein realer Sensor durch einen virtuellen Sensor ersetzt werden kann, ist daher oft kein klares Ja oder Nein, sondern eine Frage der Berücksichtigung mehrerer Randbedingungen, die zusätzlich gewichtet werden können, um zu einer bevorzugten endgültigen Sensorkonfiguration zu gelangen.
  • Darüber hinaus ist es zwar möglich, einen realen Sensor aus Kostengründen zu ersetzen, aber die vorliegende Erfindung könnte auch dazu verwendet werden, nicht einen realen Sensor zu ersetzen, sondern einen sekundären - virtuellen - Sensor für den realen Sensor zu schaffen, um die Redundanz und möglicherweise die Sicherheit der Sensorkonfiguration zu verbessern.
  • Die Aufgabe der Erfindung wird daher vollständig gelöst.
  • In einer bevorzugten Ausführungsform umfasst der Bestimmungsschritt die Aufzeichnung der realen Sensorsignale mindestens einer Teilmenge der ersten Anzahl realer Sensoren, die Auswertung der aufgezeichneten realen Sensorsignale, um zu bestimmen, ob mindestens ein erster der realen Sensoren durch einen ersten virtuellen Sensor ersetzt werden kann, der mindestens ein reales Sensorsignal von einem zweiten realen Sensor empfängt und ein virtuelles Sensorsignal ausgibt, das das reale Sensorsignal des ersten realen Sensors emuliert.
  • Wie oben diskutiert, kann der Auswertungsschritt in einer Anzahl von unterschiedlichen Schritten durchgeführt werden.
  • In einer bevorzugten Ausführungsform umfasst der Auswertungsschritt die Verwendung einer Boltzmann-Maschine mit einer Anzahl sichtbarer Knoten, wobei jeder sichtbare Knoten einen realen Sensor darstellt, und mit einer Anzahl verborgener Knoten, wobei die verborgenen Knoten durch Auswertung bzw. Ausnutzung von Kombinationen von Knoten berechnet werden.
  • Die Verwendung einer Boltzmann-Maschine im Auswertungsschritt ist ein Brute-Force-Ansatz. Bei der Boltzmann-Maschine handelt es sich um ein ungerichtetes generatives stochastisches neuronales Netz, das die Wahrscheinlichkeitsverteilung über seinen Satz von Eingaben lernen kann. Sie ist immer in der Lage, verschiedene Zustände eines Systems zu erzeugen.
  • Eine Boltzmann-Maschine ist unter der Annahme von unendlichen Trainingsdaten in der Lage, jedes System mit vielen Zuständen darzustellen. Im vorliegenden Fall stellt das System zunächst die vorläufige Sensorkonfiguration dar. Die sichtbaren Knoten sind Merkmale/Eingänge in das System, die die realen Sensoren im Fahrzeug sind. Die verborgenen Knoten sind zu trainierende Knoten, die die Kombination der sichtbaren Knoten identifizieren und ausnutzen. Im Wesentlichen versucht eine Boltzmann-Maschine zu lernen, wie sich die Knoten gegenseitig beeinflussen, indem sie die Gewichte in ihren Kanten schätzt (Kanten ähneln den bedingten Wahrscheinlichkeitsverteilungen).
  • Theoretisch ist die Boltzmann-Maschine, sobald das Modell trainiert ist, in der Lage, alle Sensoren zu rekonstruieren, wenn nur ein Sensor verwendet wird. Mit anderen Worten, dieser theoretische Ansatz würde zu einem Konzept führen, bei dem nur ein einziger physikalischer Sensor erforderlich ist, um alle anderen Sensoren in einem Fahrzeug zu konstruieren.
  • Während die Boltzmann-Maschine in der Theorie ein großartiges Modell ist und viele Probleme lösen kann, ist sie in der Praxis sehr schwer zu implementieren. Dies liegt an der Rechenleistung, da die Erhöhung der Anzahl der Knoten zu einer exponentiellen Zunahme der Kanten/Verbindungen führt. Wenn eine vorläufige Sensorkonfiguration 200 Sensoren in einem Fahrzeug verwendet und weitere 400 versteckte Knoten hinzugefügt werden, dann wird die Anzahl der Kanten zu 600x(600-1)/2 = 179.700 Kanten.
  • Daher wird typischerweise eine eingeschränkte („restricted“) Boltzmann-Maschine (RBM) verwendet, bei der Knoten desselben Typs nicht miteinander verbunden sind. Dieses Konzept wird verwendet, um die Leistung mit der Fähigkeit zur Ausführung der Berechnungen zu tauschen bzw. gegeneinander abzuwägen. Die RBM wird auf die gleiche Weise wie die Boltzmann-Maschine trainiert und prädiziert („predicted“), wobei ein kontrastiver Divergenz-Algorithmus verwendet wird.
  • Eine Boltzmann-Maschine und eine Restricted-Boltzmann-Maschine sind Strukturen, die die zeitliche Abhängigkeit in einer Zeitreihe möglicherweise nicht respektieren bzw. beachten. Daher ist die verwendete Boltzmann-Maschine vorzugsweise eine Recurrent Temporal Restricted Boltzmann-Machine. Diese Boltzmann-Maschine kann nämlich bei der Behandlung von Signalen und Zeitreihen verwendet werden. Die Recurrent Temporal Restricted Boltzmann-Machine (RTRBM) verwendet wiederkehrende Neuronen („Recurrent Neurons“) als Speicherzellen, die sich den Pfad merken, und verwendet eine Rückpropagation durch die Zeit in einem kontrastiven Divergenz-Algorithmus, um das Modell zu trainieren. Ein sehr fortschrittlicher und leistungsfähiger Typ eines RTRMB ist eine RNN-Gauß-Dynamik-Boltzmann-Maschine, die vorzugsweise zur Modellierung der Sensorkonfiguration verwendet wird.
  • Im Allgemeinen, und wie oben erläutert, ist der Schritt der Bestimmung, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, eine Funktion der Genauigkeit des virtuellen Sensors und/oder des Fahrverhaltens des Fahrzeugs und/oder der Kosten des zu ersetzenden realen Sensors.
  • Hier ist es bevorzugt, wenn die Genauigkeit des virtuellen Sensors und/oder das Fahrverhalten des Fahrzeugs und/oder die Kosten des zu ersetzenden realen Sensors gewichtet und zu einem Zielwert berechnet werden.
  • Die obigen Konzepte zur Bestimmung, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, basieren mehr oder weniger auf einem Brute-Force-Ansatz. Es gibt aber auch Möglichkeiten, diesen Schritt auf der Basis einer Kausationsanalyse („causation analysis“) durchzuführen.
  • Dementsprechend ist es vorzuziehen, wenn der Bestimmungsschritt das Erfassen und Aufzeichnen der Ausgaben mindestens einer Teilmenge der realen Sensoren für eine vorbestimmte Anzahl von vorübergehend aufeinander folgenden Abtastschritten und die Durchführung einer Kausationsanalyse umfasst, die Kausationsbeziehungen zwischen den aufgezeichneten Ausgaben der realen Sensoren bestimmt.
  • Der Begriff Kausation oder Kausalität ist als eine Beziehung zwischen Ursachen und Wirkungen zu verstehen. Die grundlegende Frage bei diesem Ansatz ist, ob und in welchem Ausmaß ein realer Sensor eine Wirkung auf einen anderen realen Sensor hat bzw. verursacht. Die Begriffe Kausation, Kausalität und Korrelation werden innerhalb dieser Anwendung in austauschbarer Weise verwendet. Für jeden dieser Begriffe ist die weiteste Auslegung anzuwenden.
  • Wenn in der vorliegenden Anmeldung ein Sensorausgang einen anderen Sensorausgang verursacht („causes“), bedeutet dies im Wesentlichen, dass der andere Sensorausgang von dem einen Sensorausgang abhängig ist.
  • Vorzugsweise werden die Ausgänge von allen Sensoren der vorläufigen Sensorkonfiguration zu einem Algorithmus geleitet, der entscheidet, ob Sensoren ersetzt werden können, und der vorzugsweise dazu in der Lage ist, ein Modell des Sensors (der virtuelle Sensor) zu erstellen, der den realen Sensor ersetzt.
  • In einer bevorzugten Ausführungsform kann davon ausgegangen werden, dass die vorläufige Sensorkonfiguration einen Sensorraum X bildet. Ein Abhängigkeitsgraph, der die Abhängigkeiten zwischen den realen Sensoren oder die Kausationen zwischen den realen Sensoren widerspiegelt, hat eine Vielzahl von Kanten (edges''), die durch die folgende Aussage gebildet werden können: { x , y X ; E x , y = C ( x , y ) + f | x y }
    Figure DE102019121589A1_0001
  • In dieser Aussage ist C eine bivariate Kausationsfunktion, ist f ein Straffaktor, der z.B. Kosten- oder Sicherheitsaspekte (wie Redundanz) berücksichtigt, und sind Ex,y die Koeffizienten der Kanten.
  • Einige Maße bzw. Messungen, die kausale Beziehungen messen sollen, sind Granger-Kausalität, Transferentropie, Conversion Cross Mapping und Mutual Information, während Korrelationen durch Pearson-Autokorrelationsalgorithmen geschätzt werden können.
  • Für jedes genannte Maß ist eine maximale Verzögerung („lag“)(Verschiebung) anzugeben. Die Verzögerung entspricht typischerweise einer bestimmten Anzahl von zeitlich-räumlichen Stichproben. Bei einer Verzögerung kann die Anzahl der Abtastwerte verschiedener Sensoren unterschiedlich sein, da verschiedene Sensoren unterschiedliche Abtastfrequenzen haben können. Wenn z.B. ein Signal eine Abtastzeit von 10 ms hat (entsprechend einer Abtastfrequenz von 100 Hz) und ein anderes Signal eine Abtastzeit von 100 ms, dann würde eine Verzögerung von 10 für das erste Signal eine betrachtete Zeitspanne von 100 ms bedeuten, für das zweite Signal eine Zeitspanne von 1 s. Für alle Kausationsberechnungen spielt es keine Rolle, ob die Signale die gleiche Zeitbasis haben oder nicht. Dies kann aber für ein späteres Training eines virtuellen Sensors letztlich relevant sein.
  • Das Ergebnis der Kausationsmetriken ist eine Matrix, die vorzugsweise die Beziehungen zwischen den Sensoren enthält. Die Beziehungen oder Werte oder Kausationen der Matrix sind vorzugsweise so normiert oder standardisiert, dass eine maximale Kausation den Wert 1 und eine minimale Kausation den Wert 0 hat.
  • In einer bevorzugten Ausführung werden die Kausationen zwischen den aufgezeichneten Ausgaben der realen Sensoren für mindestens eine Teilmenge der Abtastungen bestimmt, wobei die für die Teilmenge der Abtastungen bestimmten Kausationen einer Nachbearbeitung unterzogen werden, um einen endgültigen Kausationssatz oder eine endgütige Kausationsmatrix zwischen den aufgezeichneten Ausgaben des realen Sensors zu bestimmen.
  • Eine Teilmenge von Abtastungen bzw. Abtastwerten kann als ein Signalvektor der Form [lag ; now] definiert werden, wobei lag < oder = max lag.
  • Weiterhin wird in einer bevorzugten Ausführungsform auf der Grundlage der ermittelten Kausationen ein Directed Cyclic Graph (DCG) erstellt. Die Gewichte in den gerichteten Kanten erklären, „wie viel der Sensor den anderen Sensor verursacht/ mit dem anderen Sensor korreliert“. Man kann Zyklen in einem Graphen mit Hilfe eines Depth-First-Search (DFS)-Algorithmus erkennen.
  • Um herauszufinden, welcher reale Sensor am besten ersetzt werden kann, ist es bevorzugt, den DCG in einen gerichteten azyklischen Graph (Directed Acyclic Graph, DAG) umzuwandeln, wobei entweder der reale Sensor mit der höchsten oder der mit der niedrigsten Kausation als Wurzel für den DAG genommen wird.
  • Man kann einige Algorithmen verwenden, um den DCG in den DAG umzuwandeln. Eine andere Strategie wäre, einfach den am stärksten abhängigen Sensor als Wurzel zu nehmen und von dort aus den Baum aufzubauen.
  • Der gerichtete azyklische Graph ist ein Baum mit einer Wurzel, einem Stamm und schließlich Blättern. Zum Beispiel können Sensoren ersetzt werden, indem die Blätter am Knoten des Baumes entfernt werden. Jeder Sensor an den Blättern durchläuft eine Modell-Identifikations-Pipeline, wobei der Zielwert das zu rekonstruierende Sensorsignal ist und wobei die Eingänge die entsprechenden Eltern im Baum sind. Darüber hinaus kann man weitere Ebenen („levels“) entfernen, aber man sollte bedenken, dass die Rekonstruktion umso ungenauer wird, je mehr Ebenen entfernt werden.
  • Als weiteres Beispiel ist es möglich, austauschbare Sensoren mit Hilfe eines Graph-Ranking-Algorithmus auf dem DCG zu identifizieren, um die wichtigsten Sensoren anhand ihrer ausgehenden und eingehenden Kausationskanten zu identifizieren. Ein solcher Sensor bzw. Algorithmus ist der personalisierte PageRank-Algorithmus.
  • Dementsprechend ist es vorzuziehen, wenn mindestens ein realer Sensor, der in dem DAG ein Blatt bzw. eine Wurzel bildet, als austauschbar bestimmt wird.
  • Wenn ein DCG erstellt wird, ist es ein alternativer bevorzugter Ansatz, eine Rangmatrix aus dem DCG zu berechnen, wobei mindestens ein realer Sensor als niederrangig und damit austauschbar bestimmt wird.
  • Die Rangmatrix kann auf der Grundlage eines Ranking-Algorithmus berechnet werden. Ein Beispiel für einen solchen Ranking-Algorithmus ist der Page-Rank-Algorithmus, wie er in Suchmaschinen verwendet wird.
  • Als weiteres bevorzugtes Beispiel für die Verwendung eines DCG ist es möglich, aus dem DCG einen stochastischen probabilistischen Prozess zu generieren, bei dem ein Zustand mindestens eines realen Sensors durch den Zustand eines anderen realen Sensors erreicht und damit als austauschbar bestimmt werden kann.
  • Ein stochastischer probabilistischer Prozess kann durch einen Wahrscheinlichkeitsalgorithmus realisiert werden, wie z.B. Markov Chain Monte Carlo (MCMC).
  • Weiterhin ist es bevorzugt, wenn ein mathematisches Modell für den realen Sensor, der als austauschbar bestimmt worden ist, auf der Grundlage eines statistischen oder deterministischen Ansatzes (Algorithmus) bestimmt wird.
  • Insbesondere wird für jedes beschnittene bzw. abgetrennte Blatt aus dem vorhergehenden Schritt das Blatt als Label herangezogen und die Kausationszweige (ausgehend von der Wurzel bis zum Blatt) werden als Merkmale zum Trainieren eines Modells verwendet. Als vorteilhafte Möglichkeit, ein Modell zu identifizieren, das in der Lage ist, den gegebenen Sensor zu ersetzen (d.h. den realen Sensor in einen virtuellen Sensor zu verwandeln), kann jeder statistische oder deterministische Algorithmus, der die Darstellung von Signalen erlernen kann, zur Erstellung des Modells verwendet werden, das zur Rekonstruktion des Sensors verwendet wird.
  • Beispielsweise kann eine neuronale Netzwerkarchitektur namens Time Delayed Neural Network (TDNN) verwendet werden.
  • Ein solches Netzwerk ist ein neuronales Feed-Forward-Netzwerk, das auf Zeitreihen angewendet werden kann. Die allgemeine Architektur wird für alle beschnittenen Blätter verwendet. Hyperparameter des Modells sollten jedoch mit Hilfe von Optimierungsalgorithmen optimiert werden, damit die allgemeine Algorithmusarchitektur für das gegebene Problem spezifisch ist, wie z.B. Gittersuchen- („Grid Search“), Zufallssuchen- („Random Search“) oder Bayessche Hyperparameteroptimierung.
  • Für das Beispiel des TDNN können die folgenden Hyperparameter optimiert werden: Anzahl der Neuronen, Anzahl der Schichten, Drop-out-Rate usw.
  • Sobald das Modell trainiert und anhand eines Testsatzes bewertet wurde, ist es bevorzugt, wenn Gewichte und Parameter des Modells extrahiert werden und die Vorhersage des Modells durch Feedforward-Berechnung berechnet wird.
  • Bei der Anwendung des Ansatzes einer Kausationsanalyse gibt es einen wichtigen Aspekt, nämlich dass eine Kausation vom aktuellen Systemzustand abhängen kann. Beispielsweise können die mit einem Getriebe des Autos verbundenen Drehzahlen folgende Kausalitäten haben: Während eine Anfahrkupplung geschlossen ist, besteht eine hohe Kausalität zwischen der Motordrehzahl und der Raddrehzahl. Bei geöffneter Kupplung hingegen ist die Kausalität geringer. Es gibt verschiedene Ansätze zur Lösung dieses Problems, wie zum Beispiel:
    1. 1. Man bringt Expertenwissen in die Berechnungsroutine ein, indem man z.B. den im Voraus definierten Straffaktor f erhöht oder den Motordrehzahlsensor als unersetzlich definiert.
    2. 2. Man kann den Zustandsunterschied durch Ereigniserkennung auslösen. Beispielsweise gibt es bei einem Automatikgetriebe wie einem Doppelkupplungsgetriebe ein Signal, das eine Information über den Kupplungszustand gibt, so dass man zwischen Schlupf- und Kuppelphasen unterscheiden kann. Man würde also Kausalitätswerte für jeden dieser Zustände erhalten. Abhängig von diesen Werten kann man dann entscheiden, ob ein Sensor in seiner „Gesamtheit“ austauschbar ist oder nicht (d.h. indem man die Zeitreihe wieder als ein einziges Signal und nicht mehr als eine Folge von Ereignissen betrachtet und indem man beurteilt, dass einer der beiden Kausalitätswerte zu niedrig ist, so dass man sagen kann, dass ein bestimmter Sensor praktisch nicht austauschbar ist).
    3. 3. Man kann die vorgeschlagene Kausationsberechnung durchgehen und die beste Verzögerung („best lag“) ermitteln. Danach kann man die Zeitreihe erneut durchgehen (unter Beibehaltung der berechneten besten Verzögerung) und eine Art relativen Fehler für jeden einzelnen Datenpunkt berechnen. Auf dieser Grundlage kann man eine relative Fehlerverteilung über alle Punkte zeichnen. Auf diese Weise kann man sehen, ob der Fehler immer in einem bestimmten Bereich konzentriert ist oder ob es eine Streuung gibt. Im zweiten Fall könnte man sich weigern, den Sensor zu ersetzen, und ihm eine Strafe auferlegen.
    4. 4. Man kann die Kausationsberechnung einfach so lassen, wie sie ist, und sich nicht um die mögliche Zustandsabhängigkeit kümmern, so dass man das Modell für den virtuellen Sensor ohnehin trainieren würde. Am Ende des Trainings würde man auf die Genauigkeit des generierten Modells zugreifen. Wenn sie nicht gut genug ist, könnte man im Nachhinein entscheiden, dass der Sensor eigentlich nicht austauschbar ist (die endgültige Entscheidung über die Austauschbarkeit eines Sensors fällt jedenfalls erst nach dem Training des Modells). Wenn das Modell gut genug ist, dann kann der Sensor ausgetauscht werden, und die Ereignisabhängigkeit war möglicherweise nicht entscheidend.
  • Die gesamte Methode ist in hohem Maße parallelisierbar, wobei der Aufbau des Graphen, der Aufbau des Modells für jedes beschnittene Blatt und die Modelloptimierung über mehrere Threads erfolgen kann.
  • Darüber hinaus gibt es viele Möglichkeiten, die maximale Verzögerung festzulegen. Ein heuristischer Ansatz wird von Schwert (1989) als Faustregel vorgeschlagen. Sie wird wie folgt berechnet: Max . _ lag = [ 12 × ( T / 100 ) 0,25 ]
    Figure DE102019121589A1_0002
    wobei T die Anzahl der Beobachtungen in einem Signal ist, d.h. die Länge des Signals. Wie bereits erwähnt, handelt es sich bei der Schwert'schen Faustregel um einen Ad-hoc-Ansatz, und es ist eine Herausforderung, den Verzögerungswert korrekt zu ermitteln, da zu kleine Verzögerungswerte den statistischen Test verzerren. Zu große Werte vergrößern jedoch die Leistung („power“) des statistischen Tests. Es gibt viele Veröffentlichungen, die darauf hinweisen, dass es besser ist, den Fehler auf der Seite zu machen, die zu viele Verzögerungen enthält (Fehler vom Typ 2).
  • Es versteht sich, dass die oben genannten und die im Folgenden noch zu erklärenden Merkmale der Erfindung nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendet werden können, ohne den Anwendungsbereich der vorliegenden Erfindung zu verlassen.
  • Beispielhafte Ausführungsformen der Erfindung werden in der folgenden Beschreibung näher erläutert und sind in den Zeichnungen dargestellt:
    • 1 zeigt eine schematische Ansicht eines Kraftfahrzeugs mit einer Sensorkonfiguration;
    • 2 zeigt die Ausgänge mehrerer Sensoren der Sensorkonfiguration von 1 über eine bestimmte Zeitspanne;
    • 3 zeigt eine schematische Ansicht eines Sensorkonfigurationsprozesses;
    • 4 zeigt ein Beispiel für eine Kausationsmatrix;
    • 5 zeigt ein Beispiel für einen gerichteten zyklischen Graphen auf der Grundlage der Kausationsmatrix von 4;
    • 6 zeigt ein Beispiel für einen gerichteten azyklischen Graphen auf der Grundlage des gerichteten zyklischen Graphen von 5;
    • 7 zeigt ein weiteres Beispiel für eine Kausationsmatrix;
    • 8 zeigt ein weiteres Beispiel für einen gerichteten zyklischen Graphen auf der Grundlage der Kausationsmatrix von 7;
    • 9 zeigt ein weiteres Beispiel für einen gerichteten azyklischen Graphen auf der Grundlage des gerichteten zyklischen Graphen von 8;
    • 10 zeigt eine schematische Ansicht einer Boltzmann-Maschine;
    • 11 zeigt eine schematische Darstellung einer eingeschränkten Boltzmann-Maschine;
    • 12 zeigt ein weiteres Beispiel für eine eingeschränkte Boltzmann-Maschine für die Sensoren eines Antriebsstrangs eines Fahrzeugs;
    • 13 zeigt Drehzahl-Istwerte des Antriebsstrangs der RBM aus 12 für drei Verzögerungen;
    • 14 zeigt eine eingeschränkte Boltzmann-Maschine, die auf der eingeschränkten Boltzmann-Maschine in 12 basiert, wobei zwei Sensoren als austauschbar identifiziert werden; und
    • 15 zeigt ein weiteres Beispiel für zwei Ausgänge von zwei realen Sensoren der RBM aus 14.
  • In 1 ist ein Fahrzeug 10 dargestellt, das z.B. ein Kraftfahrzeug wie ein PKW sein kann. Das Fahrzeug 10 hat eine Karosserie 12, Vorderräder 14L, 14R und Hinterräder 16L, 16R.
  • Die Hinterräder 16L, 16R sind angetriebene Räder, die von einem Antriebsstrang 18 angetrieben werden.
  • Der Antriebsstrang 18 umfasst einen Verbrennungsmotor 20 und eine Getriebeanordnung 24. Der Verbrennungsmotor 20 und die Getriebeanordnung 24 sind vorzugsweise über eine Kupplungsanordnung 22, z.B. eine Anfahrkupplung, verbunden.
  • Typischerweise enthält die Getriebeanordnung 24 mehrere schaltbare Getriebestufen 25 zur Festlegung einer Anzahl von Getriebestufen.
  • Ein Ausgang der Getriebeanordnung 24 ist mit einem Differential 26 verbunden, das die Antriebskraft auf die angetriebenen Hinterräder 16L, 16R verteilt.
  • Das Fahrzeug 10 enthält eine Reihe von Sensoren, zum Beispiel einen Motordrehzahlsensor 30 zur Erfassung der Drehzahl Seng des Verbrennungsmotors 20.
  • Weiterhin enthält die Getriebeanordnung 24 einen ersten Getriebedrehzahlsensor 32, der die Drehzahl einer Eingangswelle der Getriebeanordnung erfasst. Weiterhin enthält die Getriebeanordnung 24 einen zweiten Getriebedrehzahlsensor 34, der eine zweite Getriebedrehzahl erfasst, zum Beispiel die Drehzahl ST, Strn einer Abtriebswelle der Getriebeanordnung 24.
  • Zusätzlich kann der Antriebsstrang 18 einen Sensor 36 für das linke angetriebene Rad zur Messung einer Drehzahl SL, Swl des linken angetriebenen Hinterrads 16L, sowie einen Sensor 38 für das rechte angetriebene Rad zur Erkennung einer Drehzahl SR, Swr des rechten angetriebenen Rads 16R enthalten.
  • Die Sensoren 30 bis 38 sind an einen Controller bzw. eine Steuerung 40 angeschlossen, der der Controller für den Antriebsstrang 18 sein kann. Bei dem Controller 40 kann es sich um einen Mehrkomponenten-Controller handeln, der z.B. ein Getriebesteuergerät, ein Steuergerät für den Verbrennungsmotor usw. umfassen kann.
  • Darüber hinaus kann das Fahrzeug 10 weitere Sensoren enthalten, zum Beispiel einen Motordrehmomentsensor 42 zur Erfassung eines vom Verbrennungsmotor 20 gelieferten Drehmoments. Weitere Sensoren können einen Kupplungspositionssensor 44 zum Erfassen einer Kupplungsposition der Kupplungsanordnung 22 sowie einen oder mehrere Temperatursensoren 46, beispielsweise zum Messen der Temperatur der Flüssigkeit im Getriebe 24, umfassen.
  • Das Fahrzeug 10 kann eine Vielzahl weiterer Sensoren enthalten, die z.B. die Drehzahl von Elektromotoren zur Neigungsverstellung eines Fahrzeugsitzes messen, einen Temperatursensor zur Messung der Temperatur in einem Fahrzeuginnenraum, Radarsensoren zur Abstandsmessung (z.B. LIDAR), Kamerasensoren zur Erfassung der Umgebung des Fahrzeugs, Beschleunigungssensoren zur Erfassung von Roll-, Nick- und/oder Gierbewegungen. Darüber hinaus kann eine Reihe von elektrischen Sensoren zur Messung von elektrischer Spannung, elektrischen Strömen usw. vorgesehen werden.
  • Mindestens einige der Sensoren, vorzugsweise jeder der Sensoren, sind mit einem Controller des Fahrzeugs verbunden, zu dem auch der oben erwähnte Antriebsstrang-Controller 40 gehören kann.
  • Darüber hinaus kann jeder Controller (z.B. Controller 40) über eine drahtlose Kommunikation 48 mit einem Netzwerk 46 außerhalb des Fahrzeugs 10 verbunden werden, z.B. mit dem Internet, einem GPS-Netzwerk, einem zellulären Telefonnetz, einem drahtlosen lokalen Netzwerk (WLAN, Wifi) usw.
  • 1 zeigt auch einen Evaluations- bzw. Auswerterechner 50.
  • Der Evaluationsrechner 50 ist mit mindestens einem der Steuergeräte des Fahrzeugs, z.B. dem Steuergerät 40, verbunden und so ausgelegt, dass er ein Verfahren zur Bestimmung einer Sensorkonfiguration im Fahrzeug 10 durchführen kann, die die Vielzahl von Sensoren umfasst, einschließlich der Schritte der Bestimmung einer vorläufigen Sensorkonfiguration für das Fahrzeug, wobei die vorläufige Sensorkonfiguration eine erste Anzahl von realen Sensoren umfasst, von denen jeder ein reales Sensorsignal ausgibt, und des Bestimmens, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, und des Änderns der vorläufigen Sensorkonfiguration in eine endgültige Sensorkonfiguration, die eine zweite Anzahl von realen Sensoren und mindestens einen virtuellen Sensor enthält, wobei die zweite Anzahl kleiner als die erste Anzahl ist.
  • Das Verfahren kann in Übereinstimmung mit einer Reihe von verschiedenen Ausführungsformen durchgeführt werden, von denen einige im Folgenden erläutert werden. Die folgenden Ausführungsformen beziehen sich hauptsächlich auf eine Sensorkonfiguration für den Antriebsstrang 18. Die Ausführungsformen, die vorliegend für den Antriebsstrang 18 angewendet werden, können jedoch auch auf andere Teile des Fahrzeugs 10 angewendet werden, z.B. auf eine Konfiguration für ein Navigationssystem, eine Konfiguration für die Temperaturregelung usw.
  • 2 zeigt drei Diagramme der Ausgänge mehrerer Sensoren der Sensorkonfiguration von 1 über einen bestimmten Zeitraum. Insbesondere zeigt ein erstes Diagramm die vom Sensor 34 gemessene zweite Getriebedrehzahl ST über die Zeit, das zweite Diagramm die vom Sensor 36 gemessene linke Antriebsraddrehzahl SL und das dritte Diagramm die vom Sensor 38 gemessene rechte Antriebsraddrehzahl SR.
  • In den Diagrammen geht man davon aus, dass der aktuelle Zeitpunkt t ist. Weiterhin wird angenommen, dass jeder der Sensoren eine ähnliche Abtastfrequenz hat, was einer identischen Abtastperiode entspricht, obwohl dies nicht notwendig ist.
  • 2 zeigt ein Fenster 54, das einer Anzahl von Abtastzeiträumen entspricht. In 2 wurde eine Abtastzeitspanne als eine einzige Verzögerung („lag“) 56 angegeben. Das Fenster 54 besteht typischerweise aus einer Anzahl von Einzelverzögerungen 56. Das in 2 dargestellte Fenster 54 entspricht einer maximalen Verzögerung 58. Die maximale Verzögerung 58 entspricht der maximalen Anzahl von Einzelverzögerungen 56, die für den Prozess der Bestimmung verwendet wird, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann.
  • In vielen Fällen wird es eine so genannte beste Verzögerung 60 geben, die typischerweise einer Anzahl von Einzelverzögerungen 56 entspricht und kleiner als die maximale Verzögerung 58 ist. Die beste Verzögerung 60 entspricht einem Fenster 54'. Im aktuellen Fall entspricht die beste Verzögerung 60 acht Einzelverzögerungen, d.h. einer Zeitspanne von t bis t-8.
  • Die beste Verzögerung kann durch einen oder mehrere der folgenden Faktoren bestimmt werden:
    • - Verwendung statistischer und informationstechnischer Kriterien wie z.B. Akaike- oder Bayes'sches Informationskriterium (AIC, BIC);
    • - das erste Minimum in der gegenseitigen Information zwischen der Zeitreihe und einer verschobenen Version von sich selbst; und
    • - Versuch und Irrtum.
  • In den Diagrammen von kann man sehen, dass ST von Anfang an bis t-15 nahezu konstant ist.
  • In einem Zeitraum von t-25 bis t-20 weicht SL von ST ab und ist größer als ST. In ähnlicher Weise ist SR während des Zeitraums t-25 bis t-20 kleiner als ST.
  • Bei t-15 beginnt die Getriebeausgangsdrehzahl ST auf Null abzufallen. Die Getriebeausgangsdrehzahl Null wird bei t-10 erreicht.
  • Zu diesem Zeitpunkt befindet sich das Fahrzeug in einem Haltezustand. Dementsprechend sind auch SL und SR null.
  • Wenn der Fahrer das Fahrzeug wieder anfahren möchte, könnte er auf einer µ-geteilten („µ-split“) Straße eine Situation erleben, in der z.B. die rechte Antriebsdrehzahl SR für einige wenige Abtastungen auf Null bleibt, während die andere Antriebsdrehzahl SL ansteigt.
  • Die Drehzahl SR des rechten angetriebenen Rades bleibt von t-10 bis t-5 auf Null und nimmt dann wieder die Drehzahl auf, z.B. aufgrund einer Bremswirkung, die eine Antischlupfregelung dem rechten angetriebenen Rad auferlegt.
  • Bei t sind die Drehzahlen ST, SL und SR wieder identisch.
  • Aus 2 kann man erkennen, dass die Antriebsraddrehzahlen SL, SR in einem bestimmten Verhältnis zur Getriebeausgangsdrehzahl ST stehen. Während einiger Zeitfenster sind sie identisch. In anderen Zeitfenstern können sie ganz drastisch von der Getriebeausgangsdrehzahl ST abweichen.
  • Dennoch kann man sagen, dass die Antriebsraddrehzahlen SL, SR zumindest in bestimmten Situationen, und vorzugsweise die meiste Zeit, die Getriebeausgangsdrehzahl ST verursachen („cause“).
  • Es stellt sich die Frage, ob einer dieser drei Sensoren, die im Beispiel von 1 reale Sensoren sind, durch einen virtuellen Sensor ersetzt werden könnte, der mindestens ein reales Sensorsignal von einem realen Sensor empfängt und ein virtuelles Sensorsignal ausgibt, das das reale Sensorsignal des ersetzten realen Sensors emuliert.
  • 3 ist eine schematische Darstellung eines Sensorkonfigurationsprozesses.
  • Der Prozess der Sensorkonfiguration beinhaltet die Verwendung einer sogenannten Kausationsstufe 72, in die reale Sensorsignale und optional weitere Parameter eingegeben werden. Die Kausationsstufe 72 beinhaltet eine Kausationsmatrix 74, die auf der Grundlage der realen Sensorsignale erstellt wird, auf die für eine bestimmte Verzögerung geschaut wird, idealerweise die beste Verzögerung.
  • Die Kausationsmatrix 74 basiert auf den Kausationen zwischen den aufgezeichneten Ausgaben der realen Sensoren, die für mindestens eine Teilmenge der Abtastwerte (z.B. eine beste Verzögerung) bestimmt werden, und wobei die für die Teilmenge der Abtastwerte bestimmten Kausationen einer Nachbearbeitung unterzogen werden, um einen endgültigen Kausationssatz oder eine endgültige Kausationsmatrix zwischen den aufgezeichneten Ausgaben der realen Sensoren zu bestimmen.
  • Mit anderen Worten: Die Kausationsmatrix ist eine Darstellung des Ergebnisses einer Kausationsanalyse, die Kausationen zwischen den aufgezeichneten Ausgaben der realen Sensoren bestimmt.
  • Die Kausationsmatrix 74 wird verwendet, um einen gerichteten zyklischen Graphen (DCG) zu erstellen.
  • In Kasten 76 der Kausationsstufe 72 wird ein Umwandlungsprozess durchgeführt, um den DCG in einen gerichteten azyklischen Graphen (DAG) umzuwandeln, wobei entweder der reale Sensor mit der höchsten oder der mit der niedrigsten Kausationsstufe als Wurzel für den gerichteten azyklischen Graphen genommen wird.
  • In dem gerichteten azyklischen Graphen (DAG) wird mindestens ein realer Sensor, der ein Blatt bzw. eine Wurzel des Graphen bildet, als austauschbar bestimmt.
  • Mit anderen Worten, die Kausationsstufe 72 bestimmt, welcher der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann.
  • Die Ausgabe der Kausationsstufe 72 wird in eine Modellierungsstufe 78 eingegeben, die für die Modellierung eines virtuellen Sensors verwendet wird, der einen realen Sensor ersetzen soll. Die Modellierungsstufe 78 umfasst einen Modellbildungsprozess 80, in dem ein Modell des virtuellen Sensors aufgebaut wird. Ferner umfasst die Modellierungsstufe 78 einen Modelloptimierungsprozess 82, in dem das Modell von Prozess 80 optimiert wird.
  • Schließlich ist der virtuelle Sensor in der endgültigen Sensorkonfiguration enthalten, die bei 84 dargestellt ist und auf deren Grundlage Code für die Implementierung des virtuellen Sensors generiert wird.
  • 4 ist ein Beispiel für eine Kausationsmatrix 74', die beispielhaft die Kausation zwischen sechs Sensoren X1 bis X6 zeigt.
  • In Zeile 1 wird gezeigt, dass der Sensor X1 den Sensor X2 mit dem Faktor 0,8 verursacht und den Sensor X5 mit dem Faktor 0,7 verursacht, während X1 überhaupt keinen der Sensoren X3, X4, X6 verursacht.
  • Die Kausation ist typischerweise ein Wert zwischen 0 und 1, wobei 0 bedeutet, dass ein Sensor einen anderen Sensor gar nicht verursacht. Andererseits bedeutet eine „1“, dass ein Sensor einen anderen Sensor vollständig verursacht, so dass der andere Sensor redundant oder sogar überflüssig ist. In jedem Fall kann der andere Sensor durch den ersten Sensor ersetzt werden.
  • Ein anderes Beispiel ist zum Beispiel, dass Sensor X4 den Sensor X3 mit einem Wert von 0,4 verursacht, während Sensor X3 mit einem Wert von 0,7 den Sensor X4 verursacht. Diese beiden Sensoren X3, X4 verursachen keinen der anderen Sensoren.
  • In 4 ist die Sensorkonfiguration X wie folgt dargestellt X = {X1, X2, X3, X4, X5, X6}.
  • 5 zeigt einen gerichteten zyklischen Graphen, der auf der Grundlage der ermittelten Kausationen in der Kausationsmatrix 74' erstellt wird. Der gerichtete zyklische Graph 88 von 5 zeigt, dass X1 X2 und X5 verursacht. Weiterhin wird gezeigt, dass nur X5 X1 verursacht, während X5 auch X2 verursacht. zeigt auch, dass X6 keinen anderen Sensor verursacht und von keinem anderen Sensor verursacht wird, wie aus der letzten Zeile und der letzten Spalte der Kausationsmatrix 74' von entnommen werden kann.
  • In dem gerichteten zyklischen Graph (DCG) erklärt das Gewicht in den gerichteten Kanten, „wie viel der jeweilige Sensor den anderen Sensor verursacht/korreliert“. Man kann die Zyklen in einem Graph mit Hilfe eines DFS-Algorithmus (Depth-First-Search) erkennen. Um die Abhängigkeitsreihenfolge der Sensoren zu identifizieren, muss der DCG in einen gerichteten azyklischen Graphen (DAG) transformiert werden.
  • Der gerichtete zyklische Graph DCG 88 aus kann in einen gerichteten azyklischen Graphen (DAG) umgewandelt werden, wie in bei gezeigt. Es gibt viele Algorithmen, die einen DCG in einen DAG umwandeln können.
  • Der DAG 90 in zeigt, dass X1 als Wurzel für das DAG genommen wurde, welcher Sensor X1 X2 und X5 verursacht.
  • Auf der anderen Seite verursacht X2 X3, und X3 verursacht X4. zeigt, dass der DAG vier Ebenen hat, wobei Ebene 0 der Wurzel entspricht und Ebene 3 einem Blatt des DAG entspricht.
  • Der Graph oder Baum in ist ein Baum mit vier Ebenen. Es ist zu beachten, dass X4 ein Sohn von X3 ist und nicht von X2, weil X3 eine höhere Kausation hat. Von dem DAG aus kann man mit dem Austausch von Sensoren beginnen, indem man die Blätter am Knoten des Baumes entfernt. Jeder Sensor an den Blättern durchläuft eine Modell-Identifikations-Pipeline, wobei der Zielwert das Sensorsignal ist, das man rekonstruieren möchte, und die Eingänge die entsprechenden Eltern im Baum sind. Darüber hinaus kann man weitere Ebenen entfernen, aber es sollte bedacht werden, dass die Rekonstruktion umso ungenauer wird, je mehr Ebenen entfernt werden.
  • In dem DAG von 6 ist es ziemlich klar, dass X4 durch einen virtuellen Sensor ersetzt werden kann.
  • Das obige Beispiel veranschaulicht einen einfachen Sensorraum oder eine einfache Sensorkonfiguration, wobei der DAG-Baum auf dem Verständnis basiert, dass alle Sensoren in der Konfiguration im Allgemeinen austauschbar sind, und dann die am wenigsten abhängigen Sensoren entfernt werden. In einem dynamischen System wie einem Auto gibt es jedoch viele Sensoren, die aus Sicherheitsgründen redundant sind und weder entfernt noch ersetzt werden sollten. Daher ist es für den Algorithmus wichtig, diese wichtigen, nicht austauschbaren Sensoren in der Konfiguration/im Raum zu unterscheiden. Daher kann man z.B. entweder jedem Sensor eine Flag-Variable zuordnen, die anzeigt, ob er austauschbar ist oder nicht, oder die Unersetzbarkeit mit einem hohen Straffaktor f widerspiegeln. Dann kann der Algorithmus, der den DCG in den DAG umwandelt, die Unersetzbarkeit beim Aufbau des Baumes berücksichtigen. Im ersten Ansatz (dem Flag) weist der Algorithmus zum Beispiel den Sensor Xi, der einen Flag-Wert „unersetzlich“ hat und der am stärksten abhängige Sensor ist, als Wurzel zu und baut den Baum von dort aus auf, oder er kann von der Prozedur ausgeschlossen werden.
  • In einigen Fällen kann eine Kombination von zwei oder mehr Sensoren (jede Zeitsignaloperation wie z. B. eine Summierung, Differenzierung oder dynamische Skalierung) einen anderen Sensor verursachen. Wenn der verursachte Sensor es wert ist, ersetzt zu werden, dann verschmilzt man den Sensor zu einem neuen Hybridsensor, der der Sensorkonfiguration hinzugefügt wird. Ein einfaches Beispiel zeigt sich bei der Neukonstruktion der Ausgangsdrehzahl eines Getriebes: Die Drehzahl des linken oder hinteren Rades allein verursacht bei einer Kurvenfahrt aufgrund des Differentials nicht die Getriebeausgangsdrehzahl. Der Mittelwert oder der Mittelwert der beiden Raddrehzahlen verursacht jedoch direkt die Getriebeausgangsdrehzahl und kann zur Ableitung der Getriebeausgangsdrehzahl ST verwendet werden. Wenn zwei oder mehr Sensoren kombiniert werden, dann sollten alle beteiligten Sensoren in der Kombination mit „unersetzlich“ gekennzeichnet werden.
  • 7 zeigt ein weiteres Beispiel einer Verursachungsmatrix 74'' für Drehzahlen Seng, gemessen z.B. mit Sensor 30, Stran, gemessen z.B. mit Sensor 32, Swl, gemessen z.B. mit Sensor 36, Swr, gemessen z.B. mit Sensor 38, und Swl, wr, was der Summe von Sensor 36 und Sensor 38 entspricht.
  • Aus der obigen Analyse weiß man, dass eine Kombination der beiden Raddrehzahlen Swr, Swl direkt die Drehzahl ST (Swl, wr) des Getriebes verursacht. Daher kann man einen neuen linear kombinierten Sensor Swl, wr erstellen, ihn zum Sensorraum hinzufügen und das „Reproduzierbar-Flag“ für Swl und Swr umschalten. Dies ist in der Kausationsmatrix von 7 geschehen.
  • Wenn man davon ausgeht, dass ein Kausationsgraph mit einer maximalen Verzögerung von 50 aufgebaut wird, können die Werte in der Kausationsmatrix auf der Grundlage des Verzögerungswertes voneinander abweichen (im obigen Beispiel werden die Werte auf der Grundlage des Allgemeinwissens („domain knowledge“) angenommen und nicht tatsächlich berechnet).
  • Die Kausationsmatrix 74'' in 7 kann z.B. unter Verwendung der Granger-Kausalität mit einer maximalen Verzögerung von 83 berechnet werden. Die maximale Verzögerung kann durch „Schwert“ berechnet werden, und die beste Verzögerung kann unter Verwendung eines Akaike-Informationskriteriums (AIC) oder alternativ auf der Grundlage eines Bayes'schen Informationskriteriums (BIC) ausgewählt werden.
  • 8 zeigt ein Beispiel für einen gerichteten zyklischen Graphen 88", der auf der Grundlage der Kausationsmatrix 74'' von erstellt ist.
  • 8: Der DCG 88'' aus 8 zeigt, dass sich die jeweiligen Sensoren in Abhängigkeit von der Dicke der jeweiligen Linien und der Länge der Wege von der Wurzel aus gegenseitig verursachen bzw. bedingen.
  • 9 zeigt einen gerichteten azyklischen Graphen 90'', der aus dem DCG 88'' von 8 umgewandelt wurde.
  • Es ist zu erkennen, dass die der Getriebeausgangsdrehzahl ST entsprechende Drehzahl Swl, wr als Wurzel genommen wurde, welches reale Sensorsignal Seng, Swl und Swr verursacht.
  • Weiterhin verursacht Seng bis zu einem gewissen Grad Stran (entsprechend ST).
  • Aus den obigen Ausführungen ist ersichtlich, dass Stran das Blatt des gerichteten azyklischen Graphen 90'' bildet und damit anzeigt, dass der entsprechende reale Sensor 32 durch einen virtuellen Sensor ersetzt werden könnte.
  • 9 zeigt den am besten geeigneten Baum, der aus dem DCG 88'' von 8 unter Berücksichtigung der Kausationswerte und des Flags wie oben erwähnt generiert werden kann.
  • In 9 können die Sensoren in der Ebene 0 und in der Ebene 1 nicht ersetzt werden. Daher kann nur der Getriebeausgangsdrehzahlsensor Stran ersetzt werden, und zwar unter Verwendung der Kombination der angetriebenen Hinterraddrehzahlen und der Drehzahl der Motoren als Merkmale des in der Modellierungsstufe 78 verwendeten Modells.
  • In der Modellierungsphase 78 werden die Kausationszweige des DAG als Merkmale zum Training des Modells herangezogen. Als eine vorteilhafte Möglichkeit, ein Modell zu identifizieren, das in der Lage ist, den gegebenen Sensor zu ersetzen (d.h. den realen Sensor in einen virtuellen Sensor zu verwandeln), kann jeder statistische oder deterministische Algorithmus, der die Darstellung von Signalen erlernen kann, verwendet werden, um das Modell zu erstellen, das zur Rekonstruktion des Sensors verwendet wird. Zum Beispiel kann eine neuronale Netzwerkarchitektur namens Time Delayed Neural Network (TDNN) verwendet werden. Hierbei handelt es sich um eine Art Feed-Forward-Neuronales-Netz, das für Zeitreihen geeignet ist. Diese allgemeine Architektur kann für alle beschnittenen bzw. abgetrennten Blätter verwendet werden. Die Hyperparameter des Modells sollten jedoch mit Hilfe eines Optimierungsalgorithmus (in 82) optimiert werden, damit die allgemeine Algorithmusarchitektur für das gegebene Problem spezifisch ist, wie z.B. Gittersuchen-, Zufallssuchen- oder Bayessche Hyperparameteroptimierung. Für das Beispiel TDNN können folgende Hyperparameter optimiert werden: Anzahl der Neuronen, Anzahl der Schichten, Drop-out-Rate, usw.
  • Sobald das Modell trainiert und anhand eines Testsatzes evaluiert bzw. bewertet wurde, wird die endgültige Sensorkonfiguration des Prozesses 70 die Gewichte und Parameter des Modells extrahieren und die Vorhersage des Modells durch Feed-Forward-Berechnung berechnen.
  • In den 10 bis 15 ist ein weiterer Ansatz zum Austausch von Sensoren einer vorläufigen Sensorkonfiguration dargestellt. Der in den Bildern 10 bis 15 gezeigte Ansatz ist ein Brute-Force-Ansatz unter Verwendung einer Boltzmann-Maschine (BM). Diese BM ist ein ungerichtetes generatives stochastisches neuronales Netz, das die Wahrscheinlichkeitsverteilung über seinen Satz von Eingaben lernen kann. Es ist immer in der Lage, verschiedene Zustände eines Systems zu erzeugen.
  • Die Boltzmann-Maschine, die z.B. in 10 bei 100 dargestellt ist, ist unter der Voraussetzung von unendlichen Trainingsdaten in der Lage, jedes beliebige System mit vielen Zuständen darzustellen. Im vorliegenden Fall soll die obige Sensorkonfiguration dargestellt werden.
  • In 10 ist die Architektur des BM dargestellt. Sichtbare Knoten 102 sind Merkmale/Eingänge in das System, die in unserem Fall alle Sensoren im Fahrzeug sind. Die verborgenen Knoten 104 sind dagegen zu trainierende Knoten, die die Kombination der sichtbaren Knoten identifizieren und ausnutzen werden. Im Wesentlichen versucht die BM zu lernen, wie sich die Knoten gegenseitig beeinflussen, indem sie die Gewichte in ihren Kanten schätzt (Kanten ähneln den bedingten Wahrscheinlichkeitsverteilungen).
  • Die Boltzmann-Maschine und ihre Variationen trainieren das Modell mit Hilfe eines kontrastiven Divergenz-Algorithmus. Zusammengefasst funktioniert das Training wie folgt:
    • 1. die Gewichte zwischen den Knoten nach dem Zufallsprinzip zu initialisieren;
    • 2. Einspeisung eines Abtast-Eingangsvektors in die sichtbaren Knoten;
    • 3: die verborgenen Knoten auf der Grundlage der Gewichte und einer globalen Verzerrung („global bias“) zu berechnen (Feed-Forward-Ansatz);
    • 4. die sichtbaren Knoten aus den verborgenen Knoten rekonstruieren;
    • 5. die sichtbaren Knoten mit den rekonstruierten sichtbaren Knoten vergleichen, z.B. unter Verwendung einer Kullback-Divergenz;
    • 6. die Gewichte auf der Grundlage z.B. der Kullback-Divergenzverlustfunktion unter Verwendung eines Gradientenabfalls zu aktualisieren; und
    • 7. Wiederholen der Schritte 2 bis 6 für alle Merkmalsabtastungen bis zur Konvergenz.
  • Während die Boltzmann-Maschine von 10 in der Theorie ein großartiges Modell ist und viele Probleme lösen kann, ist sie in der Praxis aufgrund der erforderlichen Rechenleistung sehr schwierig zu implementieren.
  • Daher kann man eine Variante der Boltzmann-Maschine verwenden, die als Restricted Boltzmann Machine (RBM) bezeichnet wird, bei der Knoten desselben Typs nicht miteinander verbunden sind, wie in 11 bei 100' gezeigt wird.
  • Hier verbinden sich die sichtbaren Knoten 100'' über die Kanten 106' mit den verborgenen Knoten 104', aber weder die sichtbaren Knoten 100" noch die verborgenen Knoten 104' sind untereinander verbunden.
  • Im obigen Beispiel für verschiedene Drehzahlen, nämlich die Motordrehzahl Seng, die Getriebedrehzahl Stran, die Drehzahl Swl des linken angetriebenen Rades und die Drehzahl Swr des rechten angetriebenen Rades, kann eine eingeschränkte Boltzmann-Maschine (RBM), wie in bei 100'' gezeigt, eingerichtet werden.
  • Hier entsprechen die sichtbaren Knoten 100'' den oben erwähnten vier Drehzahlen. Weiterhin wird eine Anzahl verborgener Knoten festgelegt, wobei die Anzahl der verborgenen Knoten vorzugsweise größer als die Anzahl der verborgenen/sichtbaren Knoten ist.
  • Während des Trainings benötigt ein Modell einen großen Datensatz aller Sensoren, wie in gezeigt, wie bereits besprochen. Für jeden Abtastwert aktualisiert das Modell die Gewichte unter Verwendung des kontrastiven Divergenz-Algorithmus mit Rückpropagation durch die Zeit. Hier, in , verwendet jeder der Knoten wiederkehrende Neuronen.
  • 13 zeigt ein Beispiel für den Drehzahlsatz, der 12 entspricht.
  • Nachdem man das Modell trainiert hat, kann man die Informationen der physikalischen Sensoren (reale Sensoren), die man nicht ersetzen möchte, zur Verfügung stellen. Diese Sensoren helfen, den aktuellen Zustand des Systems zu erkennen und die Werte der fehlenden Sensoren zu berechnen, wie in 14 dargestellt.
  • Hier werden die Motordrehzahl und die Getriebedrehzahl durch reale Sensoren gemessen, und die Drehzahlen FL (entsprechend Swl) und FR (entsprechend Swr) werden durch die RBM berechnet, wie in dargestellt.
  • Der Vorteil dieses Brute-Force-Algorithmus besteht darin, dass man, sobald das Modell trainiert ist, jederzeit einen Sensor entfernen oder hinzufügen kann, ohne das Modell neu trainieren oder konfigurieren zu müssen. Dies ist sehr nützlich, wenn ein physikalischer Sensor ausfällt, denn dann arbeitet das Modell weiterhin ausreichend.
  • Wie oben erwähnt, wäre eine BM theoretisch wahrscheinlich das beste Konzept zur Darstellung eines Systems, insbesondere einer wiederkehrenden Version davon. Aufgrund mangelnder Rechenleistung ist es jedoch schwierig zu implementieren. Dennoch könnte dies in Zukunft einfacher sein.
  • Es gibt weitere Variationen einer Boltzmann-Maschine, wie z.B. eine Deep-Boltzmann-Maschine. Aber die Intuition ist die gleiche. Der einzige Unterschied besteht darin, dass die Berechnung in dem Versuch, besser auf das gegebene Problem zu verallgemeinern, mehr Aufwand und Ressourcen erfordert.
  • Die Boltzmann-Maschine ist vom Markov Chain Monte Carlo (MCMC)-Algorithmus inspiriert. Genauer gesagt basiert der Trainingsalgorithmus, also die kontrastive Divergenz, auf dem Gibbs-Sampling, das in MCMC verwendet wird, um eine Sequenz von Beobachtungen zu erhalten, die aus einer spezifizierten multivarianten Wahrscheinlichkeitsverteilung approximiert werden.
  • Bei einem Boltzman-Machine-Ansatz ist das trainierte Modell für ein Fahrzeug nur auf dieses Fahrzeug anwendbar. Es gibt keine Garantie, dass es auch auf andere Fahrzeuge, selbst aus derselben Serie, anwendbar ist.
  • Auch wenn BM verlockend klingt, könnte man dennoch den obigen Graphennetz-Ansatz der bis bevorzugen, da BM eher theoretisch und schwer zu implementieren und zu berechnen ist.
  • In der obigen Beschreibung wurden mehrere Begriffe verwendet, die wie folgt definiert werden sollen:
  • Eine Verzögerung bezieht sich auf einen vergangenen bzw. überschrittenen Punkt eines Zeitsignals.
  • Eine maximale Verzögerung ist der maximale Punkt in der Vergangenheit, auf den man blicken kann.
  • Beste Verzögerung. Dies ist ein gewisser Zeitpunkt in der Vergangenheit, der zwischen der beobachteten Zeit und der maximalen Verzögerung liegt. Es ist die beste Verzögerung, weil das gleitende Fenster von der Beobachtungszeit bis zu dieser Verzögerungszeit den besten Kausationswert erzeugt, der wiederum potenziell am besten geeignet ist, den benötigten Beobachtungswert zu modellieren.
  • Gleitendes Fenster. Es ist eine Möglichkeit, eine Zeitreihe in Fenstern mit der Größe der Verzögerung zu rekonstruieren. Dann wird das Fenster um einen Schritt verschoben. Dies ist zum Beispiel die folgende Zeitreihe:
    Signal 78 74 22 17 82 10 23
    Zeit T-6 T-5 T-4 T-3 T-2 T-1 T
  • Wenn eine Verzögerung von 3 und ein Schritt von 1 gewählt wird, wäre das gleitende Fenster:
    Fenster 1 23 10 82
    Fenster 2 10 82 17
    Fenster 3 82 17 22
    Fenster 4 17 22 74
    Fenster 5 22 74 78
  • Der Begriff „Merkmal“ ist eine Terminologie aus dem maschinellen Lernen. Dabei handelt es sich um die Eingaben in einen Algorithmus, die trainiert werden müssen und die geeignet sind, die Ausgabe (Label oder Ziel bzw. Target) vorherzusagen. Mit anderen Worten: Merkmale sind die Eingabevariablen, die bei der Erstellung von Vorhersagen verwendet werden.
  • Ein Label ist ebenfalls ein Begriff, der in der Terminologie des maschinellen Lernens verwendet wird. Es ist die Ausgabe des Algorithmus. Darüber hinaus ist es die Vorhersage, die ein angepasstes Modell angesichts der Merkmale (Eingaben) erzeugen wird.
  • Hyperparameter werden auch in der Terminologie des maschinellen Lernens verwendet. Dies sind Parameter, deren Werte vor Beginn des Lernprozesses festgelegt werden. Zum Beispiel ist die Anzahl der Neuronen in einer verborgenen Schicht in einem Neuronennetzwerk ein Hyperparameter. Ein weiteres Beispiel ist die Anzahl der Entscheidungsbäume in einem Random Forest.
  • Bezugszeichenliste
  • 10
    Fahrzeug
    12
    Karosserie
    14L,14R
    Vorderräder
    16L,16R
    rechte Räder bzw. Antriebsräder
    18
    Antriebsstrang
    20
    Verbrennungsmotor
    22
    Kupplungsanordnung
    24
    Getriebeanordnung
    25
    schaltbare Gangstufen
    26
    Differential
    30
    Motordrehzahlsensor (Seng)
    32
    erster Getriebedrehzahlsensor
    34
    zweiter Getriebedrehzahlsensor (ST, Stran)
    36
    Sensor für linkes angetriebenes Rad (SL, Swl)
    38
    Sensor für rechtes angetriebenes Rad (SR, Swr)
    40
    Steuerung
    42
    Motordrehmomentsensor
    44
    Kupplungspositionssensor
    46
    Temperatursensor
    46
    Netzwerkeinheit
    48
    drahtlose Kommunikation
    50
    Evaluationscomputer
    54
    Fenster
    56
    Verzögerung („lag“)
    58
    maximale Verzögerung
    60
    beste Verzögerung
    70
    Sensor-Konfigurationsprozess
    72
    Kausationsstufe
    74
    Kausationsmatrix
    76
    Umwandlungsprozess
    78
    Modellierungsstufe
    80
    Modellbildung
    82
    Modelloptimierung
    84
    Sensorkonfiguration
    88
    gerichteter zyklischer Graph
    90
    gerichteter azyklischer Graph
    100
    Boltzmann-Maschine
    102
    sichtbare Knoten
    104
    verborgene Knoten
    106
    Kanten
    108
    fehlende Knoten (Sensoren)

Claims (16)

  1. Verfahren zum Bestimmen einer Sensorkonfiguration in einem Fahrzeug, das eine Vielzahl von Sensoren enthält, mit den folgenden Schritten: - Bestimmen einer vorläufigen Sensorkonfiguration für das Fahrzeug, wobei die Sensorkonfiguration eine erste Anzahl von realen Sensoren enthält, von denen jeder ein reales Sensorsignal ausgibt; - Bestimmen, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann; - Ändern der vorläufigen Sensorkonfiguration in eine endgültige Sensorkonfiguration, die eine zweite Anzahl von realen Sensoren und mindestens einen virtuellen Sensor enthält, wobei die zweite Anzahl kleiner als die erste Anzahl ist.
  2. Verfahren nach Anspruch 1, wobei der Bestimmungsschritt umfasst: - Aufzeichnen der realen Sensorsignale von mindestens einer Teilmenge der ersten Anzahl von realen Sensoren, und - Auswertung der aufgezeichneten realen Sensorsignale, um festzustellen, ob mindestens ein erster der realen Sensoren durch einen ersten virtuellen Sensor ersetzt werden kann, der mindestens ein reales Sensorsignal von einem zweiten realen Sensor empfängt und ein virtuelles Sensorsignal ausgibt, das das reale Sensorsignal des ersten realen Sensors emuliert.
  3. Verfahren nach Anspruch 2, wobei der Bewertungsschritt die Verwendung einer Boltzmann-Maschine mit einer Anzahl von sichtbaren Knoten, wobei jeder sichtbare Knoten einen realen Sensor darstellt, und mit einer Anzahl von verborgenen Knoten beinhaltet, wobei die verborgenen Knoten durch Ausnutzung von Kombinationen von Knoten berechnet werden.
  4. Verfahren nach Anspruch 3, wobei die Boltzmann-Maschine eine Recurrent Temporal Restricted Boltzmann-Maschine ist.
  5. Verfahren nach Anspruch 3 oder 4, wobei die Recurrent Temporal Restricted Boltzmann-Maschine durch eine RNN-Gauss'sche Dynamic-Boltzmann-Maschine implementiert wird.
  6. Verfahren nach einem der Ansprüche 1 bis 5, wobei der Schritt des Bestimmens, ob mindestens einer der realen Sensoren durch einen virtuellen Sensor ersetzt werden kann, eine Funktion der Genauigkeit des virtuellen Sensors und/oder des Fahrverhaltens des Fahrzeugs und/oder der Kosten des zu ersetzenden realen Sensors ist.
  7. Verfahren nach Anspruch 6, wobei die Genauigkeit des virtuellen Sensors und/oder das Fahrverhalten des Fahrzeugs und/oder die Kosten des zu ersetzenden realen Sensors gewichtet und zu einem Zielwert berechnet werden.
  8. Verfahren nach Anspruch 1, wobei der Bestimmungsschritt umfasst: - Erfassen und Aufzeichnen der Ausgangssignale von mindestens einer Untergruppe der realen Sensoren für eine vorbestimmte Anzahl von zeitlich aufeinander folgenden Abtastschritten, und - Durchführung einer Kausationsanalyse, die Kausationen zwischen den aufgezeichneten Ausgaben der realen Sensoren bestimmt.
  9. Verfahren nach Anspruch 8, wobei die Kausationen zwischen den aufgezeichneten Ausgaben der realen Sensoren für mindestens eine Teilmenge der Abtastungen bestimmt werden und wobei die für die Teilmenge der Abtastungen bestimmten Kausationen einer Nachbearbeitung unterzogen werden, um eine endgültige Kausationsmenge- oder -matrix zwischen den aufgezeichneten Ausgaben der realen Sensoren zu bestimmen.
  10. Verfahren nach Anspruch 8 oder 9, wobei ein gerichteter zyklischer Graph („directetd cyclic graph“, DCG) auf der Grundlage der bestimmen Kausationen erstellt wird.
  11. Verfahren nach Anspruch 10, wobei der DCG in einen gerichteten azyklischen Graph (DAG) umgewandelt wird, wobei entweder der reale Sensor mit der höchsten oder jener mit der niedrigsten Kausation als eine Wurzel für den gerichteten azyklischen Graph herangezogen wird.
  12. Verfahren nach Anspruch 11, wobei mindestens ein realer Sensor, der in dem DAG ein Blatt bzw. eine Wurzel bildet, als austauschbar bestimmt wird.
  13. Verfahren nach Anspruch 10, wobei eine Rangmatrix aus dem DCG berechnet wird, wobei mindestens ein realer Sensor als niederrangig und austauschbar bestimmt wird.
  14. Verfahren nach Anspruch 10, bei dem aus dem DCG ein stochastischer probabilistischer Prozess generiert wird, bei dem ein Zustand mindestens eines realen Sensors durch den Zustand eines anderen realen Sensorzustandes erreicht und als austauschbar bestimmt werden kann.
  15. Verfahren nach einem der Ansprüche 1 bis 14, wobei ein mathematisches Modell für den realen Sensor, der als austauschbar bestimmt worden ist, auf der Grundlage eines statistischen oder deterministischen Ansatzes (Algorithmus) bestimmt wird.
  16. Verfahren nach Anspruch 15, bei dem das mathematische Modell des realen Sensors, der als austauschbar bestimmt wurde, unter Verwendung eines neuronalen Netzes bestimmt wird.
DE102019121589.7A 2019-08-09 2019-08-09 Verfahren zur Bestimmung einer Sensorkonfiguration Pending DE102019121589A1 (de)

Priority Applications (5)

Application Number Priority Date Filing Date Title
DE102019121589.7A DE102019121589A1 (de) 2019-08-09 2019-08-09 Verfahren zur Bestimmung einer Sensorkonfiguration
CN202080070877.1A CN114556248A (zh) 2019-08-09 2020-08-06 用于确定传感器配置的方法
EP20753353.0A EP4010769A1 (de) 2019-08-09 2020-08-06 Verfahren zur bestimmung einer sensorkonfiguration
PCT/EP2020/072196 WO2021028322A1 (en) 2019-08-09 2020-08-06 A method for determining a sensor configuration
US17/667,214 US20220164660A1 (en) 2019-08-09 2022-02-08 Method for determining a sensor configuration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102019121589.7A DE102019121589A1 (de) 2019-08-09 2019-08-09 Verfahren zur Bestimmung einer Sensorkonfiguration

Publications (1)

Publication Number Publication Date
DE102019121589A1 true DE102019121589A1 (de) 2021-02-11

Family

ID=71994519

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102019121589.7A Pending DE102019121589A1 (de) 2019-08-09 2019-08-09 Verfahren zur Bestimmung einer Sensorkonfiguration

Country Status (5)

Country Link
US (1) US20220164660A1 (de)
EP (1) EP4010769A1 (de)
CN (1) CN114556248A (de)
DE (1) DE102019121589A1 (de)
WO (1) WO2021028322A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230325092A1 (en) * 2022-04-11 2023-10-12 Dell Products, L.P. Data Automation and Predictive Modeling for Planning and Procuring Solid State Drive Replacments
EP4270121A1 (de) * 2022-04-29 2023-11-01 Siemens Aktiengesellschaft Verfahren und system für den nahtlosen übergang eines laufzeitsystems von einer steuerungsvorrichtung zu einer digitalisierungsplattform
DE102022205670B3 (de) * 2022-06-02 2023-08-03 Zf Friedrichshafen Ag Verfahren zum Aufbereiten eines Getriebeparametersignals sowie Verfahren zum Anlernen und zur Verwendung eines neuronalen Netzes mittels des aufbereiteten Getriebeparametersignals
DE102022121211B4 (de) * 2022-08-23 2024-03-28 Schenck Process Europe Gmbh Verfahren zum Betreiben einer Sensor-Anordnung und Sensor-Anordnung sowie Einrichtung zur Datenverarbeitung und Vorrichtung
US20240094926A1 (en) * 2022-09-15 2024-03-21 Innogrit Technologies Co., Ltd. Systems and methods for power and thermal management in a solid state drive
CN116610906A (zh) * 2023-04-11 2023-08-18 深圳润世华软件和信息技术服务有限公司 设备故障诊断方法、装置、计算机设备及其存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004024531A1 (en) * 2002-09-13 2004-03-25 Bombardier Transportation Gmbh Vehicle on-board diagnostic system
WO2018060847A1 (en) * 2016-09-30 2018-04-05 Modelway S.R.L. Process for designing a virtual sensor, corresponding virtual sensor, system, and computer-program products

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7787969B2 (en) * 2007-06-15 2010-08-31 Caterpillar Inc Virtual sensor system and method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004024531A1 (en) * 2002-09-13 2004-03-25 Bombardier Transportation Gmbh Vehicle on-board diagnostic system
WO2018060847A1 (en) * 2016-09-30 2018-04-05 Modelway S.R.L. Process for designing a virtual sensor, corresponding virtual sensor, system, and computer-program products

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CANALE, Massimo, et al.: A study on the use of virtual sensors in vehicle control. In: 2008 47th IEEE Conference on Decision and Control. IEEE, 2008. S. 4402-4407. *
HINTON, Geoffrey E.; SALAKHUTDINOV, Ruslan R.: Reducing the dimensionality of data with neural networks. In: science, 2006, 313. Jg., Nr. 5786, S. 504-507. *

Also Published As

Publication number Publication date
US20220164660A1 (en) 2022-05-26
CN114556248A (zh) 2022-05-27
EP4010769A1 (de) 2022-06-15
WO2021028322A1 (en) 2021-02-18

Similar Documents

Publication Publication Date Title
DE102019121589A1 (de) Verfahren zur Bestimmung einer Sensorkonfiguration
EP2106576B1 (de) Verfahren zur rechnergestützten steuerung und/oder regelung eines technischen systems
AT511577B1 (de) Maschinell umgesetztes verfahren zum erhalten von daten aus einem nicht linearen dynamischen echtsystem während eines testlaufs
EP3785177B1 (de) Verfahren und vorrichtung zum ermitteln einer netzkonfiguration eines neuronalen netzes
DE102018220941A1 (de) Auswertung von Messgrößen mit KI-Modulen unter Berücksichtigung von Messunsicherheiten
DE102021109382A1 (de) System und verfahren eines monotonen neuronalen operatornetzes technisches gebiet
DE102017219492A1 (de) Verfahren und Vorrichtung zum Betreiben eines Systems durch Trainieren und Berechnen eines tiefen rekurrenten Gaußprozesses
DE102021207613A1 (de) Verfahren zur Qualitätssicherung eines Systems
EP2088486A1 (de) Verfahren zur Vermessung eines nichtlinearen dynamischen realen Systems mittels Versuchsplanung
EP3748453B1 (de) Verfahren und vorrichtung zum automatischen ausführen einer steuerfunktion eines fahrzeugs
DE102018201411A1 (de) Verfahren zum Ermitteln eines zeitlichen Verlaufs einer Messgröße, Prognosesystem, Aktorsteuerungssystem, Verfahren zum Trainieren des Aktorsteuerungssystems,Trainingssystem, Computerprogramm und maschinenlesbares Speichermedium
DE4240789C2 (de) Verfahren zur Identifizierung von Objekten
EP0956531B1 (de) Verfahren und vorrichtung zur transformation einer zur nachbildung eines technischen prozesses dienenden fuzzy-logik in ein neuronales netz
DE102019207911A1 (de) Verfahren, Vorrichtung und Computerprogramm zur Vorhersage einer Lernkurve
EP1717651B1 (de) Verfahren und Vorrichtung zum Auswerten von Ereignissen aus dem Betrieb eines Fahrzeuges
DE102019113958A1 (de) Verfahren zur Leistungssteigerung eines Fahrzeugsystems mit einem neuronalen Netz zum Steuern einer Fahrzeugkomponente
DE202019103046U1 (de) Vorrichtung zur Vorhersage einer Lernkurve
DE102021133977A1 (de) Verfahren und System zur Klassifikation von Szenarien eines virtuellen Tests sowie Trainingsverfahren
EP4202779A1 (de) Verfahren und system zur klassifikation von szenarien eines virtuellen tests sowie trainingsverfahren
DE102020213238A1 (de) Erzeugung von vereinfachten computer-implementierten neuronalen netzwerken
DE102020203135A1 (de) Verfahren zur Qualitätssicherung eines beispielbasierten Systems
DE102021207275A1 (de) Verfahren zum Erzeugen eines künstlichen neuronalen Netzes
DE202023102037U1 (de) Vorrichtung zum Optimieren eines Hyperparameterraumes mit mindestens zwei Hyperparametern eines Algorithmus des maschinellen Lernens
DE202021103700U1 (de) Vorrichtung zum Erzeugen eines künstlichen neuronalen Netzes
DE102021132025A1 (de) Verfahren zum Bestimmen ähnlicher Szenarien, Trainingsverfahren und Trainingssteuergerät

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017500000

Ipc: G06F0030000000

R163 Identified publications notified