DE102013206292A1 - Method and device for creating a data-based function model - Google Patents

Method and device for creating a data-based function model Download PDF

Info

Publication number
DE102013206292A1
DE102013206292A1 DE102013206292.3A DE102013206292A DE102013206292A1 DE 102013206292 A1 DE102013206292 A1 DE 102013206292A1 DE 102013206292 A DE102013206292 A DE 102013206292A DE 102013206292 A1 DE102013206292 A1 DE 102013206292A1
Authority
DE
Germany
Prior art keywords
data
model
training data
unit
partial
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
DE102013206292.3A
Other languages
German (de)
Inventor
Felix Streichert
Heiner Markert
Andre GUNTORO
Michael Hanselmann
Rene Diener
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 DE102013206292.3A priority Critical patent/DE102013206292A1/en
Priority to US14/247,104 priority patent/US9709967B2/en
Priority to CN201410140034.0A priority patent/CN104102129A/en
Publication of DE102013206292A1 publication Critical patent/DE102013206292A1/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/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

Die Erfindung betrifft ein Verfahren zum Erstellen eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, mit folgenden Schritten: – Bereitstellen (S1) eines aus einem ersten Trainingsdatensatz ermittelten ersten datenbasierten Teilmodells; – Bereitstellen (S2) eines oder mehrerer weiterer Trainingsdatensätze; wobei für jeden der bereitgestellten weiteren Trainingsdatensätze folgende Schritte durchgeführt werden: Ermitteln (S3) eines Differenz-Trainingsdatensatzes mit Trainingsdaten, die den Differenzen der Ausgangswerte des betreffenden weiteren Trainingsdatensatzes und des Funktionswerts der Summe der Teilfunktionswerte (ferstesTeilmodell (x), fzweitesTeilmodell (x)) des ersten datenbasierten Teilmodells und zuvor ermittelten ein oder mehreren weiteren datenbasierten Teilmodellen an jedem der Messpunkte des betreffenden weiteren Trainingsdatensatzes entsprechen; Ermitteln (S4) eines weiteren datenbasierten Teilmodells aus dem Differenz-Trainingsdatensatz; und Bilden (S5) einer Summe (f(x)) aus dem ersten datenbasierten Teilmodell und den ermittelten weiteren datenbasierten Teilmodellen.The invention relates to a method for creating a data-based function model, in particular a Gaussian process model, with the following steps: providing (S1) a first data-based partial model determined from a first training data record; - Provision (S2) of one or more further training data sets; The following steps are carried out for each of the further training data records provided: Determining (S3) a differential training data record with training data that shows the differences between the output values of the relevant further training data record and the function value of the sum of the partial function values (first partial model (x), second partial model (x)) correspond to the first data-based partial model and previously determined one or more further data-based partial models at each of the measuring points of the relevant further training data record; Determining (S4) a further data-based partial model from the difference training data record; and forming (S5) a sum (f (x)) from the first data-based partial model and the determined further data-based partial models.

Description

Technisches GebietTechnical area

Die vorliegende Erfindung betrifft Steuergeräte für Motorsysteme, insbesondere Steuergeräte mit einer separaten Recheneinheit zum Auswerten von datenbasierten Funktionsmodellen, wie beispielsweise Gauß-Prozess-Modellen.The present invention relates to control devices for engine systems, in particular control devices with a separate computing unit for evaluating data-based function models, such as Gaussian process models.

Stand der TechnikState of the art

Bislang werden Funktionsmodelle in Steuergeräten, d. h. Strecken- und Systemmodelle, durch die Vorgabe von Kennfeldern, Kennlinien oder ein physikalisches System nachbildenden Funktionen implementiert. Diese werden von einem Benutzer durch Anpassen von Modellparametern an die Gegebenheiten des physikalischen Systems adaptiert. So far, functional models in ECUs, i. H. Track and system models, implemented by the specification of maps, characteristics or a physical system replicating functions. These are adapted by a user by adapting model parameters to the conditions of the physical system.

Eine Alternative stellt die Verwendung von nicht parametrischen datenbasierten Funktionsmodellen dar, mit denen die Funktionen physikalischer Systeme im Wesentlichen ohne Parameter-Vorgaben nachgebildet werden können. Als datenbasiertes Funktionsmodell kann beispielsweise ein Gauß-Prozessmodell verwendet werden, das im Wesentlichen durch Hyperparameter und Stützstellen definiert wird. Die datenbasierten Funktionsmodelle werden auf Grundlage von Trainingsdaten erstellt, die in einem Prüfsystem ermittelt werden können. Die Stützstellen für das Gauß-Prozessmodell können den Trainingsdaten entsprechen, aus diesen ausgewählt sein oder aus den Trainingsdaten generiert werden.An alternative is the use of non-parametric data-based function models, with which the functions of physical systems can be simulated essentially without parameter specifications. As a data-based functional model, for example, a Gaussian process model can be used, which is essentially defined by hyperparameters and support points. The data-based functional models are created on the basis of training data that can be determined in a test system. The support points for the Gaussian process model may correspond to, be selected from, or generated from the training data.

Insbesondere lokale Effekte können unter Umständen von dem erstellten datenbasierten Funktionsmodell nicht angemessen abgebildet werden. Wurde bereits ein datenbasiertes Funktionsmodell auf Grundlage von Trainingsdaten eines anfänglichen Trainingsdatensatzes bestimmt, so ist es schwierig, Trainingsdaten eines nachträglich ermittelten Trainingsdatensatzes in angemessener Weise in dem bereits erstellten datenbasierten Funktionsmodell zu berücksichtigen. Durch das bloße Vereinigen der Trainingsdatensätze mit oder ohne Variation der Hyperparameter des datenbasierten Modells können lokale Effekte jedoch nur dann angemessen berücksichtigt werden, wenn die Trainingsdaten des nachträglich hinzugefügten Trainingsdatensatzes eine ausreichende Anzahl an Messpunkten aufweisen. So können die zusätzlichen Messpunkte im Verhältnis zu den Messpunkten der Trainingsdaten des anfänglichen Trainingsdatensatzes ein ausreichendes Gewicht aufweisen. Weiterhin ist erforderlich, dass die Messpunkte des nachträglich hinzugefügten Trainingsdatensatzes nicht im Widerspruch zu bereits vorhandenen Messpunkten des anfänglichen Trainingsdatensatzes stehen, d. h. eine relativ große Abweichung zu diesen aufweisen. Andernfalls erhält man datenbasierte Funktionsmodelle mit hohem Messrauschen und folglich hohem Modellfehler für die Funktionswerte im Bereich des lokalen Effekts.In particular, local effects may not be adequately mapped by the created data-based function model. If a data-based functional model has already been determined on the basis of training data of an initial training data record, it is difficult to appropriately consider training data of a subsequently determined training data record in the already created data-based functional model. However, by simply merging the training data sets with or without varying the hyperparameters of the data-based model, local effects can only be adequately considered if the training data of the subsequently added training data set has a sufficient number of measurement points. Thus, the additional measurement points may have sufficient weight relative to the measurement points of the training data of the initial training data set. Furthermore, it is necessary that the measuring points of the subsequently added training data set are not in contradiction to already existing measuring points of the initial training data set, i. H. have a relatively large deviation from these. Otherwise, one obtains data-based function models with high measurement noise and consequently high model error for the function values in the area of the local effect.

Aus dem Stand der Technik sind Steuergeräte mit einem Mikrocontroller und einer separaten Modellberechnungseinheit zur Berechnung von datenbasierten Modellen in einem Steuergerät bekannt. So ist beispielsweise aus DE 10 2010 028 259 A1 ein Steuergerät mit einer zusätzlichen Logikschaltung bekannt, die zur Berechnung von Exponentialfunktionen ausgebildet ist, um die Durchführung von Bayes-Regressionsverfahren, die insbesondere für die Berechnung von Gauß-Prozessmodellen benötigt werden, zu unterstützen. Control units with a microcontroller and a separate model calculation unit for calculating data-based models in a control unit are known from the prior art. For example, this is off DE 10 2010 028 259 A1 a controller with an additional logic circuit, which is designed for the calculation of exponential functions, in order to support the implementation of Bayes regression methods, which are needed in particular for the calculation of Gaussian process models.

