NN-Tool

Prognose * Simulation * Optimierung

Bärmann Software         

 

Home  Modellierung  Simulation  Optimierung  Software  Technik  Kunden  Downloads  Kontakt  Impressum


Technik und Algorithmen von NN-Tool

Allgemeines

NN-Tool ist ein Instrument zur Erstellung von Datenmodellen auf der Basis neuronaler Netze. Die Software ist insbesondere auf Anwendungen im Bereich der chemischen Industrie zugeschnitten und wird bei der Bayer AG für alle Arten neuronaler Netzanwendungen eingesetzt. Der spezifische Anforderungskatalog, der von NN-TOOL abgedeckt wird, umfasst unter anderem die folgenden Punkte:

  • effiziente Datenvorverarbeitung.
  • geeignete Behandlung unvollständiger Datensätze.
  • schnelle Lernalgorithmen.
  • automatische Netzstrukturoptimierung.
  • Berücksichtigung von Klassifikatoren.
  • grafische Auswertemöglichkeiten.
  • komfortable Benutzeroberfläche.
  • Runtime-Module und integrierte Prognose- und Optimierungsmöglichkeiten

 

NN-Tool besteht aus einem Simulator zur Erstellung neuronaler Netzmodelle und aus Anwendungsmodulen zur Auswertung der erstellten Modelle (Prognose bzw. Optimierung). Nach Bereitstellung der Daten können die Modelle in kürzester Zeit erstellt werden, da NN-Tool die bei neuronalen Netzen (NN) erforderlichen Skalierungstransformationen sowie die Ermittlung der vollständigen Datensätze selbstständig vornimmt. Die entstehenden NNe sind vom Standardtyp (Feedforwardnetz mit einem Hiddenlayer), der sich in allen praktisch relevanten Aufgabenstellungen als optimal erwiesen hat. Nach der Modellerstellung hat der Anwender die Möglichkeit auf der Basis des erstellten Modells Prognose- und Optimierungsrechnungen durchzuführen.

Die Anwendung besteht aus den drei Hauptschritten:

  • Datenaufbereitung
  • Netztraining
  • Netzauswertung zu Prognose- und Optimierungszwecken

[Inhaltsverzeichnis]  [nach oben] 

 

Inhalt

[Inhaltsverzeichnis]  [nach oben] 

 

Datenvorverarbeitung

Benutzeroberfläche

image003

ansprechende grafische Benutzeroberfläche, integriertes Excel-Spreadsheet zur Datenvorverarbeitung und Visualisierung. Ziel ist die schnellstmögliche Erstellung von Vorhersagemodellen mit größtmöglicher Genauigkeit. Spezifische Kenntnisse über neuronale Netze sind nicht erforderlich. Alle relevanten Modellierungsschritte werden automatisch abgearbeitet.

 [Inhaltsverzeichnis]  [nach oben] 

 

Klassifikatoren

Klassifikatoren sind Parameter, die keine numerischen Werte annehmen, sondern durch eine von endlich vielen vorgegebenen Möglichkeiten beschrieben werden. Ein Beispiel ist der Klassifikator "Oberflächenfehler" mit den Klassen "Fehlerfrei", "Kratzer", "Kerben", "Riefen", "Dellen", "Löcher" etc. Diese Klassen lassen sich nicht durch einen linearen numerischen Wert beschreiben, sondern müssen geeignet kodiert werden. NN-Tool erkennt Klassifikatoren am Auftreten nichtnumerischer Werte in den Daten und nimmt dann die entsprechenden Kodierungen selbständig vor.

 [Inhaltsverzeichnis]  [nach oben] 

 

Skalierungstransformationen

schnellstmögliches Handling der Rohdaten durch automatische Skalierungen. Gegebenenfalls werden auch nichtlineare Skalierungstransformationen mit dem Ziel einer Verbesserung der Prognosegenauigkeit eingesetzt.

 [Inhaltsverzeichnis]  [nach oben] 

 

Zeitreihen

