DE102022207997A1 - Method and device for operating a technical system with an artificial neural network - Google Patents

Method and device for operating a technical system with an artificial neural network Download PDF

Info

Publication number
DE102022207997A1
DE102022207997A1 DE102022207997.3A DE102022207997A DE102022207997A1 DE 102022207997 A1 DE102022207997 A1 DE 102022207997A1 DE 102022207997 A DE102022207997 A DE 102022207997A DE 102022207997 A1 DE102022207997 A1 DE 102022207997A1
Authority
DE
Germany
Prior art keywords
technical system
validity
neural network
neurons
layer
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
DE102022207997.3A
Other languages
German (de)
Inventor
Matthias Woehrle
Konrad Groh
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 DE102022207997.3A priority Critical patent/DE102022207997A1/en
Publication of DE102022207997A1 publication Critical patent/DE102022207997A1/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
    • 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
    • G05B13/027Adaptive 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 using neural networks only
    • 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/09Supervised learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Automation & Control Theory (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Feedback Control In General (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Betreiben eines technischen Systems (1) mit einer datenbasierten Steuerungsfunktion, die ein künstliches neuronales Netz (32) umfasst, mit folgenden Schritten:- Bereitstellen (S2) eines abzufragenden Eingangsdatenpunkt (E), der einen oder mehrere Sensorwerte, einen oder mehrere Zustandsgrößen und/oder einen oder mehrere Vorgabewerte umfasst;- Auswerten (S2) eines mit Trainingsdatensätzen trainierten künstlichen neuronalen Netzes, um eine Modellausgabe (A) zu erhalten;- Bereitstellen von Gültigkeitsbereichen von Neuronenausgangswerten von Neuronen einer Repräsentationsschicht des neuronalen Netzes (32), wobei die Gültigkeitsbereiche durch statistisches Auswerten der Trainingsdatensätze bestimmt sind;- Betreiben (S3, S4) des technischen Systems (1) basierend auf der Modellausgabe (A) abhängig davon, ob die Neuronenausgangswerte von Neuronen der Repräsentationsschicht jeweils innerhalb des Gültigkeitsbereichs liegen.The invention relates to a method for operating a technical system (1) with a data-based control function, which comprises an artificial neural network (32), with the following steps: - Providing (S2) an input data point (E) to be queried, which contains one or more sensor values, one or more state variables and/or one or more default values; - evaluating (S2) an artificial neural network trained with training data sets in order to obtain a model output (A); - providing validity ranges of neuron output values of neurons of a representation layer of the neural network (32 ), whereby the validity ranges are determined by statistically evaluating the training data sets; - Operating (S3, S4) the technical system (1) based on the model output (A) depending on whether the neuron output values of neurons of the representation layer are within the validity range.

Description

Technisches GebietTechnical area

Die Erfindung betrifft ein Verfahren zum Betreiben eines technischen Systems mit einer Steuerung oder Regelung, die ein datenbasiertes Systemmodell in Form eines künstlichen neuronalen Netzes verwendet.The invention relates to a method for operating a technical system with a control or regulation that uses a data-based system model in the form of an artificial neural network.

Technischer HintergrundTechnical background

Technische Systeme sind in der Regel mit einer Sensoranordnung mit einem oder mehreren Sensoren sowie einer Aktuatoranordnung mit einem oder mehreren Aktuatoren ausgebildet. Mithilfe eines Steuergeräts, in dem zur Realisierung einer gewünschten Funktion ein Systemmodell implementiert ist, werden Sensor- und Zustandsgrößen des technischen Systems verarbeitet, um eine entsprechende Ansteuerung der Aktuatoranordnung zum Erfüllen einer Aufgabe oder des Zwecks des technischen Systems auszuführen.Technical systems are usually designed with a sensor arrangement with one or more sensors and an actuator arrangement with one or more actuators. With the help of a control device in which a system model is implemented to realize a desired function, sensor and state variables of the technical system are processed in order to carry out a corresponding control of the actuator arrangement to fulfill a task or the purpose of the technical system.

Zusehends werden solche Systemmodelle mit datenbasierten Modellen implementiert, da diese in der Regel ohne detaillierte Kenntnisse des Systemverhaltens lediglich basierend auf Trainingsdaten modelliert werden können. Dazu sind lediglich Trainingsdatensätze erforderlich, die Sensorgrößen, Vorgabegrößen und/oder Zustandsgrößen des technischen Systems in geeigneter definierter Weise zu Eingangsdatensätzen zusammenfassen und diese einem Label, insbesondere einer oder mehreren Ansteuergrößen für den einen oder die mehreren Aktuatoren der Aktuatoranordnung oder einer oder mehreren Größen, die zu einer oder mehreren Ansteuergrößen weiterverarbeitet werden, zuordnen. Such system models are increasingly being implemented with data-based models, as these can usually only be modeled based on training data without detailed knowledge of the system behavior. All that is required for this is training data sets that combine sensor variables, default variables and/or state variables of the technical system in a suitably defined manner to form input data sets and assign these to a label, in particular one or more control variables for the one or more actuators of the actuator arrangement or one or more variables are further processed into one or more control variables.

In der Regel stellen datenbasierte Modelle Black-Box-Modelle dar, die in der Auswertungsphase, d. h. beim Einsatz bzw. Betrieb in dem technischen System, keinen Hinweis darauf liefern, wie zuverlässig die Modellausgabe basierend auf einem abgefragten Eingangsdatenpunkt ist. Eingangsdatenpunkte, die Sensorgrößen enthalten, können jedoch Ausreißer aufweisen, die das datenbasierte Modell an Eingangsdatenpunkten abfragen, die zuvor nicht oder nur unzureichend trainiert worden sind. Insbesondere bei der Verwendung von künstlichen neuronalen Netzwerken besteht hier das Problem, dass die Modellausgabe des neuronalen Netzes keinen Hinweis darüber erlaubt, wie zuverlässig die Modellausgabe hinsichtlich der abgefragten Eingangsdatenpunkte ist.As a rule, data-based models represent black box models that are used in the evaluation phase, i.e. H. when used or operated in the technical system, do not provide any indication of how reliable the model output is based on a queried input data point. However, input data points that contain sensor sizes may have outliers that query the data-based model on input data points that have not previously been trained or have been inadequately trained. The problem here, particularly when using artificial neural networks, is that the model output of the neural network does not provide any indication of how reliable the model output is with regard to the queried input data points.

Offenbarung der ErfindungDisclosure of the invention

Erfindungsgemäß sind ein Verfahren zum Betreiben eines technischen Systems mit einem datenbasierten Steuerungsmodell gemäß Anspruch 1 sowie eine entsprechende Vorrichtung gemäß den nebengeordneten Ansprüchen vorgesehen.According to the invention, a method for operating a technical system with a data-based control model according to claim 1 and a corresponding device according to the independent claims are provided.

Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.Further refinements are specified in the dependent claims.

Gemäß einem ersten Aspekt ist ein Verfahren zum Betreiben eines technischen Systems mit einer datenbasierten Steuerungsfunktion, die ein künstliches neuronales Netz umfasst, vorgesehen, mit folgenden Schritten:

  • - Bereitstellen eines abzufragenden Eingangsdatenpunkt, der einen oder mehrere Sensorwerte, einen oder mehrere Zustandsgrößen und/oder einen oder mehrere Vorgabewerte umfasst;
  • - Auswerten eines mit Trainingsdatensätzen trainierten künstlichen neuronalen Netzes mit mehreren Schichten, um eine Modellausgabe zu erhalten;
  • - Bereitstellen von Gültigkeitsbereichen von Neuronenausgangswerten von Neuronen einer Repräsentationsschicht des neuronalen Netzes, wobei die Gültigkeitsbereiche durch statistisches Auswerten der Trainingsdatensätze bestimmt sind;
  • - Betreiben des technischen Systems basierend auf der Modellausgabe abhängig davon, ob die Neuronenausgangswerte von Neuronen der Repräsentationsschicht jeweils innerhalb des Gültigkeitsbereichs liegen.
According to a first aspect, a method for operating a technical system with a data-based control function that includes an artificial neural network is provided, with the following steps:
  • - Providing an input data point to be queried, which includes one or more sensor values, one or more state variables and / or one or more default values;
  • - Evaluating a multi-layer artificial neural network trained with training data sets to obtain a model output;
  • - Providing validity ranges of neuron output values of neurons of a representation layer of the neural network, the validity ranges being determined by statistical evaluation of the training data sets;
  • - Operating the technical system based on the model output depending on whether the neuron output values of neurons in the representation layer are within the validity range.

Es kann vorgesehen sein, dass das technische System abhängig von einem Feststellen, dass mindestens einer der Neuronenausgangswerte außerhalb des betreffenden Gültigkeitsbereichs liegt, betrieben wird.It can be provided that the technical system is operated depending on a determination that at least one of the neuron output values is outside the relevant range of validity.

Technische Systeme werden in der Regel basierend auf einer oder mehreren Sensorgrößen, davon abgeleiteten Größen, Vorgabegrößen und/oder dergleichen betrieben. In einem Betriebsmodul, das ein Steuerungs- oder Regelungsmodell beinhalten kann, werden diese Größen verarbeitet und entsprechend eine oder mehrere Ausgangsgrößen bereitgestellt. Diese Ausgangsgrößen können beispielsweise einen Systemzustand angeben oder zur Ansteuerung einer Aktuatorik verwendet werden.Technical systems are usually operated based on one or more sensor variables, variables derived therefrom, default variables and/or the like. These variables are processed in an operating module, which can contain a control or regulation model, and one or more output variables are provided accordingly. These output variables can, for example, indicate a system status or be used to control an actuator.

Das Betriebsmodul wird heutzutage zunehmend mit einem oder mehreren datenbasierten Steuerungsmodellen versehen, die im Gegensatz zu regelbasierten oder physikalisch motivierten Funktionsmodellen datenbasiert (datengetrieben) ausgebildet sind und mithilfe von Trainingsdaten trainiert werden, um so eine gewünschte Funktion im Betriebsmodul des technischen Systems zu realisieren. Das datenbasierte Steuerungsmodell ist jedoch nur insoweit zur Steuerung bzw. Regelung des technischen Systems geeignet, wie zuvor die Trainingsdatensätze, die zum Trainieren des Steuerungsmodells verwendet worden sind, in dem Datenraum der möglichen Eingangsdatenpunkte mit ausreichender Dichte und Abdeckung verteilt sind. Wird im Betrieb des technischen Systems ein Eingangsdatenpunkt abgefragt, der zuvor nicht ausreichend in den Trainingsdatensätzen berücksichtigt worden ist, so wird zwar eine Modellausgabe bereitgestellt, diese lässt jedoch keinen Hinweis darauf zu, wie zuverlässig diese angesichts der gewünschten Funktion ist.The operations module is now increasingly provided with one or more data-based control models, as opposed to rule-based or physically motivated Functional models are data-based (data-driven) and trained using training data in order to realize a desired function in the operating module of the technical system. However, the data-based control model is only suitable for controlling or regulating the technical system to the extent that the training data sets that were used to train the control model are distributed in the data space of the possible input data points with sufficient density and coverage. If an input data point is queried during operation of the technical system that has not previously been sufficiently taken into account in the training data sets, a model output is provided, but this does not provide any indication of how reliable it is in view of the desired function.

Das obige Verfahren ermöglicht nun eine bessere Analyse der Eingangsdatenpunkte während des Betriebs des technischen Systems, insbesondere hinsichtlich möglicher Ausreißer in den bereitgestellten Sensorgrößen, Zustandsgrößen und/oder Vorgabegrößen des abgefragten Eingangsdatenpunkts.The above method now enables a better analysis of the input data points during operation of the technical system, in particular with regard to possible outliers in the provided sensor variables, state variables and/or default variables of the queried input data point.

Eine Idee des obigen Verfahrens besteht darin, im Betrieb des technischen Systems eine verborgene Schicht des als künstliches neuronales Netz ausgebildeten Steuerungsmodells auszuwerten. Die verborgene Schicht wird aus dem neuronalen Netz als eine Repräsentationsschicht ausgewählt. Die Repräsentationsschicht kann eine Bottleneck-Schicht, eine vorletzte verborgene Schicht (unmittelbar vor der Ausgangsschicht) oder eine Projektion einer verborgenen Schicht darstellen, solange diese eine geeignete Repräsentation des Eingangsdatenpunktes liefert.One idea of the above method is to evaluate a hidden layer of the control model designed as an artificial neural network during operation of the technical system. The hidden layer is selected from the neural network as a representation layer. The representation layer can represent a bottleneck layer, a penultimate hidden layer (immediately before the output layer), or a projection of a hidden layer, as long as it provides an appropriate representation of the input data point.

Üblicherweise sind künstliche neuronale Netze in mehreren Schichten mit jeweils einer Vielzahl von künstlichen Neuronen ausgebildet. Die Neuronen sind mit Neuronenfunktionen versehen, die abhängig von allen Werten der Elemente des Eingangsdatenpunkts oder den Ausgangswerten aller Neuronen einer vorangehenden Neuronenschicht einen Ausgangswert an alle Neuronen einer nachfolgenden Neuronenschicht bereitstellen.Artificial neural networks are usually designed in several layers, each with a large number of artificial neurons. The neurons are provided with neuron functions that provide an output value to all neurons of a subsequent neuron layer depending on all values of the elements of the input data point or the output values of all neurons in a preceding neuron layer.

Gemäß dem obigen Verfahren werden nun die Ausgangswerte der Neuronen der betreffenden ausgewählten Repräsentationsschicht bei jeder Abfrage eines Eingangsdatenpunktes hinsichtlich eines jeweiligen Gültigkeitsbereichs überwacht.According to the above method, the output values of the neurons of the relevant selected representation layer are now monitored with regard to a respective validity range each time an input data point is queried.

Es kann vorgesehen sein, dass das Betreiben des technischen Systems basierend auf der Modellausgabe ein Verwerfen der Modellausgabe umfasst, wenn mindestens einer der Neuronenausgangswerte der Neuronen der Repräsentationsschicht außerhalb des Gültigkeitsbereichs liegt.It can be provided that operating the technical system based on the model output includes discarding the model output if at least one of the neuron output values of the neurons of the representation layer is outside the range of validity.

Alternativ kann vorgesehen sein, dass das Betreiben des technischen Systems basierend auf der Modellausgabe ein Verwerfen der Modellausgabe umfasst, abhängig von dem Ergebnis eines Schwellenwertvergleichs eines Maßes des Abweichens von dem Gültigkeitsbereich durch den mindestens einen der Neuronenausgangswerte der Neuronen der Repräsentationsschicht.Alternatively, it can be provided that operating the technical system based on the model output includes discarding the model output, depending on the result of a threshold comparison of a measure of deviation from the validity range by the at least one of the neuron output values of the neurons of the representation layer.

Die Gültigkeitsbereiche für jedes Neuron der Repräsentationsschicht ergeben sich durch Auswertung der für das Training des neuronalen Netzes verwendeten Trainingsdatensätze und werden nach dem Training des neuronalen Netzes ermittelt und für den Betrieb des technischen Systems bereitgestellt. Es werden also für die Trainingsdatensätze die Ausgangswerte der Neuronen der Repräsentationsschicht jeweils gesampelt und ein Gültigkeitsbereich für den betreffenden Wert aus den resultierenden Neuronenausgangswerten jedes Neurons der Repräsentationsschicht bestimmt. Dies kann beispielsweise mithilfe einer geeigneten Quantilbestimmung vorgenommen werden. Aus dem sich ergebenden Gültigkeitsbereich kann ein oder mehrere entsprechende Schwellenwerte bestimmt werden. Beispielsweise kann eine obere Schwellenwert des Wertebereichs eines Neuronenausgangswertes so vorgegeben sein, dass dieser einem Quantil, wie z.B. einem 90-%-Quantil bis 99%-Quantil, vorzugsweise einem 95%-Quantil der Ausgangswerte des entsprechenden Neurons der Repräsentationsschicht über alle Trainingsdatensätze entspricht. Ein unterer Schwellenwert des Wertebereichs eines Neuronenausgangswertes kann entsprechend so vorgegeben sein, dass dieser beispielsweise dem 1 %-10%-Quantil der Ausgangswerte des entsprechenden Neurons, vorzugsweise einem 5%-Quantil der Ausgangswerte des entsprechenden Neurons der Repräsentationsschicht über alle Trainingsdatensätze entspricht. Eine solche Bestimmung des Wertebereichs kann für jedes der Neuronen der Repräsentationsschicht durchgeführt werden, um so einen oberen und/oder unteren Schwellenwert oder einen Gültigkeitsbereich für jeden der Ausgänge der Neuronen der Repräsentationsschicht zu erhalten.The areas of validity for each neuron of the representation layer are determined by evaluating the training data sets used for training the neural network and are determined after training the neural network and made available for the operation of the technical system. The output values of the neurons of the representation layer are sampled for the training data sets and a validity range for the relevant value is determined from the resulting neuron output values of each neuron of the representation layer. This can be done, for example, using a suitable quantile determination. One or more corresponding threshold values can be determined from the resulting validity range. For example, an upper threshold value of the value range of a neuron output value can be predetermined such that it corresponds to a quantile, such as a 90% quantile to 99% quantile, preferably a 95% quantile, of the output values of the corresponding neuron of the representation layer across all training data sets. A lower threshold value of the value range of a neuron output value can be predetermined so that it corresponds, for example, to the 1%-10% quantile of the output values of the corresponding neuron, preferably a 5% quantile of the output values of the corresponding neuron of the representation layer across all training data sets. Such a determination of the value range can be performed for each of the representation layer neurons so as to obtain an upper and/or lower threshold or a validity range for each of the outputs of the representation layer neurons.

Im Betrieb des technischen Systems werden nun für jeden abgefragten Eingangsdatenpunkt die Ausgangswerte der Neuronenn der Repräsentationsschicht ermittelt und diese hinsichtlich ihrer Gültigkeit basierend auf den jeweiligen Schwellenwerten oder dem entsprechenden Gültigkeitsbereich analysiert. Liegt ein betrachteter Neuronenausgangswert bei einem abzufragenden Eingangsdatenpunkt außerhalb des Gültigkeitsbereichs, so wird ein ungültiger Eingangsdatenpunkt festgestellt.During operation of the technical system, the output values of the neurons of the representation layer are determined for each queried input data point and these are analyzed with regard to their validity based on the respective threshold values or the corresponding validity range. If a neuron output value under consideration is outside the valid range for an input data point to be queried, an invalid input data point is determined.

Dies kann einerseits dazu führen, dass sofort die Auswertung am Eingangsdatenpunkt verworfen wird und ein Ersatzwert verwendet wird. Alternativ oder zusätzlich kann eine Häufigkeit eines solchen Gültigkeitsfehlers bestimmt werden und bei Überschreiten eines vorgegebenen Häufigkeitsschwellenwerts ein Nachtraining oder ein Neutrainieren des Steuerungsmodells gestartet werden. Auch kann ein Maß des Überschreitens des jeweiligen Schwellenwerts eine Angabe über eine Unsicherheit der Modellauswertung angeben.On the one hand, this can lead to the evaluation at the input data point being immediately discarded and a replacement value being used. Alternatively or additionally, a frequency of such a validity error can be determined and, if a predetermined frequency threshold value is exceeded, retraining or retraining of the control model can be started. A measure of exceeding the respective threshold value can also provide information about the uncertainty of the model evaluation.

Das obige Training für die Durchführung des Betriebsverfahrens für das technische System sieht vor, neben dem herkömmlichen Training des Steuerungsmodells auch eine Bestimmung von Gültigkeitsbereichen für die Ausgabegrößen der Neuronen der Repräsentationsschicht zu bestimmen. Die Gültigkeitsbereiche werden durch statistische Auswertung aller Ausgabewerte für die Trainingsdatensätze eines bestimmten Neurons der Repräsentationsschicht vorgenommen, um den jeweiligen Gültigkeitsbereich für die Neuronenausgangswerte der Repräsentationsschicht zu bestimmen. Diese werden in einem Überprüfungsschritt bezüglich eines abgefragten Eingangsdatenpunktes verwendet.The above training for carrying out the operating procedure for the technical system provides for determining, in addition to the conventional training of the control model, validity ranges for the output variables of the neurons of the representation layer. The validity ranges are determined by statistical evaluation of all output values for the training data sets of a specific neuron of the representation layer in order to determine the respective validity range for the neuron output values of the representation layer. These are used in a verification step regarding a queried input data point.

Weiterhin kann die Repräsentationsschicht des neuronalen Netzes einer Bottleneck-Schicht oder einer letzten verborgenen Schicht entsprechen.Furthermore, the representation layer of the neural network can correspond to a bottleneck layer or a final hidden layer.

Weiterhin kann ein Verfahren zum Bereitstellen von Gültigkeitsbereichen für die Durchführung des obigen Verfahrens vorgesehen sein. , wobei für jedes der Neuronen der Repräsentationsschicht für alle Trainingsdatensätze Neuronenausgangswerte statistisch ausgewertet werden, indem ein Quantil mit einem Quantilwert von zwischen 90% und 99 %, vorzugsweise von 95% als oberer Schwellenwert des Gültigkeitsbereichs ermittelt wird, und/oder indem ein Quantil mit einem Quantilwert von zwischen 1% und 10 %, vorzugsweise von 5% als unterer Schwellenwert des Gültigkeitsbereichs ermittelt wird.Furthermore, a method for providing validity areas for carrying out the above method can be provided. , wherein for each of the neurons of the representation layer, neuron output values are statistically evaluated for all training data sets by determining a quantile with a quantile value of between 90% and 99%, preferably 95%, as the upper threshold value of the validity range, and / or by determining a quantile with a Quantile value of between 1% and 10%, preferably 5%, is determined as the lower threshold of the validity range.

Kurzbeschreibung der ZeichnungenBrief description of the drawings

Ausführungsformen werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:

  • 1 eine schematische Darstellung eines technischen Systems mit einer Sensoranordnung und einer Aktuatoranordnung;
  • 2 eine schematische Darstellung eines künstlichen neuronalen Netzes;
  • 3 ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Betreiben eines technischen Systems; und
  • 4 ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Trainieren des datenbasierten Steuerungsmodells für das technische System der 1.
Embodiments are explained in more detail below with reference to the accompanying drawings. Show it:
  • 1 a schematic representation of a technical system with a sensor arrangement and an actuator arrangement;
  • 2 a schematic representation of an artificial neural network;
  • 3 a flowchart to illustrate a method for operating a technical system; and
  • 4 a flowchart to illustrate a method for training the data-based control model for the technical system of 1 .

Beschreibung von AusführungsformenDescription of embodiments

1 zeigt ein technisches System 1 mit einer Sensoranordnung 2 mit einem oder mehreren Sensoren 21, die zum Aufzeichnen und/oder Erfassen von kontinuierlichen Messsignalen ausgelegt sind und Sensorgrößen B bereitstellen. Die Sensorgrößen entsprechen den abgetasteten Messsignalen und werden einer Steuereinheit 3 bereitgestellt. 1 shows a technical system 1 with a sensor arrangement 2 with one or more sensors 21, which are designed to record and/or acquire continuous measurement signals and provide sensor sizes B. The sensor sizes correspond to the sampled measurement signals and are provided to a control unit 3.

Die Steuereinheit 3 generiert eine oder mehrere Ansteuergrößen S zur Steuerung eines oder mehrerer Aktuatoren 4. Diese können einen Antriebsmotor, einen elektromechanischen Stellgeber, eine Heizeinrichtung, eine Strahlungsquelle und dergleichen umfassen.The control unit 3 generates one or more control variables S for controlling one or more actuators 4. These can include a drive motor, an electromechanical actuator, a heating device, a radiation source and the like.

Die Sensoren 21 können allgemein als Sensorgrößen B, physikalische Betriebsgrößen des Systems 1 oder auch direkt physikalische Zustände (als Zustandsgrößen) des einen oder der mehreren Aktuatoren 4 erfassen. Die Sensoren 21 können beispielsweise einen Drucksensor, einen Drehzahlsensor, einen Massenstromsensor, einen Temperatursensor, einen Beschleunigungssensor, einen Vibrationssensor, einen Strahlungssensor, eine Kamera oder dergleichen umfassen.The sensors 21 can generally be recorded as sensor variables B, physical operating variables of the system 1 or directly physical states (as state variables) of the one or more actuators 4. The sensors 21 can include, for example, a pressure sensor, a speed sensor, a mass flow sensor, a temperature sensor, an acceleration sensor, a vibration sensor, a radiation sensor, a camera or the like.

Die Steuereinheit 3 umfasst einen Mikroprozessor 31 und mindestens ein separat oder als Software-Algorithmus in dem Mikroprozessor implementiertes Betriebsmodul, das ein datenbasiertes Steuerungsmodell 32 umfasst. Die Steuereinheit 3 erhält die eine oder die mehreren Sensorgrößen B als Betriebsgrößen und/oder Zustandsgrößen und ggfs. eine oder mehrere Vorgabegrößen von extern und bestimmt daraus unter Nutzung einer Auswertung eines Eingangsdatenpunktes eine Modellausgabe, die eine oder die mehreren Ansteuergrößen S umfasst oder diese daraus generiert.The control unit 3 includes a microprocessor 31 and at least one operating module implemented separately or as a software algorithm in the microprocessor, which includes a data-based control model 32. The control unit 3 receives the one or more sensor variables B as operating variables and / or state variables and, if necessary, one or more default variables from externally and, using an evaluation of an input data point, determines a model output that includes one or more control variables S or generates them therefrom .

Das datenbasierte Steuerungsmodell 32 ist ein nicht-parametrisches Modell (Machine-Learning-Modell) und stellt eine abbildende Funktion dar, die aus einer oder mehreren der Sensorgrößen, der Betriebs- und/oder Zustandsgrößen und/oder Vorgabegrößen und ggfs. einer oder mehreren daraus abgeleiteten Merkmalsgrößen als Eingangsgrößen eine oder mehrere Ausgangsgrößen bereitstellt, die der einen oder den mehreren Ansteuergrößen entsprechen oder Größen entsprechen können, aus denen die eine oder die mehreren Ansteuergrößen ableitbar sind. Die Merkmalsgrößen können z.B. aus Zeitreihen der Eingangsgrößen aggregierte Größen oder statistischen Größen entsprechen. Die eine oder mehrere der Sensorgrößen, der Betriebs- und/oder Zustandsgrößen und/oder der Vorgabegrößen und ggfs. die eine oder die mehreren daraus abgeleiteten Merkmalsgrößen werden als Eingangsdatenpunkt bereitgestellt, der zur Abfrage dem Steuerungsmodell 32 zugeführt wirdThe data-based control model 32 is a non-parametric model (machine learning model) and represents a mapping function that consists of one or more of the sensor variables, the operating and / or state variables and / or default variables and, if necessary, one or more of them derived feature variables as input variables provides one or more output variables that correspond to the one or more control variables or can correspond to variables from which the one or more control variables can be derived. The characteristic variables can correspond, for example, to aggregated variables or statistical variables from time series of the input variables. The one or several of the sensor variables, the operating and/or state variables and/or the default variables and, if applicable, the one or more feature variables derived therefrom are provided as an input data point which is fed to the control model 32 for query

Das datenbasierte Steuerungsmodell 32 kann beispielsweise zur Durchführung einer Regelung oder einer Steuerung des einen oder der mehreren Aktuatoren 4 trainiert werden. Dazu werden in an sich bekannter Weise Trainingsdatensätze bereitgestellt, die jeweils einen Eingangsdatenpunkt auf ein vorgegebenes Label abbilden, das zur Steuerung oder Regelung verwendet werden soll.The data-based control model 32 can be trained, for example, to carry out regulation or control of the one or more actuators 4. For this purpose, training data sets are provided in a manner known per se, each of which maps an input data point to a predetermined label that is to be used for control or regulation.

Das datenbasierte Steuerungsmodell 32 kann z.B. in Form eines neuronalen Netzes oder vergleichbaren trainierbaren Modellen vorgegeben werden und direkt mit den Trainingsdatensätzen trainiert werden. Die Trainingsdatensätze können durch Vermessen auf einem Prüfstand oder im Feld ermittelt werden. Dazu werden in der Regel Betriebsbereiche des technischen Systems oder Eingangsdatenpunkte direkt vorgegeben, um ein geeignetes Label zu bestimmen und so die Trainingsdatensätze zu erhalten. Zur Vermessung können ein oder mehrere weitere Sensoren vorgesehen sein, die das technische System im Normalbetrieb nicht aufweist. Dieser eine oder diese mehreren weiteren Sensoren ermöglichen das Erfassen oder das Ermitteln eines Labels zur Zuordnung zu den Eingangsdatenpunkten.The data-based control model 32 can be specified, for example, in the form of a neural network or comparable trainable models and trained directly with the training data sets. The training data sets can be determined by measuring on a test stand or in the field. For this purpose, operating areas of the technical system or input data points are usually specified directly in order to determine a suitable label and thus obtain the training data sets. One or more additional sensors that the technical system does not have in normal operation can be provided for measurement. This one or more additional sensors enable the detection or determination of a label for assignment to the input data points.

Es ist ferner ein Überprüfungsblock 33 vorgesehen, der die abgefragten Eingangsdatenpunkte überprüft und, wenn ein Eingangsdatenpunkt außerhalb eines Gültigkeitsbereichs liegt, einen Fehler erkennt und diesen entsprechend signalisiert. Insbesondere kann abhängig von einem Erkennen eines Fehlers der Aktuator 4 entsprechend betrieben werden.A checking block 33 is also provided, which checks the queried input data points and, if an input data point is outside of a valid range, detects an error and signals this accordingly. In particular, the actuator 4 can be operated accordingly depending on whether an error is detected.

Beispielsweise kann eine Drehzahl einer elektrischen Maschine und/oder eine Motortemperatur durch Auswertung in einem in entsprechender Weise trainierten Steuerungsmodell ermittelt werden. Der Eingangsdatenpunkt kann eine Signalzeitreihe in Form eines Verlaufs eines Motorstroms für einen vorbestimmten zurückliegenden Zeitraum und/oder ein daraus aggregiertes Merkmal beinhalten. Weitere Größen des Eingangsdatenpunktes können eine Motortemperatur und/oder eine oder mehrere eine Last der elektrischen Maschine bestimmende Größen bzw. deren Verlauf sein. Die Auswertung des entsprechend trainierten Steuerungsmodells ergibt beispielsweise als Ausgangsgröße eine aktuelle Drehzahl der elektrischen Maschine.For example, a speed of an electric machine and/or a motor temperature can be determined by evaluation in a control model trained in a corresponding manner. The input data point can contain a signal time series in the form of a motor current curve for a predetermined past period of time and/or a feature aggregated therefrom. Further variables of the input data point can be a motor temperature and/or one or more variables that determine a load on the electrical machine or their course. The evaluation of the correspondingly trained control model produces, for example, a current speed of the electrical machine as an output variable.

Als weiteres Beispiel kann zur Ermittlung einer Einspritzmenge von Kraftstoff in einem Einspritzsystem für einen Verbrennungsmotor ein Steuerungsmodell 32 verwendet werden. Hier wird über ein Einspritzventil Kraftstoff zum Betrieb des Verbrennungsmotors in einen Brennraum eines Zylinders des Verbrennungsmotors eingespritzt. Kraftstoff wird dazu dem Einspritzventil über eine Kraftstoffzuführung zugeführt, über die Kraftstoff in an sich bekannter Weise (z. B. Common Rail) unter einem hohen Kraftstoffdruck bereitgestellt wird. Das Einspritzventil kann einen elektromagnetisch oder piezoelektrisch ansteuerbare Aktuatoreinheit aufweisen, die mit einer Ventilnadel gekoppelt ist. Durch Ansteuerung der Aktuatoreinheit wird die Ventilnadel in Längsrichtung bewegt und gibt einen Teil einer Ventilöffnung frei, um den unter Druck stehenden Kraftstoff in den Brennraum des Zylinders einzuspritzen. Mithilfe eines Piezosensors können Druckänderungen in dem durch das Einspritzventil geführten Kraftstoff bestimmt als Spannungssignal bestimmt werden, das abgetastet und als Signalzeitreihe bereitgestellt werden kann. Die Einspritzmenge kann durch Kenntnis eines genauen Öffnungszeitpunkt des Einspritzventils in an sich bekannter Weise bestimmt werden. Der Öffnungszeitpunkt wird durch das entsprechend trainierte Steuerungsmodell 32 basierend auf einem Eingangsdatenpunkt ermittelt, der die Signalzeitreihe des Spannungssignals als Vektor oder in aggregierter Form und den Kraftstoffdruck umfasst. Das Steuerungsmodell 32 kann den Öffnungszeitpunkt dann als argmax eines Wahrscheinlichkeits-Vektors oder direkt als Zeitgröße ausgegeben.As a further example, a control model 32 can be used to determine an injection quantity of fuel in an injection system for an internal combustion engine. Here, fuel is injected into a combustion chamber of a cylinder of the internal combustion engine via an injection valve to operate the internal combustion engine. For this purpose, fuel is supplied to the injection valve via a fuel supply, via which fuel is provided in a manner known per se (e.g. common rail) under a high fuel pressure. The injection valve can have an electromagnetically or piezoelectrically controllable actuator unit which is coupled to a valve needle. By activating the actuator unit, the valve needle is moved in the longitudinal direction and opens part of a valve opening in order to inject the pressurized fuel into the combustion chamber of the cylinder. Using a piezo sensor, pressure changes in the fuel fed through the injection valve can be determined as a voltage signal, which can be sampled and provided as a signal time series. The injection quantity can be determined in a manner known per se by knowing an exact opening time of the injection valve. The opening time is determined by the appropriately trained control model 32 based on an input data point that includes the signal time series of the voltage signal as a vector or in aggregated form and the fuel pressure. The control model 32 can then output the opening time as argmax of a probability vector or directly as a time variable.

Als weiteres Beispiel kann das Steuerungsmodell 32 zur Zustandsprädiktion eines Fahrers eines Kraftfahrzeugs verwendet werden, wie z.B. zur Erkennung einer Fahrermüdigkeit. Hierzu können fahrrelevante Größen als zeitliche Verläufe in Form von Signalzeitreihen als Teil des Eingangsdatenpunktes bereitgestellt werden, wie z.B. ein Verlauf von Lenkstellungen, ein Verlauf der Fahrgeschwindigkeit und/oder ein Verlauf von Kopfposen des Fahrers. Alternativ kann einer oder mehrere der Verläufe auch in aggregierter Form bereitgestellt werden. Die Modellausgabe nach Auswertung in dem entsprechend trainierten Systemmodell ergibt beispielsweise eine Wahrscheinlichkeit einer Übermüdung des Fahrers.As a further example, the control model 32 can be used to predict the condition of a driver of a motor vehicle, such as for detecting driver fatigue. For this purpose, driving-relevant variables can be provided as time profiles in the form of signal time series as part of the input data point, such as a profile of steering positions, a profile of the driving speed and/or a profile of the driver's head poses. Alternatively, one or more of the courses can also be provided in aggregated form. The model output after evaluation in the appropriately trained system model gives, for example, a probability of the driver being overtired.

Das Steuerungsmodell 32 kann als künstliches neuronales Netz ausgebildet sein, wie es beispielhaft in 2 dargestellt ist.The control model 32 can be designed as an artificial neural network, as exemplified in 2 is shown.

Das künstliche neuronale Netz kann in mehreren Schichten L1, L2, L3 mit jeweils einer Vielzahl von künstlichen Neuronen 11 ausgebildet sein. Die Schichten umfassen eine Eingangsschicht L1, die den Eingangsdatenpunkt als Eingangsgrößen erhält und die Werte des Eingangsdatenpunkts E verarbeitet, eine oder mehrere verborgene Schichten L2 und eine Ausgangsschicht L3, dessen Neuronen die Modellausgabe A bereitstellen. Die Neuronen 11 sind mit jeweiligen Neuronenfunktionen versehen, die abhängig von allen Werten der Elemente des Eingangsdatenpunkts (bei der Eingangsschicht L1) oder den Ausgangswerten aller Neuronen 11 einer vorangehenden Neuronenschicht (bei den Schichten L2, L3) einen Ausgangswert an alle Neuronen einer nachfolgenden Neuronenschicht oder als Modellausgabe A bereitstellen. Die Neuronenfunktionen bilden in der Regel eine gewichtete Summe aller Eingangswerte und wenden eine nichtlineare Funktion darauf an, Aktivierungsfunktion genannt. Eine solche Aktivierungsfunktion kann beispielsweise eine an sich bekannte ReLu-Funktion darstellen.The artificial neural network can be formed in several layers L1, L2, L3, each with a large number of artificial neurons 11. The layers include an input layer L1, which receives the input data point as inputs and processes the values of the input data point E, one or more hidden layers L2 and an output layer L3, whose neurons provide the model output A. The neurons 11 are provided with respective neuron functions which, depending on all values of the elements of the input data point (at the input layer L1) or the output values of all neurons 11 of a preceding neuron layer (at the layers L2, L3), send an output value to all neurons of a subsequent neuron layer or provide as model output A. The neuron functions typically form a weighted sum of all input values and apply a nonlinear function to it, called an activation function. Such an activation function can, for example, represent a known ReLu function.

Eine der verborgenen Schichten L2 des neuronalen Netzes kann als Repräsentationsschicht verwendet werden, und die Neuronenausgabewerte der Repräsentationsschicht werden dem Überprüfungsblock 33 zugeführt. Die Repräsentationsschicht kann allgemein einer Bottleneck-Schicht, d.h. einer Schicht mit geringerer Dimensionalität als der Eingangsdatenpunkt, einer vorletzten Schicht, d.h. der Schicht vor der Ausgangsschicht L3 oder einer zusätzlichen Schicht, die Neuronenausgangswerte einer verborgenen Schicht enthält, entsprechen.One of the hidden layers L2 of the neural network can be used as a representation layer, and the neuron output values of the representation layer are fed to the verification block 33. The representation layer may generally correspond to a bottleneck layer, i.e. a layer with lower dimensionality than the input data point, a penultimate layer, i.e. the layer before the output layer L3 or an additional layer containing neuron output values of a hidden layer.

Der Überprüfungsblock 33 dient dazu, eine Fehlerbehandlung durchzuführen, wenn festgestellt wird, dass mindestens einer der Neuronenausgangswerte der Repräsentationsschicht außerhalb eines vorgegebenen Gültigkeitsbereichs liegt.The check block 33 is used to carry out error handling if it is determined that at least one of the neuron output values of the representation layer is outside a predetermined validity range.

3 zeigt ein Flussdiagramm zur Veranschaulichung eines Verfahrens zum Betreiben des technischen Systems der 1. 3 shows a flowchart to illustrate a method for operating the technical system 1 .

In Schritt S1 wird zunächst ein trainiertes datenbasiertes Steuerungsmodell 32 in Form eines künstlichen neuronalen Netzes bereitgestellt, das basierend auf vorgegebenen Trainingsdatensätzen trainiert worden ist.In step S1, a trained data-based control model 32 is first provided in the form of an artificial neural network, which has been trained based on predetermined training data sets.

Beim Betrieb des technischen Systems 1 werden kontinuierlich abzufragende Eingangsdatenpunkte E in Schritt S2 generiert und mithilfe des Steuerungsmodells 32 in eine entsprechende Modellausgabe A umgesetzt.When operating the technical system 1, input data points E to be continuously queried are generated in step S2 and converted into a corresponding model output A using the control model 32.

Weiterhin wird in Schritt S3 mithilfe des Überprüfungsblocks 33 überprüft, ob jeder der Neuronenausgangswerte der Repräsentationsschicht innerhalb des jeweiligen dem entsprechenden Neuron 11 zugeordneten Gültigkeitsbereichs liegt. Wird festgestellt, dass mindestens einer der Neuronenausgangswerte außerhalb des Gültigkeitsbereichs liegt, so wird ein Fehler festgestellt.Furthermore, in step S3, the check block 33 is used to check whether each of the neuron output values of the representation layer lies within the respective validity range assigned to the corresponding neuron 11. If it is determined that at least one of the neuron output values is outside the valid range, an error is detected.

Wird ein Fehler festgestellt (Alternative: Ja), so kann in Schritt S4 die Modellausgabe des Steuerungsmodells 32 verworfen werden und ein Ersatzwert, beispielsweise eine in vorangegangenen Zeitschritten ermittelte Modellausgabe oder mithilfe eines anderen Modells ermittelte Modellausgabe, verwendet werden. Anschließend wird das Verfahren mit Schritt S1 fortgesetzt.If an error is detected (alternative: yes), the model output of the control model 32 can be discarded in step S4 and a replacement value, for example a model output determined in previous time steps or a model output determined using another model, can be used. The method then continues with step S1.

Wird kein Fehler festgestellt (Alternative: Nein), so wird das Verfahren mit Schritt S1 fortgesetzt.If no error is detected (alternative: no), the process continues with step S1.

Alternativ können festgestellte Fehler auch akkumuliert werden und bei Überschreiten einer vorgegebenen Häufigkeitsschwelle die Funktion des Steuerungsmodells 32 unterbrochen und ein Neutraining des Steuerungsmodells angefordert werden.Alternatively, detected errors can also be accumulated and, if a predetermined frequency threshold is exceeded, the function of the control model 32 can be interrupted and a retraining of the control model can be requested.

Um das obige Verfahren durchzuführen, ist es notwendig, während oder nach dem Trainingsprozess des Steuerungsmodells 32 die Gültigkeitsschwellen/Gültigkeitsbereiche für jeden der Neuronenausgangswerte der Repräsentationsschicht zu ermitteln. 4 veranschaulicht ein Verfahren zum Bereitstellen des Steuerungsmodells 32 und der Gültigkeitsschwellen.In order to perform the above method, it is necessary to determine the validity thresholds/ranges for each of the neuron output values of the representation layer during or after the training process of the control model 32. 4 illustrates a method for providing the control model 32 and the validity thresholds.

Mithilfe eines Prüfstands wird dazu in Schritt S11 zunächst das technische System 1 an verschiedenen Betriebszuständen vermessen, um für eine Anzahl verschiedener Eingangsdatenpunkte, die sich jeweils aus einer oder mehrerer Sensorgrößen, Zustandsgrößen und/oder Vorgabegrößen bzw. aus deren Verläufen direkt und/oder als eine oder mehrerer Merkmalsgrößen nach einer Merkmalsextraktion ergeben, eine oder mehrere Größen als Modellausgabe zu bestimmen. Die Größen der Modellausgabe können einer oder mehreren Sensorgrößen von zusätzlichen Sensoren des Prüfstands oder einer oder mehreren davon abgeleiteten Größen entsprechen. Diese gewünschte Modellausgabe wird als Label bezeichnet.With the help of a test stand, in step S11 the technical system 1 is first measured at various operating states in order to measure a number of different input data points, each of which consists of one or more sensor variables, state variables and/or default variables or their curves directly and/or as one or several feature sizes after feature extraction result in determining one or more sizes as model output. The sizes of the model output may correspond to one or more sensor sizes from additional sensors of the test stand or one or more sizes derived therefrom. This desired model output is called a label.

Die Trainingsdatensätze beschreiben einen Eingangsdatenpunkt, der eine oder mehrere Sensorgrößen, eine oder mehrere Vorgabegrößen und eine oder mehrere Zustandsgrößen beinhaltet. Dem Eingangsdatenpunkt ist jeweils ein Label zugeordnet, das in Form eines Klassifikationsvektors oder eines oder mehrerer Regressionswerte ausgebildet sein kann.The training data sets describe an input data point that includes one or more sensor variables, one or more default variables and one or more state variables. A label is assigned to the input data point, which can be in the form of a classification vector or one or more regression values.

In Schritt S12 wird das neuronale Netz in an sich bekannter Weise basierend auf den Trainingsdatensätzen trainiert.In step S12, the neural network is trained in a manner known per se based on the training data sets.

Zusätzlich zum trainierten datenbasierten Steuerungsmodell werden in Schritt S13 Gültigkeitsbereiche für Neuronenausgangswerte einer vorgegebenen Repräsentationsschicht des neuronalen Netzes des Steuerungsmodells 32 vorgegeben.In addition to the trained data-based control model, validity ranges for neuron output values are specified in step S13 given representation layer of the neural network of the control model 32.

Die Gültigkeitsbereiche werden durch Auswerten der Eingangsdatenpunkte der Trainingsdatensätze bestimmt. Dazu werden die Neuronenausgangswerte jedes der Neuronen 11 der Repräsentationsschicht für jeden der Eingangsdatensätze der Trainingsdatensätze erfasst und jeweils die Menge der Neuronenausgabewerte eines bestimmten Neurons statistisch ausgewertet, indem beispielsweise ein 90% - 99% Quantil, vorzugsweise ein 95-%-Quantil, als oberer Schwellenwert eines Gültigkeitsbereichs bestimmt wird. Der untere Schwellenwert des Gültigkeitsbereichs kann entsprechend durch Vorgabe eines 1 %-10%-Quantils, vorzugsweise eines 5%-Quantil, bestimmt werden. Der obere und untere Schwellenwert definieren den jeweiligen Gültigkeitsbereich.The validity ranges are determined by evaluating the input data points of the training data sets. For this purpose, the neuron output values of each of the neurons 11 of the representation layer are recorded for each of the input data sets of the training data sets and the set of neuron output values of a specific neuron is statistically evaluated, for example by using a 90% - 99% quantile, preferably a 95% quantile, as the upper threshold value a scope of validity is determined. The lower threshold value of the validity range can be determined accordingly by specifying a 1%-10% quantile, preferably a 5% quantile. The upper and lower thresholds define the respective scope of validity.

Bei einer Aktivierungsfunktion, wie beispielsweise einer ReLU-Aktivierungsfunktion, ist durch die Minimumbegrenzung das Quantil für den unteren Schwellenwert ein solcher Wert nur begrenzt aussagefähig. Wird eine ReLU-Funktion als Aktivierungsfunktion in der Repräsentationsschicht verwendet, so kann der Gültigkeitsbereich stets von 0 bis zum oberen Schwellenwert des Gültigkeitsbereichs festgelegt werden.In the case of an activation function, such as a ReLU activation function, such a value is only of limited significance due to the minimum limitation of the quantile for the lower threshold value. If a ReLU function is used as an activation function in the representation layer, the scope can always be set from 0 to the upper threshold of the scope.

Jedoch kann ein ungültiger Eingangsdatenpunkt festgestellt werden, wenn die Anzahl der Neuronenausgabewerte, die Nullen entsprechen, eine vorbestimmte Schwellenanzahl übersteigt. Gegebenenfalls können die Neuronenausgabewerte vor der Analyse zum Bestimmen der Schwellenwerte transformiert werden, beispielsweise mithilfe einer PCA (Principle Component Analysis). Diese wird basierend auf den Trainingsdatensätzen trainiert und kann diese dann online anwenden. Nun werden obere und untere Grenzen per transformierter Dimension gespeichert und in dem Überprüfungsblock verwendet.However, an invalid input data point may be detected if the number of neuron output values corresponding to zeros exceeds a predetermined threshold number. Optionally, the neuron output values may be transformed prior to analysis to determine thresholds, for example using Principle Component Analysis (PCA). This is trained based on the training data sets and can then be applied online. Now upper and lower bounds are saved per transformed dimension and used in the verification block.

Claims (9)

Verfahren zum Betreiben eines technischen Systems (1) mit einer datenbasierten Steuerungsfunktion, die ein künstliches neuronales Netz (32) umfasst, mit folgenden Schritten: - Bereitstellen (S2) eines abzufragenden Eingangsdatenpunkt (E), der einen oder mehrere Sensorwerte, einen oder mehrere Zustandsgrößen und/oder einen oder mehrere Vorgabewerte umfasst; - Auswerten (S2) eines mit Trainingsdatensätzen trainierten künstlichen neuronalen Netzes, um eine Modellausgabe (A) zu erhalten; - Bereitstellen von Gültigkeitsbereichen von Neuronenausgangswerten von Neuronen einer Repräsentationsschicht des neuronalen Netzes (32), wobei die Gültigkeitsbereiche durch statistisches Auswerten der Trainingsdatensätze bestimmt sind; - Betreiben (S3, S4) des technischen Systems (1) basierend auf der Modellausgabe (A) abhängig davon, ob die Neuronenausgangswerte von Neuronen der Repräsentationsschicht jeweils innerhalb des Gültigkeitsbereichs liegen.Method for operating a technical system (1) with a data-based control function that includes an artificial neural network (32), with the following steps: - Providing (S2) an input data point (E) to be queried, which includes one or more sensor values, one or more state variables and/or one or more default values; - Evaluating (S2) an artificial neural network trained with training data sets in order to obtain a model output (A); - Providing validity ranges for neuron output values of neurons in a representation layer of the neural network (32), the validity ranges being determined by statistically evaluating the training data sets; - Operating (S3, S4) the technical system (1) based on the model output (A) depending on whether the neuron output values of neurons of the representation layer are within the validity range. Verfahren nach Anspruch 1, wobei das technische System (1) abhängig von einem Feststellen, dass mindestens einer der Neuronenausgangswerte außerhalb des betreffenden Gültigkeitsbereichs liegt, betrieben wird.Procedure according to Claim 1 , wherein the technical system (1) is operated depending on a determination that at least one of the neuron output values is outside the relevant validity range. Verfahren nach Anspruch 1 oder 2, wobei die Repräsentationsschicht des neuronalen Netzes einer Bottleneck-Schicht oder einer letzten verborgenen Schicht (L2) entspricht.Procedure according to Claim 1 or 2 , where the representation layer of the neural network corresponds to a bottleneck layer or a final hidden layer (L2). Verfahren nach einem der Ansprüche 1 bis 3, wobei das Betreiben (S3, S4) des technischen Systems (1) basierend auf der Modellausgabe (A) ein Verwerfen der Modellausgabe umfasst, wenn mindestens einer der Neuronenausgangswerte der Neuronen (11) der Repräsentationsschicht außerhalb des Gültigkeitsbereichs liegen.Procedure according to one of the Claims 1 until 3 , wherein operating (S3, S4) of the technical system (1) based on the model output (A) includes discarding the model output if at least one of the neuron output values of the neurons (11) of the representation layer are outside the range of validity. Verfahren nach einem der Ansprüche 1 bis 3, wobei das Betreiben (S3, S4) des technischen Systems (1) basierend auf der Modellausgabe (A) ein Verwerfen der Modellausgabe umfasst, abhängig von dem Ergebnis eines Schwellenwertvergleichs eines Maßes des Abweichens von dem Gültigkeitsbereich durch den mindestens einen der Neuronenausgangswerte der Neuronen (11) der Repräsentationsschicht.Procedure according to one of the Claims 1 until 3 , wherein the operation (S3, S4) of the technical system (1) based on the model output (A) includes discarding the model output, depending on the result of a threshold comparison of a measure of deviation from the validity range by the at least one of the neuron output values of the neurons ( 11) the representation layer. Verfahren zum Bereitstellen von Gültigkeitsbereichen für die Durchführung des Verfahrens nach einem der Ansprüche 1 bis 5, wobei für jedes der Neuronen der Repräsentationsschicht für alle Trainingsdatensätze Neuronenausgangswerte statistisch ausgewertet werden, indem ein Quantil mit einem Quantilwert von zwischen 90% und 99 %, vorzugsweise von 95% als oberer Schwellenwert des Gültigkeitsbereichs ermittelt wird, und/oder indem ein Quantil mit einem Quantilwert von zwischen 1 % und 10 %, vorzugsweise von 5% als unterer Schwellenwert des Gültigkeitsbereichs ermittelt wird.Method for providing scopes for carrying out the method according to one of the Claims 1 until 5 , wherein for each of the neurons of the representation layer, neuron output values are statistically evaluated for all training data sets by determining a quantile with a quantile value of between 90% and 99%, preferably 95%, as the upper threshold value of the validity range, and / or by determining a quantile with a Quantile value of between 1% and 10%, preferably 5%, is determined as the lower threshold of the validity range. Vorrichtung zur Durchführung eines der Verfahren nach einem der Ansprüche 1 bis 6.Device for carrying out one of the methods according to one of the Claims 1 until 6 . Computerprogrammprodukt, umfassend Befehle, die bei ihrer Ausführung durch mindestens eine Datenverarbeitungseinrichtung diese veranlassen, die Schritte des Verfahrens einem der Ansprüche 1 bis 6 auszuführen.Computer program product, comprising commands which, when executed by at least one data processing device, cause it to carry out the steps of the method in one of the Claims 1 until 6 to carry out. Maschinenlesbares Speichermedium, umfassend Befehle, die bei der Ausführung durch mindestens eine Datenverarbeitungseinrichtung diese veranlassen, die Schritte des Verfahrens einem der Ansprüche 1 bis 6 auszuführen.Machine-readable storage medium, comprising instructions which, when executed by at least one data processing device, cause it to carry out the steps of the method in one of the Claims 1 until 6 to carry out.
DE102022207997.3A 2022-08-02 2022-08-02 Method and device for operating a technical system with an artificial neural network Pending DE102022207997A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102022207997.3A DE102022207997A1 (en) 2022-08-02 2022-08-02 Method and device for operating a technical system with an artificial neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102022207997.3A DE102022207997A1 (en) 2022-08-02 2022-08-02 Method and device for operating a technical system with an artificial neural network

Publications (1)

Publication Number Publication Date
DE102022207997A1 true DE102022207997A1 (en) 2024-02-08

Family

ID=89575394

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102022207997.3A Pending DE102022207997A1 (en) 2022-08-02 2022-08-02 Method and device for operating a technical system with an artificial neural network

Country Status (1)

Country Link
DE (1) DE102022207997A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019068291A1 (en) 2017-10-05 2019-04-11 Conti Temic Microelectronic Gmbh Testing a neural network

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019068291A1 (en) 2017-10-05 2019-04-11 Conti Temic Microelectronic Gmbh Testing a neural network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Li X., Li F.: Adversarial Examples Detection in Deep Networks with Convolutional Filter Statistics. In: IEEE International Conference on Computer Vision, 2017, 5775-5783. https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8237877&tag=1 [abgerufen am 06.04.2023]

Similar Documents

Publication Publication Date Title
EP0170018B1 (en) Process and apparatus for the self-testing of control levers
DE102008021385B3 (en) Method and apparatus for learning the rest position of the accelerator pedal of a motor vehicle
DE102006005515A1 (en) Electronic vehicle control device
EP1259941A1 (en) Method and device for determining the remaining serviceable life of a product
EP1715352A2 (en) Method and apparatus for diagnosing failures in a mechatronic system
DE102018208763A1 (en) Method, apparatus and computer program for operating a machine learning system
DE102019104922A1 (en) COLLISION POSITION ESTIMATOR AND MACHINE LEARNING DEVICE
DE102018209250A1 (en) Control device, method for controlling a control device, computer-readable storage medium and control system
EP1175557A1 (en) Method and device for monitoring a computing element in a motor vehicle
DE102022207997A1 (en) Method and device for operating a technical system with an artificial neural network
WO2022053626A1 (en) Method and device for operating a fuel injection valve with the aid of machine learning methods
DE102021200789A1 (en) Computer-implemented method and device for manipulation detection for exhaust aftertreatment systems using artificial intelligence methods
DE102020211416A1 (en) Method and device for operating a fuel injector using machine learning methods
DE102022203832A1 (en) Method and device for providing a reconstruction model for signal time series
DE102022204168A1 (en) Method and device for evaluating training data and creating a data-based system model
DE102020109858A1 (en) Method of operating a system
DE102009027517A1 (en) Method for adaption of control function in control device, involves detecting actual condition of controlled system, where actual value is determined for criteria of good quality depending on determined condition by parameter-criteria
DE102022203833A1 (en) Method and device for providing a reconstruction model for signal time series
DE19640432C2 (en) Method for monitoring an internal combustion engine
DE102021115095B3 (en) Process and drive control unit for functional testing of a water injection system
DE102018128315A1 (en) Method, device, computer program and computer program product for checking a first adaptive system model
EP4034856B1 (en) Quality control for pre-tensioned component
DE102021115103B3 (en) Method, device, vehicle and computer program for modeling and monitoring a heating behavior of a vehicle component
DE102021127029B3 (en) Method, system and computer program product for the prediction of leaks at sealing interfaces of screwed assembly components
DE102022204172A1 (en) Method and device for training a data-based model and for evaluating and selecting a selection function for active learning of a data-based model

Legal Events

Date Code Title Description
R163 Identified publications notified