Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
MODEL CALCULATION UNIT AND CONTROL DEVICE FOR CALCULATING A NEURON LAYER OF A MULTI-LAYERED PERCEPTRON MODEL
Document Type and Number:
WIPO Patent Application WO/2018/046425
Kind Code:
A1
Abstract:
The invention relates to a model calculation unit for calculating a neuron layer of a multi-layered perceptron model, comprising a hardwired calculation core formed in hardware for calculating a fixedly preset computing algorithm in coupled functional blocks. The calculation core is designed to calculate an output variable for each neuron in a neuron layer of a multi-layered perceptron model having a number of neurons, depending on one or more input variables of an input variable vector, on a weighting matrix with weighting factors and an offset value predefined for each neuron. A sum of the values of the input variables, which are weighted with a weighting factor determined by the neuron and the input variable, and the offset value predefined for the neuron is calculated for each neuron, and the result is transformed with an activation function to obtain the output variable for the neuron.

Inventors:
MARKERT HEINER (DE)
GUNTORO ANDRE (DE)
SCHIEGG MARTIN (DE)
KLOPPENBURG ERNST (DE)
Application Number:
PCT/EP2017/072058
Publication Date:
March 15, 2018
Filing Date:
September 04, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BOSCH GMBH ROBERT (DE)
International Classes:
G06N3/063; F02P5/15; G05B13/04; G06F15/78; G06N7/00
Foreign References:
DE102013220432A12015-04-16
Other References:
EPPLER W ET AL: "High speed neural network chip for trigger purposes in high energy physics", DESIGN, AUTOMATION AND TEST IN EUROPE, 1998., PROCEEDINGS PARIS, FRANCE 23-26 FEB. 1998, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 23 February 1998 (1998-02-23), pages 108 - 115, XP010268412, ISBN: 978-0-8186-8359-6, DOI: 10.1109/DATE.1998.655844
RICHARD FIIFI TURKSON ET AL: "Artificial neural network applications in the calibration of spark-ignition engines: An overview", ENGINEERING SCIENCE AND TECHNOLOGY, AN INTERNATIONAL JOURNAL, vol. 19, no. 3, 16 April 2016 (2016-04-16), pages 1346 - 1359, XP055420859, ISSN: 2215-0986, DOI: 10.1016/j.jestch.2016.03.003
- - -: "Introduction to Interpolated Neural Networks", APR POWER WHITE PAPER, 18 January 2009 (2009-01-18), pages 1 - 57, XP055420876, Retrieved from the Internet [retrieved on 20171101]
Download PDF:
Claims:
Ansprüche

1 . Modellberechnungseinheit (22) zur Berechnung einer Schicht eines mehrschichtigen Perzeptronenmodells mit einem in Hardware ausgebildeten fest verdrahteten Rechenkern zur Berechnung eines fest vorgegebenen Rechenalgorithmus in gekoppelten Funktionsblöcken,

wobei der Rechenkern ausgebildet ist, um für eine Neuronenschicht eines mehrschichtigen Perzeptronenmodells mit einer Anzahl von Neuronen (20) abhängig von einer oder mehreren Eingangsgrößen eines Eingangsgrößenvektors (ut), von einer Gewichtungsmatrix mit Gewichtungsfaktoren und einen für jedes Neuron (20) vorgegebenen Offsetwert (p3[j]) eine Ausgangsgröße für jedes Neuron (20) zu berechnen, wobei für jedes Neuron (20) eine Summe der mit einem durch das Neuron (20) und die Eingangsgröße bestimmten Gewichtungsfaktor gewichteten Werte der Eingangsgrößen und dem dem Neuron vorgegebenen Offsetwert (p3[j]) berechnet wird und das Ergebnis mit einer Aktivierungsfunktion (act) transformiert wird, um die Ausgangsgröße für das Neuron (20) zu erhalten.

2. Modellberechnungseinheit (22) nach Anspruch 1 , wobei der Rechenkern eine Zu- standsmaschine (1 1 ), einen Speicher (12) zum Speichern der einen oder mehreren Eingangsgrößen des Eingangsgrößenvektors, der Gewichtungsmatrix, der für jedes Neuron (20) vorgegebenen Offsetwerten (p3[j]) und der Ausgangsgrößen für jedes Neuron (20), einen oder mehrere Rechenoperationsblöcke (13, 14), insbesondere einem MAC-Block und einem Aktivierungsfunktions-Berechnungsblock, umfasst.