Weiterhin ist aus C. Plagemann, K. Kersting, W. Burgard, "Nonstationary Gaussian Process Regression Using Point Estimates of Local Smoothness", ICML Proceedings, Seiten 204–2116, 2006 , ein weiteres Verfahren zum Hinzufügen von Messpunkten eines weiteren Trainingsdatensatzes zu einem bestehenden Gauß-Prozessmodell bekannt. Dieses Verfahren ist jedoch ineffizient, insbesondere da die Parameteroptimierung schwierig ist.Furthermore, it is off C. Plagemann, K. Kersting, W. Burgard, "Nonstationary Gaussian Process Regression Using Point Estimates of Local Smoothness", ICML Proceedings, pages 204-2116, 2006 , another method of adding measurement points of another training data set to an existing Gaussian process model is known. However, this method is inefficient, especially since the parameter optimization is difficult.

Offenbarung der ErfindungDisclosure of the invention

Erfindungsgemäß sind ein Verfahren zum Erstellen eines datenbasierten Funktionsmodells basierend auf datenbasierten Funktionsmodellen gemäß Anspruch 1 sowie das Verfahren zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells, die Vorrichtung, das Steuergerät und das Computerprogramm gemäß den nebengeordneten Ansprüchen vorgesehen.According to the invention, a method for creating a data-based function model based on data-based function models according to claim 1 and the method for calculating a function value of a data-based function model, the device, the control device and the computer program according to the independent claims are provided.

Weitere vorteilhafte Ausgestaltungen der vorliegenden Erfindung sind in den abhängigen Ansprüchen angegeben.Further advantageous embodiments of the present invention are specified in the dependent claims.

Gemäß einem ersten Aspekt ist ein Verfahren zum Erstellen eines datenbasierten Funktionsmodells vorgesehen. Das Verfahren umfasst die folgenden Schritte:

  • – Bereitstellen oder Erstellen eines aus einem ersten Trainingsdatensatz ermittelten ersten datenbasierten Teilmodells; und
  • – Bereitstellen eines oder mehrerer weiterer Trainingsdatensätze; wobei für jeden der bereitgestellten weiteren Trainingsdatensätze folgende weitere Schritte durchgeführt werden: • Ermitteln eines Differenz-Trainingsdatensatzes mit Trainingsdaten, die den Differenzen der Ausgangswerte des betreffenden weiteren Trainingsdatensatzes und des Funktionswerts der Summe der Teilfunktionswerte des ersten datenbasierten Teilmodells und der zuvor ermittelten ein oder mehreren weiteren datenbasierten Teilmodellen an jedem der Messpunkte des betreffenden weiteren Trainingsdatensatzes entsprechen; • Ermitteln eines weiteren datenbasierten Teilmodells aus dem Differenz-Trainingsdatensatz; und • Bilden einer Summe aus dem ersten datenbasierten Teilmodell und den ermittelten weiteren datenbasierten Teilmodellen.
According to a first aspect, a method for creating a data-based function model is provided. The method comprises the following steps:
  • Providing or creating a first data-based submodel determined from a first training data set; and
  • Providing one or more further training data sets; wherein the following further steps are carried out for each of the further training data records provided: • Determining a difference training data set with training data that includes the differences of the output values of the respective further training data set and the function value of the sum of the partial function values of the first data-based submodel and the one or more previously determined ones correspond to data-based submodels at each of the measurement points of the respective further training data set; • determining another data-based submodel from the difference training data set; and • forming a sum of the first data-based submodel and the determined further data-based submodels.

Eine Idee des obigen Verfahrens zum Erstellen eines datenbasierten Funktionsmodells besteht darin, mehrere datenbasierte Teilmodelle additiv miteinander zu verbinden, um ein Strecken- oder Systemmodell in einem Steuergerät zu implementieren. Dies ermöglicht eine angemessene Darstellung lokaler Effekte, die als separates datenbasiertes Teilmodell modelliert werden. Das obige Verfahren schlägt vor, eine additive Kette einer Anzahl von datenbasierten Teilmodellen zu bilden, wobei basierend auf einem ersten datenbasierten Teilmodell jedes weitere datenbasierte Teilmodell eine additive Abweichung von dem ersten datenbasierten Teilmodell bzw. der Summe aus dem ersten datenbasierten Teilmodell und den bereits berücksichtigten weiteren datenbasierten Teilmodellen angibt. Auf diese Weise können lokale Effekte insbesondere aufgrund der durch die Hyperparameter bestimmten Breite des datenbasierten Modells gut modelliert werden, ohne das erste datenbasierte Teilmodell maßgeblich zu beeinträchtigen.One idea of the above method for creating a data-based functional model is to additively join multiple data-based submodels together to implement a link or system model in a controller. This allows adequate representation of local effects modeled as a separate data-based submodel. The above method proposes to form an additive chain of a number of data-based submodels, wherein based on a first data-based submodel each further data-based submodel has an additive deviation from the first data-based submodel or the sum from the first data-based submodel and the others already considered indicates data-based submodels. In this way, local effects can be well modeled, in particular due to the width of the data-based model determined by the hyperparameters, without significantly impairing the first data-based submodel.

Die additive Zusammenführung von mehreren datenbasierten Teilmodellen hat den weiteren Vorteil, dass diese in einem Steuergerät mit einer zusätzlichen Modellberechnungseinheit in einfacher Weise gerechnet werden kann.The additive combination of several data-based submodels has the further advantage that they can be easily calculated in a control unit with an additional model calculation unit.

Durch das Vorsehen der Modellberechnungseinheit, die in selbstständiger Weise mehrere datenbasierte Teilmodelle hintereinander berechnet und die resultierenden Teilergebnisse aufaddiert, wird eine einfache Ermittlung eines Funktionswerts basierend auf dem obigen additiven Funktionsmodell ermöglicht. Durch Vermeiden, dass die Recheneinheit die Modellberechnungseinheit für die Berechnung jedes einzelnen Teilmodells vorbereiten muss, kann die Berechnung eines entsprechenden Funktionswerts deutlich beschleunigt werden.By providing the model calculation unit that independently calculates a plurality of data-based submodels in succession and adds up the resulting sub-results, a simple determination of a function value based on the above additive function model is enabled. By avoiding that the arithmetic unit must prepare the model calculation unit for the calculation of each individual submodel, the calculation of a corresponding function value can be significantly accelerated.

Weiterhin kann vorgesehen sein, dass die weiteren Trainingsdatensätze jeweils Trainingsdaten enthalten, die durch ein Klassifikations- oder Clusteringverfahren einem lokalen Effekt zugeordnet werden. Furthermore, it can be provided that the further training data records each contain training data which are assigned to a local effect by a classification or clustering method.

Insbesondere kann das weitere datenbasierten Teilmodell aus dem Differenz-Trainingsdatensatz so ermittelt wird, das es im Extrapolationsbereich auf konstant Null zurückgeht.In particular, the further data-based submodel from the difference training data record can be determined such that it goes back to constant zero in the extrapolation range.

Weiterhin können die datenbasierten Teilmodelle Gaußprozessmodellen entsprechen, wobei das eine oder die mehreren weiteren datenbasierten Teilmodelle aus dem entsprechenden Differenz-Trainingsdatensatz basierend auf einer Mittelwertsfunktion ermittelt wird, die konstant Null beträgt. Furthermore, the data-based submodels may correspond to Gaussian process models, wherein the one or more further data-based submodels is determined from the corresponding difference training data set based on a mean value function that is constant zero.

Gemäß einem weiteren Aspekt ist ein Verfahren zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells in einem Steuergerät vorgesehen, das eine Recheneinheit und eine separate Modellberechnungseinheit aufweist, wobei das datenbasierte Funktionsmodell mehrere Teilmodelle aufweist. Das Verfahren umfasst die folgenden Schritte:

  • – Bereitstellen von Eingangsdaten an die Modellberechnungseinheit;
  • – Übermitteln einer Berechnungsadresse, die eine Adresse von ersten Konfigurationsdaten in einer Speichereinheit angibt, an eine DMA-Einheit;
  • – Abrufen der ersten Konfigurationsdaten, die Parameter und Stützstellendaten zur Berechnung eines ersten Teilmodells enthalten, aus der Speichereinheit und Übermitteln der ersten Konfigurationsdaten an die Modellberechnungseinheit;
  • – Ermitteln eines ersten Teilfunktionswerts des ersten Teilmodells basierend auf den Eingangsdaten; und
  • – Speichern des ersten Teilfunktionswerts in einem Akkumulator in der Modellberechnungseinheit; wobei folgende Schritte wiederholt durchgeführt werden, bis eine Stoppbedingung vorliegt: • Abrufen von weiteren Konfigurationsdaten, die Parameter und Trainingsdaten zur Berechnung eines weiteren Teilmodells enthalten, aus der Speichereinheit und Übermitteln der betreffenden weiteren Konfigurationsdaten an die Modellberechnungseinheit; • Ermitteln eines weiteren Teilfunktionswerts des weiteren Teilmodells basierend auf den Eingangsdaten; und • Addieren des weiteren Teilfunktionswerts zu dem in dem Akkumulator gespeicherten Wert.