Charakteristisch für die Modellierung von Zeitreihen ist es, dass die Modelle Parameter zu unterschiedlichen Zeiten enthalten. Typischerweise liegen die Messdaten jedoch in einer Form vor, dass zu bestimmten Zeittakten die Messwerte genommen werden. Die zwischen den Parametern auftretenden Totzeiten müssen also mitverarbeitet werden. NN-Tool stellt dafür spezielle Module zur Verfügung ("Totzeiteneditor", "Bestimmung optimaler Inputs").

 [Inhaltsverzeichnis]  [nach oben] 

 

Lernverfahren

Netztyp

Die von NN-Tool erzeugten neuronalen Netze sind vom Standardtyp (Feedforwardnetz mit einem Hiddenlayer), der sich in allen praktisch relevanten Aufgabenstellungen als optimal erwiesen hat. Diese experimentellen Ergebnisse wurden Mitte der 90er-Jahre durch die Arbeit von Barron auch theoretisch untermauert. Als Lernalgorithmus wird jedoch nicht Backpropagation verwendet, sondern aus Performancegründen wird ein Algorithmus eingesetzt, der in den folgenden Veröffentlichungen näher beschrieben ist:

  • Bärmann, Biegler-König: On a Class of Efficient Learning Algorithms for Neural Networks, Neural Networks 5 (1992) pp. 139-144
  • Martino, Fanelli, Protasi: Computational Experiences of New Direct Methods for the On-line Training of MLP-Networks with Binary Outputs, ICANN 93 - Sorrento, pp. 627-630

[Inhaltsverzeichnis]  [nach oben] 

Optimierung der Netzstruktur

Während des Lernvorgangs erzeugt NN-Tool für jeden Ausgangsparameter einzeln eine Vielzahl von Netzvarianten (bis zu mehreren Tausend pro Ausgangsparameter), die sich in der Zahl der inneren Knoten, der Zahl der Lernschritte und gegebenenfalls der Auswahl der Inputparameter unterscheiden. Diese Varianten werden unter Verwendung eines Teils (der sogenannte "Lernset") der insgesamt verfügbaren Datensätze trainiert. Die verbleibenden Datensätze (der sogenannte "Testset") dienen dann dazu die verschiedenen Varianten bezüglich ihrer Prognosegenauigkeit zu bewerten. Die verschiedenen Netzvarianten werden jeweils auf dem Testset getestet, und die beste Variante pro Ausgangsparameter wird ausgewählt.

 
Insbesondere wird also für jeden Ausgangsparameter einzeln das optimale Netz ermittelt. Dies verbessert zum einen die Modellgenauigkeit gegenüber der üblichen Vorgehensweise, bei der sämtliche Ausgänge simultan optimiert werden. Zum andern ermöglicht diese Vorgehensweise ein optimales Handling unvollständiger Datensätze.


Es dürfte ziemlich klar sein, dass eine derartige Vorgehensweise, bei der unter Umständen mehrere Zehntausend verschiedene neuronale Netze automatisch trainiert und bewertet werden, extrem rechenaufwendig ist. Diese Methodik ist überhaupt nur möglich auf Grund der überragenden Geschwindigkeit des verwendeten Lernalgorithmus.

[Inhaltsverzeichnis]  [nach oben] 

 

Bestmögliches Handling unvollständiger Daten

Insbesondere bei dem in der chemischen Industrie weit verbreiteten Anwendungstyp "Rezeptur-Eigenschaftsbeziehung" tritt praktisch immer die Situation auf, dass die Datensätze bzgl. der Eingangsdaten (also der Rezepturkomponenten) vollständig sind, bzgl. der Ausgangsgrößen aber den Anblick eines Flickenteppichs liefern. Typischerweise werden von der Vielzahl der möglichen Eigenschaften einer Rezeptur immer nur einige wenige vermessen. Die vermessenen Eigenschaften variieren dabei von Rezeptur zu Rezeptur. Dadurch stehen nur sehr wenige in allen Parametern vollständige Datensätze zur Verfügung (häufig nicht einer). Aus diesem Grund ermittelt NN-TOOL für jeden Ausgang einzeln das optimale Netz. Dazu müssen dann nur die Eingangsdaten und der betreffende Ausgang vollständig sein. Das zu diesem Zweck eingesetzte Verfahren der "automatischen Einzeloptimierung" setzt wegen des hohen Rechenaufwands wiederum einen schnellen Lernalgorithmus voraus. Bei typischen Rezeptur- Eigenschaftsproblemen können mehrere Dutzend Eigenschaften auftreten. NN-TOOL erzeugt zunächst automatisch entsprechend viele einzelne neuronale Netze und bindet diese schließlich zu einem einzigen Netz zusammen.

 