3. Modellberechnungseinheit (22) nach Anspruch 1 oder 2, wobei der Rechenkern ausgebildet ist, um abhängig von einer Auswahlgröße (cfg_activation_function) eine Art der Aktivierungsfunktion für das mehrschichtigen Perzeptronenmodell auszuwählen und/oder mithilfe einer weiteren Auswahlgröße (cfg_mlp) auszuwählen, ob ein Gaußprozessmodell bzw. ein RBF-Modell oder eine Neuronenschicht des Perzeptronenmodells berechnet werden soll.

4. Modellberechnungseinheit (22) nach einem der Ansprüche 1 bis 3, wobei die Aktivierungsfunktionen (act) eine Knickfunktion, eine Sigmoidfunktion, eine Tangens- Hyberbolicus-Funktion oder eine lineare Funktion umfasst.

5. Modellberechnungseinheit (22) nach einem der Ansprüche 1 bis 4, wobei der Rechenkern in einem Flächenbereich eines integrierten Bausteins ausgebildet ist.

6. Steuergerät (2) mit einem Mikroprozessor (21 ) und einer oder mehreren Modellberechnungseinheiten (22) nach einem der Ansprüche 1 bis 5.

7. Steuergerät (2) nach Anspruch 6, wobei das Steuergerät (2) als eine integrierte Schaltung ausgebildet ist.

8. Verwendung des Steuergeräts (2) nach Anspruch 6 oder 7 als ein Steuergerät (2) zur Steuerung eines Motorsystems (1 ) in einem Kraftfahrzeug.

Description:
Beschreibung

Titel

Modellberechnungseinheit und Steuergerät zur Berechnung einer Neuronenschicht eines mehrschichtigen Perzeptronenmodells

Technisches Gebiet

Die Erfindung betrifft die Berechnung von Funktionsmodellen in einer separaten hartverdrahteten Modellberechnungseinheit, insbesondere zur Berechnung von mehrschichtigen Perzeptronenmodellen.

Technischer Hintergrund

Funktionen von Steuerungen von technischen Systemen, wie z.B. Verbrennungsmotoren, Elektroantrieben, Batteriespeicher und dergleichen, werden häufig mit Modellen realisiert, die ein mathematisches Abbild des realen Systems darstellen. Jedoch mangelt es bei physikalischen Modellen, insbesondere bei komplexen Zusammenhängen, an der erforderlichen Berechnungsgenauigkeit, und es ist bei heutigen Rechenkapazitäten in der Regel schwierig, derartige Modelle innerhalb der für ein Steuergerät geforderten Echtzeitanforderungen zu berechnen. Für solche Fälle ist angedacht, datenbasierte Modelle zu verwenden, die Zusammenhänge zwischen einer Ausgangsgröße und Eingangsgrößen ausschließlich auf der Basis von mit Hilfe eines Prüfstands oder dergleichen erhaltenen Trainingsdaten beschreiben. Insbesondere eignen sich datenbasierte Modelle zum Modellieren von komplexen Zusammenhängen, bei denen mehrere Eingangsgrößen, zwischen denen Wechselbeziehungen bestehen, in geeigneter Weise in dem Modell berücksichtigt werden. Zudem bietet die Modellierung mit Hilfe von datenbasierten Modellen die Möglichkeit, das Modell durch Hinzufügen von einzelnen Eingangsgrößen zu ergänzen. Datenbasierte Funktionsmodelle basieren in der Regel auf einer großen Anzahl von Stützstellen, um eine für die jeweilige Anwendung ausreichende Modellierungsgenauigkeit zu erreichen. Aufgrund der hohen Anzahl der Stützstellen wird zur Berechnung eines Modellwertes mit einem datenbasierten Funktionsmodell, wie beispielsweise einem Gauß-Prozess-Modell, eine hohe Rechenkapazität benötigt. Um ein derartiges datenbasiertes Funktionsmodell in einer Steuergeräteanwendung in Echtzeit berechnen zu können, können daher auf einer Hardwareausgestaltung basierende Modellberechnungseinheiten vorgesehen sein.

Offenbarung der Erfindung

Erfindungsgemäß sind eine Modellberechnungseinheit zur Berechnung einer Schicht eines mehrschichtigen Perzeptronenmodells gemäß Anspruch 1 sowie ein Steuergerät und eine Verwendung des Steuergeräts nach einem der nebengeordneten Ansprüche vorgesehen.