According to a further aspect, a method for calculating a function value of a data-based function model in a control device is provided, which has a computing unit and a separate model calculation unit, wherein the data-based function model has a plurality of partial models. The method comprises the following steps:
  • Providing input data to the model calculation unit;
  • - transmitting a calculation address indicating an address of first configuration data in a memory unit to a DMA unit;
  • Retrieving the first configuration data containing parameters and node data for calculating a first partial model from the memory unit and transmitting the first configuration data to the model calculation unit;
  • Determining a first partial function value of the first partial model based on the input data; and
  • Storing the first partial function value in an accumulator in the model calculation unit; wherein the following steps are repeatedly performed until a stop condition exists: retrieving further configuration data including parameters and training data for calculating another submodel from the storage unit and transmitting the respective further configuration data to the model calculation unit; Determining a further partial function value of the further partial model based on the input data; and adding the further partial function value to the value stored in the accumulator.

Die Kombination des erstgenannten Verfahrens zum Erstellen eines datenbasierten Funktionsmodells in Verbindung mit der Berechnung in einer Modellberechnungseinheit mithilfe einer DMA-Einheit ermöglicht die Durchführung eines verketteten Berechnungsverfahrens in der Modellberechnungseinheit, das es wiederum ermöglicht, die Berechnungen schnell durchzuführen, ohne die Recheneinheit zu belasten.The combination of the former method for creating a data-based function model in conjunction with the calculation in a model calculation unit using a DMA unit makes it possible to perform a concatenated calculation method in the model calculation unit, which in turn makes it possible to perform the calculations quickly without burdening the arithmetic unit.

Weiterhin können die weiteren Konfigurationsdaten aus einem Speicherbereich abgerufen werden, der von der Berechnungsadresse abhängt, insbesondere durch Beaufschlagen der Berechnungsadresse mit einem vorgegebenen Adressoffset.Furthermore, the further configuration data can be retrieved from a memory area that depends on the calculation address, in particular by applying the calculation address with a predetermined address offset.

Gemäß einer Ausführungsform kann die Stoppbedingung durch die abgerufenen weiteren Konfigurationsdaten angegeben werden. According to one embodiment, the stop condition may be indicated by the retrieved further configuration data.

Es kann vorgesehen sein, dass die Stoppbedingung vorgibt, dass die Recheneinheit den in dem Akkumulator gespeicherten Wert als Funktionswert eines datenbasierten Funktionsmodells angibt. It can be provided that the stop condition specifies that the arithmetic unit indicates the value stored in the accumulator as the function value of a data-based function model.

Insbesondere kann das Abrufen der weiteren Konfigurationsdaten aus der Speichereinheit, das Übermitteln der betreffenden weiteren Konfigurationsdaten an die Modellberechnungseinheit und das Starten des Ermittelns des weiteren Teilfunktionswerts des weiteren Teilmodells durch die DMA-Einheit durchgeführt werden. In particular, the retrieval of the further configuration data from the memory unit, the transmission of the relevant further configuration data to the model calculation unit and the starting of the determination of the further partial function value of the further submodel by the DMA unit can be carried out.

Gemäß einem weiteren Aspekt ist eine Vorrichtung, insbesondere Recheneinheit, zum Erstellen eines datenbasierten Funktionsmodells vorgesehen, wobei die Vorrichtung ausgebildet ist, um:

  • – ein aus einem ersten Trainingsdatensatz ermitteltes erstes datenbasiertes Teilmodell bereitzustellen; und
  • – einen oder mehrere weitere Trainingsdatensätze bereitzustellen; wobei die Vorrichtung weiterhin ausgebildet ist, um für jeden der bereitgestellten weiteren Trainingsdatensätze folgende Schritte durchzuführen: • Ermitteln eines modifizierten weiteren Trainingsdatensatzes mit Trainingsdaten als Differenzen der Ausgangswerte des betreffenden weiteren Trainingsdatensatzes und des Funktionswerts der Summe der Teilfunktionswerte des ersten datenbasierten Teilmodells und der zuvor ermittelten weiteren datenbasierten Teilmodelle an jedem der Messpunkte des betreffenden weiteren Trainingsdatensatzes; und • Ermitteln eines weiteren datenbasierten Teilmodells aus dem modifizierten Trainingsdatensatz; • wobei die Vorrichtung weiterhin ausgebildet ist, um eine Summe aus dem ersten datenbasierten Teilmodell und den ermittelten weiteren datenbasierten Teilmodellen zu bilden.
According to a further aspect, a device, in particular a computing unit, is provided for creating a data-based function model, the device being designed to:
  • To provide a first data-based submodel determined from a first training data set; and
  • To provide one or more additional training records; wherein the apparatus is further configured to perform the following steps for each of the further training data records provided: Determining a modified further training data record with training data as differences of the output values of the relevant further training data record and the functional value of the sum of the partial function values of the first data-based submodel and the previously determined further ones data-based submodels at each of the measurement points of the respective further training data set; and • determining another data-based submodel from the modified training data set; Wherein the device is further configured to form a sum of the first data-based submodel and the determined further data-based submodels.

Gemäß einem weiteren Aspekt ist ein Steuergerät zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells vorgesehen, wobei das datenbasierte Funktionsmodell mehrere Teilmodelle aufweist, umfassend:

  • – eine Recheneinheit zum Übermitteln einer Berechnungsadresse an eine DMA-Einheit;
  • – eine separate Modellberechnungseinheit, um einen Teilfunktionswert eines bereitgestellten Teilmodells basierend auf den Eingangsdaten zu ermitteln und den Teilfunktionswert auf einen in einem Akkumulator der Modellberechnungseinheit gespeicherten Wert zu addieren;
  • – eine Speichereinheit zum Speichern von ersten Konfigurationsdaten, die Parameter und Trainingsdaten zur Berechnung eines ersten Teilmodells enthalten, und von weiteren Konfigurationsdaten, die Parameter und Trainingsdaten zur Berechnung eines oder mehrerer weiterer Teilmodelle enthalten; und
  • – die DMA-Einheit, die ausgebildet ist, um Konfigurationsdaten aus der Speichereinheit abzurufen und an die Modellberechnungseinheit zu übermitteln.
According to a further aspect, a control device is provided for calculating a function value of a data-based function model, wherein the data-based function model has a plurality of submodels, comprising:
  • An arithmetic unit for transmitting a calculation address to a DMA unit;
  • A separate model calculation unit to determine a partial function value of a provided partial model based on the input data and to add the partial function value to a value stored in an accumulator of the model calculation unit;
  • A memory unit for storing first configuration data containing parameters and training data for calculating a first partial model, and further configuration data containing parameters and training data for calculating one or more further partial models; and
  • The DMA unit, which is designed to retrieve configuration data from the memory unit and to transmit it to the model calculation unit.

Gemäß einem weiteren Aspekt ist eine Computerprogramm vorgesehen, welches dazu eingerichtet ist, alle Schritte des obigen Verfahrens zum Erstellen eines datenbasierten Funktionsmodells auszuführen.According to a further aspect, a computer program is provided, which is set up to execute all the steps of the above method for creating a data-based function model.

Kurzbeschreibung der Zeichnungen Brief description of the drawings

Bevorzugte Ausführungsformen der vorliegenden Erfindung werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:Preferred embodiments of the present invention will be explained in more detail with reference to the accompanying drawings. Show it:

1 ein Ablaufdiagramm zur Veranschaulichung des Verfahrens zum Erstellen eines datenbasierten Funktionsmodells; 1 a flow diagram illustrating the method for creating a data-based function model;

2 eine schematische Darstellung eines Steuergeräts mit Mikrocontroller, Modellberechnungseinheit und DMA-Einheit; 2 a schematic representation of a controller with microcontroller, model calculation unit and DMA unit;

3 ein Ablaufdiagramm zur Veranschaulichung des Verfahrens zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells, das auf additiven datenbasierten Teilmodellen basiert; 3 a flowchart illustrating the method for calculating a function value of a data-based function model based on additive data-based submodels;

4 eine Darstellung einer Speichernutzung zum Zugriff mithilfe der DMA-Einheit; und 4 an illustration of memory usage for access using the DMA unit; and

5 einen Teil der Modellberechnungseinheit zur additiven Berücksichtigung eines Teilfunktionsergebnisses eines datenbasierten Teilmodells. 5 a part of the model calculation unit for the additive consideration of a partial function result of a data-based submodel.