[Inhaltsverzeichnis]  [nach oben] 

 

Verfügbare Datensätze, Lern- und Testsets, Crossvalidation

  • Verfügbare Datensätze sind sämtliche, in den jeweils relevanten Parametern (d.h. in allen aktiven Eingängen und dem speziellen Ausgang) vollständigen Datensätze.
  • Lerndatensätze: Teil der verfügbaren Datensätze, der zum Lernen ("Training") des Netzes verwendet wird.
  • Testdatensätze: verbleibender Teil, der genutzt wird um die Netzstruktur bzgl. ihrer Modellierungsgenauigkeit zu bewerten.

Ist es sinnvoll möglichst viele Datensätze zum Lernen zu verwenden? 

Auf der einen Seite ist es natürlich günstig, wenn die Netze auf möglichst vielen Datensätzen trainiert werden, d.h. wenn die Lernmenge möglichst groß ist. Andererseits darf der Testset auch nicht beliebig klein gemacht werden, da er ja die Basis für die Auswahl des jeweils besten Netzes bildet. Da die berechneten Gütemaße statistische Größen sind, muss die Basis so groß sein, dass noch statistisch signifikante Beurteilungen möglich sind. Der Testset sollte, wenn möglich mindestens 20 Datensätze umfassen. Bei 1000 Datensätzen kann also eine Zuweisung von jedem 50. Satz in die Testmenge erfolgen, bei 100 Datensätzen sollte dagegen jeder 5. Satz in den Testset gesteckt werden.

[Inhaltsverzeichnis]  [nach oben] 

 

Crossvalidation

Vorgehensweise zur Aufteilung der Lern- und Testdaten bei nur sehr wenigen verfügbaren Datensätzen ("kritische Modellierung") mit dem Ziel der optimalen Nutzung der verfügbaren Information. Bei diesen Anwendungen hängt die Güte des resultierenden Netzmodells empfindlich davon ab, welche Datensätze zum Lernen (Lernset) und welche zum Testen verwendet werden. Dies ist insbesondere der Fall, wenn nur wenige Datensätze zur Verfügung stehen oder die Datensätze untereinander hochkorreliert sind (z.B. bei Zeitreihenanwendungen). Crossvalidation ermöglicht es mit mehrfachen, dynamisch erzeugten Testsets pro Ausgang zu arbeiten. Diese Option verringert die Abhängigkeit der ausgewählten Netzstruktur von einem speziellen Testset.

[Inhaltsverzeichnis]  [nach oben] 




Integration von Vorwissen / Input-Output-Zuordnung

Diese Komponente der Datenvorverarbeitung ermöglicht es, die Beziehungen zwischen den Ein- und Ausgangsparametern anhand von Vorwissen einzuschränken. Standardmäßig wird jeder aktive Eingangsparameter zur Modellierung jedes Ausgangsparameters herangezogen. Mittels dieser Funktion kann NN-Tool angewiesen werden, bestimmte Eingänge bei bestimmten Ausgängen unberücksichtigt zu lassen oder nur einen rein monotonen Zusammenhang zuzulassen. 

 [Inhaltsverzeichnis]  [nach oben] 

 

Lernalgorithmus

extrem schneller (praktisch immer konvergenter) Lernalgorithmus um auch große Probleme in angemessener Zeit behandeln zu können. Beispiele:

  • 500 Datensätze bei ca. 10 Parametern benötigen weniger als 2 Sekunden Trainingszeit.
  • Mehrere zehntausend Datensätze bei mehreren hundert Ein- und Ausgangsgrößen ca. 2 Stunden. Bei der Bayer AG wurden mit diesem Verfahren neuronale Netze mit über 100000 Datensätzen und über 2000 Ein- und Ausgangsgrößen gerechnet.
  • Nutzung sämtlicher Rechenkerne eines Prozessors.

Es wird eine Weiterentwicklung des BBK-Algorithmus, eines speziell für neuronale Netze entwickelten Verfahrens, eingesetzt. Der BBK-Algorithmus ist in der folgenden Veröffentlichung beschrieben:


Bärmann, F., Biegler-König, F.: On a class of efficient learning algorithms for neural networks, Neural Networks 5, 1992
Die Weiterentwicklung mit dem Ziel nochmaliger Leistungssteigerung wird nicht veröffentlicht.

[Inhaltsverzeichnis]  [nach oben] 

Wie kommt die enorme Geschwindigkeit des Lernalgorithmus von NN-Tool zustande? 

Der BBK-Algorithmus ist ein maßgeschneidertes Verfahren ("special solver"), nicht die Anwendung eines allgemeinen Verfahrens ("general solver") auf die Lernaufgabe. Zu diesen allgemeinen Verfahren zählen z.B. Gradientenverfahren, Newtonverfahren, Conjugierte Gradientenverfahren, Genetische Algorithmen. Z.B. führt die Anpassung des Gradientenverfahrens an die Lernaufgabe auf das Backpropagationverfahren. BBK wurde hingegen speziell und ausschließlich für neuronale Netze entwickelt und nutzt die spezielle Struktur der Lernaufgabe mit dem Ziel maximaler Lerngeschwindigkeit und optimaler Modellgüte aus. Der Algorithmus ist im Gegensatz zu gradientenähnlichen Verfahren (z.B. konjugierte Gradienten, Newtonverfahren) auch nicht auf andere Problemstellungen übertragbar.

[Inhaltsverzeichnis]  [nach oben] 


Wie steht es mit der Fähigkeit zur Generalisierung (d.h. Prognose neuer Datensätze) des NN-Tool Lernverfahrens? 

Wie oben erläutert wurde das BBK-Verfahren u.a. mit dem Ziel optimaler Vorhersagegenauigkeit entwickelt. Die hohe Modellgenauigkeit (Modellgüte) beruht auf einer, durch den Algorithmus erzwungenen, starken internen Strukturierung des Netzes. Die Informationen sind also nicht mehr oder weniger gleich verteilt, sondern die einzelnen Knoten repräsentieren bestimmte, relevante Informationen des Netzes.


Für Kenner: BBK erzwingt Mechanismen, die dem Cascade-Correlation-Verfahren entsprechen. Darüber hinaus wird im automatischen Lernmodus von NN-Tool selbständig eine Vielzahl von Netzen auf ihre Generalisierungsfähigkeit getestet und das optimale Netz dem Anwender zur Verfügung gestellt (automatische Netzstrukturoptimierung). Automatische Netzstrukturoptimierung ist ein enorm rechenaufwendiges Vorgehen und setzt deshalb sehr schnelle Lernverfahren voraus.

[Inhaltsverzeichnis]  [nach oben] 

 

Inputoptimierung

Diese Option des Netztrainings ermöglicht es, sukzessive (sequenziell) die Anzahl der Eingangsparameter für die verschiedenen Ausgänge zu reduzieren, um damit eine optimale Eingangsparameterkonfiguration zu finden. Ziel ist es, für jeden Ausgang nur die jeweils notwendigen Eingänge zu behalten und die übrigen passiv zu schalten. Die optimalen Inputs werden auf der Basis bereits erstellter Netze anhand von Einflussanalysen automatisch bestimmt.

 [Inhaltsverzeichnis]  [nach oben] 

 

Bewertung der Prognosegüte

Scatterplot

Wichtigste grafische Auswertemöglichkeit zur Beurteilung der Güte der erstellten Netze.

Scatterplot: Beurteilung der Güte des Netzes durch Vergleich von prognostizierten und gemessenen Werten.

Für jeden Datensatz des Testsets ist hier der berechnete (prognostizierte) gegen den vorgegebenen (gemessenen) Wert der Ausgangsgröße "Output_3" aufgetragen. Darüber hinaus ist die "Winkelhalbierende" (grüne Linie) sowie die Ausgleichsgerade (rote Linie) durch die Punktewolke eingetragen.  Idealerweise sollten alle Punkte auf der Winkelhalbierenden (d.h. auf der Geraden y = x) liegen und die Ausgleichsgerade sollte mit der Winkelhalbierenden übereinstimmen. Auf diese Weise ermöglicht diese Darstellung eine schnelle visuelle Kontrolle der Güte des Netzes, die bei mehr als 2 Eingangsgrößen durch keine andere graphische Darstellung vergleichbar leicht möglich ist. Durch Anklicken der Taste Copy kann die Grafik in die Zwischenablage eingestellt werden und von da aus durch Kopieren beispielsweise in ein Word-Dokument übernommen werden.