Weitere Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.

Die obige Modellberechnungseinheit sieht eine Ausgestaltung vor, die es ermöglicht, eine Schicht eines mehrschichtigen Perzeptronenmodells (MLP-Modells) mit einer variablen Anzahl von Neuronen zu berechnen.

Gemäß einem ersten Aspekt ist eine Modellberechnungseinheit zur Berechnung einer Schicht eines mehrschichtigen Perzeptronenmodells mit einem in Hardware ausgebildeten fest verdrahteten Rechenkern zur Berechnung eines fest vorgegebenen Rechenalgorithmus in gekoppelten Funktionsblöcken vorgesehen, wobei der Rechenkern ausgebildet ist, um für eine Neuronenschicht eines mehrschichtigen Perzeptronenmodells mit einer Anzahl von Neuronen abhängig von einer oder mehreren Eingangsgrößen eines Eingangsgrößenvektors, von einer Gewichtungsmatrix mit Gewichtungsfaktoren und einem für jedes Neuron vorgegebenen Offsetwert eine Ausgangsgröße für jedes Neuron zu berechnen, wobei für jedes Neuron eine Summe der mit einem durch das Neuron und die Eingangsgröße bestimmten Gewichtungsfaktor gewichteten Werte der Eingangsgrößen und dem dem Neuron vorgege- benen Offsetwert berechnet wird und auf das Ergebnis mit einer Aktivierungsfunktion transformiert wird, um die Ausgangsgröße für das Neuron zu erhalten.

Eine Idee der obigen Modellberechnungseinheit besteht darin, diese zur Berechnung einer Schicht eines mehrschichtigen Perzeptronenmodells in Hardwarestrukturen separat in einem Rechenkern in einem Steuergerät auszubilden. Auf diese Weise kann eine im Wesentlichen fest verdrahtete Hardwareschaltung zur Realisierung von Funktionen bereitgestellt werden, die es ermöglicht, eine oder mehrere Neuro- nenschichten eines mehrschichtigen Perzeptronenmodells zu berechnen und dabei nur eine sehr geringe Rechenlast in einem softwaregesteuerten Mikroprozessor eines Steuergeräts zu bewirken. Durch die Hardwarebeschleunigung, die durch die Modellberechnungseinheit bereitgestellt wird, kann ein mehrschichtiges Perzeptro- nenmodell in Echtzeit berechnet werden, so dass die Verwendung eines solchen Modells für Steuergeräteanwendungen für Verbrennungsmotoren in Kraftfahrzeugen interessant wird.

Zudem ermöglicht die Verwendung von mehrschichtigen Perzeptronenmodellen eine datenbasierte Modellierung mit einer geringeren Anzahl von Stützstellenpunkten als bei vergleichbaren datenbasierten Modellen, wie beispielsweise einem Gauß- Prozess-Modell.

Die Modellberechnungseinheit kann mit Schnittstellen ausgestattet sein, um das MLP-Modell schichtweise zu berechnen, so dass die Anzahl der Neuronenschichten und die Anzahl der Neuronen in jeder Neuronenschicht frei gewählt werden kann. Durch diese schichtweise Aufteilung können die Parameter, wie beispielsweise die Synapsengewichtungen, für jede Neuronenschicht separat vorgegeben werden.

Weiterhin kann der Rechenkern eine Zustandsmaschine, einen Speicher zum Speichern der einen oder mehreren Eingangsgrößen des Eingangsgrößenvektors, der Gewichtungsmatrix, der für jedes Neuron vorgegebenen Offsetwerten und der Ausgangsgrößen für jedes Neuron, einen oder mehrere Rechenoperationsblöcke, insbesondere einem MAC-Block (für Festkomma- oder Gleitkomma-Berechnungen) und einem Aktivierungsfunktions-Berechnungsblock, umfassen. Es kann vorgesehen sein, dass der Rechenkern ausgebildet ist, um abhängig von einer Auswahlgröße die Art der Aktivierungsfunktion für das mehrschichtigen Perzeptronen-Modells auszuwählen und/oder mithilfe einer weiteren Auswahlgröße auszuwählen, ob ein Gaußprozessmodell bzw. ein RBF-Modell oder eine Neuro- nenschicht des Perzeptronenmodells berechnet werden soll.