Beschreibung von AusführungsformenDescription of embodiments

Zunächst wird anhand des Flussdiagramms der 1 ein Verfahren beschrieben, gemäß dem ein datenbasiertes Funktionsmodell, in dem dargestellten Ausführungsbeispiel ein Gaußprozessmodell, durch additive Beaufschlagung von mehreren datenbasierten Teilmodellen ermittelt wird.First, with reference to the flow chart of the 1 describes a method according to which a data-based function model, in the illustrated embodiment a Gaussian process model, is determined by additive loading of several data-based submodels.

In Schritt S1 wird anhand von Hyperparametern und Stützstellen ein erstes datenbasiertes Teilmodell ferstesTeilmodell (x) bereitgestellt, das ganz oder teilweise aus einem ersten anfänglich bereitgestellten Trainingsdatensatz gebildet ist.In step S1, a first data-based partial model f first partial model (x) is provided based on Hyper parameters and sampling points that is formed completely or partially from a first initially provided training data set.

In Schritt S2 wird weiterhin ein zweiter Trainingsdatensatz (xi, yi), i = 1, ..., N zur Verfügung gestellt, wobei xi die p-dimensionalen Messpunkte und yi die skalaren Ausgangswerte repräsentieren.In step S2, a second training data set will continue (x i , y i ), i = 1, ..., N where x i represents the p-dimensional measurement points and y i represents the scalar output values.

In Schritt S3 werden dann die Abweichungen ỹi zwischen den Modellvorhersagen ferstesTeilmodell (xi) (Ausgangswerte bzw. Funktionswerte) des ersten datenbasierten Teilmodells und den Messpunkten yi an den beobachteten Messpunkten des zweiten Trainingsdatensatzes ermittelt: i = yi – ferstes_Teilmodell(xi) In step S3, the deviations ỹ i between the model predictions f first submodel (x i ) (initial values or functional values) of the first data-based submodel and the measuring points y i are then determined at the observed measuring points of the second training data set: i = y i - f first partial model (x i )

In Schritt S4 wird auf den erhaltenen Abweichungen ỹi, d. h. auf den Trainings daten (xi, ỹi), i = 1, ..., N, ein weiteres, zweites datenbasiertes Modell fzweitesTeilmodell (x) trainiert. Dabei ist zu beachten, dass das weitere Teilmodell mithilfe einer Mittelwertfunktion trainiert wird, die konstant 0 entspricht, im Extrapolationsbereich also der Nullfunktion folgt.In step S4, on the obtained deviations ỹ i , ie on the training data (x i , ỹ i ), i = 1,..., N, another, second data-based model f second submodule (x) is trained. It should be noted that the further submodel is trained by means of a mean value function which corresponds to 0 constantly, that is to say follows the zero function in the extrapolation range.

In Schritt S5 können das erste, anfänglich bereitgestellte datenbasierte Teilmodell und das zweite weitere datenbasierte Teilmodell additiv miteinander verbunden werden: f(x) = ferstes_Teilmodell(x) + fzweites_Teilmodell(x) wobei f(x) dem Funktionswert des gesamten datenbasierten Funktionsmodells entspricht. In step S5, the first initially provided data-based submodel and the second further data-based submodel may be additively linked together: f (x) = f first partial model (x) + f second partial model (x) where f (x) corresponds to the function value of the entire data-based function model.

Dieses Konzept kann in einfacher Weise verallgemeinert werden, indem beliebig viele weitere Teilmodelle zugelassen werden. Beispielsweise können Messpunkte eines weiteren Trainingsdatensatzes, die z. B. durch ein Klassifikations- oder Clusteringverfahren einem bestimmten lokalen Effekt zugeordnet wurden, in einem weiteren datenbasierten Teilmodell modelliert werden. Das weitere datenbasierte Teilmodell wird aus einem Differenz-Trainingsdatensatz erstellt, dessen Ausgangswerte den Differenzen der Ausgangswerte des zu berücksichtigenden weiteren Trainingsdatensatzes und den entsprechenden Funktionswerten eines aus einer Addition der bereits zuvor ermittelten datenbasierten Teilmodelle gebildeten datenbasierten Modells an den Messpunkten des weiteren Trainingsdatensatzes entsprechen. Das weitere datenbasierte Teilmodell wird dann basierend auf dem Differenz-Trainingsdatensatz ermittelt. Diese Vorgehensweise kann für alle weiteren Trainingsdatensätze wiederholt werden. This concept can be generalized in a simple way by allowing any number of additional submodels. For example, measuring points of another training data set, the z. B. assigned by a classification or clustering a particular local effect, are modeled in a further data-based sub-model. The further data-based submodel is created from a difference training data record whose output values are the differences of the output values of the further training data record to be taken into consideration and the corresponding function values of a correspond to an addition of the previously determined data-based submodels formed data-based model at the measuring points of the further training data set. The further data-based submodel is then determined based on the difference training data set. This procedure can be repeated for all other training data records.

Für eine Anzahl I von weiteren datenbasierten Teilmodellen, die auf die oben beschriebene Weise ermittelt wurden, gilt:

Figure DE102013206292A1_0002
For a number I of further data-based submodels, which were determined in the manner described above, the following applies:
Figure DE102013206292A1_0002

Für jedes einzelne Ergebnis eines Teilmodells existiert ein modellabhängiger Skalierungsfaktor an (mit n = 0, ..., I), mit dem das Gewicht des betreffenden Teilmodells fweiteres_Teilmodelln berücksichtigt werden kann. Zusätzlich existiert auch ein globaler Modelloffset, der als co definiert ist und als Teil von Hyperparametern konfiguriert werden kann. Diese Parameter gehören zu den Modellparametern und beschreiben die Ausgangsnormierung des zu ermittelnden Funktionsmodells. A model-dependent scaling factor a n (where n = 0, ..., I), with which the weight of the relevant part model f weiteres_Teilmodelln can be taken into account exists for each result of a partial model. In addition, there is also a global model offset defined as c o that can be configured as part of hyperparameters. These parameters belong to the model parameters and describe the initial standardization of the function model to be determined.

In 2 ist schematisch der Aufbau eines Steuergeräts 1 dargestellt, mit dem das obige additive datenbasierte Funktionsmodell in besonders effizienter Weise berechnet werden kann. Das Steuergerät 1 dient zum Betreiben eines Motorsystems in einem Kraftfahrzeug. Das Steuergerät 1 umfasst eine Recheneinheit 10, eine Speichereinheit 12, eine Eingangsschnittstelle 11, eine Ausgangsschnittstelle 13, eine DMA-Einheit 14 (DMA = direct memory access) und eine Modellberechnungseinheit 15. In 2 is schematically the structure of a control unit 1 with which the above additive data-based function model can be calculated in a particularly efficient way. The control unit 1 is used to operate an engine system in a motor vehicle. The control unit 1 includes a computing unit 10 , a storage unit 12 , an input interface 11 , an output interface 13 , a DMA unit 14 (DMA = direct memory access) and a model calculation unit 15 ,

Über die Eingangsschnittstelle 11 empfängt das Steuergerät 1 externe Eingangssignale, beispielsweise von Sensoren oder anderen Steuergeräten wie sonstigen Modulen des Motorsystems 1. Die empfangenen Signale umfassen Eingangsgrößen und können neben Sensorsignalen auch Benutzervorgaben angeben. Via the input interface 11 receives the controller 1 external input signals, for example from sensors or other control devices such as other modules of the engine system 1 , The received signals comprise input variables and can also specify user presets in addition to sensor signals.

Das Steuergerät 1 dient zur Ausführung der Steuergerätefunktionen, um abhängig von den Eingangsgrößen, die über die Eingangsschnittstelle 11 empfangen werden, eine oder mehrere Ausgangsgrößen zu berechnen und diese über die Ausgangsschnittstelle 13 auszugeben. Das Steuergerät 1 muss zur Durchführung der Funktionen Strecken- und Systemmodelle berechnen und nutzt dazu eine separate Modellberechnungseinheit 15, die zur Berechnung von datenbasierten Funktionsmodellen ausgebildet ist. Insbesondere ist die Modellberechnungseinheit 15 auf die Berechnung von Exponentialfunktionen spezialisiert, die zur Berechnung von Gaußprozessmodellen benötigt werden.The control unit 1 is used to execute the control unit functions, depending on the input variables, via the input interface 11 to calculate one or more outputs and these via the output interface 13 issue. The control unit 1 must calculate distance and system models to perform the functions using a separate model calculation unit 15 , which is designed to calculate data-based function models. In particular, the model calculation unit 15 specializes in calculating exponential functions needed to calculate Gaussian process models.

