Der harmonische Informationsgehalt der logistischen Abbildung
************************************************
Grundidee :
***********
PHASE 1:
Ausgangspunkt soll wieder einmal die logistische Abbildung sein: y(k+1)=r*y(k)*(1-y(k))
( Selbige Betrachtung ist auch fuer die Mandelbrotmenge moeglich)
Fuer diese kennt man bereits ein Maß, dass beschreibt wie empfindlich die Abbildung
auf Aenderungen der Anfangswert reagiert.
D.h. wie chaotisch sich die Simulation verhaelt.Das waere der Ljapunovkoeffizient.
Als neues Maß moechte ich analog zum Ljapunovkoeffizient nun den harmonischen
Informationsgehalt messen.
Die logistische Abbildung ist auf das Intervall [0..1] beschraenkt und liefert
dort keine diskreten Zahlenwerte.
Das Intervall[0..1] ist also zunaechst in N Teilintervalle zu diskretisieren.
Erstes Intervall waere dann z.B [0..1/N] dann [1/N..2/N] etc. Man erhaelt somit
Intervalle fuer Haeufigkeitsklassen.
Jeder Ausgangswert der Simulation wird dem Intervall zugeordnet in das der Wert
faellt und fuer jedes Intervall i wird so die Anzahl von "Treffern" bestimmt.
Ergebnis ist eine Haeufigkeitsverteilung Die Haeufigkeitsklassen werden nun
nach der Anzahl der Treffer sortiert. Anschliessend auf "1" normiert. Nichtbelegte
Klassen werden abgeschnitten und so eine neue Klassenzahl N* bestimmt. Fuer
die neue Klassenanzahl N* ist nun die Zipf Verteilung fuer einen Vergleich zu
ermitteln.
Beide Verteilungen lassen sich dann graphisch gegenueber stellen.
Abhaengig vom Parameter r der Abbidung y(k+1)=r*y(k)*(1-y(k))
PHASE 2.
********
Es ist ein Guetemaß zu bestimmen, dass die Abweichungen beider Verteilungen
misst.
Aus Wikepedia ist unter "Zipfsches Gesetz" zu entnehmen, dass solch eine Guetemaß
bereits existiert. Hier werden allgemein Verteilungen der Form p(i)=1/i**a betrachtet.
a=1 stellt dann die Zipfsche Verteilung dar.
Ich moechte zunaechst eine einfachere Methode verwenden.
Das gute alte und allseits bekannte Fehlerintegral von GAUSS.
Folgendes Bild zeigt recht anschaulich die Idee des Fehlerintegrals:

Abstandsquadrate zweier Funktionen f(x),g(x) werden in einem gegebenen Fehlerintervall
aufsummiert (integriert) und fertig ist das Gaussche Fehlerintegral. Guetemaß
fuer dieses Intervall. Letztendlich erhalten wir also einen schlichten Zahlenwert
J. Je kleiner dieser Wert J ist umso weniger weichen f(x) und g(x) voneinander
ab. Fuer J=0 sind f(x) und g(x) identisch.
PHASE 3
*******
In einer nuemerischen Simulation wird nun das Gaussche Fehlerintegral J fuer
die Haeufigkeitsverteilung der logistische Abbildung und der Zielfunktion der
Zipf Verteilung ermittelt. Das harmonische Maß. Fuer viele Parameter r !
Ein Vergleich mit dem Ljapunovexponenten laesst dann Aussagen zu welchem Grad
von Ordnung / Unordnung eine besondere harmonische Information innewohnt. Besteht
hier gar eine direkte Proportionalitaet ?
IMPLEMENTATION
** ***************
Das geplante Programm wird recht einfach sein und die Aufgabenstellung
bedarf kaum mathematischen Vorkenntnissen.
Als Platform verwende ich aus Bequemlichkeitsgruenden dennoch Maple. Declarieren
wir dort erstmal notwenige Parameter und simulieren die logistische Abbildung.
Diesen Programmteil benoetigen wir schon mal, da fuer numerische Betrachtungen
die logistische Abbildung in einem eingeschwungenen Zustand befinden sollte.
Das erreichen wir durch einen einfachen Vorlauf, den wir nicht auswerten:
> restart;
> N_range:=100; # Klassenintervalle
> N:=N_range*10; # Anzahl Verhulst Schritte
> N_vorlauf=50; # Anzahl Rechenschritte zum Einschwingen
> r:=3.85; # Verhulst Parameter
> for i from 1 to N_range do #Initialisieren
> b[i]:=0; # Anzahl Treffer
> od:
> # DAS PROGRAMM: Vorlauf Verhulst
> s:=0.1;
> for i from 1 to N_vorlauf do s:=r*s*(1-s); od:
Tja wer sagt das Chaostheorie etwas schwieriges ist ? :-)
Jetzt die numerische Simulation die wir auswerten werden:
> for i from 1 to N do
> s:=r*s*(1-s);
An dieser Stelle muessen wir nun testen in welches Intervall
s faellt. Dazu koennte man eine weitere Schleife aufbauen die den Wert s mit
den Intervallgrenzen vergleicht. Das waere aber viel zu zeitaufwendig ! Wir
berechnen das Intervall j einfach direkt. ( Dreisatz:-)
s/1=j/(N_range-1) => j=s*(N_range-1)
Und da Maple Felder beginnend bei 1 indiziert und j ganzzahlig sein muss:
> j=floor(s*(N_range-1)+1);
> b[j]:=b[j]+1;
> od:
Nochmal als Uebersicht :-)
********************
> restart;
> N_range:=100; # Klassenintervalle
> N:=N_range*10; # Verhulst Schritte
> Intervalle
> N_vorlauf:=50;
> r:=3.9; # Verhulst Parameter
> for i from 1 to N_range do
> b[i]:=0; # Anzahl Treffer
> od:
>
> ####### Vorlauf Verhulst
> s:=0.1;
> for i from 1 to N_vorlauf do s:=r*s*(1-s);od:
> ####### Haeufigkeitsliste in b[j] erstellen
> for i from 1 to N do
> s:=r*s*(1-s);
> j:=floor(s*(N_range-1)+1);
> b[j]:=b[j]+1;
> od:
*******************************************************************************
Sehr einfach, aber immerhin haben wir jetzt in b[j] die Anzahl stehen mit der
die Simulation der logistischen Abbildung in das betreffende Intervall fiel.
Und das sieht dann fuer r=3.9 zum Beispiel so aus:

Und sortieren wir die Klassen, das Array b[j], nach der Haeufigkeit
> #b[] sortieren nach Wert(Bubblesort)
> for i from 1 to N_range-1 do
> for j from i to N_range do
> if (b[i] kleiner b[j] then
mem:=b[i];
b[i]:=b[j];
b[j]:=mem;
> fi;
> od;od;
erhalten wir folgendes Bild von b[j]:

Einfach umsortiert ! Wir sind fast fertig mit Phase 1.
Es muessen nur noch einige Kleinigkeiten erledigt werden. Das bestimmte Werte
nicht getroffen wurden ist zwar interessant, aber zunaechst koennen wir solche
leeren Klassen nicht gebrauchen und scheiden sie einfach ab.
> for i from 1 to N_range do
> if (b[i]=0) then break; fi;
> od;
> Nmax:=i-1;
In Nmax steht jetzt die Anzahl der belegten Klassen die wirklich Werte enthalten. Fuer einen Vergleich und um die Werte als Wahrscheinlichkeiten zu interpretieren normieren wir das Feld b[Nmax] noch so, dass die Summe aller Arraywerte 1 ergibt:
> #Normieren der Messwerte
> s:=0;
> for i from 1 to Nmax do s:=s+b[i]; od:
> for i from 1 to Nmax do b[i]:=b[i]/s; od:
Jetzt benoetigen wir zum Vergleich noch die Zeta Verteilung:
BERECHNEN DER ZETA VERTEILUNG FUER Nmax KLASSEN
******************************************************
Wir benoetigen einen Wert der Zeta Funktion.
Diesen ermitteln wir einfach numerisch:
Dementsprechend umfangreich ist auch das Programm fuer die geforderte Aufgabenstellung:
# Erstellen der Zipf Verteilung 1/i
> czipf:=1/evalf(sum(1/kk,kk=1..Nmax));
> for i from 1 to Nmax do zipf[i]:=czipf*1/i; od:
Die erste Zeile berechnet einfach die Summe 1/kk von 1 bis Nmax
Das ist die Zetafunktion(Nmax)
Und damit ist Phase 1 beendet.
Hier ein Vergleich der Zeta Verteilung und der gemessenen "Chaos" Veteilung:

weitaus aussagekraeftiger ist die Doppeltlogarithmische Darstellung:
Das Programm ist effizient dass es auch 1500 Klassen ueber 15000 Werte in wenigen Sekunden berechnet und darstellt. Die Chaosverteilung ist dann recht glatt.
Diskussion:
************
Fuer den Parameter 3.9 liefert die Verhulst Gleichung keinen sonderlich harmonischen
semantischen Output. Zu chaotisch Eine kurze Ueberlegung zeigt, dass auch Parameter
Im Ordnungsbereich, also vor dem Feigenbaumpunkt wenig semantischen Inhalt liefern.
Zwischen Feigenbaumpunkt und 4 liegen aber unendlich viele Parameter ! Ist einer
dieser Parameter besonders ausgezeichnet ? Gehen wir systematisch vor !
Tausende von Verteilungen zu vergleichen macht wenig Sinn. Gehen wir also in
Phase 2 und versuchen jedem Diagramm ein Guetemaß zuzuordnen. Ich habe hierfuer
das Gaussche Fehlerintegral vorgeschlagen. Wir bilden also die Betragsquadrate
zwischen den zipf(i) und b[i] und summieren diese von 0 bi N_max auf.
Das ist einfach J=Summe( (zipf[i]-b[i])^2,i=1..Nmax)
Dieses Guetemaß wird nun ueber r ermittelt und dargestellt:
ERGEBNIS:
*********
Hier die doch recht interessanten Ergebnisse des numerischen Versuchs. Zur Erinnerung:
Bei diesem habe ich ein statistisches Verfahren der Linguistik benutzt um damit
einen semantichen Informationsgehalt in der logistischen Abbildung zu messen.
Ein voellig anderer Ansatz als zum Beispiel der Ljapunovexponent den ich in
den Ergebnissen mit dargestellt habe. Zunaechst eine Uebersicht der Simulation
ueber r.

Die rote Funktion stellt das Gausssche Fehlerintegral dar gegenueber
der Zeta Verteilung. Ein Wert nahe 0 laesst somit einen hohen Informationsgehalt
vermuten. Die blaue Funktion ist der Ljapunovexponent: Man sieht,dass die Nulldurchgaenge
des Ljapunov, also die Uebergange von Ordnung zu Chaos, im Gausschen Fehlerintegral
ebenfalls einen besonders niedrigen Wert annehmen. Also ein hohes Maß semantischer
Information ! Gefolgt von einem Peak. Im chaotischen Bereich sind dies die Inseln
der Ordnung !
Die fraktale Grenzflaeche zwischen Ordnung und Chaos birgt somit am meisten
semantische Information.
Neu ist unter anderem die Erkenntnis aus der Grafik, dass Uebergange zu Inseln
der Ordnung hierbei im zunehmendem Chaos besonders ausgezeichnete Werte darstellen.
Die naechste Grafik wird dies auch zeigen. Hier ist der Uebergang zur letzten
grossen Insel der Ordnung vergroessert dargestellt:

Die Vermutung bestaetigt sich hier recht eindrucksvoll. Das Gaußsche Fehlerintegral
sinkt fast auf Null. Goldene Information ! Gefolgt von dem Bereich der Insel
der Ordung. Besondere Minima liegen bei r=3.282 oder 3.28246 Aufgrund des kleinen
Wertes des Gaußschen Fehlerintegrals ist folgende Verteilung der logistischen
Abbildung fuer Parameterwerteim Bereich r=3.824...r=3.828 auch zu erwarten:
Also einer linksseitigen Annaeherung an 1+Wurzel(8)

Wie man folgender Grafik entnehmen kann handelt es sich um einen Dreierzyklus mit chaotischer Intermittenz.

Anmerkung :
Fuer den exakten Grenzwert 1+Wurzel(8) liegt ein reiner Dreierzyklus vor. Und
dieser ist nicht Zipfverteilt, sondern gleichverteilt !

DISKUSSION
Man kann die Ergebnisse unter zweierlei Aspekten betrachten.
A) Vergleich mit dem Ljapunovexponenten.
********************************
1) Der von mir vorgestellte goldene Informationsgehalt, besser das Gaußsche
Fehlerintegral hiervon, weisst ausgepraegte Minima auf die scheinbar vollstaendig
korreliert sind mit den Nulldurchgaengen des Ljapunovkoeffizienten.
2) Ein Vergeicht der Bereiche vor und nach dem Feigenbaumpunkt
(hier nicht vorgestellt) zeigt, dass geordneter und chaotischer Bereich anhand
der absoluten Werte des Gausschen Fehlerintegrals abschaetzbar sind.
(Das Gausche Fehlerintegral ist natuerlich stets positiv.)
Als Grenze wuerde ich 0.05-0.075 vorschlagen. Hierzu sind weitere Untersuchungen
notwendig.
3) Waehrend der Ljapunovkoeffizient Uebergaenge vom Chaos zur
Ordnung stets lediglich als Nulldurchgang kennzeichnet, bietet das neue harmonische
Informationsmaß eine quantitative Bewertung dieser Grenzwerte.
CONCLUSION:
Das vorgestellte harmonische Informationsmaß scheint eine echte Alternative zum Ljapunovexponenten darzustellen. Mit folgenen massiven Vorteilen:
i) EINE KENNTNIS DES ZUGRUNDELIEGENDEN PROZESSES IN FORM EINER
ANALYTISCHEN BESCHREIBUNG IST NICHT NOTWENDIG !
Der Ljapunov benoetigt explizit die zugrunde liegende Differenzengleichung y(k+1)=g(y(k))
um dg(y(k))/dy(k) zu bilden. Auf meiner Homepage habe ich hierzu zwar schon
einen optimierten Algo vorgestellt, der die Differentation numerisch optimiert
durchfuehrt. Voraussetzung ist hier aber eine DGL erster Ordnung =>
ii) Die neue Methode ist nicht auf Differenzen / Differentialgleichungen erster Ordnung beschraenkt !
iii) Die neue Methode ist auch fuer nichtdeterminierte Zufallsprozesse anwendbar.
iiii) Nulldurchgaenge des Ljapunovkoeffizienten sind scheinbar streng korreliert mit lokalen Minima des Gausschen Fehlerintegrals. (Ansatzpunkt fuer weitere Untersuchungen) Dazu werden diese Nulldurchgaenge nun quantitativ beurteilt.
iiiii) Bereiche von Ordnung und Chaos scheinen ueber Absolutwerte abschaetzbar. Auch hier muesste man weitere Untersuchungen anstellen.
NACHTEILE:
Punkt iiiii. Ordnung und Chaos sind bisher noch nicht direkt unterscheidbar.
B) Anwendung im "kuenstlerischen" Bereich
*********************************
Aufgrund der qualitativen Bewertung der Ljapunov Nulldurchgaenge, die scheinbar
einen hohen semantischen Informationsgehalt darstellen, bietet das neue Informationsmaß
konkrete Ansaetze fuer kuenstlerische, geisteswissenschaftliche Anwendungen.
Sowohl fuer Analyse als auch Synthese.
FAZIT:
Das vorgestellte Verfahren scheint insbesonders fuer unbekannte Prozesse dem Ljapunov Koeffizienten in fast allen Punkten weitaus ueberlegen !
Dezember 2006