Die Aktivierungsfunktionen kann beispielsweise eine Knickfunktion, eine Sigmoid- funktion, eine Tangens-Hyberbolicus-Funktion oder eine lineare Funktion umfassen.

Weiterhin kann der Rechenkern in einem Flächenbereich eines integrierten Bausteins ausgebildet sein.

Gemäß einem weiteren Aspekt ist ein Steuergerät mit einem Mikroprozessor und der obigen Modellberechnungseinheit vorgesehen. Insbesondere kann das Steuergerät als eine integrierte Schaltung ausgebildet sein.

Gemäß einem weiteren Aspekt ist eine Verwendung des obigen Steuergeräts als ein Steuergerät zur Steuerung eines Motorsystems in einem Kraftfahrzeug vorgesehen.

Kurzbeschreibung der Zeichnungen

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

Figur 1 schematische Darstellung eines Steuergeräts zum Einsatz für ein Motorsystem in einem Kraftfahrzeugs;

Figur 2 eine schematische Darstellung einer Berechnungseinheit als

Teil des Steuergeräts;

Figur 3 eine schematische Darstellung einer Neuronenschicht eines

MLP-Modells; und

Figuren 4a -4d Darstellungen von möglichen Aktivierungsfunktionen. Beschreibung von Ausführungsformen

Figur 1 zeigt beispielhaft eine schematische Darstellung eines Steuergeräts 2 für ein Motorsystem 1 mit einem Verbrennungsmotor 3 als ein zu steuerndes technisches System. Das Steuergerät 2 umfasst einen Mikroprozessor 21 und eine Modellberechnungseinheit 22, die als separate Bauteile oder in integrierter Weise in separaten Flächenbereichen auf einem Chip ausgebildet sein können. Insbesondere stellt die Modellberechnungseinheit 22 eine Hardwareschaltung dar, die strukturell von einem Rechenkern des Mikroprozessors 21 getrennt sein kann.

Die Modellberechnungseinheit 22 ist im Wesentlichen hartverdrahtet und dementsprechend nicht wie der Mikroprozessor 21 dazu ausgebildet, einen Softwarecode auszuführen und dadurch eine variable durch Software vorgegebene Funktion auszuführen. Mit anderen Worten ist in der Modellberechnungseinheit 22 kein Prozessor vorgesehen, so dass diese nicht durch einen Softwarecode betreibbar ist. Durch die Fokussierung auf eine vorgegebene Modellfunktion wird eine ressourcenoptimierte Realisierung einer solchen Modellberechnungseinheit 22 ermöglicht. In integrierter Aufbauweise kann die Modellberechnungseinheit 22 flächenoptimiert realisiert werden, die zudem schnelle Berechnungen ermöglicht.

Das Steuergerät 2 dient im Wesentlichen dazu, Sensorsignale S bzw. Sensorgrößen, die von einer Sensorik in dem Verbrennungsmotor 3 erfasst werden, und/oder externe Vorgaben V zu verarbeiten und zyklisch in fest vorgegebenen Zeitabständen von z.B. 1 - 100ms oder Winkelsynchron in Abhängigkeit zu einem Kurbelwellenwinkel eines betriebenen Verbrennungsmotors, Werte von einer oder mehreren entsprechenden Ansteuergrößen A an den Verbrennungsmotor 3 anzulegen, so dass dieser in an sich bekannter Weise betreibbar ist.

In Figur 2 ist eine Modellberechnungseinheit 22 ausführlicher dargestellt. Die Modellberechnungseinheit 22 umfasst eine Zustandsmaschine 1 1 , einen Speicher 12 und einen oder mehrere Operationsblöcke, die beispielsweise einen oder mehreren MAC-Blöcke 13 (MAC: Multiply-ACcumulate für Festkommaberechnung oder FMA: Fused-Multiply-Add für Gleitkommaberechnung) und einen Aktivierungsfunktion- Berechnungsblock (ACT) 14 zur Berechnung einer Aktivierungsfunktion. Die Zu- Standsmaschine 1 1 und der eine oder die mehreren Operationsblöcke 13, 14 bilden einen Rechenkern ALU der Modellberechnungseinheit 22. Die Operationsblöcke können zusätzlich oder alternativ zu dem MAC-Block einen Multiplizierblock und einen Additionsblock umfassen.