In der Speichereinheit 12 sind Daten gespeichert, die für bestimmte Ausgangsgrößen offline, also in Testmessungen, bestimmt wurden und beispielsweise Hyperparameter eines oder mehrerer datenbasierter Funktionsmodelle sowie Stützpunkte (Stützstellendaten) umfassen, die einen Teil der oder alle Trainingsdaten für das betreffende datenbasierte Modell enthalten. Zusätzlich können in der Speichereinheit 12 auch Parameter und Größen abgelegt werden, die von der Recheneinheit 10 empfangen oder berechnet wurden.In the storage unit 12 Data are stored that have been determined offline for certain output quantities, ie in test measurements, and include, for example, hyperparameters of one or more data-based function models and support points (support point data) which contain part or all of the training data for the relevant data-based model. Additionally, in the storage unit 12 Also parameters and sizes are stored by the arithmetic unit 10 received or calculated.

Weiterhin umfasst das Steuergerät 1 die DMA-Einheit 14, die es ermöglicht, dass die Modellberechnungseinheit 15 neben der Recheneinheit 10 direkt auf die Speichereinheit 12 zugreifen kann. Weiterhin kann die DMA-Einheit 14 eine Berechnung eines datenbasierten Modells starten, indem entsprechende Parameter und Stützstellendaten aus der Speichereinheit 12 abgerufen und an die Modellberechnungseinheit 15 weitergeleitet werden.Furthermore, the control unit comprises 1 the DMA unit 14 that makes it possible for the model calculation unit 15 next to the arithmetic unit 10 directly on the storage unit 12 can access. Furthermore, the DMA unit 14 Start a calculation of a data-based model by adding corresponding parameters and node data from the memory unit 12 and to the model calculation unit 15 to get redirected.

Zur Berechnung von datenbasierten Modellen kann vorgesehen sein, dass die Recheneinheit 10 die Hyperparameter und Stützstellendaten (Trainingsdaten) direkt an die Modellberechnungseinheit 15 übermittelt oder in Form eines Zeigers auf einen Speicherbereich der Speichereinheit 12 der Modellberechnungseinheit 15 mitteilt, aus welchem Bereich der Speichereinheit 12 die zur Berechnung des datenbasierten Modells benötigten Hyperparameter und Stützstellendaten (Trainingsdaten) als Konfigurationsdaten abgerufen werden können. Die Modellberechnungseinheit 15 kann dann mithilfe der DMA-Einheit 14 auf die Speichereinheit 12 zugreifen und die Parameter und Stützstellendaten (Trainingsdaten)abrufen. Weiterhin kann die DMA-Einheit 14 ausgebildet sein, um, nachdem ein Funktionswert eines datenbasierten Teilmodells berechnet worden ist, automatisch einen nächsten Satz von Hyperparametern und Stützstellendaten als Konfigurationsdaten in die Modellberechnungseinheit einzulesen. Die aufeinander folgenden Berechnungen werden abgebrochen, sobald eine Stoppbedingung erfüllt ist. For calculating data-based models, it may be provided that the arithmetic unit 10 the hyperparameters and support point data (training data) directly to the model calculation unit 15 transmitted or in the form of a pointer to a storage area of the storage unit 12 the model calculation unit 15 tells from which area of the storage unit 12 the hyperparameters and support point data (training data) needed to calculate the data-based model can be retrieved as configuration data. The model calculation unit 15 can then use the DMA unit 14 on the storage unit 12 access and retrieve the parameters and support point data (training data). Furthermore, the DMA unit 14 be configured to, after a function value of a data-based submodel has been calculated, automatically read a next set of hyperparameters and support point data as configuration data in the model calculation unit. The consecutive calculations are aborted as soon as a stop condition is met.

In 3 ist der Ablauf der Berechnung eines zuvor beschriebenen Teilmodells aus additiv beaufschlagten, datenbasierten Modellen dargestellt. In Schritt S11 weist die Recheneinheit 10 die DMA-Einheit 14 an, sich die Konfigurationsdaten KD zur Berechnung des ersten Teilmodells aus der Speichereinheit 12 abzurufen. Dazu übermittelt die Recheneinheit 10 eine Berechnungsdatenadresse BA, die die Startadresse einer ersten Konfigurationsmappe 21 dargestellt, und eine Startaufforderung an die DMA-Einheit 14, durch die in der Modellberechnungseinheit 15 die Berechnung gestartet wird. In 3 the sequence of calculation of a previously described submodel of additively charged, data-based models is shown. In step S11, the arithmetic unit 10 the DMA unit 14 the configuration data KD for calculating the first submodel from the memory unit 12 retrieve. For this, the arithmetic unit transmits 10 a calculation data address BA, which is the start address of a first configuration folder 21 and a boot request to the DMA unit 14 through which in the model calculation unit 15 the calculation is started.

Wie in 4 schematisch dargestellt, weist die Speichereinheit 12 mehrere Speicherbereiche zum Speichern von Konfigurationsmappen 21 auf. Die Konfigurationsmappen 21 enthalten jeweils Konfigurationsregister 22, die die Hyperparameter und die Stützstellendaten für die zu berechnenden datenbasierten Teilmodelle enthalten, die additiv verbunden werden sollen. Die Konfigurationsmappen 21 sind vorzugsweise unmittelbar in der Berechnungsreihenfolge aneinander angehängt. As in 4 schematically illustrated, the storage unit 12 Multiple storage areas for storing configuration folders 21 on. The configuration folders 21 each contain configuration registers 22 containing the hyperparameters and the support point data for the data-based submodels to be computed to be additively connected. The configuration folders 21 are preferably attached to each other immediately in the order of calculation.

Die erste Konfigurationsmappe 21 stellt einen Speicherbereich in der Speichereinheit 12 dar, in dem in den Konfigurationsregistern 22 die Parameter und Stützstellendaten ten für die Berechnung des ersten datenbasierten Teilmodells abgelegt sind. The first configuration folder 21 represents a storage area in the storage unit 12 in which in the configuration registers 22 the parameters and support point data are stored for the calculation of the first data-based submodel.

Nach der Startaufforderung ruft die DMA-Einheit 14 die Daten aus der ersten Konfigurationsmappe 21 in Schritt S11 ab und übermittelt diese in Schritt S12 an die Modellberechnungseinheit 15.After the startup request, the DMA unit calls 14 the data from the first configuration folder 21 in step S11 and transmits them in step S12 to the model calculation unit 15 ,

Nachdem die Hyperparameter und Stützstellendaten für das erste Teilmodell in die Modellberechnungseinheit 15 übertragen worden sind, wird ein Akkumulator 31 der Modellberechnungseinheit 15 auf den o. a. Modelloffsetwert co zurückgesetzt, der als Teil der Hyperparameter empfangen werden kann, sowie in Schritt S13 ein erster Teilfunktionswert des ersten datenbasierten Teilmodells berechnet und der erste Teilfunktionswert zu dem in dem Akkumulator 31 der Modellberechnungseinheit 15 gespeicherten Wert hinzuaddiert. After the hyperparameters and support point data for the first submodel in the model calculation unit 15 has been transferred, becomes an accumulator 31 the model calculation unit 15 reset to the above model offset value c o , which can be received as part of the hyperparameters, as well as in step S13 calculates a first partial function value of the first data-based partial model and the first partial function value to that in the accumulator 31 the model calculation unit 15 stored value added.

In 5 ist schematisch eine Schaltung zur Verknüpfung der Teilfunktionsergebnisse in dem Akkumulator 31 in der Modellberechnungseinheit 15 dargestellt. Der Akkumulator weist ein Summationsglied 32 und ein Multiplikationsglied 33 auf. Das Multiplikationsglied 33 multipliziert das erhaltene Teilfunktionsergebnis mit einem entsprechenden Gewichtungsfaktor an, der auch als Teil der Hyperparameter vorgegebenen sein kann. Das gewichtete Teilfunktionsergebnis wird nun in dem Summationsglied 32 zu dem vorher berechneten/gespeicherten Wert hinzuaddiert. Mithilfe eines Demultiplexers 34 wird eine Rückkopplung des Ausgangs des Summationsgliedes 32 auf dessen Eingang realisiert. Durch entsprechendes Schalten des Demultiplexers 34 mithilfe eines vorgegebenen Signals "config_set" kann die oben beschriebene Initialisierung mit dem Modelloffsetwert co vorgenommen werden,In 5 schematically is a circuit for linking the partial function results in the accumulator 31 in the model calculation unit 15 shown. The accumulator has a summation element 32 and a multiplier 33 on. The multiplication element 33 multiplies the obtained subfunction result by a corresponding weighting factor a n , which may also be predetermined as part of the hyperparameters. The weighted subfunction result will now be in the summation element 32 added to the previously calculated / stored value. Using a demultiplexer 34 becomes a feedback of the output of the summation element 32 realized on the entrance. By appropriate switching of the demultiplexer 34 using a given signal "config_set", the above-described initialization can be carried out with the model offset value c o ,

