DE102013213420A1 - Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells - Google Patents

Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells Download PDF

Info

Publication number
DE102013213420A1
DE102013213420A1 DE102013213420.7A DE102013213420A DE102013213420A1 DE 102013213420 A1 DE102013213420 A1 DE 102013213420A1 DE 102013213420 A DE102013213420 A DE 102013213420A DE 102013213420 A1 DE102013213420 A1 DE 102013213420A1
Authority
DE
Germany
Prior art keywords
unit
model
calculation
data
multiplication
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
DE102013213420.7A
Other languages
English (en)
Inventor
Felix Streichert
Anne von Vietighoff
Tobias Lang
Heiner Markert
Andre GUNTORO
Axel Aue
Wolfgang Fischer
Christian Fleck
Michael Saetzler
Michael Hanselmann
Ulrich Schulmeister
Nico Bannow
Matthias Schreiber
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 DE102013213420.7A priority Critical patent/DE102013213420A1/de
Priority to KR1020140041361A priority patent/KR102215271B1/ko
Priority to US14/247,136 priority patent/US10146248B2/en
Priority to FR1453096A priority patent/FR3004567B1/fr
Priority to JP2014079820A priority patent/JP2014206975A/ja
Priority to CN201410140041.0A priority patent/CN104102137A/zh
Publication of DE102013213420A1 publication Critical patent/DE102013213420A1/de
Priority to JP2019033450A priority patent/JP2019145111A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/02Digital function generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/5443Sum of products
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Logic Circuits (AREA)
  • Complex Calculations (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Electrotherapy Devices (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)

Abstract

Die Erfindung betrifft eine Modellberechnungseinheit (3) zur Berechnung eines datenbasierten Funktionsmodells in einem Steuergerät (1) mit einem Rechenkern (31), wobei der Rechenkern (31) umfasst: – einer Multiplikationseinheit (43) zur hardwaremäßigen Durchführung einer Multiplikation; – einer Additionseinheit (42) zur hardwaremäßigen Durchführung einer Addition; – einer Exponentialfunktionseinheit (41) zur hardwaremäßigen Berechnung einer Exponentialfunktion; – einem Speicher, insbesondere einem Konfigurationsregister (45), zum Speichern von Hyperparametern und Stützstellendaten des zu berechnenden datenbasierten Funktionsmodells; und – einer Logikschaltung (46) zum hardwaremäßigen Steuern des Berechnungsablaufs in der Multiplikationseinheit (43), der Additionseinheit (42), der Exponentialfunktionseinheit (41) und dem Speicher, insbesondere dem Konfigurationsregister (45), um das datenbasierte Funktionsmodell zu ermitteln.

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft Modellberechnungseinheiten für Steuergeräte, in denen datenbasierte Funktionsmodelle zur hardwaremäßigen Durchführung von Funktionen, insbesondere zur Steuerung von Motorsystemen, implementiert sind. Die vorliegende Erfindung betrifft weiterhin Verfahren zur Berechnung von datenbasierten Funktionsmodellen in solchen Modellberechnungseinheiten.
  • Stand der Technik
  • Aus dem Stand der Technik sind Steuergeräte mit einer Hauptrecheneinheit und einer separaten Modellberechnungseinheit zur Berechnung von datenbasierten Funktionsmodellen bekannt. So zeigt beispielsweise die Druckschrift DE 10 2010 028 266 A1 ein Steuergerät mit einer zusätzlichen Logikschaltung als Modellberechnungseinheit, die hardwaremäßig für die Berechnung von Exponentialfunktionen ausgebildet ist. Dies ermöglicht es, Bayes-Regressionsverfahren, die insbesondere für die Berechnung von Gauß-Prozessmodellen benötigt werden, in einer Hardware-Einheit zu unterstützen.
  • Die Modellberechnungseinheit ist insgesamt ausgelegt, mathematische Prozesse zur Berechnung des datenbasierten Funktionsmodells basierend auf Parametern und Stützstellen bzw. Trainingsdaten durchzuführen. Insbesondere ist die Modellberechnungseinheit hardwaremäßig zur effizienten Berechnung von Exponentialfunktionen ausgebildet, so dass es ermöglicht wird, Gauß-Prozessmodelle mit einer höheren Rechengeschwindigkeit zu rechnen als dies in der Hauptrecheneinheit möglich ist. In der Regel werden Konfigurationsdaten, die Parameter und Stützstellen zur Berechnung des datenbasierten Funktionsmodells enthalten, vor der Berechnung in der Modellberechnungseinheit in diese eingelesen und anschließend die auf den Konfigurationsdaten basierenden Berechnungen durch die Hardware der Modellberechnungseinheit vorgenommen. Die bisherige Implementierung der Hardware einer solchen Modellberechnungseinheit kann jedoch im Fall von ungünstigen Konfigurationsdaten zu numerischen Problemen bei der Berechnung führen, so dass sich nicht alle offline bestimmten datenbasierten Funktionsmodelle stabil auf der Modellberechnungseinheit berechnen lassen.
  • Offenbarung der Erfindung
  • Erfindungsgemäß sind die Modellberechnungseinheit zur Berechnung eines datenbasierten Funktionsmodells in einem Steuergerät mit einem Rechenkern gemäß Anspruch 1 sowie das Steuergerät und das Verfahren zur Berechnung eines datenbasierten Funktionsmodells gemäß den nebengeordneten Ansprüchen vorgesehen.
  • Weitere vorteilhafte Ausgestaltungen der vorliegenden Erfindung sind in den abhängigen Ansprüchen angegeben.
  • Gemäß einem ersten Aspekt ist eine Modellberechnungseinheit als Hardwareeinheit zur Berechnung eines datenbasierten Funktionsmodells in einem Steuergerät, wobei die Modellberechnungseinheit ein Rechenkern aufweist, wobei der Rechenkern umfasst:
    • – eine Multiplikationseinheit zur hardwaremäßigen Durchführung einer Multiplikation;
    • – eine Additionseinheit zur hardwaremäßigen Durchführung einer Addition;
    • – eine Exponentialfunktionseinheit zum hardwaremäßigen Berechnen einer Exponentialfunktion;
    • – ein Konfigurationsregister oder Speicher zum Speichern von Hyperparametern und Stützstellendaten des zu berechnenden datenbasierten Funktionsmodells; und
    • – eine Logikschaltung zum hardwaremäßigen Steuern des Berechnungsablaufs in der Multiplikationseinheit, der Additionseinheit, der Exponentialfunktionseinheit und dem Konfigurationsregister oder Speicher, um das datenbasierte Funktionsmodell zu ermitteln.
  • Bei der Modellberechnungseinheit handelt es sich um eine Logikeinheit, die eine Hardware enthält, die zur hardwaremäßigen Durchführung bestimmter Berechnungen für datenbasierte Funktionsmodelle insbesondere zur gemeinsamen Integration mit einem Rechenkern ausgebildet ist. Mithilfe dieser Logikeinheit wird ein vorab trainiertes und auf der Hardware gespeichertes Berechnungsverfahren für ein Bayes-Regressionsmodell online durchgeführt. Die Verwendung eines Gauß-Prozessmodells als datenbasiertes Funktionsmodell ermöglicht es, insbesondere durch Transformation der Eingangsnormierung eines Testpunkts, bei dem ein Modellwert ermittelt werden soll, sowie durch Transformation des Exponentialterms den Modellwert des Gauß-Prozessmodells als eine Folge von Additionen und Multiplikationen sowie einer Exponentialfunktion zu ermitteln.
  • Insbesondere kann die Modellberechnungseinheit ausschließlich aus den obigen Einheiten bestehen.
  • In Hardware ist es möglich, einen Hardware-Funktionsblock, einen so genannten MAC-Block (MAC = Multiplier-Accumulator, auch deutsch: MAK = Multiplikationsakkumulator) für Integer-Berechnungen oder FMA-Block (FMA: fused multiply-add, auch als FMAC-Block bezeichnet (FMAC: fused multiply accumulate) für Fließkomma-Berechnungen, zu realisieren. Dieser Hardware-Funktionsblock wird in dieser Beschreibung für Integer als auch Fließkomma-Berechnungen als MAC-Einheit bezeichnet. Die MAC-Einheit kann die Operation a + b × c durch direkte Realisierung in Hardware besonders effizient und somit schnell ausführen. Dies ist unter Umständen innerhalb weniger Taktzyklen, und in Spezialfällen auch innerhalb eines Taktzyklus, möglich.
  • Durch das separate Vorsehen einer derartigen Modellberechnungseinheit mit einer in Hardware realisierten MAC-Einheit und einer in Hardware realisierten Exponentialfunktionseinheit zur ausschließlichen Berechnung einer Exponentialfunktion ist es möglich, eine besonders effiziente Logikschaltung zur Verfügung zu stellen, die als Modellberechnungseinheit integriert mit einem Rechenkern (der zur Ausführung von Software geeignet ist) in einem Steuergerät zum Ermitteln von Modellwerten für datenbasierte Funktionsmodelle, insbesondere Gauß-Prozessmodelle, Verwendung finden kann.
  • Weiterhin können die Multiplikationseinheit und die Additionseinheit separat oder kombiniert in einer MAC-Einheit realisiert sein.
  • Gemäß einer Ausführungsform können mehrere Rechenkerne vorgesehen sein, wobei mehrere der mehreren Rechenkerne eine gemeinsame Exponentialfunktionseinheit und/oder eine gemeinsame MAC-Einheit aufweisen. Alternativ kann auch vorgesehen sein, dass jeder Rechenkern eine eigene Exponentialfunktionseinheit und eine eigene MAC-Einheit aufweist.
  • Es kann vorgesehen sein, dass das Funktionsmodell einen Modellwert mehreren Eingangsgrößen zuweist, wobei der Berechnungsablauf ausgebildet ist, um jeweils für eine Berechnung einer Eingangsnormierung der Eingangsgrößen mithilfe der MAC-Einheit eine Multiplikation und eine Addition sowie für eine Berechnung einer Ausgangsnormierung der Ausgangsgröße mithilfe der MAC-Einheit eine Multiplikation und eine Addition durchzuführen.
  • Gemäß einer Ausführungsform kann das Funktionsmodell die Berechnung eines Terms ((x)i – u)2 vorsehen, wobei xi den Stützstellen des datenbasierten Funktionsmodells und u den Eingangsgrößen entsprechen, wobei die Logikschaltung die Additionseinheit und Multiplikationseinheit bzw. die MAC-Schaltung ansteuert, um die Berechnung des Terms durch eine Additions- und eine Multiplikationseinheit oder durch eine MAC-Einheit durchzuführen.
  • Gemäß einem weiteren Aspekt ist ein Steuergerät, insbesondere für ein Motorsystem mit einem Verbrennungsmotor, vorgesehen, das eine Recheneinheit und die obige Modellberechnungseinheit umfasst.
  • Gemäß einem weiteren Aspekt ist ein Verfahren zur Berechnung eines datenbasierten Funktionsmodells, insbesondere eines Gaußprozessmodells, in der obigen Modellberechnungseinheit vorgesehen, wobei das Funktionsmodell durch nacheinander durchgeführte Rechenschritte vollständig berechnet wird, wobei die Rechenschritte nur eine kombinierte Multiplikation und Addition sowie eine Berechnung einer Exponentialfunktion umfassen.
  • Kurzbeschreibung der Zeichnungen
  • Bevorzugte Ausführungsformen der vorliegenden Erfindung werden nachfolgend anhand der beigefügten Zeichnungen näher erläutert. Es zeigen:
  • 1 eine schematische Darstellung einer Hardwarearchitektur für ein Steuergerät zum Steuern eines physikalischen Systems;
  • 2 eine Blockdarstellung zur Ermittlung des Modellwerts für ein Gauß-Prozessmodell für einen D-dimensionalen Eingangswert eines Eingangsgrößenvektors;
  • 3 eine detailliertere Darstellung eines Rechenkerns in einer Modellberechnungseinheit des Steuergeräts;
  • 4 eine schematische Darstellung einer Hardwarearchitektur für zwei Rechenkerne, die gemeinsam eine MAC-Einheit und eine Exponentialfunktionseinheit nutzen; und
  • 5 eine schematische Darstellung einer weiteren Hardwarearchitektur für zwei Rechenkerne mit separaten MAC-Einheiten und einer gemeinsamen Exponentialfunktionseinheit.
  • Beschreibung von Ausführungsformen
  • 1 zeigt eine schematische Darstellung einer Hardwarearchitektur für ein integriertes Steuergerät 1, in dem eine Recheneinheit 2 und eine Modellberechnungseinheit 3 zur hardwaremäßigen Berechnung eines datenbasierten Funktionsmodells in integrierter Weise vorgesehen sind. Die Recheneinheit 2 und die Modellberechnungseinheit 3 stehen über einen Systembus 4 miteinander in Kommunikationsverbindung.
  • Grundsätzlich weist die Modellberechnungseinheit 3 lediglich Hardware (hartverdrahtet) auf und ist vorzugsweise nicht dazu ausgebildet, Softwarecode auszuführen. Aus diesem Grunde ist es auch nicht notwendig, in der Modellberechnungseinheit 3 einen Prozessor vorzusehen. Dies ermöglicht eine ressourcenoptimierte Realisierung einer solchen Modellberechnungseinheit 3.
  • Die Modellberechnungseinheit 3 kann einen oder mehrere Rechenkerne 31, einen internen Speicher 32 und eine DMA-Einheit 33 (DMA = Direct Memory Access) umfassen. Die Rechenkerne 31, der interne Speicher 32 und die DMA-Einheit 33 stehen über eine interne Kommunikationsverbindung 34 miteinander in Verbindung.
  • Die Verwendung von nicht parametrischen, datenbasierten Funktionsmodellen basiert auf einem Bayes-Regressionsverfahren. Die Grundlagen der Bayes-Regression sind beispielsweise in C. E. Rasmusen et al., „Gaussian Processes for Machine Learning", MIT Press 2006, beschrieben. Die Bayes-Regression ist ein datenbasiertes Verfahren, das auf einem Modell basiert. Zur Erstellung des Modells sind Messpunkte von Trainingsdaten sowie zugehörige Ausgangsdaten einer Ausgangsgröße erforderlich. Das Modell wird erstellt, indem Stützstellendaten die den Trainingsdaten ganz oder teilweise entsprechen oder aus diesen generiert werden, verwendet werden. Weiterhin werden abstrakte Hyperparameter bestimmt, die den Raum der Modellfunktionen parametrisieren und effektiv den Einfluss der einzelnen Messpunkte der Trainingsdaten auf die spätere Modellvorhersage gewichten.
  • Die abstrakten Hyperparameter werden durch ein Optimierungsverfahren bestimmt. Eine Möglichkeit für ein solches Optimierungsverfahren besteht in einer Optimierung einer Marginal Likelihood p(Y|H,X). Die Marginal Likelihood p(Y|H,X) beschreibt die Plausibilität der gemessenen y-Werte der Trainingsdaten, dargestellt als Vektor Y, gegeben die Modellparameter H und die x-Werte der Trainingsdaten. Im Modelltraining wird p(Y|H,X) maximiert, indem geeignete Hyperparameter gesucht werden, mit denen die Daten besonders gut erklärt werden können. Zur Vereinfachung der Berechnung wird der Logarithmus von p(Y|H,X) maximiert, da der Logarithmus die Stetigkeit der Plausibilitätsfunktion nicht verändert.
  • Das Optimierungsverfahren sorgt dabei automatisch für einen Trade-off zwischen Modellkomplexität und Abbildungsgenauigkeit des Modells. Zwar kann mit steigender Modellkomplexität eine beliebig hohe Abbildungsgenauigkeit der Trainingsdaten erreicht werden, dies kann jedoch gleichzeitig zu einer Überanpassung des Modells an die Trainingsdaten und damit zu einer schlechteren Generalisierungseigenschaft führen.
  • Die Berechnung des Gauß-Prozessmodells erfolgt entsprechend den Schritten, die in 2 schematisch dargestellt sind. Die Eingangswerte für einen Testpunkt u (Eingangsgrößenvektor) werden zunächst normiert, und zwar entsprechend der folgenden Formel:
    Figure DE102013213420A1_0002
  • Dabei entsprechen mx der Mittelwertfunktion bezüglich eines Mittelwerts der Eingangswerte der Stützstellendaten und sy der Varianz der Eingangswerte der Stützstellendaten.
  • Als Ergebnis der Erstellung des nicht parametrischen Funktionsmodells erhält man:
    Figure DE102013213420A1_0003
  • Der so ermittelte Modellwert v wird mithilfe einer Ausgangsnormierung normiert, entsprechend der Formel: v ~ = vsy + my
  • Dabei entsprechen v einem normierten Modellwert (Ausgangswert) an einem normierten Testpunkt u (Eingangsgrößenvektor der Dimension D), v ~ einem (nicht normierten) Modellwert (Ausgangswert) an einem (nicht normierten) Testpunkt u ~ (Eingangsgrößenvektor der Dimension D), xi einer Stützstelle der Stützstellendaten, N der Anzahl der Stützstellen der Stützstellendaten, D der Dimension des Eingangsdaten-/Trainingsdaten-/Stützstellendatenraums, sowie ld und σf den Hyperparametern aus dem Modelltraining. Der Vektor Qy ist eine aus den Hyperparametern und den Trainingsdaten berechnete Größe. Weiterhin entsprechen my der Mittelwertfunktion bezüglich eines Mittelwerts der Ausgangswerte der Stützstellendaten und sy der Varianz der Ausgangswerte der Stützstellendaten.
  • Die Eingangs- und Ausgangsnormierung erfolgt, da die Berechnung des Gauß-Prozessmodells typischerweise in einem normierten Raum stattfindet.
  • Zum Start einer Berechnung weist die Recheneinheit 2 die DMA-Einheit 33 an, die das zu berechnende Funktionsmodell betreffenden Konfigurationsdaten aus dem Speicher 5 in den internen Speicher 32 zu laden und in dem Rechenkern 31 die Berechnung zu starten, die mithilfe der Konfigurationsdaten durchgeführt wird. Die Konfigurationsdaten umfassen die Hyperparameter eines Gauß-Prozessmodells sowie Stützstellendaten.
  • Die sich aus 2 ergebende Verarbeitungskette ist für eine numerische Berechnung ungünstig und kann sich im vorliegenden Fall unter Umständen nicht stabil in der Modellberechnungseinheit 3 berechnen lassen. Es ist daher vorgesehen, den Rechenkern 31 so auszubilden, dass die Berechnungen in einfacherer Weise schnell und/oder numerisch stabil ausgeführt werden können. Dazu wird die Eingangsnormierung ersetzt durch:
    Figure DE102013213420A1_0004
  • Weiterhin kann die Vorhersage des Bayes-Regressionsmodells ersetzt werden durch:
    Figure DE102013213420A1_0005
  • Die innere Summenschleife summiert die Produkte von mit den Quadratdifferenzen zwischen den Stützstellendaten und dem Testpunkt u online. Die Length-Scales sind typischerweise für jedes Modell verschieden. Die Transformation der Eingangsnormierung und die Umformulierung des Bayes-Regressionsmodells führen dazu, dass der Rechenkern 31 wiederholt Operationen der Form a + b × c zur Berechnung des Modellwerts verwenden kann.
  • Bei einer Hardwareimplementierung ist eine Berechnung der Form a + b × c in besonders effizienter Weise mithilfe einer so genannten MAC-Einheit möglich. Eine solche MAC-Einheit lässt sich in Hardware realisieren, um innerhalb weniger Taktzyklen eine entsprechende Berechnung durchführen zu können. Unter Umständen kann die Berechnung sogar innerhalb eines Taktzyklus erfolgen. Weiterhin führt die oben angegebene Transformation und Umformung zu einer numerisch stabilen Berechnung des Modellwerts in dem Rechenkern 31. Die Berechnung wird in Hardware realisiert, wie es in dem beigefügten Pseudo-C-Code angegeben ist.
    Figure DE102013213420A1_0006
    Figure DE102013213420A1_0007
  • Es ist darauf zu achten, dass die Length-Scale l'd immer positiv ist, da die Exponentialfunktion nur im negativen Eingangsbereich numerisch genau sein und daher entsprechend optimiert werden kann, d. h.
    Figure DE102013213420A1_0008
  • Weiterhin kann der Gewichtungsfaktor ½ in der Length-Scale l'd = ½ld auch flächengünstig in Hardware implementiert werden, so dass die gespeicherte Length-Scale nur in reziproker Form gespeichert werden kann.
  • Durch die obige Umformulierung kann der Rechenprozess, der in 2 dargestellt ist, mit folgenden Einheiten in dem Rechenkern 31, der detaillierter in 3 dargestellt ist, durchgeführt werden. Der Rechenkern 31 umfasst dazu eine Exponentialfunktionseinheit 41, eine Multiplikationseinheit 43, eine Additionseinheit 42 oder deren bekannte zusammengefügte Form einer MAC-Einheit 44. Um die Flexibilität der Hardware gewährleisten zu können, sind die benötigten Parameter, nämlich der Testpunkt u, die Stützstellendaten xi, die Anzahl der Dimensionen D, die Anzahl der Trainingsdaten N, konfigurierbar. Diese sind in einem Konfigurationsregister oder Speicher zusammengefasst gespeichert und können beispielsweise als Register 45 und Zeigerregister dargestellt werden, die von der Recheneinheit 2 beschrieben werden können.
  • Der obige im Pseudo-C-Code angegebene Berechnungsablauf wird durch eine Logikschaltung 46 gesteuert. Die Logikschaltung 46 stellt eine entsprechende Verdrahtung und Ablaufsteuerung dar.
  • Weiterhin ermöglicht die Umformulierung, die vollständige Berechnung des Gauß-Prozessmodells in Hardware zu implementieren. Die Berechnung kann im Wesentlichen mithilfe der MAC-Einheit 44 und der Exponentialfunktionseinheit 41 durchgeführt werden. Die Verwendung der Blöcke ist in dem obigen Pseudo-C-Code auf der rechten Seite angegeben.
  • Die Berechnung ((xi)d – ud)2 kann aber auch in einer dedizierten Additionseinheit und Multiplikationseinheit durchgeführt werden, so dass die Berechnung schnell läuft.
  • Wie in 1 dargestellt, können in der Modellberechnungseinheit 3 mehrere Rechenkerne 31 vorgesehen sein, um mehrere Gauß-Prozessmodelle bzw. Teilmodelle unabhängig voneinander und parallel zu berechnen. Wie in 4 dargestellt, hat jeder Rechenkern 31 ein eigenes Konfigurationsregister, bzw. einen eigenen Speicher, in das die Eingangswerte des Testpunkts u, die Stützstellendaten xi und alle anderen Parameter geladen werden. Die Realisierung mehrerer Rechenkerne 31 kann beispielsweise durch Pipeline-Technik realisiert werden.
  • Weiterhin besteht auch die Optimierungsmöglichkeit, dass ein oder mehrere Teile der Modellberechnungseinheit 3 nur einmal implementiert und von mehreren Rechenkernen 31 genutzt werden, um Hardwareressourcen zu schonen. So können beispielsweise die Rechenkerne 31 auf eine gemeinsame MAC-Einheit 44 oder eine gemeinsame Exponentialfunktionseinheit 41 zugreifen.
  • Die Realisierung mehrerer Rechenkerne 31 kann beispielsweise durch eine (Zeit-)Multiplex-Technik optimiert werden. Bei der Zeit-Multiplex-Technik besteht eine konstante Takt-Zuordnung zu den Einheiten, z.B. zu zwei Rechenkernen 31, d.h. gerade Takte und ungerade Takte werden einem entsprechenden von z.B. zwei Rechenkernen zugeordnet.
  • Im Allgemeinen wird bei der Multiplex-Technik die Zuordnung der Rechenkerne 31 nach Bedarf (z.B. mit Hilfe der Logikschaltung 46) vorgenommen. Weiterhin kann die Multiplex-Technik eine Redundanz vorsehen, bei der bei einem Ausfall eines Rechenkerns dessen Berechnungen von einem weiteren Rechenkern durchgeführt werden.
  • Die Realisierung der 5 zeigt dagegen zwei Rechenkerne 31 mit jeweils einer eigenen MAC-Einheit 44, die auf eine gemeinsame Exponentialfunktionseinheit 41 zugreifen.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • DE 102010028266 A1 [0002]
  • Zitierte Nicht-Patentliteratur
    • C. E. Rasmusen et al., „Gaussian Processes for Machine Learning“, MIT Press 2006 [0026]

Claims (7)

  1. Modellberechnungseinheit (3) zur Berechnung eines datenbasierten Funktionsmodells in einem Steuergerät (1) mit einem Rechenkern (31), wobei der Rechenkern (31) umfasst: – eine Multiplikationseinheit (43) zur hardwaremäßigen Durchführung einer Multiplikation; – eine Additionseinheit (42) zur hardwaremäßigen Durchführung einer Addition; – eine Exponentialfunktionseinheit (41) zur hardwaremäßigen Berechnung einer Exponentialfunktion; – ein Speicher, insbesondere ein Konfigurationsregister (45), zum Speichern von Hyperparametern und Stützstellendaten des zu berechnenden datenbasierten Funktionsmodells; und – eine Logikschaltung (46) zum hardwaremäßigen Steuern des Berechnungsablaufs in der Multiplikationseinheit (43), der Additionseinheit (42), der Exponentialfunktionseinheit (41) und dem Speicher, insbesondere dem Konfigurationsregister (45), um das datenbasierte Funktionsmodell zu ermitteln.
  2. Modellberechnungseinheit (3) nach Anspruch 1, wobei die Multiplikationseinheit und die Additionseinheit in einer in Hardware kombinierten MAC-Einheit (44) vorgesehen sind.
  3. Modellberechnungseinheit (3) nach Anspruch 1 oder 2, wobei mehrere Rechenkerne (31) vorgesehen sind, wobei mehrere der mehreren Rechenkerne (31) eine gemeinsame Exponentialfunktionseinheit (41) und/oder eine gemeinsame MAC-Einheit (44) aufweisen.
  4. Modellberechnungseinheit (3) nach einem der vorangegangenen Ansprüche, wobei das Funktionsmodell einen Modellwert mehreren Eingangsgrößen zuweist, wobei der Berechnungsablauf ausgebildet ist, um für eine Berechnung einer Eingangsnormierung der Eingangsgrößen, insbesondere mithilfe der MAC-Einheit (44), eine Multiplikation und eine Addition durchzuführen, und um für eine Berechnung einer Ausgangsnormierung der Ausgangsgröße, insbesondere mithilfe der MAC-Einheit (44), eine Multiplikation und eine Addition durchzuführen.
  5. Modellberechnungseinheit (3) nach einem der Ansprüche 2 bis 4, wobei das Funktionsmodell die Berechnung eines Terms vorsieht, wobei xi den Stützstellen des datenbasierten Funktionsmodells und u den Eingangsgrößen entsprechen, wobei die Logikschaltung ausgebildet ist, um die Berechnung des Terms mithilfe der MAC-Einheit (44) oder mithilfe der Multiplikationseinheit (43) und der Additionseinheit (42) durchzuführen.
  6. Steuergerät (1), insbesondere für ein Motorsystem mit einem Verbrennungsmotor, umfassend: – eine Recheneinheit (2); und – eine Modellberechnungseinheit (3) nach einem der Ansprüche 1 bis 5.
  7. Verfahren zur Berechnung eines datenbasierten Funktionsmodells, insbesondere eines Gauß-Prozessmodells, in einer Modellberechnungseinheit (3) nach einem der Ansprüche 1 bis 5, wobei das Funktionsmodell vollständig durch nacheinander durchgeführte Rechenschritte berechnet wird, wobei die Rechenschritte mindestens eine kombinierte Multiplikation und Addition oder nur kombinierte Multiplikation und Additions-Berechnungen sowie eine Berechnung einer Exponentialfunktion umfassen.
DE102013213420.7A 2013-04-10 2013-07-09 Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells Pending DE102013213420A1 (de)

Priority Applications (7)

Application Number Priority Date Filing Date Title
DE102013213420.7A DE102013213420A1 (de) 2013-04-10 2013-07-09 Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
KR1020140041361A KR102215271B1 (ko) 2013-04-10 2014-04-07 데이터 기반 함수 모델의 모델 계산 유닛, 제어 장치 및 계산 방법
US14/247,136 US10146248B2 (en) 2013-04-10 2014-04-07 Model calculation unit, control unit and method for calibrating a data-based function model
FR1453096A FR3004567B1 (fr) 2013-04-10 2014-04-08 Unite de calcul de modele et appareil de commande ainsi que procede pour calculer un tel modele fonctionnel fonde sur des donnees
JP2014079820A JP2014206975A (ja) 2013-04-10 2014-04-09 データに基づく関数モデルを計算するためのモデル計算ユニット、制御装置、及び方法
CN201410140041.0A CN104102137A (zh) 2013-04-10 2014-04-09 模型计算单元、控制设备以及用于计算基于数据的函数模型的方法
JP2019033450A JP2019145111A (ja) 2013-04-10 2019-02-27 データに基づく関数モデルを計算するためのモデル計算ユニット、制御装置、及び方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102013206302.4 2013-04-10
DE102013206302 2013-04-10
DE102013213420.7A DE102013213420A1 (de) 2013-04-10 2013-07-09 Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells

Publications (1)

Publication Number Publication Date
DE102013213420A1 true DE102013213420A1 (de) 2014-10-16

Family

ID=51618474

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013213420.7A Pending DE102013213420A1 (de) 2013-04-10 2013-07-09 Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells

Country Status (6)

Country Link
US (1) US10146248B2 (de)
JP (2) JP2014206975A (de)
KR (1) KR102215271B1 (de)
CN (1) CN104102137A (de)
DE (1) DE102013213420A1 (de)
FR (1) FR3004567B1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109643393A (zh) * 2016-09-07 2019-04-16 罗伯特·博世有限公司 用于计算具有前馈和反馈的多层感知模型的模型计算单元和控制器
DE102020206916A1 (de) 2020-06-03 2021-12-09 Robert Bosch Gesellschaft mit beschränkter Haftung Steuereinrichtung und Verfahren zum Auswählen von Auswertungspunkten für ein Bayessches Optimierungsverfahren

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013213420A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102013209657A1 (de) * 2013-05-24 2014-11-27 Robert Bosch Gmbh FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen
CN105892989B (zh) * 2016-03-28 2017-04-12 中国科学院计算技术研究所 一种神经网络加速器及其运算方法
DE102016216947A1 (de) 2016-09-07 2018-03-08 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines mehrschichtigen Perzeptronenmodells
DE102017215420A1 (de) * 2016-09-07 2018-03-08 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines RBF-Modells
US11176487B2 (en) * 2017-09-28 2021-11-16 Oracle International Corporation Gradient-based auto-tuning for machine learning and deep learning models
DE102017217972A1 (de) * 2017-10-10 2019-04-11 Robert Bosch Gmbh Verfahren und Vorrichtung zum Erzeugen eines inversen Sensormodells und Verfahren zum Erkennen von Hindernissen
JP2019157652A (ja) * 2018-03-07 2019-09-19 トヨタ自動車株式会社 内燃機関の制御装置
CN109739470B (zh) * 2018-12-30 2023-06-13 南京大学 一种基于2型双曲cordic任意指数函数的计算系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010028266A1 (de) 2010-04-27 2011-10-27 Robert Bosch Gmbh Steuergerät und Verfahren zur Berechnung einer Ausgangsgröße für eine Steuerung

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1173408A (ja) * 1997-08-29 1999-03-16 Internatl Business Mach Corp <Ibm> 演算処理システム及び演算処理方法
US6526430B1 (en) * 1999-10-04 2003-02-25 Texas Instruments Incorporated Reconfigurable SIMD coprocessor architecture for sum of absolute differences and symmetric filtering (scalable MAC engine for image processing)
JP3852438B2 (ja) 2003-11-27 2006-11-29 セイコーエプソン株式会社 誤差関数演算装置及び誤差関数演算方法
CN101369999A (zh) 2007-08-17 2009-02-18 义隆电子股份有限公司 递归式离散傅立叶处理器单核心装置及其应用
DE102008001081B4 (de) 2008-04-09 2021-11-04 Robert Bosch Gmbh Verfahren und Motorsteuergerät zum Steuern eines Verbrennungsmotors
US9128790B2 (en) * 2009-01-30 2015-09-08 Intel Corporation Digital signal processor having instruction set with an exponential function using reduced look-up table
DE102010028259A1 (de) 2010-04-27 2011-10-27 Robert Bosch Gmbh Mikrocontroller mit einer Recheneinheit und einer Logikschaltung sowie Verfahrung zur Durchführung von Rechnungen durch einen Mikrocontroller für eine Regelung oder eine Steuerung in einem Fahrzeug
CN102175916B (zh) 2011-01-30 2013-07-31 天津大学 短样本密集频率信号的参数测量方法
US9753695B2 (en) * 2012-09-04 2017-09-05 Analog Devices Global Datapath circuit for digital signal processors
DE102013213420A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102013206320A1 (de) * 2013-04-10 2014-10-16 Robert Bosch Gmbh Verfahren und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells
DE102013209657A1 (de) * 2013-05-24 2014-11-27 Robert Bosch Gmbh FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen
DE102013212840B4 (de) * 2013-07-02 2022-07-07 Robert Bosch Gmbh Modellberechnungseinheit und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells mit Daten in verschiedenen Zahlenformaten
DE102013212842A1 (de) * 2013-07-02 2015-01-08 Robert Bosch Gmbh Verfahren zum Betreiben eines Steuergeräts sowie Steuergerät mit einer Modellberechnungseinheit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010028266A1 (de) 2010-04-27 2011-10-27 Robert Bosch Gmbh Steuergerät und Verfahren zur Berechnung einer Ausgangsgröße für eine Steuerung

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
C. E. Rasmusen et al., "Gaussian Processes for Machine Learning", MIT Press 2006

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109643393A (zh) * 2016-09-07 2019-04-16 罗伯特·博世有限公司 用于计算具有前馈和反馈的多层感知模型的模型计算单元和控制器
DE102020206916A1 (de) 2020-06-03 2021-12-09 Robert Bosch Gesellschaft mit beschränkter Haftung Steuereinrichtung und Verfahren zum Auswählen von Auswertungspunkten für ein Bayessches Optimierungsverfahren

Also Published As

Publication number Publication date
JP2019145111A (ja) 2019-08-29
FR3004567A1 (fr) 2014-10-17
JP2014206975A (ja) 2014-10-30
US20140310325A1 (en) 2014-10-16
CN104102137A (zh) 2014-10-15
FR3004567B1 (fr) 2019-01-25
KR102215271B1 (ko) 2021-02-15
US10146248B2 (en) 2018-12-04
KR20140122672A (ko) 2014-10-20

Similar Documents

Publication Publication Date Title
DE102013213420A1 (de) Modellberechnungseinheit, Steuergerät und Verfahrenzum Berechnen eines datenbasierten Funktionsmodells
DE102016216944A1 (de) Verfahren zur Berechnung einer Neuronenschicht eines mehrschichtigen Perzeptronenmodells mit vereinfachter Aktivierungsfunktion
DE202017105528U1 (de) Ausführen von Mittelwert-Poolbildung in Hardware
DE112016002298T5 (de) Vorabruf von gewichten zur verwendung in einem neuronalen netzwerkprozessor
Koleva et al. Numerical solution of time-fractional Black–Scholes equation
DE112016002296T5 (de) Vektor-recheneinheit in einem neuronalen netzwerkprozessor
DE102013220432A1 (de) Modellberechnungseinheit für einen integrierten Steuerbaustein zur Berechnung von LOLIMOT
DE102010028259A1 (de) Mikrocontroller mit einer Recheneinheit und einer Logikschaltung sowie Verfahrung zur Durchführung von Rechnungen durch einen Mikrocontroller für eine Regelung oder eine Steuerung in einem Fahrzeug
DE3144015A1 (de) &#34;schaltungsanordnung und verfahren zur bildung von skalarprodukten und summen von gleitkommazahlen mit maximaler genauigkeit&#34;
DE102014225039A1 (de) Verfahren und Vorrichtung zum Bereitstellen von spärlichen Gauß-Prozess-Modellen zur Berechnung in einem Motorsteuergerät
DE102013212842A1 (de) Verfahren zum Betreiben eines Steuergeräts sowie Steuergerät mit einer Modellberechnungseinheit
DE102016216945A1 (de) Verfahren und Vorrichtung zum Ausführen einer Funktion basierend auf einem Modellwert eines datenbasierten Funktionsmodells basierend auf einer Modellgültigkeitsangabe
DE102013224698A1 (de) Verfahren und Vorrichtung zum Ermitteln eines datenbasierten Funktionsmodells
DE102013206264A1 (de) Verfahren und Vorrichtung zur Durchführung einer Berechnung eines datenbasierten Funktionsmodells
DE102013206292A1 (de) Verfahren und Vorrichtung zum Erstellen eines datenbasierten Funktionsmodells
DE102013227183A1 (de) Verfahren und Vorrichtung zum Bereitstellen eines spärlichen Gauß-Prozess-Modells zur Berechnung in einem Motorsteuergerät
DE102013206304A1 (de) Verfahren und Vorrichtung zum Erstellen eines nicht parametrischen, datenbasierten Funktionsmodells
DE2732008B2 (de) Einrichtung zur Reduzierung von Fibonacci-p-Codes auf die Minimalform
DE102013209657A1 (de) FMA-Einheit, insbesondere zur Verwendung in einer Modellberechnungseinheit zur rein hardwarebasierten Berechnung von Funktionsmodellen
DE102015208513A1 (de) Verfahren und Vorrichtung zum Berechnen eines datenbasierten Multi-Output-Funktionsmodells
DE102015221819A1 (de) Verfahren und Vorrichtung zum Adaptieren eines datenbasierten Funktionsmodells zur Berechnung in einer Modellberechnungseinheit
DE102016216951A1 (de) Modellberechnungseinheit und Steuergerät zur wahlweisen Berechnung eines RBF-Modells, eines Gauß-Prozess-Modells und eines MLP-Modells
Dong et al. On a spectrally negative Lévy risk process with periodic dividends and capital injections
DE102013212840B4 (de) Modellberechnungseinheit und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells mit Daten in verschiedenen Zahlenformaten
DE102022120819A1 (de) Quantisiertes neuronales- netzwerk-training und - inferenzieren

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0017100000

Ipc: G06F0017170000