Verfahren sowie Computerprogramm mit Programmcode-Mitteln und Computerprogramm-Produkt zur Ermittlung eines zukünftigen Systemverhaltens eines dynamischen Systems
Bei der Erfindung wird unter Verwendung eines bekannten Systemverhaltens des dynamischen Systems durch einen Ähnlichkeitsvergleich eine Näherung für das zukünftige Systemverhalten ermittelt ("Similarity Analysis"). Anschließend wird unter Verwendung der Näherung für das zukünftige Systemverhalten des dynamischen Systems und unter Verwendung einer neuronalen Netzstruktur, insbesondere eines Causal-Retro-Causal Networks, das zukünftige Systemverhalten ermittelt ("Causality Analysis").
Beschreibung[de]
Die Erfindung betrifft ein Verfahren sowie ein Computerprogramm mit
Programmcode-Mitteln und ein Computerprogramm-Produkt zur Ermittlung eines zukünftigen
Systemverhaltens eines dynamischen Systems.
Aus [1] ist es bekannt, zur Beschreibung und Modellierung eines dynamischen
Systems bzw. eines dynamischen Prozesses und dessen Prozessverhaltens eine neuronale
Struktur, beispielsweise ein neuronales Netz, einzusetzen.
Allgemein wird ein dynamisches System bzw. ein dynamischer Prozess
durch eine Zustandsübergangsbeschreibung, die für einen Beobachter des dynamischen
Prozesses nicht sichtbar ist, und eine Ausgangsgleichung, die beobachtbare Größen
des technischen dynamischen Prozesses beschreibt, beschrieben.
Ein solches Prozessverhalten eines dynamischen Prozesses ist in
2 dargestellt.
Der dynamische Prozess 200 bzw. ein dynamisches System
200, in dem der dynamische Prozess abläuft, unterliegt dem Einfluss einer
externen Eingangsgröße u vorgebbarer Dimension, wobei eine Eingangsgröße ut
zu einem Zeitpunkt t mit ut bezeichnet wird:
wobei mit 1 eine natürliche Zahl bezeichnet wird.
Die Eingangsgröße ut zu einem Zeitpunkt t verursacht eine
Veränderung des dynamischen Prozesses.
Ein innerer Zustand st (st ∊
vorgebbarer Dimension m zu einem Zeitpunkt t ist für einen Beobachter des dynamischen
Systems 200 nicht beobachtbar.
In Abhängigkeit vom inneren Zustand st und der Eingangsgröße
ut wird ein Zustandsübergang des inneren Zustandes st des
dynamischen Prozesses verursacht und der Zustand des dynamischen Prozesses geht
über in einen Folgezustand st+1 zu einem folgenden Zeitpunkt t+1.
Dabei gilt:
st+1 = f(st, ut).(1)
wobei mit f(.) eine allgemeine Abbildungsvorschrift bezeichnet wird.
Eine von einem Beobachter des dynamischen Systems 200 beobachtbare
Ausgangsgröße yt zu einem Zeitpunkt t hängt ab von der Eingangsgröße
ut sowie dem inneren Zustand st.
Die Ausgangsgröße yt (yt ∊
ist vorgebbarer Dimension n.
Die Abhängigkeit der Ausgangsgröße yt von der Eingangsgröße ut
und dem inneren Zustand st des dynamischen Prozesses ist durch folgende allgemeine
Vorschrift gegeben:
yt = g(st),(2)
wobei mit g(.) eine allgemeine Abbildungsvorschrift bezeichnet wird.
Zur Beschreibung des dynamischen Systems 200 wird in [1]
eine neuronale Struktur aus miteinander verbundenen Rechenelemente in Form eines
neuronalen Netzes miteinander verbundener Neuronen eingesetzt. Die Verbindungen
zwischen den Neuronen des neuronalen Netzes sind gewichtet. Die Gewichte des neuronalen
Netzes sind in einem Parametervektor v zusammengefasst.
Somit hängt ein innerer Zustand eines dynamischen Systems, welches
einem dynamischen Prozess unterliegt, gemäß folgender Vorschrift von der Eingangsgröße
ut und dem inneren Zustand des vorangegangenen Zeitpunktes st
und dem Parametervektor v ab: st+1 = NN(v, st, ut),(3)
wobei mit NN(.) eine durch das neuronale Netz vorgegebene Abbildungsvorschrift bezeichnet
wird.
Diese Beschreibung des dynamischen Systems 200 gemäß Beziehung
(3) wird auch als "Forecast Approach" bezeichnet.
Alternativ dazu lässt sich das dynamische System auch durch:
st = f(st-1, ut)(1)
mit
st = NN(v, st-1, ut)(3)
beschreiben, was als "Consistency Approach" bezeichnet wird. "Forecast Approach"
und "Consistency Approach" führen zu geringfügigen strukturellen Unterschieden in
den jeweiligen Netzstrukturen, sind aber gleichwertige, alternativ verwendbare Beschreibungsformen
für dynamische Systeme.
Aus [2] ist eine weitere neuronale Struktur zur Beschreibung des dynamischen
Systems 200, ein als Time Delay Recurrent Neural Network (TDRNN) bezeichnetes
neuronales Netz, bekannt.
Das bekannte TDRNN ist in 5 als ein über
eine endliche Anzahl von Zeitpunkten (dargestellt 5 Zeitpunkte: t-4, t-3, t-2, t-1,
t) entfaltetes neuronales Netz 500 dargestellt.
Das in 5 dargestellte neuronale Netz
500 weist eine Eingangsschicht 501 mit fünf Teileingangsschichten
521, 522, 523, 524 und 525 auf, die
jeweils eine vorgebbare Anzahl Eingangs-Rechenelemente enthalten, denen Eingangsgrößen
ut-4 ut-3, ut-2, ut-1 und ut
zu vorgebbaren Zeitpunkten t-4, t-3, t-2, t-1 und t, d.h, im weiteren beschriebene
Zeitreihenwerte mit vorgegebenen Zeitschritten, anlegbar sind.
Eingangs-Rechenelemente, d.h. Eingangsneuronen, sind über variable
Verbindungen mit Neuronen einer vorgebbaren Anzahl versteckter Schichten
505 (dargestellt 5 verdeckte Schichten) verbunden.
Dabei sind Neuronen einer ersten 531, einer zweiten
532, einer dritten 533, einer vierten 534 und einer fünften
535 versteckten Schicht jeweils mit Neuronen der ersten 521, der
zweiten 522, der dritten 523, der vierten 524 und der
fünften 525 Teileingangsschicht verbunden.
Die Verbindungen zwischen der ersten 531, der zweiten
532, der dritten 533, der vierten 534 und der fünften
535 versteckten Schicht mit jeweils der ersten 521, der zweiten
522, der dritten 523, der vierten 524 und der fünften
525 Teileingangsschicht sind jeweils gleich. Die Gewichte aller Verbindungen
sind jeweils in einer ersten Verbindungsmatrix B1 enthalten.
Ferner sind die Neuronen der ersten versteckten Schicht
531 mit ihren Ausgängen mit Eingängen von Neuronen der zweiten versteckten
Schicht 532 gemäß einer durch eine zweite Verbindungsmatrix A1
gegebene Struktur verbunden. Die Neuronen der zweiten versteckten Schicht
532 sind mit ihren Ausgängen mit Eingängen von Neuronen der dritten versteckten
Schicht 533 gemäß einer durch die zweite Verbindungsmatrix A1
gegebene Struktur verbunden. Die Neuronen der dritten versteckten Schicht
533 sind mit ihren Ausgängen mit Eingängen von Neuronen der vierten versteckten
Schicht 534 gemäß einer durch die zweite Verbindungsmatrix A1
gegebene Struktur verbunden. Die Neuronen der vierten versteckten Schicht
534 sind mit ihren Ausgängen mit Eingängen von Neuronen der fünften versteckten
Schicht 535 gemäß einer durch die zweite Verbindungsmatrix A1
gegebene Struktur verbunden.
In den versteckten Schichten, der ersten versteckten Schicht
531, der zweiten versteckten Schicht 532, der dritten versteckten
Schicht 533, der vierten versteckten Schicht 534 und der fünften
versteckten Schicht 535 werden jeweils "innere" Zustände oder "innere"
Systemzustände st-4, st-3, st-2, st-1,
und st eines durch das TDRNN beschriebenen dynamischen Prozesses an fünf
aufeinanderfolgenden Zeitpunkten t-4, t-3, t-2, t-1 und t repräsentiert.
Die Angaben in den Indizes in den jeweiligen Schichten geben jeweils
den Zeitpunkt t-4, t-3, t-2, t-1 und t an, auf die sich jeweils die an den Ausgängen
der jeweiligen Schicht abgreifbaren bzw. zuführbaren Signale beziehen
(ut-4, ut-3, ut-2, ut-1, ut).
Eine Ausgangsschicht 520 weist fünf Teilausgangsschichten,
eine erste Teilausgangsschicht 541, eine zweite Teilausgangsschicht
542, eine dritte Teilausgangsschicht 543, eine vierte Teilausgangsschicht
544 sowie eine fünfte Teilausgangsschicht 545 auf. Neuronen der
ersten Teilausgangsschicht 541 sind gemäß einer durch eine Ausgangs-Verbindungsmatrix
C1 gegebenen Struktur mit Neuronen der ersten versteckten Schicht
531 verbunden. Neuronen der zweiten Teilausgangsschicht 542 sind
ebenfalls gemäß der durch die Ausgangs-Verbindungsmatrix C1 gegebenen
Struktur mit Neuronen der zweiten versteckten Schicht 532 verbunden. Neuronen
der dritten Teilausgangsschicht 543 sind gemäß der Ausgangs-Verbindungsmatrix
C1 mit Neuronen der dritten versteckten Schicht 533 verbunden.
Neuronen der vierten Teilausgangsschicht 544 sind gemäß der Ausgangs-Verbindungsmatrix
C1 mit Neuronen der vierten versteckten Schicht 534 verbunden.
Neuronen der fünften Teilausgangsschicht 545 sind gemäß der Ausgangs-Verbindungsmatrix
C1 mit Neuronen der fünften versteckten Schicht 535 verbunden.
An den Neuronen der Teilausgangsschichten 541, 542,
543, 544 und 545 sind die Ausgangsgrößen für jeweils
einen Zeitpunkt t-4, t-3, t-2, t-1, t abgreifbar (yt-4, yt-3,
y't-2, yt-1, yt). Der Grundsatz, dass äquivalente
Verbindungsmatrizen in einem neuronalen Netz zu einem jeweiligen Zeitpunkt die gleichen
Werte aufweisen, wird als Prinzip der sogenannten geteilten Gewichtswerte (Shared
Weights) bezeichnet.
Die aus [2] bekannte und als Time Delay Recurrent Neural Network (TDRNN)
bezeichnete Anordnung wird in einer Trainingsphase derart trainiert, dass zu einer
Eingangsgröße ut jeweils eine Zielgröße ydt
an einem realen dynamischen System ermittelt wird. Das Tupel (Eingangsgröße, ermittelte
Zielgröße) wird als Trainingsdatum bezeichnet. Eine Vielzahl solcher Trainingsdaten
bilden einen Trainingsdatensatz.
Dabei weisen zeitlich aufeinanderfolgende Tupel (ut-4,
ydt–4) (ut-3, ydt–3),
(ut-2, ydt-2) der Zeitpunkte (t-4, t-3, t-3,
...) des Trainingsdatensatzes jeweils einen vorgegeben Zeitschritt auf.
Mit dem Trainingsdatensatz wird das TDRNN trainiert. Eine Übersicht
über verschiedene Trainingsverfahren ist ebenfalls in [1] und [4] zu finden.
Es ist an dieser Stelle zu betonen, dass lediglich die Ausgangsgrößen
yt-4, yt-3, ..., yt zu Zeitpunkten t-4, t-3, ...,
t des dynamischen Systems 200 erkennbar sind. Die "inneren" Systemzustände
st-4, st-3, ..., st sind nicht beobachtbar.
In der Trainingsphase wird üblicherweise folgende Kostenfunktion E
minimiert:
wobei mit T eine Anzahl berücksichtigter Zeitpunkte bezeichnet wird.
Aus [5] und [6] sind Weiterentwicklungen der aus [2] bekannten und
als Time Delay Recurrent Neural Network (TDRNN) bezeichneten neuronalen Struktur
bekannt.
Die Weiterentwicklungen aus [5] sind insbesondere geeignet zur Ermittlung
zukünftiger Zustände eines dynamischen Prozesses, was als "overshooting" bezeichnet
wird.
Fig. 1a aus [5] zeigt eine
Grundstruktur, die den aus [5] bekannten Weiterentwicklungen zugrunde liegt.
Die Grundstruktur ist ein über drei Zeitpunkte t, t+1, t+2 entfaltetes
neuronales Netz.
Sie weist eine Eingangsschicht auf, die eine vorgebbare Anzahl von
Eingangsneuronen enthält, denen Eingangsgrößen ut zu vorgebbaren Zeitpunkten
t, d.h. im weiteren beschriebene Zeitreihenwerte mit vorgegebenen Zeitschritten,
anlegbar sind.
Die Eingangsneuronen, sind über variable Verbindungen mit Neuronen
einer vorgebbaren Anzahl versteckter Schichten (dargestellt 3 verdeckte Schichten)
verbunden.
Dabei sind Neuronen einer ersten versteckten Schicht mit Neuronen
der ersten Eingangsschicht verbunden.
Die Verbindung zwischen der ersten versteckten Schicht mit der ersten
Eingangsschicht weist Gewichte auf, die in einer ersten Verbindungsmatrix B enthalten
sind.
Ferner sind die Neuronen der ersten versteckten Schicht mit ihren
Ausgängen mit Eingängen von Neuronen einer zweiten versteckten Schicht gemäß einer
durch eine zweite Verbindungsmatrix A gegebene Struktur verbunden. Die Neuronen
der zweiten versteckten Schicht sind mit ihren Ausgängen mit Eingängen von Neuronen
einer dritten versteckten Schicht gemäß einer durch die zweite Verbindungsmatrix
A gegebene Struktur verbunden.
In den versteckten Schichten, der ersten versteckten Schicht, der
zweiten versteckten Schicht und der dritten versteckten Schicht werden jeweils "innere"
Zustände oder "innere" Systemzustände st, st+1 und st+2
des beschriebenen dynamischen Prozesses an drei aufeinanderfolgenden Zeitpunkten
t, t+1 und t+2 repräsentiert.
Die Angaben in den Indizes in den jeweiligen Schichten geben jeweils
den Zeitpunkt t, t+1, t+2 an, auf die sich jeweils die an den Ausgängen der jeweiligen
Schicht abgreifbaren bzw. zuführbaren Signale (ut) beziehen.
Eine Ausgangsschicht 120 weist zwei Teilausgangsschichten,
eine erste Teilausgangsschicht und eine zweite Teilausgangsschicht, auf. Neuronen
der ersten Teilausgangsschicht sind gemäß einer durch eine Ausgangs-Verbindungsmatrix
C gegebenen Struktur mit Neuronen der ersten versteckten Schicht verbunden. Neuronen
der zweiten Teilausgangsschicht sind ebenfalls gemäß der durch die Ausgangs-Verbindungsmatrix
C gegebenen Struktur mit Neuronen der zweiten versteckten Schicht verbunden.
An den Neuronen der Teilausgangsschichten sind die Ausgangsgrößen
für jeweils einen Zeitpunkt t+1, t+2 abgreifbar (yt+1, yt+2).
Eine weitere Weiterentwicklung dieser Grundstruktur aus [5] ist in
6 dargestellt.
Weiterentwicklungen der TDRNN-Struktur aus [6], sogenannte Error-Correction-Recurrent-Neural-Networks
ECRNN), betreffen einen strukturell bedingten Fehler-Korrektur-Mechanismus, welcher
als struktureller Bestandteil in eine neuronale Struktur integriert ist.
7 zeigt eine grundlegende Struktur mit entsprechenden
funktionalen Beziehungen eines ECRNN.
Aus [7] ist eine weitere neuronale Struktur zur Beschreibung des dynamischen
Systems 200, ein als Causal-Retro-Causal Time Delay Recurrent Neural Network
(kurz Causal-Retro-Causal Neural Network; CRCNN) bezeichnetes neuronales Netz, bekannt.
3 zeigt eine grundlegende Struktur
300 mit entsprechenden funktionalen Beziehungen eines CRCNN.
Bei diesem CRCNN sind zwei neuronale Teilstrukturen 310,
320 miteinander gekoppelt. Dabei hängen ein erster innerer Teilzustand
st (311 – 314) der ersten neuronalen Teilstruktur
310 und ein zweiter inneren Teilzustand rt (321 –
324) der zweiten neuronalen Teilstruktur 320 gemäß folgenden Vorschriften
von der Eingangsgröße ut (301 – 304), dem ersten
inneren Teilzustand st-1 (311 – 314), dem zweiten
inneren Teilzustand rt+1 (321 – 324) sowie Parametervektoren
vs, vt, vy ab:
st = NN(vs, st1, ut),(8)rt = NN(vr , rt+1, ut)(9)yt = NN(vy, st, rt)(10)
wobei mit NN(.) eine durch das neuronale Netz vorgegebene Abbildungsvorschrift bezeichnet
wird.
Verbindungen zwischen den Neuronen des CRCNN sind gewichtet. Die Gewichte
sind in Parametervektoren vs, vt, vy zusammengefasst.
Das CRCNN 300 gemäß 3 ist ein
über vier Zeitpunkte, t-1, t, t+1 und t+2, entfaltetes Neuronales Netz (vgl. TDRNN,
5).
Grundzüge eines über eine endliche Anzahl von Zeitpunkten entfaltetes
Neuronalen Netzes sind in [2] und im obigen im Zusammenhang mit dem bekannten TDRNN
(vgl. 5) beschrieben.
In [3] ist ferner ein Überblick über Grundlagen neuronaler Netze und
die Anwendungsmöglichkeiten neuronaler Netze im Bereich der Ökonomie zu finden.
Die bekannten Anordnungen und Verfahren weisen insbesondere den Nachteil
auf, dass durch sie ein zu beschreibendes dynamisches System nur unzureichend genau
beschrieben und damit zukünftige Entwicklungen des Systems nur unzureichend genau
prognostiziert werden können.
Dies gilt insbesondere für dynamische Systeme, welche einem planerischen
Einfluss unterliegen, d.h. dynamische Systeme, welche nicht nur rein marktgetrieben
sind.
Somit liegt der Erfindung das Problem zugrunde, ein Verfahren zur
Ermittlung eines zukünftigen Systemverhaltens eines dynamischen Systems anzugeben,
welches Verfahren nicht den Nachteilen der bekannten Anordnungen und Verfahren,
insbesondere deren Ungenauigkeiten, unterliegen.
Diese Aufgabe wird durch das Verfahren sowie durch das Computerprogramm
mit Programmcode-Mitteln und das Computerprogramm-Produkt zur Ermittlung eines zukünftigen
Systemverhaltens eines dynamischen Systems mit den Merkmalen gemäß dem jeweiligen
unabhängigen Patentanspruch gelöst.
Bei dem Verfahren zur Ermittlung eines zukünftigen Systemverhaltens
eines dynamischen Systems wird unter Verwendung eines bekannten Systemverhaltens
des dynamischen Systems durch einen Ähnlichkeitsvergleich bzw. Ähnlichkeitsanalyse
eine Näherung für das zukünftige Systemverhalten ermittelt („Similarity Analysis").
Dann wird unter Verwendung der Näherung für das zukünftige Systemverhalten
des dynamischen Systems und unter Verwendung einer neuronalen Netzstruktur das zukünftige
Systemverhalten ermittelt („Causality Analysis"), wobei die Näherung für
das zukünftige Systemverhalten des dynamischen Systems der neuronalen Netzstruktur
als Eingangsgröße zugeführt wird und eine Ausgangsgröße der neuronalen Netzstruktur
das zukünftige Systemverhalten repräsentiert.
Anschaulich gesehen stellt die Erfindung eine Verbindung einer Ähnlichkeitsanalyse
("Similarity Analysis") mit einer Kausalitätsanalyse („Causality Analysis")
unter Verwendung einer neuronalen Netzstruktur dar.
Dabei wird die Ähnlichkeitsanalyse dazu eingesetzt, um aus einem historischen
Systemverhalten eine Näherung eines zukünftigen (zu erwartenden) Systemverhaltens
zu ermitteln. Basierend auf dieser Näherung wird anschließend gleich einer Nachkorrektur
unter Verwendung der neuronalen Netzstruktur das zukünftige Systemverhalten bestimmt
bzw. prognostiziert.
Diese zweistufige bzw. kombinierte Vorgehensweise, nämlich zuerst
eine Näherungsermittlung durch eine Ähnlichkeitsanalyse mit anschließender Nachkorrektur
unter Verwendung einer neuronalen Netzstruktur, ist insbesondere geeignet, um das
Systemverhalten von sogenannten "Human Controlled" Systemen (HCS) zu prognostizieren.
Unter solchen HCS sind solche Systeme zu verstehen, welche einem kontrollierenden
und/oder planerisch eingreifenden Einfluss unterliegen.
Beispiele für solche HCS sind ein Energieverbrauch, ein Stromverbrauch
oder eine Gasverbrauch bzw. entsprechende Energieverbrauchsverhalten.
Der Energie- bzw. Strom-/Gasverbrauch hängt dabei ab von einem Angebot
und einer Nachfrage von bzw. nach Energie. Ein Zusammenspiel von Angebot und Nachfrage
unterliegt zwar marktmechanischen (ökonomischen) Gesetzmäßigkeiten bzw. Mechanismen.
Allerdings kann durch Planung und entsprechendes zur Verfügung stellen von Angebotsmengen
an Energie in das Zusammenspiel bzw. in die Markdynamik, d.h. in das System, eingegriffen
werden.
Insbesondere sind bei der Erfindung solche neuronale Netzstrukturen
(im Rahmen der Kausalitätsanalyse) anzuwenden, welche insbesondere
für eine Wirkungs-Ursachenanalyse (Kausalitätsanalyse) geeignet sind.
Dynamische Systeme werden üblicherweise als Ursache-Wirkungszusammenhänge
(vgl. Ausführungen zu 2, Beziehungen (1) bis (3)) formuliert,
welche durch die aus [1], [2] oder [5] bekannten neuronalen Strukturen abgebildet
werden können. Diese Ursache-Wirkungszusammenhänge finden in diesen neuronalen Strukturen
darin Ausdruck, dass ein bei diesen neuronalen Strukturen erzeugter Informationsfluss
zeitlich vorwärts, d.h. von der Vergangenheit in die Zukunft, gerichtet ist. Solches
wird als Vorwärtsverhalten bezeichnet. Ursachen in Eingangsgrößen ut
zu vorangegangenen Zeitpunkten (t-2), (t-1),... führen zu (bemerkbaren) Wirkungen
in Ausgangsgrößen yt zum Zeitpunkt (t bzw. t+1). Dabei werden die Eingangsgrößen
ut durch die neuronale Ursachen-Wirkungs-Struktur auf die Ausgangsgrößen
yt abgebildet.
Dieser „vorwärtsgerichtete" Informationsfluss ist insbesondere
geeignet, um den marktmechanischen Einfluss zu berücksichtigen.
Diese "eindimensionalen" (vorwärtsgerichteten) Strukturen für die
Ursache-Wirkungs-Zusammenhänge können erweitert werden mit einer neuronalen Teilstruktur,
welche eine Wirkungs-Ursachenanalyse durchführt und damit eine kausale Synthese
vorbereitet.
Bei dieser (Wirkungs-Ursache-)Erweiterungsstruktur bzw. Wirkungs-Ursache-Struktur
wird ein zeitlich rückwärts gerichteter Informationsfluss, d.h. ein von der Zukunft
in die Vergangenheit gerichteter Informationsfluss, erzeugt. Solches wird als Rückwärtsverhalten
bezeichnet. Wirkungen in Ausgangsgrößen yt zum Zeitpunkt (t) "führen"
bzw. haben ihre Ursachen in Eingangsgrößen ut zum Zeitpunkt (t-1), (t-2),....
Dabei. werden in umgekehrter Weise zur Ursachen-Wirkungs-Struktur Ausgangsgrößen
yt (als Eingangsgrößen der Erweiterungsstruktur) auf die Eingangsgrößen
ut (als Ausgangsgrößen der Erweiterungsstruktur) abgebildet.
Dieser "rückwärtsgerichtete" Informationsfluss ist insbesondere geeignet,
um den planerischen und/oder kontrollierenden Einfluss zu berücksichtigen.
Die Erfindung ist insbesondere geeignet, zu einer Prognose des zukünftigen
Systemverhaltens des dynamischen Systems. Diese Prognose kann abgeleitet werden
aus dem ermittelten zukünftigen, Systemverhalten.
Das Computerprogramm mit Programmcode-Mitteln ist eingerichtet, um
alle Schritte gemäß dem erfindungsgemäßen Verfahren durchzuführen, wenn das Programm
auf einem Computer ausgeführt wird.
Das Computerprogramm-Produkt mit auf einem maschinenlesbaren Träger
gespeicherten Programmcode-Mitteln ist eingerichtet, um alle Schritte gemäß dem
erfindungsgemäßen Verfahren durchzuführen, wenn das Programm auf einem Computer
ausgeführt wird.
Die Anordnung sowie das Computerprogramm mit Programmcode-Mitteln,
eingerichtet um alle Schritte gemäß dem erfinderischen Verfahren durchzuführen,
wenn das Programm auf einem Computer ausgeführt wird, sowie das Computerprogramm-Produkt
mit auf einem maschinenlesbaren Träger gespeicherten Programmcode-Mitteln, eingerichtet
um alle Schritte gemäß dem erfinderischen Verfahren durchzuführen, wenn das Programm
auf einem Computer ausgeführt wird, sind insbesondere geeignet zur Durchführung
des erfindungsgemäßen Verfahrens oder einer seiner nachfolgend erläuterten Weiterbildungen.
Dabei können die beschriebenen Softwarelösungen auch dezentral bzw.
verteilt realisiert sein, d.h. dass Teile des Computerprogramms oder Teile des Computerprogramm-Produkts
– auch als eigenständige Teillösungen – auf verschiedenen (verteilten)
Computern ablaufen bzw. von diesen ausgeführt werden oder auf verschiedenen Speichermedien
gespeichert sind.
Bevorzugte Weiterbildungen der Erfindung ergeben sich aus den abhängigen
Ansprüchen.
Die im weiteren beschriebenen Weiterbildungen beziehen sich sowohl
auf das Verfahren als auch das Computerprogramm mit Programmcode-Mitteln und das
Computerprogramm-Produkt.
Die Erfindung und die im weiteren beschriebenen Weiterbildungen können
sowohl in Software als auch in Hardware, beispielsweise unter Verwendung einer speziellen
elektrischen Schaltung, realisiert werden.
Ferner ist eine Realisierung der Erfindung oder einer im weiteren
beschriebenen Weiterbildung möglich durch ein computerlesbares Speichermedium, auf
welchem das Computerprogramm mit Programmcode-Mitteln gespeichert ist, welches die
Erfindung oder Weiterbildung ausführt.
Auch kann die Erfindung oder jede im weiteren beschriebene Weiterbildung
durch ein Computerprogrammerzeugnis realisiert sein, welches ein Speichermedium
aufweist, auf welchem das Computerprogramm mit Programmcode-Mitteln gespeichert
ist, welches die Erfindung oder Weiterbildung ausführt.
Bei eine Weiterbildung weist die neuronale Netzstruktur zwei miteinander
gekoppelte Teilstrukturen auf.
Eine erste neuronale Teilstruktur ist derart angepasst, dass deren
erstes Abbildungsverhalten ein Vorwärtsverhalten des dynamischen Systems beschreibt.
Diese erste „vorwärtsgerichtete" neuronale Netzstruktur, welche
durch die aus [1],[2] oder [5] bekannten neuronalen Strukturen abgebildet werden
kann, ist insbesondere geeignet, um Ursache-Wirkungszusammenhänge (vgl. Ausführungen
zu 2, Beziehungen (1) bis (3)) nachzubilden bzw, zu
erkennen.
Dieser Ursache-Wirkungszusammenhang findet in dieser ersten neuronalen
Teilstruktur darin Ausdruck, dass ein bei dieser ersten neuronalen Teilstruktur
erzeugter Informationsfluss zeitlich vorwärts, d.h. von der Vergangenheit in die
Zukunft, gerichtet ist. Solches wird als Vorwärtsverhalten bezeichnet. Ursachen
in Eingangsgrößen ut zu vorangegangenen Zeitpunkten (t-2), (t-1),...
führen zu (bemerkbaren) Wirkungen in Ausgangsgrößen yt zum Zeitpunkt
(t bzw. t+1). Dabei werden die Eingangsgrößen ut durch die neuronale
Ursachen-Wirkungs-Struktur auf die Ausgangsgrößen yt abgebildet.
Die zweite neuronale Teilstruktur ist derart angepasst, dass deren
zweites Abbildungsverhalten ein Rückwärtsverhalten des dynamischen Systems beschreibt.
Diese zweite "rückwärtsgerichtete" neuronale Netzstruktur, welche
durch entsprechende aus [1], [2] oder [5] bekannten neuronalen Strukturen abgebildet
werden kann, ist insbesondere geeignet, um Wirkungs-Ursachenzusammenhänge nachzubilden
bzw. zu erkennen.
Diese zweite "rückwärtsgerichtete" neuronale Teilstruktur ist damit
insbesondere geeignet für die Durchführung einer Wirkungs-Ursachenanalyse, um damit
eine kausale Synthese vorzubereiten.
Bei dieser (Wirkungs-Ursache-)Teilstruktur wird ein zeitlich rückwärts
gerichteter Informationsfluss, d.h. ein von der Zukunft in die Vergangenheit gerichteter
Informationsfluss, erzeugt. Solches wird als Rückwärtsverhalten bezeichnet. Wirkungen
in Ausgangsgrößen yt zum Zeitpunkt (t) "führen" bzw. haben ihre Ursachen
in Eingangsgrößen ut zum Zeitpunkt (t-1), (t-2),.... Dabei werden in
umgekehrter Weise zur Ursachen-Wirkungs-Struktur Ausgangsgrößen yt (als
Eingangsgrößen der zweiten neuronalen Teilstruktur) auf die Eingangsgrößen ut
(als Ausgangsgrößen der zweiten neuronalen Teilstruktur) abgebildet.
Ferner ist die erste "vorwärtsgerichtete" neuronale Teilstruktur insbesondere
geeignet, einen Einfluss von Marktmechanismen auf das dynamische System zu berücksichtigen.
Die zweite "rückwärtsgerichtete" neuronale Teilstruktur ist insbesondere
dazu geeignet, einen planerischen Einfluss auf das dynamische System zu berücksichtigen.
Entsprechend diesem "vorwärtsgerichteten" Ursache-Wirkungszusammenhang
(Kausalität) und dem "rückwärtsgerichteten" Wirkungs-Ursachezusammenhang (Retrokausalität)
kann die neuronale Struktur aus erster und zweiter neuronalen Teilstruktur als Causal-Retro-Causal
Neural Network bezeichnet werden.
Bei einer Weiterbildung ist bzw. sind die erste und/oder die zweite
neuronale Teilstruktur ein über mehrere Zeitpunkte entfaltetes neuronales Netz,
beispielsweise eine TDRNN, bzw. über mehrere Zeitpunkte entfaltete neuronale Netze,
bei welchem bzw. bei welchen eine zeitliche Dimension des beschriebenen dynamischen
Systems als räumliche Dimension entwickelt wird.
Darüber hinaus kann es sinnvoll sein, dass die erste und/oder zweite
neuronale Teilstruktur als Error-Correction-Recurrent-Neural-Network (ECRNN) ausgestalten
ist/sind. Grundlagen solcher ECRNN sind in [6] beschrieben und können entsprechend
in die neuronalen Teilstrukturen eingebaut werden.
Bei einer Ausgestaltung ist vorgesehen, das bekannte Systemsverhalten
des dynamischen Systems unter Verwendung historischer Systemdaten zu ermitteln.
Die Näherung für das zukünftige Systemverhalten des dynamischen Systems
kann derart ermittelt werden, dass das bekannte Systemverhalten in Abschnitte vorgebbarer
Zeitlängen, wie ein Tag oder eine Stunde, unterteilt wird. Zu den Abschnitten werden
dann zugehörige Abschnittssystemverhalten ermittelt.
Aus den Abschnitten können bestimmte Abschnitte mit den jeweiligen
zugehörigen Abschnittssystemverhalten ausgewählt werden. Unter Verwendung dieser
ausgewählten Abschnitte und der ausgewählten zugehörigen Abschnittssystemverhalten
kann bei Berücksichtigung eines kalendarischen Effekts die Näherung ermittelt werden.
In einer Ausgestaltung werden solche Abschnitte ausgewählt, deren
zugehöriges Abschnittssystemverhalten ein signifikantes Verhalten aufweist.
Bei der Ermittlung der Näherung für das zukünftige Systemverhalten
des dynamischen Systems unter Verwendung der ausgewählten Abschnittssystemverhalten
kann ein Systemverhalten zwischen den ausgewählten Abschnittssystemverhalten interpoliert
und/oder gemittelt und/oder historische Abschnittssystemverhalten eingefügt werden/wird.
In einer Weiterbildung wird die Erfindung eingesetzt zu einer Prognose
eines Energieverbrauchs, insbesondere eines Verbrauchs von einer Gasmenge. Entsprechend
kann die Erfindung auch für eine Stromverbrauchsprognose eingesetzt werden.
Andere Einsatzszenarien sind vorstellbar, wie bei ökonomischen Systemen
(Finanzdienstleistungen, Banken, Versicherungen) oder Industriesystemen (Produktionssysteme,
Industrieanlagen, Logistiksysteme).
Ein Ausführungsbeispiel der Erfindung ist in Figuren dargestellt und
wird im weiteren näher erläutert.
Es zeigen
1a und 1b
Skizze einer zweistufigen Vorgehensweise bei einer Energieprognose (1a:
erste Stufe: Ähnlichkeitsanalyse; 1b: zweite
Stufe: Kausalitätsanalyse) gemäß einem Ausführungsbeispiel;
2 eine Skizze einer allgemeinen Beschreibung
eines dynamischen Systems;
3 eine Skizze eines CRCNN mit grundlegenden
funktionalen Beziehungen;
4 eine Skizze, welche einen historischen
Verlauf eines Energie-/Gasverbrauchs zeigt (Wochendaten für 01/92 – 10/99);
5 eine Skizze einer Anordnung eines TDRNN,
welche mit endlich vielen Zuständen über die Zeit entfaltet ist;
6 eine Skizze einer zum "overshooting"
geeigneten Weiterbildung eines TDRNN;
7 eine Skizze eines ECRNN mit grundlegenden
funktionalen Beziehungen.
4 zeigt eine Fragestellung
410 aus einem ökonomischen Umfeld, welche durch die im Rahmen des folgenden
Ausführungsbeispiels der Erfindung beschriebene Vorgehensweise gelöst wird.
Gesucht wird eine Prognose für einen Energieverbrauch bzw. Gasverbrauch
für ein zukünftiges Jahr 2001, basierend auf ein vorgegebenes Szenario einer Temperaturentwicklung
für den Prognosezeitraum.
4 zeigt beispielhaft für einen Energieverbrauchsverlauf
einen historischen Verlauf 400 eines Energie-/Gasverbrauchs basierend auf
Wochenverbrauchsdaten für einen Zeitraum 01/92 – 10/99.
Der Gasverbrauch ist dabei im Allgemeinen abhängig von einer Nachfrage
von Kunden (Marktmechanik) und einer Planungsstrategie (Kostenminimierung) für eine
Gasbevorratung von Versorgungsunternehmen (planerischer Einfluss) 420.
Vorgehensweise (Fig. 1a
und Fig. 1b)
Fig. 1a und Fig.
1b zeigen eine für die Energieverbrauchsprognose 2001 verwendete Vorgehensweise.
Fig. 1a zeigt einen ersten
Schritt der Vorgehensweise, eine Ähnlichkeitsanalyse (Näherungsschritt).
Fig. 1b zeigt einen zweiten Schritt der Vorgehensweise,
eine Kausalitätsanalyse (Nachkorrektur). Ein Ergebnis des ersten Schritts ist zugleich
Ausgangs- bzw. Eingangsgröße für den zweiten Schritt.
Schritt 1: Ähnlichkeitsanalyse (1a,
110)
Bei der Ähnlichkeitsanalyse 110 wird ein historischer, bekannter
Energieverbrauchsverlauf, in diesem Fall der Energieverbrauch für das Jahr 2000
111, in Zeitabschnitte von jeweils einem Tag, sogenannte Tagesscheiben, unterteilt.
Weiterer werden signifikante Energieverbrauchsmuster 120,
121, welche aus einer oder mehreren zusammenhängenden Tagesscheiben bestehen
können, aus dem historischen Energieverbrauchsverlauf 2000 ausgewählt.
Signifikante Energieverbrauchsmuster 120, 121 können
dabei Muster sein, die in ihrer Verlaufsform außergewöhnlich, wie Energieverbrauchsspitzen,
sind. Auch signifikant sind Energieverbrauchsmuster an signifikanten Tagen, wie
Feiertage (Weihnachten, Ostern) oder Ferienbeginn.
Solche derart ausgewählten Energieverbrauchsmuster werden basierend
auf den entsprechenden Tagesscheiben unter Berücksichtigung eines kalendarischen
Effekts in das zu prognostizierende Jahr 2001 bzw. in den zu prognostizierenden
Zeitraum 2001 übertragen bzw. projiziert 130, 131.
Unter dem kalendarischen Effekt ist dabei zu verstehen, dass beispielsweise
eine "Tagesscheibe" bzw. der Energieverbrauchsverlauf an Ostern 2000 (historisch)
als prognostizierte, genäherte "Tagesscheibe" bzw. Energieverbrauchsverlauf für
Ostern 2001 (Näherungsprognose) angenommen wird (trotz Datumsunterschied zwischen
Ostern 2000 und 2001).
Entsprechend wird mit allen ausgewählten signifikanten Energieverbrauchsmuster
120, 121 aus 2000 bei Übertragung in 2001 verfahren
130, 131.
Noch im genäherten, prognostizierten Energieverbrauchsverlauf von
2001 auftretende (Verlaufs-)Lücken 140 können nun geschlossen werden.
Dies kann durch Interpolation zwischen den ins Jahr 2001 projizierten
signifikanten Energieverbrauchsverläufen 120, 121 aus 2000 und/oder
Mittelung und/oder Verwendung plausibler historischer Verbrauchsverläufe geschehen.
Ergebnis dieses ersten Schritts, der Ähnlichkeitsanalyse
110, ist. eine Näherung für den prognostizierten Energieverbrauchsverlauf
für 2001 112.
Scrhitt 2: Kausalitätsanalyse (1b,
150)
Dieser genäherte, prognostizierte Energieverbrauchsverlauf
112, 152 dient nun als Ausgangsgröße für den zweiten Schritt,
der Kausalitätsanalyse 150. Im Ergebnis liefert die Kausalitätsanalyse
150 die gesuchte Energieverbrauchsprognose 2001 153.
Die Kausalitätsanalyse 150 wird unter Verwendung einer neuronalen
Netzstruktur, einem sogenannten Kausal-Retro-Kausal Neural Network (CRC NN)
151 bzw. 300 (3), durchgeführt.
Neuronale Netzstruktur – CRC NN (3)
3 zeigt eine grundlegende Struktur
300 mit entsprechenden funktionalen Beziehungen eines CRCNN.
Bei diesem CRCNN sind zwei neuronale Teilstrukturen 310,
320 miteinander gekoppelt. Dabei hängen ein erster innerer Teilzustand
st (311 – 314) der ersten neuronalen Teilstruktur
310 und ein zweiter inneren Teilzustand rt (321 –
324) der zweiten neuronalen Teilstruktur 320 gemäß folgenden Vorschriften
von der Eingangsgröße ut (301 – 304),dem ersten
inneren Teilzustand st-1 (311 – 314),dem zweiten
inneren Teilzustand rt+1 (321 – 324) sowie Parametervektoren
vs, vt, vy ab:
st = NN(vs, st-1, ut)(8
)
rt = NN(vr, rt+1, ut)(9)yt = NN(vy, st, rt)(10)
wobei mit NN(.) eine durch das neuronale Netz vorgegebene Abbildungsvorschrift bezeichnet
wird.
Verbindungen zwischen den Neuronen des CRCNN sind gewichtet. Die Gewichte
sind in Parametervektoren vs, vt, vy zusammengefasst.
Das CRCNN 300 gemäß 3 ist ein
über vier Zeitpunkte, t-1, t, t+1 und t+2, entfaltetes Neuronales Netz (vgl. TDRNN,
5).
Grundzüge eines über eine endliche Anzahl von Zeitpunkten entfaltetes
Neuronalen Netzes sind in [2] und im obigen im Zusammenhang mit dem bekannten TDRNN
(vgl. 5) beschrieben.
Die Eingangsgröße ut (301 – 304)
ist dabei das Ergebnis der Ähnlichkeitsanalyse aus der ersten Stufe (110),
d.h. der in der ersten Stufe ermittelte genäherte Verlauf des prognostizierten Energieverbrauchs
112, 152.
Die Ausgangsgröße yt (341 – 344)
ist dabei das gewünschte Ergebnis der Kausalitätsanalyse der zweiten Stufe (150),
d.h. der in der zweiten Stufe ermittelte nachkorrigierte Verlauf des prognostizierten
Energieverbrauchs 153.
Mögliche Realisierungen der oben beschriebenen Ausführungsbeispiele
können mit dem Programm SENN, Version 2.3 durchgeführt werden.
In diesem Dokument sind folgende Veröffentlichungen zitiert:
[1] S. Haykin, Neural Networks: A Comprehensive Foundation, Prentice Hall, Second
Edition, ISBN 0-13-273350-1, S. 732–789, 1999.
[2] David E. Rumelhart et al., Parallel Distributed Processing, Explorations
in the Microstructure of Cognition, Vol. 1: Foundations, A Bradford Book, The MIT
Press, Cambridge, Massachusetts, London, England, 1987
[3] H. Rehkugler und H. G. Zimmermann, Neuronale Netze in der Ökonomie, Grundlagen
und finanzwirtschaftliche Anwendungen, Verlag Franz Vahlen München, ISBN 3-8006-1871-0,
S. 3–90, 1994.
[4] WO 00/08599.
[5] WO 00/55809.
[6] Zimmermann H.G., Neuneier R., Grothmann R., Modelling of Dynamic Systems
by Error-Correction-Neural-Networks, in Soofe and Cao (Eds.), Forecasting Financial
Data, Kluwer Verlag, ISBN 0792376803, 2002.
[7] WO 02/27654.
Anspruch[de]
Verfahren zur Ermittlung eines zukünftigen Systemverhaltens eines dynamischen
Systems,
– bei dem unter Verwendung eines bekannten Systemverhaltens des dynamischen
Systems durch einen Ähnlichkeitsvergleich eine Näherung für das zukünftige Systemverhalten
ermittelt wird („Similarity Analysis"),
– bei dem unter Verwendung der Näherung für das zukünftige Systemverhalten
des dynamischen Systems und unter Verwendung einer neuronalen
Netzstruktur das zukünftige Systemverhalten ermittelt wird („Causality Analysis"),
wobei die Näherung für das zukünftige Systemverhalten. des dynamischen Systems der
neuronalen Netzstruktur als Eingangsgröße zugeführt wird und eine Ausgangsgröße
der neuronalen Netzstruktur das zukünftige Systemverhalten repräsentiert.
Verfahren nach Anspruch 1,
– bei dem die neuronale Netzstruktur zwei miteinander gekoppelte Teilstrukturen
aufweist, wobei eine erste neuronale Teilstruktur derart angepasst ist, dass deren
erstes Abbildungsverhalten ein Vorwärtsverhalten des dynamischen Systems beschreibt
und wobei eine zweite neuronale Teilstruktur derart angepasst ist, dass deren zweites
Abbildungsverhalten ein Rückwärtsverhalten des dynamischen Systems beschreibt.
Verfahren nach Anspruch 2,
– bei dem die erste und/oder die zweite neuronale Teilstruktur ein über mehrere
Zeitpunkte entfaltetes neuronales Netz ist/über mehrere Zeitpunkte entfaltete neuronale
Netze sind.
Verfahren nach einem der vorangehenden Ansprüche,
– bei dem das dynamische System marktmechanischen Einflüssen und planerischen
Einflüssen unterworfen ist.
Verfahren nach Anspruch 4,
– bei dem das dynamische System ein "Human-Controlled"-System ist.
Verfahren nach Anspruch 4 oder 5 und nach Anspruch 2 oder 3,
– bei dem die erste neuronale Teilstruktur einen Einfluss von Marktmechanismen
auf das dynamische System berücksichtigt und/oder
– bei dem die zweite neuronale Teilstruktur einen planerische Einfluss auf
das dynamische System berücksichtigt.
Verfahren nach einem der vorangehenden Ansprüche,
– bei dem die neuronale Netzstruktur ein Causal-Retro-Causal Network ist.
Verfahren nach einem der vorangehenden Ansprüche,
– bei dem das bekannte Systemverhalten des dynamischen Systems unter Verwendung
historischer Systemdaten ermittelt wird.
Verfahren nach einem der vorangehenden Ansprüche,
– bei dem die Näherung für das zukünftige Systemverhalten des dynamischen
Systems derart ermittelt wird, dass
– das bekannte Systemverhalten in Abschnitte vorgebbarer Zeitlängen unterteilt
wird, wobei zu den Abschnitten zugehörige Abschnittssystemverhalten ermittelt werden
und
– unter Verwendung ausgewählter Abschnitte mit dem jeweils zugehörigen ausgewählten
Abschnittssystemverhalten bei Berücksichtigung eines kalendarischen Effekts die
Näherung ermittelt wird.
Verfahren nach Anspruch 9,
– bei dem solche Abschnitte ausgewählt werden, deren zugehöriges Abschnittssystemverhalten
ein signifikantes Verhalten aufweist.
Verfahren nach Anspruch 9 oder 10,
– bei dem bei der Ermittlung der Näherung für das zukünftige Systemverhalten
des dynamischen Systems unter Verwendung der ausgewählten Abschnittssystemverhalten
ein Systemverhalten zwischen den ausgewählten Abschnittssystemverhalten interpoliert
und/oder gemittelt und/oder historische Abschnittssystemverhalten eingefügt werden/wird.
Verfahren nach einem der vorangehenden Ansprüche, eingesetzt zu einer
Prognose des zukünftigen Systemverhaltens des dynamischen Systems derart, dass das
ermittelte zukünftige Systemverhalten als die Prognose verwendet wird.
Verfahren nach einem der vorangehenden Ansprüche, eingesetzt zu einer
Prognose eines Energieverbrauchs, insbesondere eines Verbrauchs von einer Gasmenge.
Computerprogramm mit Programmcode-Mitteln, um alle Schritte gemäß
Anspruch 1 durchzuführen, wenn das Programm auf einem Computer oder Teile des Programms
auf mehreren Computern ausgeführt wird bzw. werden.
Computerprogramm mit Programmcode-Mitteln gemäß Anspruch 14, die auf
einem oder mehreren computerlesbaren Datenträger gespeichert sind.
Computerprogramm-Produkt mit auf einem maschinenlesbaren Träger gespeicherten
Programmcode-Mitteln, um alle Schritte gemäß Anspruch 1 durchzuführen, wenn das
Programm auf einem Computer ausgeführt wird.