Mit Hilfe der Zustandsmaschine 1 1 können in einem Eingangsgrößenspeicherbereich dem Speicher 12 abgelegte Werte von Eingangsgrößen durch wiederholte Schleifenberechnungen verrechnet werden, um Zwischengrößen bzw. Ausgangsgrößen zu erhalten, die in einen entsprechenden Ausgangsgrößenspeicherbereich des Speichers 12 geschrieben werden.

Die Zustandsmaschine 1 1 ist so ausgelegt, um eine einzelne Neuronenschicht eines mehrschichtigen Perzeptronenmodells zu berechnen. Die Zustandsmaschine 1 1 kann anhand des nachfolgenden Pseudocodes beschrieben werden:

/* Eingangstransformation */

for (k=0; k<p7; k++) {

ut[k] = u[k] * pl[k] + p2[k];

}

/* Schleifenberechnung */

for (j=p8; j<p6; j++) {

i = j * p7;

t = p3[j];

for (k=0; k<p7; k++) {

t += V[i+k] * ut[k];

}

y[j] = act(t);

}

/* Ausgangstransformation */

for (k=0; k<p6; k++) {

z[k] = y[k] * p4[k] + p5[k];

}

Mit

p7 maximaler Indexwert für die Eingangsgrößen des Eingangsgrößenvektors p8 minimaler Indexwert bzw. Anfangswert für die Anzahl der Neuronen p6 maximaler Indexwert für die Anzahl der Neuronen

p3: Offsetwert

p1 , p2: Variablen für die Eingangstransformation

p4, p5: Variablen für die Ausgangstransformation Mit Hilfe des obigen Pseudocodes lässt sich folgende Berechnung für jedes Neuron der zu berechnenden Neuronenschicht durchführen: y J] = act( P 3\j] + * Mt M) für j=0...p6-1

Dieses stellt eine Berechnung für eine Neuronenschicht eines mehrschichtigen Perzeptronenmodells dar, wie es in Figur 3 dargestellt ist.

Figur 3 zeigt eine Neuronenschicht von mehreren Neuronen 20, denen Werte von Eingangsgrößen eines Eingangsgrößenvektors uto ... ut P 6-i zugeführt werden. Die Werte der Eingangsgrößen werden mit Hilfe einer entsprechenden vorgegebenen Gewichtungsmatrix aus Gewichtungswerten gewichtet, die als Gewichtungsfaktoren vo...p7-i,o... P 6-i vorgegeben sind. Die Gewichtung erfolgt in der Regel durch multiplika- tives Beaufschlagen mit den zugeordneten Gewichtungsfaktoren vo... 7-i,o...p6-i . kann jedoch auch in anderer Weise die Werte des Eingangsgrößenvektors beaufschlagen.

Die Summen der gewichteten Werte des Eingangsgrößenvektors uto ... ut P 6-i werden jeweils mit einem Offsetwert Oo . .. 0 6-i beaufschlagt, insbesondere additiv beaufschlagt. Das Ergebnis wird mit einer vorgegebenen Aktivierungsfunktion „act" transformiert. Als Ergebnis erhält man einen entsprechenden Wert eines Ausgangsgrößenvektors y 0 . .. y P 6-i . Durch das Vorsehen des Offsetwerts für jedes Neuron besteht ein weiterer Freiheitsgrad für die Modellbildung.

Durch Festlegen der Laufvariablen p6 kann die Anzahl der Neuronen 20 der zu berechnenden Neuronenschicht eingestellt werden. Ein mehrschichtiges Perzeptro- nenmodell kann durch Verwenden der Werte des Ausgangsgrößenvektors yo . .. y 6-i einer Neuronenschicht als Eingangsgrößenvektor für eine Berechnung einer nachfolgenden Neuronenschicht in der Modellberechnungseinheit 22 verwendet werden, so dass die Anzahl der Neuronenschichten des mehrschichtigen Perzeptronenmodells durch wiederholtes Aufrufen der Funktion gemäß dem obigen Pseudocode bzw. durch wiederholtes Aufrufen der Modellberechnungseinheit 22 mit entsprechend geänderten Parametern realisiert werden kann. Es kann eine Eingangs- und/oder Ausgangstransformation der Eingangsgrößen des Eingangsgrößenvektors bzw. der Ausgangsgrößen des Ausgangsgrößenvektors mithilfe der für jedes Neuron vorgegebenen Normierungsvariablen p1 und p2 bzw. p4 und p5 vorgenommen werden.

Die schichtweise Berechnung des MLP-Modells ermöglicht eine schlanke Ausgestaltung der Modellberechnungseinheit 22, so dass deren Flächenbedarf in integrierter Bauweise gering ist. Trotzdem ermöglicht die Modellberechnungseinheit 22 eine Berechnung eines mehrschichtigen Perzeptronenmodells in einfacher Weise durch Rückführung oder Umdefinition der Werte der Ausgangsgrößen des Ausgangsgrößenvektors als Eingangsgrößen eines Eingangsgrößenvektors für die Berechnung einer weiteren Neuronenschicht.

Als Aktivierungsfunktion „act" kann eine von mehreren Aktivierungsfunktionen zur Verfügung gestellt werden, die durch den Aktivierungsfunktion-Berechnungsblock 14 der Modellberechnungseinheit 22 berechnet werden kann. Die Aktivierungsfunktionen können beispielsweise eine Knickfunktion, eine Sigmoidfunktion, eine Tan- gens-Hyberbolicus-Funktion oder eine lineare Funktion verwendet werden, wie sie in den Figuren 4a bis 4d entsprechend dargestellt sind.

Durch die einschichtige Ausbildung des Neuronenmodells, das durch den obigen Pseudocode realisiert wird, ist es zudem möglich, durch einfache Modifikation neben einer Neuronenschicht eines MLP-Modells auch ein Gauß-Prozess-Modell bzw. ein RBF-Modell (RBF: Radiale Basisfunktion) zu berechnen. Dazu werden die Gewichtungswerte nicht multiplikativ auf die Werte der Eingangsgröße beaufschlagt, sondern additiv bzw. subtraktiv. Weiterhin wird der quadratische Abstand gerechnet, der mit vorgegebenen Längenskalen L[k] gewichtet ist. Weiterhin wird für das RBF- Modell als Aktivierungsfunktion eine Exponentialfunktion gewählt. Somit lässt sich ein Gauß-Prozess-Modell entsprechend y = Y^vm expi- ΣΖο 1 L W + "tM) 2 ) durch eine Modifikation des Pseudocodes wahlweise wie folgt berechnen. /* Eingangstransformation */

for (k=0; k<p7; k++) {

ut[k] = u[k]*pl[k] + p2[k];

}

/* Schleifenberechnung */

for (j=p8; j<p6; j++) {

i = j * p7;

t = ( c" fg_ m lp) ? P3[j] : 0.0f; // init with bias for MLP

for (k=0; k<p7; k++) {

if (cfg_mlp) {

t += V[i+k] * ut[k];

}

eise {

d = V[i+k] - ut[k];

d = d * d;

t += L[k] * d

}

}

if (cfg_mlp) {

switch (cfg_activation_function) {

case 1:

e = (t>=0.0f) ? t : 0.0f; // Knickfunktion

break;

case 2: // Sigmoid-Funktion

e = sigmoid(t);

break;

case 3: // tanh-Funktion

e = tanh(t);

break;

default: // lineare Funktion

e = t;

}

y[j] = e;

}

eise { // für Gaussprozessmodell/RBF-Modell

e = exp(-t);

y[0] += p3[j] * e;

}

/* Ausgangstransformation */

j = (cfg_mlp) ? p6 : 1;

for (k=0; k<j; k++) {

z[k] = y[k] * p4[k] + P 5[k];

}

Man erkennt, dass bei der Durchführung der Schleifenfunktion durch die Variable cfg_mlp eine Fallunterscheidung durchgeführt werden kann. Bei cfg_mlp=1 wird die Berechnung der Neuronenschicht gewählt und es kann mit cfg_activation_function =0...3 die Art der oben beschriebenen Aktivierungsfunktionen ausgewählt werden.

Bei cfg_mlp=0 wird ein Gaußprozessmodell oder ein RBF-Modell berechnet. Hier ist eine Auswahl der Aktivierungsfunktion nicht notwendig, da diese stets mit der Expo- nentialfunktion gerechnet werden. Auf diese Weise ist es möglich, die Modellberechnungseinheit 22 sowohl für die Berechnung von Gauß-Prozess-Modellen und RBF-Modellen als auch für die Berechnung einer Neuronenschicht eines MLP- Modells zu verwenden und dabei einen nur geringen Flächenbedarf in integrierter Bauweise der Zustandsmaschine zu benötigen.