In Schritt S14 wird der Abschluss der Durchführung der Berechnung des ersten Teilfunktionswerts an die DMA-Einheit 14 kommuniziert. In step S14, the completion of performing the calculation of the first partial function value to the DMA unit 14 communicated.

Daraufhin fordert in Schritt S15 die DMA-Einheit 14 die Parameter und Stützstellendaten für ein zweites Teilmodell von einer Startadresse einer zweiten Konfigurationsmappe 21 aus der Speichereinheit 14 an. Die Startadresse der zweiten Konfigurationsmappe 21 hängt von der Berechnungsdatenadresse BA ab und wird durch Addition eines vorgegebenen Adressoffsets O, der die Speicherplatzgröße der Konfigurationsmappe 21 angibt, ermittelt. Die Parameter und Stützstellendaten für das zweite Teilmodell werden an die Modellberechnungseinheit 15 übertragen, um das zweite Teilmodell zu berechnen. Subsequently, in step S15, the DMA unit requests 14 the parameters and support point data for a second submodel from a start address of a second configuration booklet 21 from the storage unit 14 at. The start address of the second configuration folder 21 depends on the calculation data address BA and is calculated by adding a predetermined address offset O, which is the memory size of the configuration folder 21 indicates determined. The parameters and support point data for the second submodel are sent to the model calculation unit 15 to calculate the second submodel.

Das zweite Teilmodell wird in Schritt S16 berechnet und anschließend wird der resultierende zweite Teilfunktionswert zu dem in dem Akkumulator gespeicherten Wert aufaddiert. Zuvor kann der zweite Teilfunktionswert, wenn ein entsprechender Parameter in der betreffenden Konfigurationsmappe 21 hinterlegt worden ist, mithilfe eines Gewichtungsfaktors ai, insbesondere multiplikativ beaufschlagt, gewichtet werden. The second partial model is calculated in step S16, and then the resulting second partial functional value is added to the value stored in the accumulator. Previously, the second partial function value may be a corresponding parameter in the configuration folder 21 be weighted using a weighting factor a i , in particular multiplicatively applied.

In Schritt S17 wird der Abschluss der Durchführung der Berechnung des zweiten Teilfunktionswerts an die DMA-Einheit 14 kommuniziert. In step S17, the completion of performing the calculation of the second partial function value to the DMA unit 14 communicated.

Die Schritte S15 bis S17 werden nun so oft wiederholt, wie es der Anzahl an Konfigurationsmappen 21 entspricht, die in der Speichereinheit 12 für die Berechnung eines entsprechenden Teilfunktionswerts abgelegt sind. Steps S15 to S17 are now repeated as many times as the number of configuration folders 21 corresponds to that in the storage unit 12 are stored for the calculation of a corresponding partial function value.

Die Konfigurationsmappe 21, die zur Berechnung des letzten Teilergebnisses dient, kann entsprechend gekennzeichnet sein. Alternativ kann die auf die letzte Berechnung folgende Konfigurationsmappe 21 entsprechend als Stoppkommando konfiguriert sein. Auf diese Weise kann nach der Berechnung des n-ten Teilergebnisses und der additiven Beaufschlagung zu dem in dem Akkumulator gespeicherten Wert in Schritt S18 ein Berechnungsende-Interrupt direkt oder indirekt über die DMA-Einheit 14 an die Recheneinheit 10 übermittelt werden, so dass die Recheneinheit 10 das Endergebnis als Funktionswert der Modellberechnung von der Modellberechnungseinheit 15 aus dem Akkumulator abruft.The configuration folder 21 , which is used to calculate the last partial result, can be marked accordingly. Alternatively, the configuration book following the last calculation can 21 accordingly be configured as a stop command. In this way, after the calculation of the n-th partial result and the additive load to the value stored in the accumulator, in step S18, a calculation end interrupt can directly or indirectly via the DMA unit 14 to the arithmetic unit 10 be transmitted so that the arithmetic unit 10 the final result as the function value of the model calculation by the model calculation unit 15 retrieves from the accumulator.

Das letzte Konfigurationsregister 22 der jeweiligen Konfigurationsmappe 21 kann eine entsprechende Konfiguration für den Start der Berechnung in der Modellberechnungseinheit 15 vorgeben. Auf diese Weise können der Konfigurationsvorgang der Modellberechnungseinheit 15 und der Start des Berechnungsvorgangs über die DMA-Einheit 14 verwaltet und initiiert werden.The last configuration register 22 the respective configuration folder 21 can be a corresponding configuration for the start of the calculation in the model calculation unit 15 pretend. In this way, the configuration process of the model calculation unit 15 and the start of the calculation process via the DMA unit 14 managed and initiated.

Damit die Modellberechnungseinheit 15 nach der Berechnung des letzten Teilfunktionswerts und nach der Ermittlung des Gesamtfunktionswerts in dem Akkumulator diesen zum unmittelbaren Abrufen durch die Recheneinheit 10 bereitstellt, kann die Konfigurationsmappe 21 des n-ten Teilmodells eine Interrupt-Einstellung auf die Recheneinheit 10 einstellen. Alternativ kann die Interrupt-Einstellung auch auf die DMA-Einheit 14 eingestellt sein, die wiederum den Interrupt an die Recheneinheit 10 weiterleitet. So the model calculation unit 15 after the calculation of the last partial function value and after the determination of the total function value in the accumulator, this for immediate retrieval by the arithmetic unit 10 provides the configuration folder 21 of the nth submodel an interrupt setting on the arithmetic unit 10 to adjust. Alternatively, the interrupt setting can also be applied to the DMA unit 14 be set, in turn, the interrupt to the arithmetic unit 10 forwards.

Bei der Übermittlung der Parameter und Stützstellendaten an die Modellberechnungseinheit 15 kann eine an sich für DMA-Einheiten bekannte DMA-Funktion "DMA-Repeat-Copy" verwendet werden, die für das erste Teilmodell von der Recheneinheit 10 und anschließend von dem Berechnungsende-Interrupt der Modellberechnungseinheit 15 getriggert werden kann.When transmitting the parameters and support point data to the model calculation unit 15 For example, a DMA function "DMA repeat copy", which is known per se for DMA units, can be used for the first submodel of the arithmetic unit 10 and then from the calculation end interrupt of the model calculation unit 15 can be triggered.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • DE 102010028259 A1 [0005] DE 102010028259 A1 [0005]

Zitierte Nicht-PatentliteraturCited non-patent literature

  • C. Plagemann, K. Kersting, W. Burgard, "Nonstationary Gaussian Process Regression Using Point Estimates of Local Smoothness", ICML Proceedings, Seiten 204–2116, 2006 [0006] C. Plagemann, K. Kersting, W. Burgard, "Nonstationary Gaussian Process Regression Using Point Estimates of Local Smoothness", ICML Proceedings, pages 204-2116, 2006 [0006]

Claims (14)