[Inhaltsverzeichnis]  [nach oben] 


 

Verlaufsplot

Eine weitere grafische Methode zur Beurteilung der Modellgüte (insbesondere für Zeitreihen):

 



Verlaufsplot: Beurteilung der Güte des Netzes durch Vergleich von prognostizierten und gemessenen Werten.

Bei dieser Darstellung werden für die einzelnen Datensätze des Testsets (bzw. Lernsets) der prognostizierte und der gemessene Wert über der Nummer des Datensatzes aufgetragen

[Inhaltsverzeichnis]  [nach oben] 



Einflussanalyse 

Falls ein hinreichend genaues Modell erreicht worden ist, kann dieses Modell nun zu Analysen des Einflusses der Eingangs- auf die Ausgangsgrößen herangezogen werden. NN-Tool bestimmt den mittleren Einfluss und den mittleren absoluten Einfluss einer Eingangsgröße xj auf eine Ausgangsgröße yi, in dem an allen vorliegenden Datenpunkten die entsprechenden partiellen Ableitungen des skalierten NN-Modells (bzw. die Beträge davon) berechnet und dann gemittelt werden. Alternativ kann die entsprechende Analyse auch an einzelnen Betriebspunkten durchgeführt werden. Die Ergebnisse können tabellarisch oder grafisch ausgewertet werden:

 

 

Sensitivitätsanalyse: Bestimmung des Einflusses der Einflussgrößen auf die Ausgangsgrößen eines neuronalen Netzes.
Die beiden wichtigsten Einflüsse auf die Ausgangsgröße "Eig1" sind „Komp2“ und „Komp3“. Eine Erhöhung von „Komp2“ wirkt sich positiv, eine Erhöhung von „Komp3“ negativ auf die Ausgangsgröße „Eig1“ aus.

[Inhaltsverzeichnis]  [nach oben] 

 

Einflussplot

Bei der Einflussanalyse wurden die gemittelten Einflüsse untersucht. Das Charakteristikum nichtlinearer Zusammenhänge ist jedoch, dass der Einfluss einer Eingangsgröße auf eine Ausgangsgröße auch von allen anderen Eingangsgrößen abhängig ist. Dies lässt sich mit Einflussplots grafisch darstellen:

 


Einflussplot: Einfluss der Eingangs- auf die Ausgangsgrößen.

[Inhaltsverzeichnis]  [nach oben] 



Einflussplot 3D

Es kann auch eine 3D-Darstellung erzeugt werden:

 

 

3D - Einflussplot

[Inhaltsverzeichnis]  [nach oben] 

 

Automatische Dokumentation

Dieses Feature ermöglicht es, vollautomatisch sämtliche für ein Netz relevanten Informationen zu erzeugen und in einer Excel-Mappe abzuspeichern. Dieses schließt Grafiken wie Scatter- und Verlaufsplot mit ein.

[Inhaltsverzeichnis]  [nach oben] 

 

Anwendungsmodule

Nach der Erstellung neuronaler Netze sollen diese Modelle im Allgemeinen zu bestimmten Aufgaben eingesetzt werden. Die NN-Tool-Anwendungsmodule bieten verschiedene integrierte Prognose- und Optimierungsmöglichkeiten auf erstellten Netzen.

[Inhaltsverzeichnis]  [nach oben] 

Mischpult

Die Anwendung Mischpult dient der Prognose einzelner neuer Datensätze mit Hilfe von Tastatureingaben oder über Schieberegler. Bei Rezeptur- Eigenschaftsbeziehungen können die Rezepturnebenbedingungen automatisch sichergestellt werden.

 [Inhaltsverzeichnis]  [nach oben] 

 

Versuchsplanung

Das Modul Versuchsplanung ermöglicht die Prognose einer großen Zahl von automatisch berechneten Datensätzen. Dazu wird zunächst der sogenannte Scanbereich, auf dem die Untersuchung stattfinden soll, festgelegt. Jeder Eingangsparameter wird auf einem vorgegebenen Intervall in einer bestimmten Anzahl von Zwischenpunkten abgetastet. D.h. es wird ein Gitternetz von Datenpunkten im Eingangsraum erzeugt und die entsprechenden Ausgangsgrößen werden prognostiziert. Nach der Durchrechnung von üblicherweise Tausenden von Datensätzen findet eine Auswahl der Sätze nach spezifisch vorgegebenen Zielwerten statt. Eine vom Anwender vorgegebene Anzahl der bezüglich der Zielwerte am besten geeigneten Datensätze wird angezeigt. In diesem Sinne handelt es sich um eine a-posteriori-Versuchsplanung. Ausgehend von einem bestehenden Datenmodell werden neue "vielversprechende" Versuche geplant; vielversprechend natürlich im Hinblick auf das angestrebte Eigenschaftsprofil.

 [Inhaltsverzeichnis]  [nach oben] 

 

Optimierer

NN-Tool stellt eine Umgebung zur Definition und Lösung komplexer Optimierungsprobleme zur Verfügung. Der Optimierer ermöglicht die Berechnung optimaler Rezepturen (Mischungen) und Betriebs­punkte auf der Basis eines mit NN-Tool erstellten neuronalen Netzes. Bei der Optimierung kann eine Vielzahl von Nebenbedingungen (incl. Mixed-Integer NB) berücksichtigt werden. Insbesondere können die beiden Hauptanwendungsbereiche "Optimierung von Betriebspunkten" und "Rezepturoptimierung" vollständig abgedeckt werden.
Für die Eingangsgrößen gilt im Einzelnen:

  • Für jede Eingangsgröße kann festgelegt werden, ob sie mitoptimiert oder auf ihrem Start­wert festgehalten wird. Bei Optimierung können obere und untere Grenzen festgelegt werden.
  • Die Eingangsgrößen können beliebigen Komponentengruppen (z.B. Gruppe der Katalysa­toren, der Stabilisatoren, Flammhemmer etc.) zugeordnet werden. Für jede derartige Gruppe können obere und untere Grenzen sowie die Maximalzahl der eingesetzten Komponenten vorgegeben werden. Beispiel: von den 20 verfügbaren Katalysatoren sollen höchstens 3 mit einer Gesamtkonzentration zwischen 2 und 5 Prozent eingesetzt werden. Gleichzeitig soll genau ein Flammschutzmittel mit einer Konzentration von 5 % eingesetzt werden.
  • Neben den Rezepturkomponenten können weitere kontinuierliche Größen z.B. Druck, Temperatur, Verweilzeit mitberücksichtigt werden, d.h. diese Größen können entweder mitoptimiert oder auf Vorgabewerten gehalten werden.
  • Als weitere Eingangsgrößen können zusätzliche Klassifikatoren mitoptimiert werden. Es kann zum Beispiel die optimale Rezeptur zusammen mit dem geeignetsten Rührertyp ermittelt werden.
  • Auf die Berücksichtigung von Rezepturkomponenten kann vollständig verzichtet werden. In diesem Fall liefert das System eine Berechnung optimaler Betriebspunkte.

Bei den Ausgangsgrößen bestehen die Optionen:

  • Es können genaue Zielwerte angestrebt, oder nur das Über- bzw. Unterschreiten bestimmter Qualitätsmerkmale verhindert werden. Darüber hinaus können zulässige Band­breiten vorgegeben werden.
  • Klassifikatoren können mitoptimiert werden: „berechne farbneutrale Mischung mit den folgenden weiteren Eigenschaften...“
  • Rezepturkosten können mitoptimiert werden.

Es stehen drei Lösungstrategien zur Verfügung, die dem System unterschiedliche „Kreativität“ ermöglichen:

  • Das System erstellt die zu berechnende Rezeptur von Grund auf (maximale Kreativität).
  • Das System geht von bestehenden Rezepturen aus, kann aber eingesetzte Komponenten gegen andere austauschen.
  • Das System bestimmt die optimale bestehende Rezeptur und variiert nur die Konzentrationen, d.h. es tauscht insbesondere keine Komponenten aus (minimale Kreativität).

Welches Verfahren wird bei NN-Tool zur Rezepturoptimierung bzw. zur Optimierung von Betriebspunkten eingesetzt?

Die Optimierung von Betriebspunkten oder die Rezepturoptimierung auf der Basis eines erstellten neuronalen Netzes ist wegen der zu berücksichtigenden Nebenbedingungen und der Vielzahl der Eingangsgrößen sehr rechenaufwendig. Dies trifft insbesondere für die sogenannten Auswahlnebenbedingungen bei der Rezepturoptimierung zu. Dabei geht es darum aus einer Vielzahl möglicher Einsatzstoffe nur einige wenige auszuwählen (z.B. 6 aus 49). Für die jeweils getroffene Auswahl ist dann noch eine klassische Optimierungsaufgabe zu lösen. Dies alles führt auf eine Klasse von Optimierungsproblemen, die in der Literatur als "Mixed Integer Nonlinear Programming" bekannt ist, und die allgemein als schwierigste (d.h. rechenintensivste) bekannte Klasse von Optimierungsproblemen gilt. Bei NN-Tool als Produkt für den professionellen Einsatz werden für rechenintensive Aufgaben ausschließlich speziell angepaßte Algorithmen ("special solver", vgl. auch eingesetzt. Der Optimierer ist also nicht einfach die Anpassung von bekannten Verfahren ("general solver", wie z.B. Gradientenverfahren, Newtonverfahren, Conjugierte Gradientenverfahren, Genetische Algorithmen) auf die Optimierungsaufgabe.

[Inhaltsverzeichnis]  [nach oben] 

 

Prognosen mit Fehlerabschätzungen

Für die Simulationsmodule Mischpult, Versuchsplanung, Optimierer besteht die Möglichkeit zu prognostizierten Ausgangswerten Fehlerabschätzungen anzufragen. dazu ermittelt NN-Tool seine eigene Prognosegüte auf Datensätzen des Lernsets, die benachbart zum aktuellen Datenpunkt liegen und extrapoliert die an diesen Nachbarpunkten auftretenden Fehler auf den gerade betrachteten Datensatz.

[Inhaltsverzeichnis]  [nach oben] 

 

Dynamische Simulation

Dieses Anwendungsmodul (siehe auch unter Simulation) dient der Simulation von Zeitreihen. Der Anwender hat die Möglichkeit für die Eingangsgrößen beliebige Zeitfunktionen als Vorgaben zu machen. Das Modul berechnet anschließend auf der Basis des zugrundeliegenden Netzes die Reaktion des betrachteten Systems. Diese Simulationen können in Abhängigkeit des entsprechenden NN-Tool-Modells autoregressiv oder nicht autoregressiv durchgeführt werden. Als Vorgaben können bestehende Messdatendateien (zum Beispiel vom Vortag) geladen werden.

 

 

 

Anschließend können Fragen vom folgenden Typ beantwortet werden:


"Was wäre passiert, wenn wir gestern um 14:32 Uhr die Vorlauftemperatur deutlich hochgefahren hätten?"

[Inhaltsverzeichnis]  [nach oben] 

 

Autoregressive Modelle

Autoregressiv bedeutet, dass mindestens eine der Ausgangsgrößen selbst auch Eingangsgröße ist, dann natürlich zu einem früheren Zeitpunkt. D.h. die Modellierung einer Größe beruht (teilweise) auf der selben Größe (daher „Auto“). Autoregressiv ist nicht zwangsläufig identisch mit dem Auftreten von Totzeiten. Autoregressive Modelle verwenden immer Totzeiten, aber nicht jedes Totzeitenmodell ist autoregressiv.
Warum ist diese Charakterisierung wichtig? Wenn mit Hilfe eines autoregressiven Modells Simulationsrechnungen durchgeführt werden sollen, will man ja in der Regel Vorhersagen der Ausgangsgrößen für bestimmte vorgegebene Verläufe der Eingangsgrößen machen. Falls dabei mehr als nur ein Schritt in die Zukunft gerechnet werden soll, muss das Modell wiederholt angewandt werden. Dazu müssen die im vorhergehenden Prognoseschritt ermittelten Ausgangsgrößen (hier y) im nächsten Schritt als Eingangsgrößen verwendet werden. D.h. ab dem zweiten Schritt basiert die Simulation im Gegensatz zur ursprünglichen Modellbildung nicht mehr ausschließlich auf Messdaten. Je weiter man in die Zukunft rechnet, desto häufiger werden die berechneten Werte, die ja möglicherweise Modellfehler beinhalten, eingesetzt. Dies bedeutet, dass autoregressive Modelle im mathematischen Sinne dynamische Systeme sind, während nichtautoregressive Modelle einfache Funktionen sind. Insbesondere besteht bei autoregressiven Modellen die Gefahr, dass sich die Modellfehler immer mehr aufschaukeln, je weiter man mit dem Modell in die Zukunft rechnet. In diesem Fall wird die Simulation als instabil bezeichnet. Dieser Effekt kann unterschiedlich stark ausgeprägt auftreten, man sollte sich aber zumindest dieser Möglichkeit bewusst sein. Das Modul erkennt autoregressive Modelle selbstständig und bietet eine Möglichkeit die Stabilität der Simulation, die ja insbesondere von der Modellgüte abhängt, zu testen.

[Inhaltsverzeichnis]  [nach oben] 



Online-Anwendungen - Anbindung an Prozessleitsysteme 

Zur Realisierung von Online-Anwendungen, z.B. Softsensor-Anwendungen oder modellgestützten Regelungen, auf der Basis von NN-Tool Prozessmodellen, steht die zusätzlich lieferbare Softwarekomponente „NNControlServer“ (.NET-Library) zur Verfügung. Die Komponente ermöglicht die Integration der entsprechenden Softwaremodule in Prozessleitsysteme. Es stehen u.a. die folgenden Funktionalitäten zur Verfügung:

  • Einbindung in beliebige Programme
  • Laden einer entsprechenden NN-Tool Applikation
  • Prognose einzelner Datensätze für definierte Zeitintervalle in der Zukunft
  • Bereitstellung eines Schieberegisters für Totzeiten
  • Glättungsfilter für verrauschte Eingangsdaten
  • Offsetkompensation von Modellfehlern, falls zeitversetzte Ausgangsgrößen verfügbar
  • Berechnung von Stellgrößen für Regelungsanwendungen („Model Based Predictive Control“)

Die Konvertierung und Anpassung eines NN-Tool-Netzes für die spezifischen Belange von Online-Anwendungen erfolgt in NN-Tool selbst. In dieser Umgebung kann die Funktionalität dann auch direkt mittels Simulationen getestet werden.

[Inhaltsverzeichnis]  [nach oben] 

 

Multinetzanwendungen

Multi-Netz-Anwendungen sind Anwendungen zu deren Beschreibung nicht ein einzelnes neuronales Netz eingesetzt wird, sondern eine Verschaltung mehrerer Netze oder sogenannter UserModule. damit lassen sich beispielsweise Teilanlagen einzeln modellieren und anschließend zu einem Gesamtmodell verschalten. Zusätzlich können bekannte funktionale Zusammenhänge als UserModule ("White-Box-Modell") abgebildet und integriert werden.

 [Inhaltsverzeichnis]  [nach oben] 

 

Excel-Integration

Möglichkeiten zur Integration erstellter Netze in Excel (Excel-Add-Inns). Diese Option bietet die Möglichkeit, hybride Modelle bestehend aus physikalischen Modellen und neuronalen Netzen zu erstellen.

[Inhaltsverzeichnis]  [nach oben] 

 

Bibliotheken

  • Run-Time Bibliothek in C oder .NET zur Einbindung erstellter Netze in beliebige Applikationen. Die Bibliothek umfasst Routinen zum Laden der Netze, für Prognosen einzelner Sätze incl. Fehlerabschätzungen sowie für Optimierungszwecke.
  • NN-Tool ControlServer: Komponente zur Realisierung von Online-Anwendungen, z.B. Softsensor-Anwendungen oder modellgestützten Regelungen, auf der Basis von NN-Tool Prozessmodellen (.NET-Library).

[Inhaltsverzeichnis]  [nach oben] 

 

Hard- und Softwarevoraussetzungen:

NN-TOOL ist für Windows XP bis Windows 10 (32 oder 64 Bit) verfügbar (andere Systeme auf Anfrage). Die Netzgröße wird nur durch den verfügbaren Speicher beschränkt.

[Inhaltsverzeichnis]  [nach oben]