DE102020216202A1 - Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle - Google Patents

Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle Download PDF

Info

Publication number
DE102020216202A1
DE102020216202A1 DE102020216202.6A DE102020216202A DE102020216202A1 DE 102020216202 A1 DE102020216202 A1 DE 102020216202A1 DE 102020216202 A DE102020216202 A DE 102020216202A DE 102020216202 A1 DE102020216202 A1 DE 102020216202A1
Authority
DE
Germany
Prior art keywords
parameters
learning algorithm
learning
output data
learning module
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
DE102020216202.6A
Other languages
German (de)
Inventor
Philip Lenz
Alexander Lengsfeld
Andreas Steimer
Marcel Brueckner
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102020216202.6A priority Critical patent/DE102020216202A1/en
Publication of DE102020216202A1 publication Critical patent/DE102020216202A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • 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/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0083Setting, resetting, calibration
    • B60W2050/0088Adaptive recalibration
    • 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/045Combinations of networks

Abstract

Die vorliegende Erfindung betrifft ein Verfahren zum Trainieren eines Lernalgorithmus (102) zum Umwandeln von Sensordaten (108, x) einer Sensorik (106) in Ausgabedaten (108, y) zum Ansteuern einer Aktorik (110). Das Verfahren umfasst die folgenden Schritte: Eingeben der Sensordaten (104, x) in den Lernalgorithmus (102), wobei der Lernalgorithmus (102) ein durch erste Parameter (114) parametriertes erstes Lernmodul (112) und ein mit dem ersten Lernmodul (112) in Reihe geschaltetes und durch zweite Parameter (118) parametriertes zweites Lernmodul (116) zum Umwandeln der Sensordaten (104, x) in die Ausgabedaten (108, y) umfasst; Ausgeben der Ausgabedaten (108, y) durch den Lernalgorithmus (102); und Optimieren des Lernalgorithmus (102) durch ein Optimierungsmodul (120) basierend auf den Ausgabedaten (108, y), wobei eine erste Zielfunktion (122) durch Ändern der ersten Parameter (114) optimiert wird und die zweiten Parameter (118) während des Optimierens der ersten Zielfunktion (122) konstant gehalten werden.The present invention relates to a method for training a learning algorithm (102) for converting sensor data (108, x) of a sensor (106) into output data (108, y) for controlling an actuator (110). The method comprises the following steps: inputting the sensor data (104, x) into the learning algorithm (102), the learning algorithm (102) having a first learning module (112) parameterized by first parameters (114) and a first learning module (112) a second learning module (116) connected in series and parameterized by second parameters (118) for converting the sensor data (104, x) into the output data (108, y); outputting the output data (108,y) by the learning algorithm (102); and optimizing the learning algorithm (102) by an optimization module (120) based on the output data (108, y), wherein a first objective function (122) is optimized by changing the first parameters (114) and the second parameters (118) during the optimization of the first objective function (122) are kept constant.

Description

Gebiet der Erfindungfield of invention

Die Erfindung betrifft ein Verfahren zum Trainieren eines Lernalgorithmus zum Umwandeln von Sensordaten einer Sensorik in Ausgabedaten zum Ansteuern einer Aktorik und ein Verfahren zum Ansteuern einer Aktorik eines Fahrzeugs. Des Weiteren betrifft die Erfindung eine Vorrichtung, ein Computerprogramm und ein computerlesbares Medium zum Ausführen mindestens eines der genannten Verfahren.The invention relates to a method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and a method for controlling an actuator of a vehicle. Furthermore, the invention relates to a device, a computer program and a computer-readable medium for executing at least one of the methods mentioned.

Stand der TechnikState of the art

Beim Trainieren eines künstlichen neuronalen Netzes ist es möglich, durch Optimieren einer Kostenfunktion eine oder mehrere Zielgrößen oder auch eine Zielgröße unter Berücksichtigung einer Randgröße zu optimieren. Zum Ausgleich eines Zielkonflikts zwischen den zu optimierenden Größen kann beispielsweise ein Trade-off-Parameter der Kostenfunktion definiert werden. Die Bestimmung eines geeigneten Trade-off-Parameters kann jedoch mit erheblichem Aufwand verbunden sein. Ferner kann eine derartige Kostenfunktion, die mehrere zu optimierende Größen umfasst, eine relativ komplexe Netzarchitektur erfordern.When training an artificial neural network, it is possible, by optimizing a cost function, to optimize one or more target variables or also a target variable taking into account a marginal variable. For example, a trade-off parameter of the cost function can be defined to compensate for a conflict of objectives between the variables to be optimized. However, determining a suitable trade-off parameter can involve considerable effort. Furthermore, such a cost function involving multiple quantities to be optimized may require a relatively complex network architecture.

Ein solches künstliches neuronales Netz kann beispielsweise im Kontext autonomen Fahrens zur Verarbeitung von Sensordaten einer Sensorik und zur Bereitstellung entsprechender Eingaben für eine Steuereinheit zum Steuern einer Aktorik, etwa für einen Geschwindigkeitsregler o. Ä., eingesetzt werden.Such an artificial neural network can be used, for example, in the context of autonomous driving for processing sensor data from a sensor system and for providing corresponding inputs for a control unit for controlling an actuator system, for example for a speed controller or the like.

Offenbarung der ErfindungDisclosure of Invention

Vor diesem Hintergrund werden mit dem hier vorgestellten Ansatz ein Verfahren zum Trainieren eines Lernalgorithmus, ein Verfahren zum Ansteuern einer Aktorik, eine Vorrichtung, ein Computerprogramm und ein computerlesbares Medium gemäß den unabhängigen Ansprüchen vorgestellt. Vorteilhafte Weiterbildungen und Verbesserungen des hier vorgestellten Ansatzes ergeben sich aus der Beschreibung und sind in den abhängigen Ansprüchen beschrieben.Against this background, with the approach presented here, a method for training a learning algorithm, a method for controlling an actuator system, a device, a computer program and a computer-readable medium are presented according to the independent claims. Advantageous developments and improvements of the approach presented here result from the description and are described in the dependent claims.

Vorteile der ErfindungAdvantages of the Invention

Ausführungsformen der vorliegenden Erfindung ermöglichen es in vorteilhafter Weise, beim Trainieren eines Lernalgorithmus wie beispielsweise eines künstlichen neuronalen Netzes mehrere konkurrierende (Ziel-)Größen zu optimieren, ohne dass hierzu die oftmals schwierige und a priori unklare manuelle Bestimmung eines Trade-offs zwischen diesen Größen erforderlich ist. Dies ermöglicht zum einen eine gezielte Optimierung des Lernalgorithmus. Somit kann beispielsweise erreicht werden, dass der Lernalgorithmus mehrere Ziele auf einmal erfüllt, ohne dass er in verschiedene, eventuell miteinander in Konflikt stehende Richtungen getrieben wird. Zum anderen kann der Lernprozess damit deutlich vereinfacht werden. Ferner wird die Verwendung von Lernalgorithmen mit verhältnismäßig einfachen Architekturen ermöglicht, was Zeit und Kosten spart.Advantageously, embodiments of the present invention make it possible to optimize multiple competing (target) variables when training a learning algorithm such as an artificial neural network without the need for the often difficult and a priori unclear manual determination of a trade-off between these variables is. On the one hand, this enables a targeted optimization of the learning algorithm. It can thus be achieved, for example, that the learning algorithm fulfills several goals at once without being driven in different directions that may conflict with one another. On the other hand, the learning process can be significantly simplified. Furthermore, the use of learning algorithms with relatively simple architectures is made possible, which saves time and money.

Ein erster Aspekt der Erfindung betrifft ein computerimplementiertes Verfahren zum Trainieren eines Lernalgorithmus zum Umwandeln von Sensordaten einer Sensorik in Ausgabedaten zum Ansteuern einer Aktorik. Das Verfahren umfasst zumindest die folgenden Schritte: Eingeben der Sensordaten in den Lernalgorithmus, wobei der Lernalgorithmus ein durch erste Parameter parametriertes erstes Lernmodul und ein mit dem ersten Lernmodul in Reihe geschaltetes und durch zweite Parameter parametriertes zweites Lernmodul zum Umwandeln der Sensordaten in die Ausgabedaten umfasst; Ausgeben der Ausgabedaten durch den Lernalgorithmus; und Optimieren des Lernalgorithmus durch ein Optimierungsmodul basierend auf den Ausgabedaten, wobei eine erste Zielfunktion durch Ändern der ersten Parameter optimiert wird und die zweiten Parameter während des Optimierens der ersten Zielfunktion konstant gehalten werden.A first aspect of the invention relates to a computer-implemented method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator system. The method comprises at least the following steps: inputting the sensor data into the learning algorithm, the learning algorithm comprising a first learning module parameterized by first parameters and a second learning module connected in series with the first learning module and parameterized by second parameters for converting the sensor data into the output data; outputting the output data by the learning algorithm; and optimizing the learning algorithm by an optimization module based on the output data, wherein a first objective function is optimized by changing the first parameters and the second parameters are kept constant while optimizing the first objective function.

Das Verfahren kann beispielsweise automatisch durch einen Prozessor ausgeführt werden.The method can be executed automatically by a processor, for example.

Unter einem Lernalgorithmus kann im Allgemeinen ein Algorithmus zum maschinellen Lernen eines Modells, das Eingaben in bestimmte Ausgaben umwandelt, beispielsweise durch Klassifikation und/oder Regression, verstanden werden. Beispiele für mögliche Lernalgorithmen sind künstliche neuronale Netze, genetische Algorithmen, Support-Vector-Maschinen, k-Means, Kernel-Regression oder Diskriminanzanalyse. Der Lernalgorithmus kann auch eine Kombination aus mehreren der genannten Beispiele umfassen.A learning algorithm can generally be understood as an algorithm for machine learning of a model that converts inputs into specific outputs, for example by classification and/or regression. Examples of possible learning algorithms are artificial neural networks, genetic algorithms, support vector machines, k-means, kernel regression or discriminant analysis. The learning algorithm can also include a combination of several of the examples mentioned.

Es ist beispielsweise möglich, dass die beiden Lernmodule abwechselnd auf verschiedene Zielgrößen hin optimiert werden, wobei die Zielgröße desjenigen Lernmoduls, das gerade nicht optimiert wird, konstant gehalten werden kann (siehe unten).It is possible, for example, for the two learning modules to be alternately optimized for different target values, with the target value of the learning module that is not currently being optimized being kept constant (see below).

Die Sensorik kann beispielsweise konfiguriert sein, um ein Umfeld und/oder einen Fahrzustand eines Fahrzeugs zu erfassen. Das Fahrzeug kann ein Kraftfahrzeug, etwa in Form eines Pkw, Lkw, Busses oder eines Motorrads, sein. Im weiteren Sinn kann unter einem Fahrzeug auch ein autonomer, mobiler Roboter verstanden werden. Beispielsweise kann die Sensorik mindestens einen Umfeldsensor wie etwa einen Ultraschall-, Radar-, Lidarsensor oder eine Kamera und/oder mindestens einen Fahrdynamiksensor wie etwa einen Drehraten-, Beschleunigungs-, Raddrehzahl- oder Lenkradwinkelsensor umfassen. Darüber hinaus kann die Sensorik einen Ortungssensor zur Bestimmung einer absoluten Position des Fahrzeugs mithilfe eines globalen Navigationssatellitensystems wie GPS, GLONASS o. Ä. umfassen.The sensor system can be configured, for example, to detect an environment and/or a driving state of a vehicle. The vehicle may be an automobile, such as a car, truck, bus, or motorcycle. In a broader sense, a vehicle can also be understood as an autonomous, mobile robot. For example, the sensor system can have at least one environment sensor such as an ultrasonic, radar, lidar sensor or a camera and/or at least one vehicle dynamics sensor such as a yaw rate, acceleration, wheel speed or steering wheel angle sensor. In addition, the sensors can use a location sensor to determine an absolute position of the vehicle using a global navigation satellite system such as GPS, GLONASS or similar. include.

Bei den Sensordaten, die zum Trainieren des Lernalgorithmus verwendet werden, kann es sich um reale, d. h. durch die Sensorik durch Messung erzeugte Sensordaten handeln. Es ist jedoch auch möglich, dass durch einen Computer, beispielsweise im Rahmen einer Simulation des Fahrzeugs und dessen Umfelds, berechnete Sensordaten zum Trainieren des Lernalgorithmus verwendet werden.The sensor data used to train the learning algorithm can be real, i. H. act through the sensors generated by measurement sensor data. However, it is also possible for sensor data calculated by a computer, for example as part of a simulation of the vehicle and its surroundings, to be used to train the learning algorithm.

Bei den Ausgabedaten kann es sich beispielsweise um ein Beschleunigungssignal oder ein Lenkwinkelsignal handeln. Die Ausgabedaten können jedoch auch beliebige andere zum Ansteuern der Aktorik geeignete Informationen umfassen, etwa erkannte Objekte im Umfeld des Fahrzeugs, Positionen und/oder Lagen der erkannten Objekte oder eine Trajektorie des Fahrzeugs.The output data can be an acceleration signal or a steering angle signal, for example. However, the output data can also include any other information suitable for controlling the actuators, such as recognized objects in the vicinity of the vehicle, positions and/or locations of the recognized objects or a trajectory of the vehicle.

Die Aktorik kann beispielsweise konfiguriert sein, um das Fahrzeug zu lenken, zu beschleunigen, abzubremsen und/oder zu navigieren. Hierzu kann die Aktorik einen Lenkaktor, einen Bremsaktor, ein Motorsteuergerät, einen Elektromotor oder eine Kombination aus zumindest zwei der genannten Beispiele umfassen. Es ist möglich, dass das Fahrzeug mit einem Fahrerassistenzsystem bzw. Robotersteuersystem zum teil- oder vollautomatisierten Ansteuern der Aktorik basierend auf den Sensordaten ausgestattet ist. Das Fahrerassistenzsystem bzw. Robotersteuersystem kann als Hardware und/oder Software in einem Steuergerät des Fahrzeugs implementiert sein.The actuator system can be configured, for example, to steer, accelerate, brake and/or navigate the vehicle. For this purpose, the actuator can include a steering actuator, a brake actuator, an engine control unit, an electric motor or a combination of at least two of the examples mentioned. It is possible for the vehicle to be equipped with a driver assistance system or robot control system for partially or fully automated control of the actuators based on the sensor data. The driver assistance system or robot control system can be implemented as hardware and/or software in a control unit of the vehicle.

Beispielsweise kann der Lernalgorithmus zur Klassifikation von Beschleunigungen für einen Fahrzeugregler konfiguriert sein. Hierbei können beispielsweise Bildgrößen eines oder mehrerer Zielobjekte als die Sensordaten in den Lernalgorithmus eingegeben werden. Bei einer solchen Bildgröße kann es sich beispielsweise um eine Position im Bild des Objekts, etwa in Form eines u- oder v-Pixelwerts, einen Time-To-Contact-Wert, kurz TTC-Wert genannt, eine Information über einen optischen Fluss oder um Blinker- oder Bremslichtinformationen von Objekten handeln. Dementsprechend können die Ausgabedaten des Lernalgorithmus eine Beschleunigung umfassen, die vom Fahrzeugregler angefordert wird.For example, the learning algorithm for classifying accelerations can be configured for a vehicle controller. In this case, for example, image sizes of one or more target objects can be entered as the sensor data in the learning algorithm. Such an image size can be, for example, a position in the image of the object, for example in the form of a u or v pixel value, a time-to-contact value, or TTC value for short, information about an optical flow or around Trade turn signal or brake light information from objects. Accordingly, the learning algorithm output data may include an acceleration requested by the vehicle controller.

Alternativ oder zusätzlich zum vorgenannten Beispiel kann der Lernalgorithmus auch zur Fahrzeugquerführung konfiguriert sein. Dazu können Informationen über erfasste Fahrspurbegrenzungen eines Ego-Fahrzeugs als die Sensordaten in den Lernalgorithmus eingegeben werden, beispielsweise in Form von Pixelkoordinaten einer rechten und/oder linken Fahrspurbegrenzung. Der Lernalgorithmus kann konfiguriert sein, um einen Lenkwinkel basierend auf den Sensordaten zu prädizieren. Dementsprechend können die Ausgabedaten des Lernalgorithmus einen prädizierten Lenkwinkel umfassen.As an alternative or in addition to the aforementioned example, the learning algorithm can also be configured for vehicle lateral guidance. For this purpose, information about detected lane boundaries of an ego vehicle can be entered as the sensor data in the learning algorithm, for example in the form of pixel coordinates of a right and/or left lane boundary. The learning algorithm can be configured to predict a steering angle based on the sensor data. Accordingly, the output data of the learning algorithm can include a predicted steering angle.

Es sind jedoch auch weitere Umsetzungen denkbar. Grundsätzlich eignet sich der hier vorgestellte Ansatz zur Prädiktion beliebiger Arten von Signalen, von denen ein glatter Verlauf erwartet wird.However, other implementations are also conceivable. In principle, the approach presented here is suitable for predicting any type of signal from which a smooth course is expected.

Unter einer Zielfunktion kann beispielsweise eine zu minimierende Kosten- oder Verlustfunktion oder eine zu maximierende Belohnungsfunktion verstanden werden.A target function can be understood, for example, as a cost or loss function to be minimized or a reward function to be maximized.

Bei den ersten Parametern kann es sich um Variablen, d. h. während einer Laufzeit des Lernalgorithmus in einem Optimierungsverfahren veränderbare Gewichte, handeln. Hingegen können die zweiten Parameter entweder Variablen oder Konstanten sein. Beispielsweise können die zweiten Parameter als Konstanten im Vorfeld des Trainings des Lernalgorithmus vordefiniert worden sein. Möglich ist jedoch auch, dass die zweiten Parameter beim Trainieren des Lernalgorithmus analog zu den ersten Parametern verändert werden, etwa im Rahmen der Optimierung einer von der ersten Zielfunktion abweichenden zweiten Zielfunktion (siehe weiter unten). Beispielsweise können die zweiten Parameter Filterkoeffizienten eines Filters mit endlicher Impulsantwort, auch FIR-Filter (FIR = finite impulse response) genannt, sein. Der FIR-Filter kann beispielsweise als Tiefpassfilter, Hochpassfilter oder Bandpassfilter konfiguriert sein (siehe auch weiter unten).The first parameters can be variables, i. H. changeable weights during a runtime of the learning algorithm in an optimization process. On the other hand, the second parameters can be either variables or constants. For example, the second parameters can have been predefined as constants prior to the training of the learning algorithm. However, it is also possible for the second parameters to be changed in the same way as the first parameters when training the learning algorithm, for example as part of the optimization of a second target function that differs from the first target function (see below). For example, the second parameters can be filter coefficients of a filter with a finite impulse response, also known as an FIR filter (FIR=finite impulse response). The FIR filter can be configured, for example, as a low-pass filter, high-pass filter or band-pass filter (see also below).

Das Optimieren der ersten Zielfunktion kann beispielsweise in einem Gradientenverfahren durch Backpropagation erfolgen. Denkbar sind aber auch andere Optimierungsverfahren.The first target function can be optimized, for example, in a gradient method by backpropagation. However, other optimization methods are also conceivable.

Beispielsweise können die Schritte des Eingebens, Ausgebens und Optimierens zyklisch wiederholt werden, insbesondere so oft, bis beim Optimieren des Lernalgorithmus ein lokales oder globales Optimum erreicht wird.For example, the steps of inputting, outputting and optimizing can be repeated cyclically, in particular until a local or global optimum is reached when optimizing the learning algorithm.

Der hier vorgestellte Ansatz ermöglicht beispielsweise im Fall eines Geschwindigkeitsreglers eines autonomen Fahrzeugs eine Verhaltensapproximation des Geschwindigkeitsreglers an eine vorgegebene Zielkurve, die beispielsweise von einem professionellen Fahrer aufgenommen worden sein kann, und stellt darüber hinaus sicher, dass die gelernte, gut approximierte Fahrt nicht durch ruckartige Veränderungen der Fahrzeugbeschleunigung geprägt ist, die von den Fahrzeuginsassen als unangenehm empfunden werden könnten.The approach presented here enables, for example, in the case of a cruise controller of an autonomous vehicle, a behavioral approximation of the cruise controller to a predetermined target curve, which can be generated, for example, by a pro professional driver, and also ensures that the learned, well-approximated journey is not characterized by jerky changes in vehicle acceleration, which the vehicle occupants could find uncomfortable.

Beispielsweise kann der Lernalgorithmus eine Kombination aus einem künstlichen neuronalen Netz als dem ersten Lernmodul und einem Frequenzfilter als dem zweiten Lernmodul, wie sie in der klassischen Signalverarbeitung verwendet werden, umfassen. Der Frequenzfilter kann mit dem Ausgang des künstlichen neuronalen Netzes verbunden sein und beispielsweise im Vorfeld der Lernprozedur so ausgelegt worden sein, dass ein resultierendes Gesamtsignal des Lernalgorithmus unerwünschte Eigenschaften einer Randgröße wie etwa hohe Frequenzkomponenten eines Beschleunigungssignals nicht oder allenfalls stark abgeschwächt enthält. Im einfachsten Fall kann die Parametrisierung des Frequenzfilters während der Lernprozedur konstant bleiben, d. h., die zweiten Parameter werden im Unterschied zu den ersten Parametern, hier den Parametern des künstlichen neuronalen Netzes, nicht anhand der ersten Zielfunktion optimiert. Auf diese Weise kann die Einhaltung von Bedingungen, die die Randgröße erfüllen soll, automatisch garantiert werden, ohne dass ein Trade-off-Parameter in die Kostenfunktion eingeführt zu werden braucht.For example, the learning algorithm can include a combination of an artificial neural network as the first learning module and a frequency filter as the second learning module, as used in classical signal processing. The frequency filter can be connected to the output of the artificial neural network and, for example, be designed in advance of the learning procedure in such a way that a resulting overall signal from the learning algorithm does not contain undesirable properties of a marginal variable, such as high frequency components of an acceleration signal, or at best contains them in a greatly weakened form. In the simplest case, the parameterization of the frequency filter can remain constant during the learning procedure, i. That is to say, the second parameters are not optimized using the first objective function, in contrast to the first parameters, here the parameters of the artificial neural network. In this way, compliance with conditions that the marginal size is supposed to fulfill can be automatically guaranteed without having to introduce a trade-off parameter into the cost function.

Je nach Randgröße kann hierdurch auch die Lernprozedur vereinfacht werden, da all diejenigen Signale am Ausgang des künstlichen neuronalen Netzes, die sich nur in den durch den Frequenzfilter herausgefilterten Frequenzkomponenten von Signalen am Ausgang des Frequenzfilters unterscheiden, zur gleichen Lösung führen. Daraus resultiert eine Vergrößerung der Menge an (lokalen) Optima der ersten Zielfunktion, was die Lernprozedur schneller und zuverlässiger konvergieren lässt.Depending on the boundary size, this can also simplify the learning procedure, since all those signals at the output of the artificial neural network that differ only in the frequency components filtered out by the frequency filter from signals at the output of the frequency filter lead to the same solution. This results in an increase in the number of (local) optima of the first objective function, which allows the learning procedure to converge faster and more reliably.

Letztendlich kann somit die Zuverlässigkeit und Erkennungsgenauigkeit des Lernalgorithmus erhöht werden. Dies kann insbesondere beim Einsatz für sicherheitsrelevante Funktionen wie beispielsweise Fahrfunktionen zur Erhöhung der Verkehrssicherheit betragen.Ultimately, the reliability and recognition accuracy of the learning algorithm can thus be increased. In particular when used for safety-related functions such as driving functions, this can contribute to increasing traffic safety.

Ein zweiter Aspekt der Erfindung betrifft ein computerimplementiertes Verfahren zum Ansteuern einer Aktorik eines Fahrzeugs. Dabei umfasst das Fahrzeug zusätzlich zur Aktorik eine Sensorik zum Erfassen eines Fahrzustands und/oder eines Umfelds des Fahrzeugs. Das Verfahren umfasst zumindest die folgenden Schritte: Empfangen von durch die Sensorik erzeugten Sensordaten; Eingeben der Sensordaten in einen Lernalgorithmus, der in einem Verfahren gemäß einer Ausführungsform des ersten Aspekts der Erfindung trainiert wurde, um die Sensordaten in Ausgabedaten umzuwandeln; und Erzeugen eines Steuersignals zum Ansteuern der Aktorik basierend auf den Ausgabedaten.A second aspect of the invention relates to a computer-implemented method for controlling an actuator of a vehicle. In addition to the actuator system, the vehicle also includes a sensor system for detecting a driving state and/or an environment of the vehicle. The method comprises at least the following steps: receiving sensor data generated by the sensor system; inputting the sensor data into a learning algorithm trained in a method according to an embodiment of the first aspect of the invention to convert the sensor data into output data; and generating a control signal for controlling the actuator based on the output data.

Zusätzlich zur Sensorik und Aktorik kann das Fahrzeug ein Steuergerät zum Ansteuern der Aktorik basierend auf den Sensordaten umfassen. Der Lernalgorithmus kann als Hardware und/oder Software in dem Steuergerät implementiert sein. Das Verfahren kann beispielsweise automatisch durch einen Prozessor des Steuergeräts ausgeführt werden.In addition to the sensors and actuators, the vehicle can include a control unit for controlling the actuators based on the sensor data. The learning algorithm can be implemented as hardware and/or software in the control unit. The method can be executed automatically by a processor of the control device, for example.

Merkmale des Verfahrens gemäß einer Ausführungsform des ersten Aspekts der Erfindung können auch Merkmale des Verfahrens gemäß einer Ausführungsform des zweiten Aspekts der Erfindung sein und umgekehrt.Features of the method according to an embodiment of the first aspect of the invention can also be features of the method according to an embodiment of the second aspect of the invention and vice versa.

Ein dritter Aspekt der Erfindung betrifft eine Vorrichtung zur Datenverarbeitung. Die Vorrichtung umfasst einen Prozessor, der konfiguriert, um das Verfahren gemäß einer Ausführungsform des ersten Aspekts der Erfindung und/oder das Verfahren gemäß einer Ausführungsform des zweiten Aspekts der Erfindung auszuführen. Unter einer Vorrichtung zur Datenverarbeitung kann beispielsweise ein Computer, ein Computersystem oder ein Steuergerät verstanden werden. Die Vorrichtung kann Hardware- und/oder Softwaremodule umfassen. Zusätzlich zum Prozessor kann die Vorrichtung einen Speicher und Datenkommunikationsschnittstellen zur Datenkommunikation mit Peripheriegeräten umfassen. Merkmale des Verfahrens gemäß einer Ausführungsform des ersten bzw. zweiten Aspekts der Erfindung können auch Merkmale der Vorrichtung sein und umgekehrt.A third aspect of the invention relates to a device for data processing. The device comprises a processor configured to carry out the method according to an embodiment of the first aspect of the invention and/or the method according to an embodiment of the second aspect of the invention. A device for data processing can be understood to mean, for example, a computer, a computer system or a control device. The device may include hardware and/or software modules. In addition to the processor, the device may include memory and data communication interfaces for data communication with peripheral devices. Features of the method according to an embodiment of the first or second aspect of the invention can also be features of the device and vice versa.

Ein vierter Aspekt der Erfindung betrifft ein Computerprogramm. Das Computerprogramm umfasst Befehle, die einen Prozessor bei Ausführung des Computerprogramms durch den Prozessor veranlassen, das Verfahren gemäß einer Ausführungsform des ersten Aspekts der Erfindung und/oder das Verfahren gemäß einer Ausführungsform des zweiten Aspekts der Erfindung auszuführen.A fourth aspect of the invention relates to a computer program. The computer program comprises instructions which, when the computer program is executed by the processor, cause a processor to carry out the method according to an embodiment of the first aspect of the invention and/or the method according to an embodiment of the second aspect of the invention.

Ein fünfter Aspekt der Erfindung betrifft ein computerlesbares Medium, auf dem das Computerprogramm gemäß einer Ausführungsform des vierten Aspekts der Erfindung gespeichert ist. Das computerlesbare Medium kann ein flüchtiger oder nicht flüchtiger Datenspeicher sein. Beispielsweise kann das computerlesbare Medium eine Festplatte, ein USB-Speichergerät, ein RAM, ROM, EPROM oder Flash-Speicher sein. Das computerlesbare Medium kann auch ein einen Download eines Programmcodes ermöglichendes Datenkommunikationsnetzwerk wie etwa das Internet oder eine Datenwolke (Cloud) sein.A fifth aspect of the invention relates to a computer-readable medium on which the computer program according to an embodiment of the fourth aspect of the invention is stored. The computer-readable medium can be volatile or non-volatile data storage. For example, the computer-readable medium can be a hard drive, USB storage device, RAM, ROM, EPROM, or flash memory. The computer-readable medium can also be a data communication network such as the Internet or a data cloud (cloud) enabling a download of a program code.

Merkmale des Verfahrens gemäß einer Ausführungsform des ersten bzw. zweiten Aspekts der Erfindung können auch Merkmale des Computerprogramms und/oder des computerlesbaren Mediums sein und umgekehrt.Features of the method according to an embodiment of the first or second aspect of the invention can also be features of the computer program and/or the computer-readable medium and vice versa.

Ideen zu Ausführungsformen der vorliegenden Erfindung können unter anderem als auf den nachfolgend beschriebenen Gedanken und Erkenntnissen beruhend angesehen werden.Ideas for embodiments of the present invention can be regarded as being based, among other things, on the ideas and findings described below.

Gemäß einer Ausführungsform wird zum Optimieren des Lernalgorithmus ferner eine von der ersten Zielfunktion abweichende zweite Zielfunktion durch Ändern der zweiten Parameter basierend auf den Ausgabedaten optimiert. Bei der ersten Zielfunktion und der zweiten Zielfunktion kann es sich beispielsweise um unterschiedliche Kosten- oder Belohnungsfunktionen handeln. Das Optimieren der zweiten Zielfunktion kann beispielsweise in einem Gradientenverfahren durch Backpropagation erfolgen. Denkbar sind aber auch andere Optimierungsverfahren. Somit kann der Lernalgorithmus gezielt an konkurrierende Zielgrößen angepasst werden.According to one embodiment, to optimize the learning algorithm, a second objective function that differs from the first objective function is further optimized by changing the second parameters based on the output data. The first objective function and the second objective function can be different cost or reward functions, for example. The second target function can be optimized, for example, in a gradient method by backpropagation. However, other optimization methods are also conceivable. In this way, the learning algorithm can be specifically adapted to competing target values.

Gemäß einer Ausführungsform werden die ersten Parameter während des Optimierens der zweiten Zielfunktion konstant gehalten. Zusätzlich oder alternativ kann ein Funktionswert der ersten Zielfunktion während des Optimierens der zweiten Zielfunktion konstant gehalten werden. Unter einem Funktionswert der ersten Zielfunktion kann eine abhängige Variable der ersten Zielfunktion verstanden werden. Somit können beim Optimieren des Lernalgorithmus unerwünschte Wechselwirkungen zwischen der ersten Zielfunktion und der zweiten Zielfunktion vermieden werden.According to one embodiment, the first parameters are kept constant during the optimization of the second objective function. Additionally or alternatively, a function value of the first target function can be kept constant during the optimization of the second target function. A function value of the first target function can be understood as a dependent variable of the first target function. Undesirable interactions between the first target function and the second target function can thus be avoided when optimizing the learning algorithm.

Möglich ist auch, dass während des Optimierens der ersten Zielfunktion zusätzlich zu den zweiten Parametern ein Funktionswert der zweiten Zielfunktion konstant gehalten wird.It is also possible that a function value of the second target function is kept constant in addition to the second parameters during the optimization of the first target function.

Gemäß einer Ausführungsform werden die erste Zielfunktion und die zweite Zielfunktion in mehreren Schleifen abwechselnd optimiert, beispielsweise bis zum Erreichen eines lokalen oder globalen Optimums. Somit kann der Lernalgorithmus sehr effizient optimiert werden. Zudem können somit unerwünschte Wechselwirkungen zwischen der ersten Zielfunktion und der zweiten Zielfunktion vermieden werden.According to one embodiment, the first objective function and the second objective function are alternately optimized in a plurality of loops, for example until a local or global optimum is reached. Thus, the learning algorithm can be optimized very efficiently. In addition, undesired interactions between the first target function and the second target function can thus be avoided.

Gemäß einer Ausführungsform werden die Sensordaten in das erste Lernmodul eingegeben und die Ausgabedaten durch das zweite Lernmodul ausgegeben. Dabei können Ausgaben des ersten Lernmoduls als Eingaben in das zweite Lernmodul eingegeben werden. Dies ermöglicht eine Filterung von Ausgabedaten des ersten (durch Optimieren der ersten Zielfunktion konfigurierbaren) Lernmoduls durch das zweite (beispielsweise vorkonfigurierte) Lernmodul.According to one embodiment, the sensor data is input into the first learning module and the output data is output by the second learning module. In this case, outputs from the first learning module can be entered as inputs into the second learning module. This allows output data from the first learning module (configurable by optimizing the first objective function) to be filtered by the second learning module (preconfigured, for example).

Alternativ dazu können die Sensordaten in das zweite Lernmodul eingegeben und die Ausgabedaten durch das erste Lernmodul ausgegeben werden. Dabei können Ausgaben des zweiten Lernmoduls als Eingaben in das erste Lernmodul eingegeben werden. Dies ermöglicht eine Filterung von Ausgabedaten des zweiten (beispielsweise vorkonfigurierten) Lernmoduls durch das erste (durch Optimieren der ersten Zielfunktion konfigurierbare) Lernmodul.Alternatively, the sensor data can be entered into the second learning module and the output data can be output by the first learning module. In this case, outputs from the second learning module can be entered as inputs into the first learning module. This allows output data from the second (preconfigured, for example) learning module to be filtered by the first learning module (configurable by optimizing the first objective function).

Gemäß einer Ausführungsform ist das erste Lernmodul als ein erster Filter zum Filtern von Ausgaben des zweiten Lernmoduls konfiguriert. Dabei sind die ersten Parameter Filterkoeffizienten des ersten Filters. Beispielsweise können die Sensordaten zunächst in das zweite Lernmodul eingegeben werden und die Ausgaben des zweiten Lernmoduls zur weiteren Filterung anschließend in das erste Lernmodul eingegeben werden. Dementsprechend kann es sich bei den Ausgabedaten des Lernalgorithmus um Ausgaben des ersten Lernmoduls handeln. Dies hat den Vorteil, dass die Filterkoeffizienten unabhängig von den Parametern des zweiten Lernmoduls gewählt werden können. Somit können Zielgrößenkonflikte beim Optimieren des Lernalgorithmus vermieden werden.According to one embodiment, the first learning module is configured as a first filter for filtering outputs of the second learning module. The first parameters are filter coefficients of the first filter. For example, the sensor data can first be entered into the second learning module and the outputs of the second learning module can then be entered into the first learning module for further filtering. Accordingly, the output data from the learning algorithm can be outputs from the first learning module. This has the advantage that the filter coefficients can be selected independently of the parameters of the second learning module. In this way, target variable conflicts can be avoided when optimizing the learning algorithm.

Gemäß einer alternativen Ausführungsform ist das zweite Lernmodul als ein zweiter Filter zum Filtern von Ausgaben des ersten Lernmoduls konfiguriert. Dabei sind die zweiten Parameter Filterkoeffizienten des zweiten Filters. Beispielsweise können die Sensordaten zunächst in das erste Lernmodul eingegeben werden und die Ausgaben des ersten Lernmoduls zur weiteren Filterung anschließend in das zweite Lernmodul eingegeben werden. Dementsprechend kann es sich bei den Ausgabedaten des Lernalgorithmus um Ausgaben des zweiten Lernmoduls handeln. Dies hat den Vorteil, dass die Filterkoeffizienten unabhängig von den Parametern des ersten Lernmoduls gewählt werden können. Somit können Zielgrößenkonflikte beim Optimieren des Lernalgorithmus vermieden werden.According to an alternative embodiment, the second learning module is configured as a second filter for filtering outputs of the first learning module. The second parameters are filter coefficients of the second filter. For example, the sensor data can first be entered into the first learning module and the outputs of the first learning module can then be entered into the second learning module for further filtering. Accordingly, the output data from the learning algorithm can be outputs from the second learning module. This has the advantage that the filter coefficients can be selected independently of the parameters of the first learning module. In this way, target variable conflicts can be avoided when optimizing the learning algorithm.

Bei dem ersten bzw. zweiten Filter kann es sich beispielsweise um einen Filter zur digitalen Signalverarbeitung, etwa einen Filter mit endlicher Impulsantwort, auch FIR-Filter genannt, handeln (siehe weiter oben). Je nach Filterkoeffizienten kann der erste bzw. zweite Filter beispielsweise als Hochpass-, Tiefpass- oder Bandpassfilter konfiguriert sein.The first or second filter can be, for example, a filter for digital signal processing, such as a filter with a finite impulse response, also known as an FIR filter (see above). Depending on the filter coefficients, the first or second filter can be configured as a high-pass, low-pass or band-pass filter, for example.

Gemäß einer Ausführungsform ist der erste Filter ein Tiefpassfilter. Dies hat den Effekt, dass die Ausgaben des zweiten Lernmoduls, etwa ein Beschleunigungs- oder Lenkwinkelsignal, mittels des ersten Lernmoduls geglättet werden können.According to one embodiment, the first filter is a low-pass filter. This has the effect that the Outputs of the second learning module, such as an acceleration or steering angle signal, can be smoothed using the first learning module.

Gemäß einer alternativen Ausführungsform ist der zweite Filter ein Tiefpassfilter. Dies hat den Effekt, dass die Ausgaben des ersten Lernmoduls, etwa ein Beschleunigungs- oder Lenkwinkelsignal, mittels des zweiten Lernmoduls geglättet werden können.According to an alternative embodiment, the second filter is a low-pass filter. This has the effect that the outputs of the first learning module, such as an acceleration or steering angle signal, can be smoothed using the second learning module.

Gemäß einer Ausführungsform werden ferner den Sensordaten zugeordnete Zielwerte in den Lernalgorithmus eingegeben. Dabei quantifiziert die erste Zielfunktion eine Abweichung zwischen den Ausgabedaten und den Zielwerten. Die erste Zielfunktion wird dann durch Ändern der ersten Parameter basierend auf den Ausgabedaten und den Zielwerten minimiert. Die Zielwerte können als Label aufgefasst werden, mit denen die Sensordaten annotiert sind. Anders ausgedrückt kann der Lernalgorithmus so optimiert werden, dass die Ausgabedaten bestmöglich mit den Zielwerten übereinstimmen.According to one embodiment, target values associated with the sensor data are also input into the learning algorithm. The first target function quantifies a deviation between the output data and the target values. The first objective function is then minimized by changing the first parameters based on the output data and the target values. The target values can be understood as labels with which the sensor data are annotated. In other words, the learning algorithm can be optimized in such a way that the output data matches the target values as closely as possible.

Es ist möglich, dass der Lernalgorithmus zusätzlich zum ersten und zweiten Lernmodul mindestens ein durch dritte Parameter parametriertes drittes Lernmodul umfasst, das das erste Lernmodul mit dem zweiten Lernmodul verbindet. Dabei können die ersten und/oder zweiten Parameter unabhängig von den dritten Parametern veränderbar sein und umgekehrt. Analog zu den ersten bzw. zweiten Parametern kann beispielsweise zum Optimieren des Lernalgorithmus ferner eine von der ersten und/oder zweiten Zielfunktion abweichende dritte Zielfunktion durch Ändern der dritten Parameter basierend auf den Ausgabedaten optimiert werden. Beispielsweise können während des Optimierens der ersten Zielfunktion die zweiten und/oder dritten Parameter, während des Optimierens der zweiten Zielfunktion die ersten und/oder dritten Parameter und/oder während des Optimierens der dritten Zielfunktion die ersten und/oder zweiten Parameter konstant gehalten werden. Somit kann der Lernalgorithmus gezielt an mindestens drei konkurrierende Zielgrößen angepasst werden.It is possible that the learning algorithm includes at least one third learning module parameterized by third parameters, in addition to the first and second learning module, which connects the first learning module to the second learning module. The first and/or second parameters can be changeable independently of the third parameters and vice versa. Analogously to the first or second parameters, a third target function that deviates from the first and/or second target function can also be optimized by changing the third parameters based on the output data, for example to optimize the learning algorithm. For example, the second and/or third parameters can be kept constant during the optimization of the first objective function, the first and/or third parameters during the optimization of the second objective function, and/or the first and/or second parameters during the optimization of the third objective function. Thus, the learning algorithm can be specifically adapted to at least three competing target variables.

Gemäß einer Ausführungsform umfasst der Lernalgorithmus mindestens ein künstliches neuronales Netz. Dabei sind die ersten Parameter trainierbare Gewichte mindestens einer ersten Schicht des künstlichen neuronalen Netzes. Zusätzlich oder alternativ können die zweiten Parameter trainierbare Gewichte mindestens einer zweiten Schicht des künstlichen neuronalen Netzes sein. Das künstliche neuronale Netz kann beispielsweise ein mehrlagiges Perzeptron mit mindestens einer trainerbaren Zwischenschicht, ein faltendes neuronales Netz, auch Convolutional Neural Network (CNN) genannt, ein rekurrentes neuronales Netz, auch Recurrent Neural Network (RNN) genannt, ein LSTM-Netz (LSTM = long short-term memory) oder eine Kombination aus mindestens zwei der genannten Beispiele sein. Besonders vorteilhaft ist ein künstliches neuronales Netz mit einer Vielzahl trainierbarer Zwischenschichten, auch Deep Neural Network genannt. Möglich ist beispielsweise auch, dass die erste Schicht und die zweite Schicht unterschiedlichen, miteinander verknüpften künstlichen neuronalen Netzen angehören.According to one embodiment, the learning algorithm includes at least one artificial neural network. The first parameters are trainable weights of at least one first layer of the artificial neural network. Additionally or alternatively, the second parameters can be trainable weights of at least a second layer of the artificial neural network. The artificial neural network can be, for example, a multi-layer perceptron with at least one intermediate layer that can be trained, a convolutional neural network, also known as a convolutional neural network (CNN), a recurrent neural network, also known as a recurrent neural network (RNN), an LSTM network (LSTM = long short-term memory) or a combination of at least two of the above examples. An artificial neural network with a large number of trainable intermediate layers, also known as a deep neural network, is particularly advantageous. It is also possible, for example, for the first layer and the second layer to belong to different artificial neural networks that are linked to one another.

Figurenlistecharacter list

Nachfolgend werden Ausführungsformen der Erfindung unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, wobei weder die Zeichnungen noch die Beschreibung als die Erfindung einschränkend auszulegen sind.

  • 1 zeigt schematisch eine Vorrichtung zur Datenverarbeitung gemäß einem Ausführungsbeispiel der Erfindung.
  • 2 zeigt schematisch ein Fahrzeug mit einem Steuergerät gemäß einem Ausführungsbeispiel der Erfindung.
  • 3 zeigt schematisch ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Trainieren eines Lernalgorithmus gemäß einem Ausführungsbeispiel der Erfindung.
  • 4 zeigt ein Diagramm zur Veranschaulichung eines Beschleunigungssignals am Ausgang eines einfachen künstlichen neuronalen Netzes.
  • 5 zeigt ein Diagramm zur Veranschaulichung eines Beschleunigungssignals am Ausgang eines Lernalgorithmus, der in einem Verfahren gemäß einem Ausführungsbeispiel der Erfindung trainiert wurde.
Embodiments of the invention are described below with reference to the accompanying drawings, neither the drawings nor the description being to be construed as limiting the invention.
  • 1 shows schematically a device for data processing according to an embodiment of the invention.
  • 2 shows schematically a vehicle with a control device according to an embodiment of the invention.
  • 3 FIG. 12 schematically shows a flowchart to illustrate a method for training a learning algorithm according to an embodiment of the invention.
  • 4 shows a diagram illustrating an acceleration signal at the output of a simple artificial neural network.
  • 5 shows a diagram to illustrate an acceleration signal at the output of a learning algorithm that was trained in a method according to an embodiment of the invention.

Die Figuren sind lediglich schematisch und nicht maßstabsgetreu. Gleiche Bezugszeichen bezeichnen in den Figuren gleiche oder gleichwirkende Merkmale.The figures are merely schematic and not true to scale. In the figures, the same reference symbols denote the same features or features that have the same effect.

Ausführungsformen der ErfindungEmbodiments of the invention

1 zeigt eine Vorrichtung 100 zum Trainieren eines Lernalgorithmus 102 zum Umwandeln von Sensordaten 104 einer Sensorik 106 in Ausgabedaten 108 zum Ansteuern einer Aktorik 110. Der Lernalgorithmus 102 umfasst ein erstes Lernmodul 112, das durch erste Parameter 114 parametriert ist, und ein zweites Lernmodul 116, das durch zweite Parameter 118 parametriert ist. In diesem Beispiel ist das erste Lernmodul 112 an seinem Ausgang mit einem Eingang des zweiten Lernmoduls 116 verbunden, wobei ein Ausgang des zweiten Lernmoduls 116 einen Ausgang des Lernalgorithmus 102 darstellt, an dem die Ausgabedaten 108 bereitgestellt werden. Die Sensordaten 104 werden dabei in das erste Lernmodul 112 eingegeben. 1 shows a device 100 for training a learning algorithm 102 for converting sensor data 104 of a sensor system 106 into output data 108 for controlling an actuator 110. The learning algorithm 102 comprises a first learning module 112, which is parameterized by first parameters 114, and a second learning module 116, which is parameterized by second parameter 118. In this example, the output of the first learning module 112 is connected to an input of the second learning module 116, with an output of the second learning module 116 representing an output of the learning algorithm 102, at which the output data 108 is provided will. In this case, the sensor data 104 are input into the first learning module 112 .

Die zwei Lernmodule 112, 116 sind so konfiguriert, dass die ersten Parameter 114 unabhängig von den zweiten Parametern 118 optimierbar, d. h. veränderbar sind. Umgekehrt können beispielsweise auch die zweiten Parameter 118 unabhängig von den ersten Parametern 114 veränderbar sein. Alternativ können die zweiten Parameter 118 im Gegensatz zu den ersten Parametern 114 unveränderlich sein.The two learning modules 112, 116 are configured in such a way that the first parameters 114 can be optimized independently of the second parameters 118, i. H. are changeable. Conversely, for example, the second parameters 118 can also be changed independently of the first parameters 114 . Alternatively, unlike the first parameters 114, the second parameters 118 may be fixed.

Bei den ersten Parametern 114 und den zweiten Parametern 118 kann es sich beispielsweise um trainierbare Gewichte unterschiedlicher Schichten ein und desselben künstlichen neuronalen Netzes 119 oder um trainierbare Gewichte unterschiedlicher künstlicher neuronale Netze 119a, 119b handeln. Genauer können die ersten Parameter 114 trainierbare Gewichte einer oder mehrerer aufeinanderfolgender erster Schichten sein und die zweiten Parameter 118 trainierbare Gewichte einer oder mehrerer den ersten Schichten nachfolgenden zweiten Schichten sein.The first parameters 114 and the second parameters 118 can be, for example, trainable weights of different layers of one and the same artificial neural network 119 or trainable weights of different artificial neural networks 119a, 119b. More specifically, the first parameters 114 may be trainable weights of one or more consecutive first layers and the second parameters 118 may be trainable weights of one or more second layers subsequent to the first layers.

Der Lernalgorithmus 102 kann zusätzlich zu dem ersten Lernmodul 112 und dem zweiten Lernmodul 116 ein Optimierungsmodul 120 zum Optimieren einer ersten Zielfunktion 122 durch Ändern der ersten Parameter 114 und, optional, zum Optimieren einer zweiten Zielfunktion 124 durch Ändern der zweiten Parameter 118 basierend auf den Ausgabedaten 108 aufweisen.The learning algorithm 102 can, in addition to the first learning module 112 and the second learning module 116, an optimization module 120 for optimizing a first objective function 122 by changing the first parameters 114 and, optionally, for optimizing a second objective function 124 by changing the second parameters 118 based on the output data 108 have.

Hierzu können beispielsweise entsprechende Zielwerte y in das Optimierungsmodul 120 eingegeben werden. Beispielsweise können die Sensordaten 104 eine Mehrzahl realer oder simulierter Messwerte x umfassen, wobei jedem der Messwerte x ein bestimmter Zielwert y zugeordnet sein kann und der Lernalgorithmus 102 für jeden der Messwerte x einen Prädiktionswert y ausgeben kann. Die Ausgabedaten 108 können somit eine Mehrzahl von Prädiktionswerten y umfassen.For this purpose, for example, corresponding target values y can be entered into the optimization module 120 . For example, the sensor data 104 can include a plurality of real or simulated measured values x, wherein each of the measured values x can be assigned a specific target value y and the learning algorithm 102 can output a prediction value y for each of the measured values x. The output data 108 can thus include a plurality of prediction values y.

Zum Optimieren der ersten Zielfunktion 122 können die ersten Parameter 114 beispielsweise in einem Gradientenverfahren durch Backpropagation basierend auf den Prädiktionswerten y und den entsprechenden Zielwerten y verändert werden. Beispielsweise kann die erste Zielfunktion 122 eine Kosten- oder Verlustfunktion sein, die eine Abweichung zwischen den Prädiktionswerten y und den Zielwerten y quantifiziert, beispielsweise eine quadratische Verlustfunktion oder eine 0-1-Verlustfunktion. Dabei können die Prädiktionswerte y, die Zielwerte y und die ersten Parameter 114 unabhängige Variablen der ersten Zielfunktion 122 sein, während ein Funktionswert, d. h. eine abhängige Variable, der ersten Zielfunktion 122 durch entsprechendes Ändern der ersten Parameter 114 zu minimieren ist.In order to optimize the first target function 122, the first parameters 114 can be changed, for example, in a gradient method by backpropagation based on the prediction values y and the corresponding target values y. For example, the first objective function 122 can be a cost or loss function that quantifies a deviation between the prediction values y and the target values y, for example a quadratic loss function or a 0-1 loss function. In this case, the prediction values y, the target values y and the first parameters 114 can be independent variables of the first target function 122, while a function value, i. H. a dependent variable of the first objective function 122 to be minimized by changing the first parameters 114 accordingly.

Das Optimieren der zweiten Zielfunktion 124 durch Ändern der zweiten Parameter 118 kann analog zum vorangehend beschriebenen Optimieren der ersten Zielfunktion 122 erfolgen. Die zweite Zielfunktion 124 kann jedoch auch in einem anderen Optimierungsverfahren optimiert werden. Wichtig ist, dass jeweils unter Randbedingungen optimiert wird, also die jeweils andere Zielfunktion konstant oder besser bleibt.The optimization of the second target function 124 by changing the second parameters 118 can take place analogously to the optimization of the first target function 122 described above. However, the second objective function 124 can also be optimized in a different optimization method. It is important that optimization takes place under boundary conditions, i.e. the other target function remains constant or better.

Es wird darauf hingewiesen, dass es zum Trainieren bzw. Optimieren des Lernalgorithmus 102 nicht zwingend erforderlich ist, die zweiten Parameter 118 zusätzlich zu den ersten Parametern 114 zu verändern. Wie bereits erwähnt, ist es beispielsweise auch möglich, dass die zweiten Parameter 118 als fixe Werte vorgegeben sind, d. h. während der Laufzeit des Lernalgorithmus 102 unabhängig von der Optimierung der ersten Zielfunktion 122 gleich bleiben.It is pointed out that it is not absolutely necessary to change the second parameters 118 in addition to the first parameters 114 in order to train or optimize the learning algorithm 102 . As already mentioned, it is also possible, for example, for the second parameters 118 to be specified as fixed values, i. H. remain the same during the runtime of the learning algorithm 102 independently of the optimization of the first objective function 122.

Die Vorrichtung 100 umfasst ferner einen Prozessor 126 zum Ausführen eines Computerprogramms und einen Speicher 128, auf dem das Computerprogramm gespeichert ist. Das Ausführen des Computerprogramms bewirkt, dass der Lernalgorithmus 102 in einem Verfahren, wie es beispielhaft anhand von 1 bis 5 beschrieben ist, trainiert wird. Die im Vorangehenden und im Folgenden erwähnten Module der Vorrichtung 100 können Software- und/oder Hardwaremodule sein.The device 100 also includes a processor 126 for executing a computer program and a memory 128 on which the computer program is stored. The execution of the computer program causes the learning algorithm 102 in a method as exemplified with reference to 1 until 5 is described, is trained. The modules of the device 100 mentioned above and below can be software and/or hardware modules.

Der fertig trainierte Lernalgorithmus 102 kann beispielsweise in einem Steuergerät 200 eines Fahrzeugs 202 (siehe 2) als Software- und/oder Hardwaremodul implementiert werden und zum automatisierten Ansteuern der Aktorik 110 des Fahrzeugs 202 eingesetzt werden, etwa eines Lenk- oder Bremsaktors oder eines Antriebsmotors des Fahrzeugs 202. Beispielsweise kann das Fahrzeug 202 hierzu mit einer geeigneten Fahrerassistenzfunktion ausgestattet sein. Das Fahrzeug 202 kann jedoch auch ein autonomer Roboter mit einem geeigneten Robotersteuerprogramm sein. Das Steuergerät 200 ist an seinem Eingang mit der Sensorik 106 verbunden, die einen oder mehrere Umfeldsensoren zum Erfassen eines Umfelds des Fahrzeugs 202 und/oder einen oder mehrere Fahrdynamiksensoren zum Erfassen eines Fahrzustands des Fahrzeugs 202 umfassen kann.The completely trained learning algorithm 102 can be used, for example, in a control unit 200 of a vehicle 202 (see 2 ) can be implemented as a software and/or hardware module and used to automatically control actuators 110 of vehicle 202, such as a steering or brake actuator or a drive motor of vehicle 202. For example, vehicle 202 can be equipped with a suitable driver assistance function for this purpose. However, the vehicle 202 can also be an autonomous robot with a suitable robot control program. At its input, control unit 200 is connected to sensor system 106, which can include one or more environment sensors for detecting an environment of vehicle 202 and/or one or more driving dynamics sensors for detecting a driving state of vehicle 202.

Zum automatisierten Ansteuern der Aktorik 110 werden zunächst die von der Sensorik 106 bereitgestellten Sensordaten 104, x im Steuergerät 200 empfangen und dann in den Lernalgorithmus 102 eingegeben. Der Lernalgorithmus 102 kann von einem Prozessor des Steuergeräts 200 (nicht gezeigt) in Form eines entsprechenden Computerprogramms ausgeführt werden. Basierend auf den durch den Lernalgorithmus 102 ausgegebenen Ausgabedaten 108, y erzeugt das Steuergerät 200 ein entsprechendes Steuersignal 204 und gibt dieses an die Aktorik 110 aus. Beispielsweise können die Ausgabedaten 108, y in einen Geschwindigkeitscontroller des Steuergeräts 200 eingegeben werden, wobei das Steuersignal 204 basierend auf den Ausgabedaten 108, y durch den Geschwindigkeitscontroller erzeugt wird und durch Ausgeben des Steuersignals 204 an die Aktorik 110 bewirkt wird, dass das Fahrzeug 202 seine Geschwindigkeit ändert.For the automated control of the actuator 110 , the sensor data 104 , x provided by the sensor 106 are first received in the control unit 200 and then entered into the learning algorithm 102 . The learning algorithm 102 can be executed by a processor of the control device 200 (not shown) are executed in the form of a corresponding computer program. Based on the output data 108, y output by the learning algorithm 102, the control unit 200 generates a corresponding control signal 204 and outputs it to the actuator system 110. For example, output data 108, y can be input into a speed controller of control unit 200, control signal 204 being generated by the speed controller based on output data 108, y, and outputting control signal 204 to actuator system 110 causes vehicle 202 to move its speed changes.

Wie bereits erwähnt, ist es möglich, dass beim Trainieren des Lernalgorithmus 102 zusätzlich zur Parametrisierung des ersten Lernmoduls 112 die Parametrisierung des zweiten Lernmoduls 116 angepasst wird, etwa um Ausgabedaten 108, y zu erhalten, die zusätzlich zu (Haupt-)Bedingungen einer Zielgröße (Neben-)Bedingungen einer Randgröße erfüllen. Das zweite Lernmodul 116 kann dabei nur für die Randgröße, nicht aber für die Zielgröße zuständig sein. Die Anpassung kann beispielsweise in einem zweistufigen Verfahren mit unterschiedlichen Kostenfunktionen erfolgen, wie es in 3 schematisch dargestellt ist und im Folgenden beschrieben wird.As already mentioned, it is possible that when training the learning algorithm 102, in addition to the parameterization of the first learning module 112, the parameterization of the second learning module 116 is adapted, for example in order to obtain output data 108, y, which in addition to (main) conditions of a target variable ( Fulfill secondary conditions of a boundary size. In this case, the second learning module 116 can only be responsible for the marginal variable, but not for the target variable. The adjustment can, for example, be carried out in a two-stage process with different cost functions, as described in 3 is shown schematically and is described below.

Dazu können in einem ersten Optimierungsschritt die ersten Parameter 114 bei konstanter Parametrisierung des zweiten Lernmoduls 116 auf die Zielgröße hin optimiert werden, wobei ein Approximationsfehler, der die Abweichung zwischen den Prädiktionswerten y und den Zielwerten y anzeigt, bestimmt wird. Anschließend können in einem zweiten Optimierungsschritt die zweiten Parameter 118 bei konstanter Parametrisierung des ersten Lernmoduls 112 und/oder konstantem Approximationsfehler, wie er im ersten Optimierungsschritt bestimmt wurde, auf die Randgröße hin optimiert werden. Durch die Randgröße kann beispielsweise ein bevorzugter Frequenzbereich der Ausgabedaten 108, y definiert werden.For this purpose, in a first optimization step, the first parameters 114 can be optimized for the target variable with constant parameterization of the second learning module 116, with an approximation error, which indicates the deviation between the prediction values y and the target values y, being determined. Then, in a second optimization step, the second parameters 118 can be optimized for the edge size with constant parameterization of the first learning module 112 and/or constant approximation error, as was determined in the first optimization step. A preferred frequency range of the output data 108, y, for example, can be defined by the edge size.

Der erste Optimierungsschritt und der zweite Optimierungsschritt können beispielsweise bis zur Konvergenz alternierend ausgeführt werden.The first optimization step and the second optimization step can, for example, be carried out alternately until they converge.

3 zeigt beispielhaft ein gekoppeltes Paar aus dem künstlichen neuronalen Netz 119a als dem ersten Lernmodul 112 mit Feature-Eingängen 300 zum Eingeben der Sensordaten 104, x und einem Frequenzfilter als dem zweiten Lernmodul 116, dessen Ausgang die Approximation y einer vorgegebenen Zielgröße 302, y, etwa eines Beschleunigungssignals, darstellt. Aus der Zielgröße 302, y und der Approximation y resultiert ein Approximationsfehler 304. Dabei wird der Frequenzfilter derart parametrisiert, dass die Einhaltung eines bestimmten Wertebereichs einer weiteren Zielgröße bzw. der Randgröße automatisch sichergestellt ist. 3 shows an example of a coupled pair of the artificial neural network 119a as the first learning module 112 with feature inputs 300 for inputting the sensor data 104, x and a frequency filter as the second learning module 116, whose output is the approximation y of a predetermined target variable 302, y, for example an acceleration signal. An approximation error 304 results from the target variable 302, y and the approximation y. The frequency filter is parameterized in such a way that compliance with a specific value range of a further target variable or the marginal variable is automatically ensured.

Beispielsweise kann der Frequenzfilter vor dem Training des künstlichen neuronalen Netzes 119a einmalig parametrisiert werden und dann in diesen Werten fix bleiben, auch für den weiteren Verlauf des Trainings des Lernalgorithmus 102.For example, the frequency filter can be parameterized once before the training of the artificial neural network 119a and then remain fixed in these values, also for the further course of the training of the learning algorithm 102.

Denkbar ist auch, dass das erste Lernmodul 112 und das zweite Lernmodul 116 vertauscht werden, sodass die Sensordaten 104, x in das zweite Lernmodul 116 eingegeben werden und die Ausgabedaten 108, y durch das erste Lernmodul 112 ausgegeben werden. Somit können durch das zweite Lernmodul 118 gefilterte Eingabedaten für das erste Lernmodul 112 bereitgestellt werden.It is also conceivable that the first learning module 112 and the second learning module 116 are interchanged, so that the sensor data 104, x are input into the second learning module 116 and the output data 108, y are output by the first learning module 112. Thus, input data filtered by the second learning module 118 can be provided for the first learning module 112 .

5 zeigt beispielhaft einen Zeitverlauf der Zielwerte y in Form eines aufgezeichneten Beschleunigungssignals zusammen mit einem Zeitverlauf der Prädiktionswerte y in Form eines durch den Lernalgorithmus 102 gelernten, approximierten Beschleunigungssignals. 5 FIG. 12 shows, by way of example, a time profile of the target values y in the form of a recorded acceleration signal together with a time profile of the prediction values y in the form of an approximated acceleration signal learned by the learning algorithm 102.

4 zeigt die entsprechenden Zeitverläufe der Zielwerte y bzw. der Prädiktionswerte y bei Verwendung eines einfachen künstlichen neuronalen Netzes statt des Lernalgorithmus 102. 4 shows the corresponding time curves of the target values y and the prediction values y when using a simple artificial neural network instead of the learning algorithm 102.

Es ist zu erkennen, dass das durch den Lernalgorithmus 102 approximierte Beschleunigungssignal in 5 bei hinreichender Approximation deutlich glatter als in 4 verläuft.It can be seen that the acceleration signal approximated by the learning algorithm 102 in 5 with sufficient approximation much smoother than in 4 runs.

Zum besseren Vergleich der Approximationsergebnisse sind in 4 und 5 die Qualitätskriterien NMAE (Maß für die Approximationsqualität) und NMARuck (Maß für die ruckartige Veränderung des Beschleunigungssignals) angegeben, die wie folgt definiert sind: NMAE:= i | y i y ^ i | i | y ^ i | ,

Figure DE102020216202A1_0001
NMARuck: = ƒ R ( y ) ƒ R ( y ^ ) ƒ R ( y ^ ) ,
Figure DE102020216202A1_0002
ƒ R ( y ^ ) : = i | y ^ i y ^ i 1 | ,
Figure DE102020216202A1_0003
ƒ R ( y ) : = i | y i y i 1 | ,
Figure DE102020216202A1_0004
wobei yi die Zielwerte und ŷi die Prädiktionswerte zum Zeitpunkt i sind. Der visuell glattere Eindruck des approximierten Beschleunigungssignals in 5 im Vergleich zu 4 wird durch den verringerten Wert von NMARuck bestätigt.For a better comparison of the approximation results, 4 and 5 the quality criteria NMAE (a measure of the approximation quality) and NMARuck (a measure of the jerky change in the acceleration signal), which are defined as follows: NMAE:= i | y i y ^ i | i | y ^ i | ,
Figure DE102020216202A1_0001
NMA jerk: = ƒ R ( y ) ƒ R ( y ^ ) ƒ R ( y ^ ) ,
Figure DE102020216202A1_0002
ƒ R ( y ^ ) : = i | y ^ i y ^ i 1 | ,
Figure DE102020216202A1_0003
ƒ R ( y ) : = i | y i y i 1 | ,
Figure DE102020216202A1_0004
where y i are the target values and ŷ i are the prediction values at time i. The visually smoother impression of the approximated acceleration signal in 5 compared to 4 is confirmed by the decreased value of NMARuck.

Abschließend wird darauf hingewiesen, dass Begriffe wie „aufweisend“, „umfassend“ etc. keine anderen Elemente oder Schritte ausschließen und Begriffe wie „eine“ oder „ein“ keine Vielzahl ausschließen. Bezugszeichen in den Ansprüchen sind nicht als Einschränkung anzusehen.Finally, it is noted that terms such as "comprising,""comprising," etc. do not exclude other elements or steps, and terms such as "a" or "an" do not exclude a plurality. Any reference signs in the claims should not be construed as limiting.

Claims (13)

Verfahren zum Trainieren eines Lernalgorithmus (102) zum Umwandeln von Sensordaten (104, x) einer Sensorik (106) in Ausgabedaten (108, y) zum Ansteuern einer Aktorik (110), wobei das Verfahren umfasst: Eingeben der Sensordaten (104, x) in den Lernalgorithmus (102), wobei der Lernalgorithmus (102) ein durch erste Parameter (114) parametriertes erstes Lernmodul (112) und ein mit dem ersten Lernmodul (112) in Reihe geschaltetes und durch zweite Parameter (118) parametriertes zweites Lernmodul (116) zum Umwandeln der Sensordaten (104, x) in die Ausgabedaten (108, y) umfasst; Ausgeben der Ausgabedaten (108, y) durch den Lernalgorithmus (102); und Optimieren des Lernalgorithmus (102) durch ein Optimierungsmodul (120) basierend auf den Ausgabedaten (108, y), wobei eine erste Zielfunktion (122) durch Ändern der ersten Parameter (114) optimiert wird und die zweiten Parameter (118) während des Optimierens der ersten Zielfunktion (122) konstant gehalten werden.Method for training a learning algorithm (102) for converting sensor data (104, x) of a sensor (106) into output data (108, y) for controlling an actuator (110), the method comprising: Entering the sensor data (104, x) into the learning algorithm (102), the learning algorithm (102) having a first learning module (112) parameterized by first parameters (114) and a first learning module (112) connected in series and by second parameters (118) comprises a parameterized second learning module (116) for converting the sensor data (104, x) into the output data (108, y); outputting the output data (108,y) by the learning algorithm (102); and Optimizing the learning algorithm (102) by an optimization module (120) based on the output data (108, y), wherein a first objective function (122) is optimized by changing the first parameters (114) and the second parameters (118) while optimizing the first objective function (122) are kept constant. Verfahren nach Anspruch 1, wobei zum Optimieren des Lernalgorithmus (102) ferner eine von der ersten Zielfunktion (122) abweichende zweite Zielfunktion (124) durch Ändern der zweiten Parameter (118) optimiert wird.procedure after claim 1 , In order to optimize the learning algorithm (102), a second objective function (124) deviating from the first objective function (122) is also optimized by changing the second parameters (118). Verfahren nach Anspruch 2, wobei die ersten Parameter (114) während des Optimierens der zweiten Zielfunktion (124) konstant gehalten werden; und/oder wobei ein Funktionswert der ersten Zielfunktion (122) während des Optimierens der zweiten Zielfunktion (124) konstant gehalten wird.procedure after claim 2 , wherein the first parameters (114) are kept constant during the optimization of the second objective function (124); and/or wherein a function value of the first objective function (122) is kept constant during the optimization of the second objective function (124). Verfahren nach Anspruch 2 oder 3, wobei die erste Zielfunktion (122) und die zweite Zielfunktion (124) in mehreren Schleifen abwechselnd optimiert werden.procedure after claim 2 or 3 , wherein the first objective function (122) and the second objective function (124) are alternately optimized in a plurality of loops. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Sensordaten (104, x) in das erste Lernmodul (112) eingegeben werden und die Ausgabedaten (108, y) durch das zweite Lernmodul (116) ausgegeben werden; oder wobei die Sensordaten (104, x) in das zweite Lernmodul (116) eingegeben werden und die Ausgabedaten (108, y) durch das erste Lernmodul (112) ausgegeben werden.Method according to one of the preceding claims, wherein the sensor data (104, x) is input to the first learning module (112) and the output data (108, y) is output by the second learning module (116); or wherein the sensor data (104, x) is input to the second learning module (116) and the output data (108, y) is output by the first learning module (112). Verfahren nach einem der vorhergehenden Ansprüche, wobei das erste Lernmodul (112) als ein erster Filter zum Filtern von Ausgaben des zweiten Lernmoduls (116) konfiguriert ist und die ersten Parameter (114) Filterkoeffizienten des ersten Filters sind; oder wobei das zweite Lernmodul (116) als ein zweiter Filter zum Filtern von Ausgaben des ersten Lernmoduls (112) konfiguriert ist und die zweiten Parameter (118) Filterkoeffizienten des zweiten Filters sind.Method according to one of the preceding claims, wherein the first learning module (112) is configured as a first filter for filtering outputs of the second learning module (116) and the first parameters (114) are filter coefficients of the first filter; or wherein the second learning module (116) is configured as a second filter for filtering outputs of the first learning module (112), and the second parameters (118) are filter coefficients of the second filter. Verfahren nach Anspruch 6, wobei der erste Filter ein Tiefpassfilter ist; oder wobei der zweite Filter ein Tiefpassfilter ist.procedure after claim 6 , wherein the first filter is a low-pass filter; or wherein the second filter is a low-pass filter. Verfahren nach einem der vorhergehenden Ansprüche, wobei ferner den Sensordaten (104, x) zugeordnete Zielwerte (y) in den Lernalgorithmus (102) eingegeben werden; wobei die erste Zielfunktion (122) eine Abweichung zwischen den Ausgabedaten (108, y) und den Zielwerten (y) quantifiziert; wobei die erste Zielfunktion (122) durch Ändern der ersten Parameter (114) basierend auf den Ausgabedaten (108, y) und den Zielwerten (y) minimiert wird.Method according to one of the preceding claims, wherein target values (y) associated with the sensor data (104, x) are also input into the learning algorithm (102); wherein the first objective function (122) quantifies a deviation between the output data (108, y) and the target values (y); wherein the first objective function (122) is minimized by changing the first parameters (114) based on the output data (108, y) and the objective values (y). Verfahren nach einem der vorhergehenden Ansprüche, wobei der Lernalgorithmus (102) mindestens ein künstliches neuronales Netz (119, 119a, 119b) umfasst; wobei die ersten Parameter (114) trainierbare Gewichte mindestens einer ersten Schicht des künstlichen neuronalen Netzes (119, 119a) sind; und/oder wobei die zweiten Parameter (118) trainierbare Gewichte mindestens einer zweiten Schicht des künstlichen neuronalen Netzes (119, 119b) sind.Method according to one of the preceding claims, wherein the learning algorithm (102) comprises at least one artificial neural network (119, 119a, 119b); wherein the first parameters (114) are trainable weights of at least a first layer of the artificial neural network (119, 119a); and or wherein the second parameters (118) are trainable weights of at least a second layer of the artificial neural network (119, 119b). Verfahren zum Ansteuern einer Aktorik (110) eines Fahrzeugs (202), wobei das Fahrzeug (202) zusätzlich zur Aktorik (110) eine Sensorik (106) zum Erfassen eines Fahrzustands und/oder eines Umfelds des Fahrzeugs (202) umfasst, wobei das Verfahren umfasst: Empfangen von durch die Sensorik (106) erzeugten Sensordaten (104, x); Eingeben der Sensordaten (104, x) in einen Lernalgorithmus (102), der in einem Verfahren nach einem der vorhergehenden Ansprüche trainiert wurde, um die Sensordaten (104, x) in Ausgabedaten (108, y) umzuwandeln; und Erzeugen eines Steuersignals (204) zum Ansteuern der Aktorik (110) basierend auf den Ausgabedaten (108, y).Method for controlling an actuator (110) of a vehicle (202), the vehicle (202) in addition to the actuator (110) including a sensor (106) for detecting a driving condition and / or an environment of the vehicle (202), the method includes: receiving sensor data (104, x) generated by the sensor system (106); inputting the sensor data (104,x) into a learning algorithm (102) trained in a method according to any one of the preceding claims to convert the sensor data (104,x) into output data (108,y); and Generating a control signal (204) for driving the actuator (110) based on the output data (108, y). Vorrichtung (100; 200) zur Datenverarbeitung, umfassend einen Prozessor (126), der konfiguriert ist, um mindestens eines der Verfahren nach einem der vorhergehenden Ansprüche auszuführen.Apparatus (100; 200) for data processing, comprising a processor (126) configured to carry out at least one of the methods according to any one of the preceding claims. Computerprogramm, umfassend Befehle, die einen Prozessor (126) bei Ausführung des Computerprogramms durch den Prozessor (126) veranlassen, mindestens eines der Verfahren nach einem der Ansprüche 1 bis 10 auszuführen.A computer program comprising instructions which cause a processor (126) to execute the computer program by the processor (126), at least one of the methods according to any one of Claims 1 until 10 to execute. Computerlesbares Medium, auf dem das Computerprogramm nach Anspruch 12 gespeichert ist.Computer-readable medium on which the computer program claim 12 is saved.
DE102020216202.6A 2020-12-17 2020-12-17 Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle Pending DE102020216202A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102020216202.6A DE102020216202A1 (en) 2020-12-17 2020-12-17 Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102020216202.6A DE102020216202A1 (en) 2020-12-17 2020-12-17 Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle

Publications (1)

Publication Number Publication Date
DE102020216202A1 true DE102020216202A1 (en) 2022-06-23

Family

ID=81847384

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102020216202.6A Pending DE102020216202A1 (en) 2020-12-17 2020-12-17 Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle

Country Status (1)

Country Link
DE (1) DE102020216202A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017205713A1 (en) 2017-04-04 2018-10-04 Siemens Aktiengesellschaft Method and control device for controlling a technical system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017205713A1 (en) 2017-04-04 2018-10-04 Siemens Aktiengesellschaft Method and control device for controlling a technical system

Similar Documents

Publication Publication Date Title
DE102016107938B4 (en) PREDICTIVE VEHICLE CRUISE CONTROL SYSTEM AND PROCEDURES FOR PREDICTIVE CRUISE CONTROL
DE102019104974A1 (en) Method and system for determining a driving maneuver
DE102018206208A1 (en) Method, device, product and computer program for operating a technical system
EP3765927B1 (en) Method for generating a training data record for training an artificial intelligence module for a control device of a vehicle
DE102019110217B4 (en) Method for the automated control of a motor vehicle
WO2015139864A1 (en) Method and device for operating a vehicle
EP3530537B1 (en) Motor vehicle control device and method for operating the control device for autonomous driving of a motor vehicle
DE102019105389A1 (en) Safety device for a self-learning measuring system in the vehicle for the detection and classification of objects in the area around the vehicle with the help of a deep learning process
DE102021128041A1 (en) IMPROVEMENT OF A VEHICLE NEURAL NETWORK
DE102020124633A1 (en) CONTEXT-SENSITIVE ADAPTATION OF A TERRAIN VIEW TIME
DE102019209457A1 (en) Method for training an artificial neural network, artificial neural network, use of an artificial neural network and a corresponding computer program, machine-readable storage medium and corresponding device
DE102018219760A1 (en) Collision prediction system
DE102021203588A1 (en) Method and controller for estimating a behavior of a system
DE102018121866A1 (en) Method for depth estimation of two-dimensional sensor data
DE102020101060A1 (en) Self-learning ultrasonic measuring system in the vehicle for the detection and classification of objects in the vicinity of the vehicle with a multiplanar reformatter
DE102020100996A1 (en) Ultrasonic measuring system with a self-learning AI control of microbeamformers in the vehicle
DE102020216202A1 (en) Method for training a learning algorithm for converting sensor data from a sensor system into output data for controlling an actuator and method for controlling an actuator of a vehicle
DE102018216561A1 (en) Method, device and computer program for determining an agent's strategy
DE102022109385A1 (en) Reward feature for vehicles
DE102020101000B4 (en) Ultrasonic measurement system in the vehicle with a Doppler processor as a feature extractor for a self-learning neural network
DE102020101036B4 (en) Self-learning ultrasonic measuring system in the vehicle for the detection and classification of objects in the vehicle's surroundings with a volume renderer
WO2021191120A1 (en) Method for determining a value of a controller variable
DE102021111597A1 (en) AUTONOMOUS DRIVER FEEDBACK SYSTEM AND PROCEDURE
DE102020129451A1 (en) Method for predicting driving interventions, method for training an algorithm and motor vehicle
DE102020210376A1 (en) Apparatus and method for controlling a hardware agent in a multiple hardware agent control situation

Legal Events

Date Code Title Description
R163 Identified publications notified