Verfahren zum Erstellen eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, mit folgenden Schritten: – Bereitstellen (S1) eines aus einem ersten Trainingsdatensatz ermittelten ersten datenbasierten Teilmodells; – Bereitstellen (S2) eines oder mehrerer weiterer Trainingsdatensätze; wobei für jeden der bereitgestellten weiteren Trainingsdatensätze folgende Schritte durchgeführt werden: Ermitteln (S3) eines Differenz-Trainingsdatensatzes mit Trainingsdaten, die den Differenzen der Ausgangswerte des betreffenden weiteren Trainingsdatensatzes und des Funktionswerts der Summe der Teilfunktionswerte (ferstesTeilmodell (x), fzweitesTeilmodell (x)) des ersten datenbasierten Teilmodells und zuvor ermittelten ein oder mehreren weiteren datenbasierten Teilmodellen an jedem der Messpunkte des betreffenden weiteren Trainingsdatensatzes entsprechen; Ermitteln (S4) eines weiteren datenbasierten Teilmodells aus dem Differenz-Trainingsdatensatz; und – Bilden (S5) einer Summe (f(x)) aus dem ersten datenbasierten Teilmodell und den ermittelten weiteren datenbasierten Teilmodellen, um das datenbasierte Funktionsmodell zu erhalten.Method for creating a data-based function model, in particular a Gaussian process model, having the following steps: - providing (S1) a first data-based submodel determined from a first training data record; - providing (S2) one or more further training data sets; wherein the following steps are performed for each of the further training data records provided: determining (S3) a difference training data set with training data representing the differences of the output values of the respective further training data set and the functional value of the sum of the partial function values (f first sub-model (x), f second sub-model (x )) of the first data-based submodel and previously determined one or more further data-based submodels at each of the measurement points of the respective further training data set; Determining (S4) another data-based submodel from the difference training data set; and - forming (S5) a sum (f (x)) from the first data-based sub-model and the determined further data-based submodels to obtain the data-based functional model. Verfahren nach Anspruch 1, wobei die weiteren Trainingsdatensätze jeweils Trainingsdaten enthalten, die durch ein Klassifikations- oder Clusteringverfahren einem lokalen Effekt zugeordnet werden. The method of claim 1, wherein the further training data sets each contain training data that is assigned to a local effect by a classification or clustering method. Verfahren nach Anspruch 1 oder 2, wobei das weitere datenbasierten Teilmodell aus dem Differenz-Trainingsdatensatz so ermittelt wird, das es im Extrapolationsbereich auf konstant Null zurückgeht.The method of claim 1 or 2, wherein the further data-based sub-model from the difference training data set is determined so that it goes back to constant zero in the extrapolation. Verfahren nach einem der Ansprüche 1 bis 3, wobei die datenbasierten Teilmodelle Gaußprozessmodellen entsprechen und wobei das eine oder die mehreren weiteren datenbasierten Teilmodelle aus dem entsprechenden Differenz-Trainingsdatensatz basierend auf einer Mittelwertsfunktion ermittelt wird, die konstant Null beträgt. The method of claim 1, wherein the data-based submodels correspond to Gaussian process models, and wherein the one or more other data-based submodels are determined from the corresponding difference training data set based on an averaging function that is constantly zero. Verfahren zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, in einem Steuergerät (1), das eine Recheneinheit (10) und einer separaten Modellberechnungseinheit (15) aufweist, wobei das datenbasierte Funktionsmodell mehrere Teilmodelle aufweist, mit folgenden Schritten: – Bereitstellen von Eingangsdaten an die Modellberechnungseinheit (15); – Übermitteln einer Berechnungsadresse, die eine Adresse von ersten Konfigurationsdaten in einer Speichereinheit angibt, an eine DMA-Einheit (14); – Abrufen der ersten Konfigurationsdaten, die Parameter und Stützstellendaten zur Berechnung eines ersten Teilmodells enthalten, aus der Speichereinheit (12) und Übermitteln der ersten Konfigurationsdaten an die Modellberechnungseinheit (15); – Ermitteln eines ersten Teilfunktionswerts des ersten Teilmodells basierend auf den Eingangsdaten; und – Speichern des ersten Teilfunktionswerts in der Modellberechnungseinheit (15); wobei folgende Schritte wiederholt durchgeführt werden, bis eine Stoppbedingung vorliegt: • Abrufen von weiteren Konfigurationsdaten, die Parameter und Stützstellendaten zur Berechnung eines weiteren Teilmodells enthalten aus der Speichereinheit (12) und Übermitteln der betreffenden weiteren Konfigurationsdaten an die Modellberechnungseinheit (15); • Ermitteln eines weiteren Teilfunktionswerts des weiteren Teilmodells basierend auf den Eingangsdaten; und • Addieren des weiteren Teilfunktionswerts zu dem in der Modellberechnungseinheit gespeicherten WertMethod for calculating a function value of a data-based function model, in particular a Gaussian process model, in a control unit ( 1 ), which is a computing unit ( 10 ) and a separate model calculation unit ( 15 ), wherein the data-based function model comprises a plurality of submodels, comprising the following steps: - providing input data to the model calculation unit ( 15 ); Transmitting a calculation address, which specifies an address of first configuration data in a memory unit, to a DMA unit ( 14 ); Retrieving the first configuration data containing parameters and support point data for calculating a first partial model from the memory unit ( 12 ) and transmitting the first configuration data to the model calculation unit ( 15 ); Determining a first partial function value of the first partial model based on the input data; and storing the first partial function value in the model calculation unit ( 15 ); wherein the following steps are carried out repeatedly until a stop condition exists: • retrieval of further configuration data, the parameters and support point data for calculating a further submodel contain from the memory unit ( 12 ) and transmitting the respective further configuration data to the model calculation unit ( 15 ); Determining a further partial function value of the further partial model based on the input data; and adding the further partial function value to the value stored in the model calculation unit Verfahren nach Anspruch 5, wobei die weiteren Konfigurationsdaten aus einem Speicherbereich (21) abgerufen werden, der von der Berechnungsadresse abhängt, insbesondere durch Beaufschlagen der Berechnungsadresse mit einem vorgegebenen Adressoffset. The method of claim 5, wherein the further configuration data is from a memory area ( 21 ), which depends on the calculation address, in particular by charging the calculation address with a predetermined address offset. Verfahren nach Anspruch 6, wobei die Stoppbedingung durch die abgerufenen weiteren Konfigurationsdaten angegeben wird. The method of claim 6, wherein the stop condition is indicated by the retrieved further configuration data. Verfahren nach Anspruch 7, wobei die Stoppbedingung vorgibt, dass die Recheneinheit (10) den in der Modellberechnungseinheit (15) gespeicherten Wert als Funktionswert eines datenbasierten Funktionsmodells angibt. Method according to claim 7, wherein the stop condition specifies that the arithmetic unit ( 10 ) in the model calculation unit ( 15 ) indicates the value stored as the function value of a data-based function model. Verfahren nach einem der Ansprüche 5 bis 8, wobei das Abrufen der weiteren Konfigurationsdaten aus der Speichereinheit (12), das Übermitteln der betreffenden weiteren Konfigurationsdaten an die Modellberechnungseinheit (15) und das Starten des Ermittelns des weiteren Teilfunktionswerts des weiteren Teilmodells durch die DMA-Einheit (14) durchgeführt wird. Method according to one of claims 5 to 8, wherein the retrieval of the further configuration data from the memory unit ( 12 ), the transmission of the relevant further configuration data to the Model calculation unit ( 15 ) and starting the determination of the further partial function value of the further partial model by the DMA unit ( 14 ) is carried out. Vorrichtung, insbesondere Recheneinheit, zum Erstellen eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, wobei die Vorrichtung ausgebildet ist, um: – ein aus einem ersten Trainingsdatensatz ermitteltes erstes datenbasiertes Teilmodell bereitzustellen; und – um einen oder mehrere weitere Trainingsdatensätze bereitzustellen; wobei die Vorrichtung weiterhin ausgebildet ist, um für jeden der bereitgestellten weiteren Trainingsdatensätze folgende Schritte durchzuführen: Ermitteln eines Differenz-Trainingsdatensatzes mit Trainingsdaten, die Differenzen der Ausgangswerte des betreffenden weiteren Trainingsdatensatzes und des Funktionswerts der Summe der Teilfunktionswerte des ersten datenbasierten Teilmodells und der zuvor ermittelten weiteren datenbasierten Teilmodelle an jedem der Messpunkte des betreffenden weiteren Trainingsdatensatzes entsprechen; Ermitteln eines weiteren datenbasierten Teilmodells aus dem Differenz-Trainingsdatensatz; und wobei die Vorrichtung ausgebildet ist, um eine Summe aus dem ersten datenbasierten Teilmodell und den ermittelten weiteren datenbasierten Teilmodellen zu bilden. Device, in particular a computing unit, for creating a data-based function model, in particular a Gaussian process model, wherein the device is designed to: To provide a first data-based submodel determined from a first training data set; and To provide one or more further training records; wherein the device is further configured to perform the following steps for each of the further training data records provided: Determining a difference training data set with training data corresponding to differences in the output values of the respective further training data set and the functional value of the sum of the partial function values of the first data-based submodel and the previously determined further data-based submodels at each of the measurement points of the respective further training data set; Determining another data-based submodel from the difference training data set; and wherein the device is configured to form a sum of the first data-based submodel and the determined further data-based submodels. Steuergerät zum Berechnen eines Funktionswerts eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, wobei das datenbasierte Funktionsmodell mehrere Teilmodelle aufweist, umfassend: – eine Speichereinheit (12) zum Speichern von ersten Konfigurationsdaten, die Parameter und Stützstellendaten zur Berechnung eines ersten Teilmodells enthalten, und von weiteren Konfigurationsdaten, die Parameter und Stützstellendaten zur Berechnung eines oder mehrerer weiterer Teilmodelle enthalten; – eine Recheneinheit (10) zum Übermitteln einer Berechnungsadresse, die eine Adresse von ersten Konfigurationsdaten in der Speichereinheit (10) angibt, an eine DMA-Einheit (14); – eine separate Modellberechnungseinheit (15), um einen Teilfunktionswert eines bereitgestellten Teilmodells basierend auf den Eingangsdaten zu ermitteln und den Teilfunktionswert auf einen in der Modellberechnungseinheit (15) gespeicherten Wert zu addieren; und – die DMA-Einheit (14), die ausgebildet ist, um Konfigurationsdaten aus der Speichereinheit (12) abzurufen und an die Modellberechnungseinheit (15) zu übermitteln.Control unit for calculating a function value of a data-based function model, in particular a Gaussian process model, wherein the data-based function model comprises a plurality of submodels, comprising: 12 ) for storing first configuration data containing parameters and node data for calculating a first sub-model, and further configuration data including parameters and node data for computing one or more further sub-models; A computing unit ( 10 ) for transmitting a calculation address that contains an address of first configuration data in the memory unit ( 10 ) indicates to a DMA unit ( 14 ); A separate model calculation unit ( 15 ) to determine a partial function value of a provided partial model based on the input data and to apply the partial function value to one in the model calculation unit ( 15 ) added value; and the DMA unit ( 14 ), which is designed to store configuration data from the memory unit ( 12 ) and to the model calculation unit ( 15 ). Computerprogramm, welches dazu eingerichtet ist, alle Schritte eines Verfahrens nach einem der Ansprüche 1 bis 4 auszuführen.Computer program adapted to carry out all the steps of a method according to one of Claims 1 to 4. Elektronisches Speichermedium, auf welchem ein Computerprogramm nach Anspruch 12 gespeichert ist.An electronic storage medium on which a computer program according to claim 12 is stored. Elektronisches Steuergerät, welches ein elektronisches Speichermedium nach Anspruch 13 aufweist.An electronic control device comprising an electronic storage medium according to claim 13.
DE102013206292.3A 2013-04-10 2013-04-10 Method and device for creating a data-based function model Pending DE102013206292A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102013206292.3A DE102013206292A1 (en) 2013-04-10 2013-04-10 Method and device for creating a data-based function model
US14/247,104 US9709967B2 (en) 2013-04-10 2014-04-07 Method and device for creating a data-based function model
CN201410140034.0A CN104102129A (en) 2013-04-10 2014-04-09 Method and device for creating a data-based function model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013206292.3A DE102013206292A1 (en) 2013-04-10 2013-04-10 Method and device for creating a data-based function model

Publications (1)

Publication Number Publication Date
DE102013206292A1 true DE102013206292A1 (en) 2014-10-16

Family

ID=51618295

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013206292.3A Pending DE102013206292A1 (en) 2013-04-10 2013-04-10 Method and device for creating a data-based function model

Country Status (3)

Country Link
US (1) US9709967B2 (en)
CN (1) CN104102129A (en)
DE (1) DE102013206292A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016216945A1 (en) 2016-09-07 2018-03-08 Robert Bosch Gmbh A method and apparatus for performing a function based on a model value of a data-based function model based on a model validity indication
DE102016217915A1 (en) 2016-09-19 2018-03-22 Robert Bosch Gmbh Methods and devices Determination of the benefits achieved by convoy cruises
DE102020211666A1 (en) 2020-09-17 2022-03-17 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for performing a screwing process using methods of artificial intelligence

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013227183A1 (en) * 2013-12-27 2015-07-02 Robert Bosch Gmbh Method and apparatus for providing a sparse Gaussian process model for calculation in an engine control unit
KR102601848B1 (en) 2015-11-25 2023-11-13 삼성전자주식회사 Device and method of data recognition model construction, and data recognition devicce

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010028259A1 (en) 2010-04-27 2011-10-27 Robert Bosch Gmbh A microcontroller having a computing unit and a logic circuit and method for performing calculations by a microcontroller for control or in-vehicle control

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0713611A (en) * 1993-06-24 1995-01-17 Hitachi Ltd Device and method for evaluating process model
US5691896A (en) * 1995-08-15 1997-11-25 Rosemount, Inc. Field based process control system with auto-tuning
DE19537010C2 (en) * 1995-10-04 1997-10-02 Siemens Ag Learning method and arrangement for emulating a dynamic process
US7092863B2 (en) * 2000-12-26 2006-08-15 Insyst Ltd. Model predictive control (MPC) system using DOE based model
US8560283B2 (en) * 2009-07-10 2013-10-15 Emerson Process Management Power And Water Solutions, Inc. Methods and apparatus to compensate first principle-based simulation models
DE102010028266A1 (en) 2010-04-27 2011-10-27 Robert Bosch Gmbh Control device and method for calculating an output for a controller
US8924453B2 (en) * 2011-12-19 2014-12-30 Spansion Llc Arithmetic logic unit architecture
US8832006B2 (en) * 2012-02-08 2014-09-09 Nec Corporation Discriminant model learning device, method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010028259A1 (en) 2010-04-27 2011-10-27 Robert Bosch Gmbh A microcontroller having a computing unit and a logic circuit and method for performing calculations by a microcontroller for control or in-vehicle control

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
C. Plagemann, K. Kersting, W. Burgard, "Nonstationary Gaussian Process Regression Using Point Estimates of Local Smoothness", ICML Proceedings, Seiten 204-2116, 2006

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016216945A1 (en) 2016-09-07 2018-03-08 Robert Bosch Gmbh A method and apparatus for performing a function based on a model value of a data-based function model based on a model validity indication
DE102016217915A1 (en) 2016-09-19 2018-03-22 Robert Bosch Gmbh Methods and devices Determination of the benefits achieved by convoy cruises
WO2018050356A1 (en) 2016-09-19 2018-03-22 Robert Bosch Gmbh Method and devices for determining the benefit obtained from traveling in vehicle convoys
DE102020211666A1 (en) 2020-09-17 2022-03-17 Robert Bosch Gesellschaft mit beschränkter Haftung Method and device for performing a screwing process using methods of artificial intelligence

Also Published As

Publication number Publication date
US20140309754A1 (en) 2014-10-16
CN104102129A (en) 2014-10-15
US9709967B2 (en) 2017-07-18

Similar Documents

Publication Publication Date Title
DE102013213420A1 (en) Model calculation unit, controller and method for computing a data-based function model
DE102014207683A1 (en) Method and device for creating a data-based function model
DE102013206292A1 (en) Method and device for creating a data-based function model
EP3398092A1 (en) Method for configuring a co-simulation for a total system
EP2442248A1 (en) Coupling method for non-iterative co-simulation
DE102018128890A1 (en) Method and test device for testing a driver assistance system for a motor vehicle
DE102013206264A1 (en) Method and apparatus for performing a calculation of a data-based function model
DE102013212842A1 (en) Method for operating a control device and control device with a model calculation unit
DE102013206308A1 (en) Method and system for adapting model parameters of a function model implemented in a control unit of a motor vehicle
DE102014225039A1 (en) Method and apparatus for providing sparse Gaussian process models for calculation in an engine control unit
DE102017213510A1 (en) Method and apparatus for generating a machine learning system, and virtual sensor device
DE102013206304A1 (en) Method and apparatus for creating a non-parametric, data-based function model
DE102013227183A1 (en) Method and apparatus for providing a sparse Gaussian process model for calculation in an engine control unit
DE102013206291A1 (en) Method and apparatus for creating a non-parametric, data-based function model
DE102015208513A1 (en) Method and apparatus for calculating a data-based multi-output functional model
DE102013212889A1 (en) Method and device for creating a control for a physical unit
DE102015221819A1 (en) Method and device for adapting a data-based function model for calculation in a model calculation unit
DE102012016610B4 (en) Real-time circuit simulation
DE112019006317T5 (en) IMPLEMENTATION OF A MULTI-LAYER NEURAL NETWORK USING A SINGLE PHYSICAL LAYER OF ANALOG NEURONS
DE102018002029A1 (en) Method for determining a prediction for a pose of a vehicle for driver assistance systems
DE102014208379A1 (en) Method and device for determining a function value of a data-based function model inverted relative to an input variable
DE102013214967A1 (en) Method and device for adapting a data-based function model
DE102013224694A1 (en) Method and device for determining a gradient of a data-based function model
DE102015203771A1 (en) Method and device for evaluating a data-based function model
DE102017204173A1 (en) Method and device for determining a customized data-based function model for the calculation of a model value with a modified input variable vector

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication