Besondere Lernleistung
Grundlagen der fraktalen Geometrie mit iterierten Funktionensystemen (IFS)
Adrian Jan Jablonski
Mathematik/Informatik
Hinweis zu den Fußnoten: Zum Quellenvermerk gebe ich ein Kürzel aus Autor und Erscheinungsjahr an; im Literaturverzeichnis befindet sich dazu eine Tabelle mit den Schlüsseln. Den Text, auf den sich der Vermerk bezieht, kann sich sowohl vor als auch hinter der Quellenangabe befinden.
1 Einleitung
Die fraktale Geometrie ist ein relativ neues Teilgebiet der Mathematik. Sie befasst sich mit geometrischen Objekten, den sog. Fraktalen, deren Eigenschaften sich von denen der “klassischen” Geometrie grundlegend unterscheiden. Wichtigstes Merkmal von Fraktalen ist die Skaleninvarianz, d.h., dass man bei jeder Vergrößerungsstufe Einzelheiten erkennen kann, egal wie stark man in das Objekt hinein dringt. Wenn man dagegen den Rand eines “klassischen” Objektes, wie den des Kreises, vergrößert, so ähnelt dieser mit zunehmender Vergrößerung immer mehr einer schlichten Gerade. Solche Objekte werden demnach als glatt bezeichnet. Bei einem Fraktal wird man jedoch nie eine Gerade erkennen können, sondern immer mehr Feinheiten des Objektes. Daher rührt die Bezeichnung “Fraktal”, vom lateinischen “fractus” für “gebrochen”, d.h. mit unzähligen Details übersät. Derartige Objekte waren schon seit Anfang des 20. Jahrhunderts bekannt, aber erst ab ca. 1970 wurde deren grundlegende Bedeutung erkannt. Davor wurden diese Objekte als “mathematische Monster” bezeichnet, da sie, wie ich im Folgenden erläutern werde, paradoxe Eigenschaften besitzen, die dem menschlichen Verstand mehr oder weniger “unbegreiflich” erscheinen. Dies änderte sich erst durch die Arbeit des Mathematikers Benoît Mandelbrot. Er erkannte, dass man mit Fraktalen etwas gänzlich Neues machen konnte, etwas was bis zu dieser Zeit als praktisch mathematisch unmöglich galt: die Modellierung und Beschreibung von “unregelmäßigen” Objekten der Natur, insbesondere der belebten, von der man annahm, sie könne nicht geometrisch beschrieben werden.
In dieser Besonderen Lernleistung setzte ich mich zunächst mit den “klassischen” Fraktalen des 20. Jahrhunderts auseinander, um anhand dieser die grundlegenden Konzepte der Fraktalgeometrie zu erläutern. Anschließend stelle ich die sog. iterierten Funktionensysteme (IFS), ein mächtiges Verfahren zur Kodierung und Generierung von Fraktalen, vor. Dabei werde ich auf die genaue Definition und deren Verwendung zur Modellierung und Darstellung Natur-ähnlicher Strukturen eingehen. Um die Theorie der Fraktale anschaulich erläutern zu können, habe ich diese Arbeit mit zahlreichen Bildern, die ich zum Großteil selbst erstellt habe, illustriert. Dadurch vergrößert sich zwar der Umfang des Hauptteils, doch ist es meiner Meinung nach unmöglich, Geometrie ohne Verwendung von Bildern zu erklären.
Im Rahmen dieser BeLL ist ebenfalls ein Computerprogramm entstanden, das die Funktionalität der IFS implementiert und anschaulich begreifbar macht. Darüber hinaus befinden sich in dieser Arbeit Ausarbeitungen, die ich nicht der Literatur entnommen habe, insbesondere die Flächenformel der Cesàro-Kurve.
2 Begriffe und Definitionen
Um Fraktale und ihre zugrunde liegende Geometrie verstehen zu können, ist es zunächst notwendig, einige mathematische Begriffe zu erläutern, die nicht in der Schulmathematik vermittelt wurden. Ohne die Kenntnis dieser Termini ist eine tief gehende Auseinandersetzung mit den Methoden und Theorien der fraktalen Geometrie nicht möglich. Bedauerlicherweise sind die Themen jedoch derart umfangreich, dass ich nur die wichtigsten Aspekte behandeln kann.
Der Begriff des Raumes ist in der Mathematik sehr weit gefasst. Ich werde mich nur auf solche Räume beschränken, die mir aus der Schulmathematik bekannt sind bzw. sich einfach daraus herleiten lassen. Ich beginne mit folgender Definition:
Definition 1: Ein Raum ist eine Menge, deren Elemente Punkte des Raumes sind.
Aus der analytischen Geometrie sind bereits einige Veranschaulichungen solcher Räume bekannt, nämlich das zweidimensionale und das dreidimensionale Koordinatensystem. Aber auch die reelle Zahlengerade ist eine Veranschaulichung eines Raumes, nämlich des Raumes ℝ, der der Menge der reellen Zahlen entspricht. Dementsprechend werden der zweidimensionale Raum als ℝ2 und der dreidimensionale als ℝ3 bezeichnet (R2 wird auch Euklidische Ebene, nach der Geometrie des Euklid, genannt). Dabei werden die Punkte dieser jeweiligen Räume durch Koordinaten dargestellt, die Anzahl der Koordinaten ist gleich der Dimension, d.h. der “räumlichen Ausdehnungen” des Raumes, die sich im Exponenten nach dem ℝ widerspiegeln; so hat ein beliebiger Punkt im Raum R2 die Koordinaten ( x | y ) und in ℝ3 ( x | y | z ), wobei x, y, z ∈ R gilt. Die obige Definition impliziert (obwohl es nicht explizit gesagt ist), dass definiert ist, wie die Punkte im Raum anzuordnen sind und wie sie zueinander in Beziehung stehen. Ein Raum kann aber auch eine ganz andere “Art” von Menge sein als die hier vorgestellten Beispiele, z.B. können die Punkte eines Raumes ganze Funktionen sein, die eine bestimmte Eigenschaft besitzen (z.B. der Raum X aller differenzierbaren Funktionen, ein Punkt dieses Raumes wäre dann z.B. f(x) = x², f ∈ X). Im Folgenden werde ich auf die genauere Klassifikation von Räumen eingehen.
2.1.1 Vektorräume
Ein Vektorraum V (oder linearer Raum) ist ein Raum, dessen Punkte als Vektoren bezeichnet werden, wenn Folgendes gilt:
-
Die Addition zweier Punkte ergibt wiederum einen Punkt des Raumes, formal: für alle ⟶a, ⟶b ∈ V gilt: ⟶a + ⟶b ∈ V.
-
Die Skalarmultiplikation ergibt wiederum einen Punkt des Raumes, formal: für alle r ∈ ℝ, ⟶a ∈ V gilt: r⋅⟶a ∈ V.
Somit sind ℝ, ℝ2 und ℝ3 Beispiele für Vektorräume, da beide Bedingungen erfüllt sind. Ein Vektorraum kann aber auch eine beliebige andere Menge sein, auf die die obigen Bedingungen zutreffen.
Beispiel am Raum ℝ2:
⎛⎜⎝
1
2
⎞⎟⎠ + ⎛⎜⎝
3
4
⎞⎟⎠ = ⎛⎜⎝
4
6
⎞⎟⎠und 3⋅⎛⎜⎝
1
2
⎞⎟⎠ = ⎛⎜⎝
3
6
⎞⎟⎠
2.1.2 Metrische Räume
Nun komme ich zu einer Art von Räumen, die für das Verständnis der fraktalen Geometrie von entscheidender Bedeutung sind.
Unter einem metrischen Raum (X, d) versteht man einen gegebenen Raum X (z.B. den Vektorraum ℝ2), der mit einer sog. Metrik d versehen ist. Eine Metrik d(x, y) ist eine Funktion, die den Abstand zwischen zwei gegebenen Punkten x, y ∈ X angibt. Diese Funktion darf aber nicht beliebig sein, sondern muss folgende Eigenschaften besitzen:
-
Für den Abstand zweier Punkte muss gelten (es muss eine Symmetrie vorhanden sein): d(x, y) = d(y, x) für alle x, y ∈ X
-
Der Abstand zwischen zwei unterschiedlichen Punkten darf nicht unendlich groß oder 0 sein, formal: 0 < d(x, y) < ∞ für alle x, y ∈ X wenn x ≠ y.
-
Der Abstand identischer Punkte muss 0 sein, formal: d(x, x) = 0 für alle x ∈ X
-
Die Dreiecksungleichung (In einem beliebigen Dreieck gilt: “Die Summe der Längen der Seiten a und b ist größer oder gleich der Länge der Seite c, d.h. c ≤ a + b ”) muss erfüllt sein:
d(x, y) ≤ d(x, z) + d(z, y) für alle x, y, z ∈ X
Aus der Schulmathematik ist bereits eine solche Metrik bekannt, ohne sie explizit als solche aufgefasst zu haben, nämlich der Abstand zwischen zwei Punkten als Betrag des Vektors von A nach B:
und
Diese Metrik wird als die Euklidische Metrik bezeichnet. Eine weitere Metrik ist z.B. die sog. Gittermetrik bzw. Manhattanmetrik:
und
Diese Metrik gibt nicht mehr den kürzesten direkten Abstand an, sondern die Länge des Weges über die Maschen eines gedachten Gitters, ähnlich der Straßenanordnung in Manhattan (daher der Name
Manhattanmetrik). Es gibt unzählige Arten von Metriken, aber nicht alle haben eine so intuitive Begreifbarkeit wie die bereits vorgestellten. So gibt es die sog.
diskrete Metrik, deren Definition relativ abstrakt ist und keinerlei praktische Veranschaulichung bietet (sie kann auf beliebige Räume angewendet werden):
Bei der diskreten Metrik beträgt der Abstand identischer Punkte also 0 und unterschiedlicher Punkte 1. Diese Metrik ist eher eine theoretische Spielerei, um zu zeigen, dass auch sehr abstrakte Funktionen die vier Eigenschaften einer Metrik erfüllen können.
2.2 Affine Abbildungen
Eine
Abbildung ist allgemein eine Funktion
f, die einen Raum
X auf einen Raum
Y abbildet, formal
f: X → Y, dabei wird jeder Punkt des Raumes
X auf einen Punkt des Raumes
Y abgebildet.
Für die fraktale Geometrie sind eine spezielle Art von Abbildungen, sog.
affine Abbildungen, für das Verständnis unbedingt notwendig. Eine affine Abbildung bildet einen Punkt eines beliebigen Vektorraumes auf einen anderen Punkt desselben Raumes ab. Ich werde mich hierbei auf den Raum
ℝ2 beschränken. Eine affine Abbildung
w hat demnach die allgemeine Form
Affine Abbildungen ordnen einem Urbildpunkt
P ∈ ℝ2 genau einen Bildpunkt
P’ ∈ ℝ2 zu, man nennt eine solche Abbildung eineindeutig bzw.
bijektiv. Aus der Schulgeometrie sind bereits einige affine Abbildungen bekannt, darunter die
Ähnlichkeitsabbildungen, wie z.B. die zentrische Streckung. Zu den affinen Abbildungen zählen insgesamt die
Translation (Verschiebung), die
Skalierung, die
Rotation (Drehung), die
Spiegelung und die
Transvektion (Scherung). Alle diese Abbildungen und deren Kombinationen lassen sich durch eine Matrix
A = ⎛⎜⎝
a
b
c
d
⎞⎟⎠ und einen Verschiebungsvektor ⟶v = ⎛⎜⎝
e
f
⎞⎟⎠ darstellen.
Zusammengefasst lässt sich eine affine Abbildung durch die Formel
beschreiben. Um nun die Koordinaten eines Punktes zu berechnen, muss man zunächst die Matrizenmultiplikation A⋅⟶x = ⎛⎜⎝
a
b
c
d
⎞⎟⎠⋅⎛⎜⎝
px
py
⎞⎟⎠ = ⎛⎜⎝
a⋅px + b⋅py
c⋅px + d⋅py
⎞⎟⎠ ausführen. Anschließend addiert man ⟶v und erhält
px’ = a⋅px + b⋅py + e
py’ = c⋅px + d⋅py + f
für die beiden Koordinaten des Bildpunktes P’.
Nun möchte ich erläutern, wie man durch die Matrizendarstellung alle oben erwähnten Abbildungen beschreiben kann.
2.2.1 Translation
Für die Translation um einen Vektor
⟶v = ⎛⎜⎝
vx
vy
⎞⎟⎠ benutzt man diesen als Verschiebungsvektor. Da bei der Matrizenmultiplikation die Ursprungskoordinaten erhalten bleiben sollen, muss die Abbildungsmatrix A = ⎛⎜⎝
1
0
0
1
⎞⎟⎠ lauten. Somit erhält man:
Diese Abbildung verschiebt also den Punkt P’ um den Vektor ⟶v.
Beispiel Verschiebung von A (3|6) um ⟶v = ⎛⎜⎝
2
3
⎞⎟⎠:
⟶a’ = ⎛⎜⎝
1
0
0
1
⎞⎟⎠⋅⎛⎜⎝
3
6
⎞⎟⎠ + ⎛⎜⎝
2
3
⎞⎟⎠ = ⎛⎜⎝
3 + 0 + 2
0 + 6 + 3
⎞⎟⎠ = ⎛⎜⎝
5
9
⎞⎟⎠
Die Koordinaten von A’ lauten demnach A’(5|9).
2.2.2 Skalierung
Eine Skalierung ist eine Größenänderung eines Objektes, z.B. eines Rechtecks. Dabei kann dies in
x- und bzw. oder in
y-Richtung geschehen. Ein Objekt wird skaliert, indem man eine affine Abbildung der Form (der Verschiebungsvektor wurde der Übersichtlichkeit wegen weggelassen)
verwendet. Dabei skalieren der Faktor
a in
x-Richtung und der Faktor
b in
y-Richtung.
Beispiel Skalierung des Dreiecks ΔABC mit A = (0|1), B = (0| 0) und C = (1|0) auf 0, 5 in x- und y-Richtung:
Die affine Abbildung dazu lautet ws = ⎛⎜⎝
px’
py’
⎞⎟⎠ = ⎛⎜⎝
0, 5
0
0
0, 5
⎞⎟⎠⋅⎛⎜⎝
px
py
⎞⎟⎠. Somit lauten die Koordinaten des neuen Dreiecks A’(0|0, 5), B’(0|0) und C’(0, 5|0).
Als Nächstes behandle ich die Rotation, zunächst nur um den Ursprung, dann um einen beliebigen Punkt
Q. Um einen Punkt
P mit einen Winkel
α gegen den Uhrzeigersinn um den Ursprung
O (0|0) zu drehen, verwendet man eine Abbildungsmatrix (
Rotationsmatrix) der Form
Um nun eine Rotation um einen beliebigen Punkt
Q = (qx|qy) durchzuführen, muss man den zu drehenden Punkt
P und den Punkt
Q derart verschieben, dass
Q auf
O fällt. Dazu verschiebt man
P einfach um
− q = − ⎛⎜⎝
qx
qy
⎞⎟⎠ . Nun kann man die gewohnte Rotationsmatrix anwenden. Anschließend muss man P an den Ausgangspunkt zurückversetzen. Zusammengefasst ergibt dies ⟶p’ = A⋅(⟶p − ⟶q) + ⟶q.
2.2.4 Weitere affine Abbildungen
Auf die weiteren Arten von affinen Abbildungen wie Scherung und Spiegelung gehe ich nicht weiter ein, da die bereits beschriebenen Arten für das Verständnis ausreichend sind. Erstere lassen sich aber ebenfalls durch die Elemente der Abbildungsmatrix und einen Verschiebungsvektor darstellen.
2.2.5 Verkettung affiner Abbildungen
Um z.B. erst eine Rotation α und anschließend eine Skalierung β, also β(α(⟶x)), durchzuführen, lassen sich zwei affine Abbildungen α: ⟶x’ = A⋅⟶x und β: ⟶x’ = B⋅⟶x miteinander verknüpfen, indem man die Matrix A mit der Matrix B und anschließend mit ⟶x multipliziert. Für die Verkettung verwendet man das Symbol ○. Der Ausdruck α○β bedeutet, dass erst β und dann α angewendet wird, d.h. α(β(⟶x)). Für das obige Beispiel ergibt sich daher ⟶x’ = B⋅A⋅⟶x = β○α. Zu beachten ist, dass die Matrizenmultiplikation nicht kommutativ ist, also in der Regel A⋅B ≠ B⋅A gilt.
2.2.6 Berechnung einer affinen Abbildung
Eine affine Abbildung lässt sich durch jeweils drei gegebene Bild- und Urbildpunkte
⟶x, ⟶y, ⟶z,
⟶x’, ⟶y’, ⟶z’ berechnen
. Dazu nutzt man die Tatsache, dass
⎛⎜⎝
a
b
c
d
⎞⎟⎠⎛⎜⎝
px
py
⎞⎟⎠ + ⎛⎜⎝
e
f
⎞⎟⎠ = ⎛⎜⎝
px’
py’
⎞⎟⎠gilt und man somit zwei lineare Gleichungssysteme
aufstellen kann. Durch Lösen dieser LGS erhält man die Elemente der Abbildungsmatrix a, b, c, d und die Komponenten des Translationsvektors e, f der entsprechenden Abbildung w, die ⟶x, ⟶y und ⟶z auf ⟶x’, ⟶y’ und ⟶z’ abbildet. Wählt man willkürlich beliebige Bild- und Urbildpunkte, so erhält man in der Regel eine Verkettung verschiedener affiner Abbildungen.
2.2.7 Fixpunkte affiner Abbildungen
Ein Fixpunkt
P ist ein Punkt, der bei Anwendung einer affinen Abbildung
invariant (unverändert) bleibt, d.h. dass
f(⟶p) = ⟶p gilt. Fixpunkte lassen sich mit Hilfe der Formeln
berechnen. (
a, b, c, d sind die Elemente der Abbildungsmatrix und
e, f die Komponenten des Translationsvektors.)
2.2.8 Eigenschaften affiner Abbildungen
Je nach ihren Eigenschaften lassen sich affine Abbildungen in folgende Gruppen einteilen:
-
Kongruenzabbildungen (umfassen Spiegelungen, Translationen und Rotationen sowie deren Verkettungen)
-
Abgebildete Objekte sind zum Urbild deckungsgleich (kongruent), d.h., dass Form und Größe des Bildes der des Urbilds entspricht.
-
Daraus folgt: Parallelität, Flächeninhalt, Flächenverhältnisse, Winkel, Längen und Längenverhältnisse bleiben invariant.
-
Ähnlichkeitsabbildungen (umfassen Kongruenzabbildungen sowie Skalierungen und deren Verkettungen)
-
Parallelität, Winkel, Flächenverhältnisse und Längenverhältnisse bleiben invariant.
-
Affine Abbildungen (umfassen Kongruenzabbildungen, Ähnlichkeitsabbildungen sowie Scherungen und deren Verkettungen)
-
Parallelität, Flächenverhältnisse und Längenverhältnisse bleiben invariant.
2.2.9 Kontraktionen
Eine
Kontraktion ist eine besondere Art von (affinen) Abbildungen. Eine unendliche Anwendung dieser bewirkt, dass ein beliebiger metrischer Raum
X auf einen einzigen Punkt zusammengezogen wird. Dieser Punkt ist zugleich der einzige Fixpunkt dieser (affinen) Abbildung. Die Kontraktion verursacht demnach eine Stauchung aller Mengen, die in dem Raum eingebettet sind. Für eine Kontraktion
w: X → X gilt folglich
Dabei wird
s als
Kontraktionsfaktor bezeichnet. Er gibt an, wie “stark” der Raum gestaucht wird. Ob eine Abbildung eine Kontraktion ist, hängt offensichtlich davon ab, bezüglich welcher Metrik
d man sie betrachtet. Beispielsweise gibt es Abbildungen, die bezüglich der Euklidischen Metrik Kontraktionen sind, bezüglich der Gittermetrik aber nicht.
2.3 Dimension
Dimension ist ein zentraler Begriff in der fraktalen Geometrie, wo er als Maß für die “Gebrochenheit” von Objekten dient. Um dies verstehen zu können, muss zunächst geklärt werden, was in der “klassischen” Geometrie darunter verstanden wird.
Prinzipiell gibt die einbettende Dimension eines Vektorraumes an, wie viele Ausdehnungen (oder Freiheitsgrade) dieser besitzt. Diese ist gegeben durch die Anzahl der Koordinaten des Vektors, so hat ein Vektor des Raumes ℝ2 zwei Koordinaten ⟶x = ⎛⎜⎝
x1
x2
⎞⎟⎠. Dementsprechend hat der Raum ℝ3 die Dimension drei. Dimensionen kann man aber nicht nur für Räume, sondern auch für darin eingebettete Objekte, die dann als Teilmenge des Raumes bezeichnet werden, bestimmen. Befindet sich z.B. eine Gerade in der Ebene, so hat diese die Dimension 1, da sie nur eine Ausdehnung besitzt (sie ist unendlich lang, aber auch unendlich dünn.). Ein Punkt dagegen hat die Dimension 0.
2.3.1 Topologische Dimension
Um die Dimension einer Teilmenge genau zu bestimmen, wurde die sog. topologische Dimension
eingeführt. Sie entspricht der “intuitiven” Dimension, die man einer Teilmenge anschaulich zuordnen kann. Zunächst kläre ich grob, was überhaupt unter “Topologie” verstanden wird: Die
Topologie ist ein Teilgebiet der Mathematik, das sich mit Objekten befasst, die sich in einem “gummiartigen” Raum befinden, d.h., dass diese durch bestimmte Abbildungen beliebig transformiert (“verzerrt”) werden können. Diese Abbildungen werden als
Homöomorphismen bezeichnet. Die “Verzerrungen”, die sie beschreiben, sind jedoch nicht beliebig, sondern lassen Löcher und Verbindungsstellen invariant. So gibt es Homöomorphismen, die eine Gerade in eine gezackte bzw. “zerknüllte” Linie transformieren. Solche Objekte, die durch Homöomorphismen ineinander übergehen können, bezeichnet man als
homöomorph oder
topologisch äquivalent. Demnach sind z.B. auch eine glatte Kugel und ein “kartoffelartiges” Gebilde homöomorph. Nicht homöomorph wäre dagegen die Kugel mit einem Torus, da dieser ein Loch enthält.
Um nun die Dimensionen von Teilmengen zu bestimmen, hat der französische Mathematiker
Henri Lebesgue folgende sehr anschauliche Definition auf Basis der Topologie entwickelt:
Es soll versucht werden, die gegebene Menge durch kleine Kugeln oder Kreisscheiben derart komplett zu überdecken, dass die Anzahl an Überschneidungen
n zwischen diesen minimal wird. Die Dimension der Menge beträgt dann
n − 1. Ein Beispiel: Die Dimension eines Punktes ist 0, weil er bereits durch eine Kreisscheibe beliebigen Radius überdeckt werden kann. Ebenso verfährt man mit Geraden. Hier ist die minimale Überschneidung zwei, daher ist sie eindimensional. Diese Dimension ergibt sich aber folglich auch für z.B. für eine Kurve oder den Rand einer Acht. All diese Objekte sind demnach topologisch betrachtet eindimensional.
3 Klassische Fraktale
Nachdem die mathematischen Grundlagen behandelt wurden, kann ich nun beginnen, mich dem zentralen Thema dieser Arbeit zuzuwenden. Zunächst ist aber zu klären, was überhaupt unter einem Fraktal zu verstehen ist.
3.1 Was ist ein Fraktal?
Bei Fraktalen handelt es sich um komplexe geometrische Figuren, deren Struktur stark “
gebrochen” (lat. “
fractus”, daher der Name “
Fraktal”) bzw. “
zerklüftet” erscheint und die einen hohen Grad an
Skaleninvarianz aufweisen. Dies bedeutet, dass bei Vergrößerung eines Ausschnitts eines Fraktales stets immer feinere Strukturen erkennbar sind, egal wie stark der Vergrößerungsfaktor ist, man sagt dazu auch, das Fraktal habe “
Details auf allen Stufen”. Diese Eigenschaft unterscheidet Fraktale von den Objekten der “klassischen” Geometrie, wo bei hinreichender Vergrößerung, z.B. des Randes eines Kreises, eine Gerade erkennbar ist, was in Übrigen die Differenzierbarkeit dieser Objekte, also die Bestimmung der Steigung in einem Punkt, z.B. von Funktionsgraphen, überhaupt ermöglicht. Die skaleninvarianten Fraktale dagegen lassen die Bestimmung der Steigung in keinem ihrer Punkte zu.
Dies ist die grundlegende Eigenschaft, die alle Fraktale verbindet. Darüber hinaus gibt es einige spezifische Eigenschaften, auf die ich weiter unten eingehen werde. Zunächst stelle ich einige der sog.
klassische Fraktale vor. Sie wurden Ende des 19. bis Anfang des 20. Jahrhunderts entwickelt und von den Mathematikern als “mathematische Monster” bezeichnet, weil sie sich grundsätzlich von den bisherigen Objekten der Geometrie unterschieden.
Formal handelt es sich bei Fraktalen um
kompakte Teilmengen eines
vollständigen metrischen Raumes. Der Raum, auf den die Metrik definiert ist, kann z.B.
ℝ,
ℝ2 oder
ℝ3 sein. Im Folgenden werde ich mich aber auf den Vektorraum
ℝ2 beschränken.
3.2 Die Koch-Kurve
Die
Koch-Kurve (nach dem schwedischen Mathematiker
Helge von Koch) ist eines der bekanntesten Fraktale überhaupt.
Von Koch stellte sie als Kurve vor, die überall stetig, aber nirgends differenzierbar ist, da sie praktisch nur aus “Ecken” besteht, die keine eindeutige Tangente zulassen.
Zunächst erläutere ich die Konstruktion dieser Kurve: Die
Koch-Kurve entsteht, indem man einen sog.
Initiator, d.h. ein Ausgangsobjekt, in diesem Fall eine Strecke der Länge 1, drittelt und anschließend den mittleren Teil durch zwei Kopien dieses Drittels ersetzt, sodass diese in einem Winkel von
α = 60 ° zueinander und zur Initiatorstrecke stehen. Diesen Schritt, der als
Generator bezeichnet wird, wendet man anschließend auf alle vier entstandenen Teilstrecken an, und wiederholt (
iteriert) dies (theoretisch) unendlich oft. Das Fraktal, das bei diesem Prozess entsteht, hat besondere Eigenschaften, auf die ich im Folgenden genauer eingehen werde. Es folgt nun ein Bild, das diesen Konstruktionsprozess verdeutlichen soll.
Wie man leicht erkennen kann, erhöht sich die Anzahl an Ecken pro Iterationsschritt
n um
4n − 1, sodass die Grenzkurve, wie bereits oben erwähnt, aus unendlich vielen Ecken - und zwar ausschließlich aus Ecken - zusammengesetzt ist, was nur daher kein Paradoxon ist, da der Konstruktionsprozess unendlich oft iteriert wird. Diese bemerkenswerte Eigenschaft macht sie daher an keiner Stelle differenzierbar.
3.2.1 Selbstähnlichkeit der Koch-Kurve
Selbstähnlichkeit bedeutet, dass ein Objekt aus verkleinerten Kopien seines selbst zusammengesetzt ist, die durch die Anwendung einer kontrahierenden
Ähnlichkeitsabbildung entstanden sind. Viele (aber längst nicht alle) Fraktale sind selbstähnlich, und die
Koch-Kurve ist ein typisches Beispiel dafür. Betrachtet man sie genau, so erkennt man leicht, dass sie aus vier auf
(1)/(3) skalierten Teilen aufgebaut ist, von denen der zweite um -60° und der dritte Teil um +60° rotiert worden ist. Nimmt man nun einen dieser Teile und vergrößert ihn auf das Dreifache, so erhält man wiederum die gesamte Kurve. Dabei setzt sich die Selbstähnlichkeit bei jeder beliebiger Vergrößerungsstufe fort, die Skaleninvarianz der
Koch-Kurve ist demnach eine direkte Folge ihrer Selbstähnlichkeit. Es ist jedoch zu beachten, dass
kein Konstruktionsschritt der Kurve selbstähnlich bzw. skaleninvariant ist. Theoretisch wäre es nämlich möglich, diesen derart stark zu vergrößern, sodass die Details verschwinden würden und man die eckige Struktur erkennen könnte. Die Selbstähnlichkeit bezieht sich daher nur auf das Grenzobjekt, das nach (theoretisch) unendlich vielen Iterationen entsteht.
3.2.2 Die Länge der Koch-Kurve
Nun möchte ich zeigen, wie man die Länge der Koch-Kurve bestimmen kann. Wie bereits erwähnt, hat die Initiatorstrecke die Länge 1. Da der Generator diese durch
a1 = 4 Teilstrecken der Länge
l1 = (1)/(3) ersetzt, beträgt die Länge der Kurve
L während der ersten Iteration
L1 = (4)/(3). Bei der zweiten Iteration verkürzt sich die Länge der Teilstrecken auf
l2 = (1)/(3)⋅(1)/(3) = ((1)/(3))2 , deren Anzahl steigt jedoch auf
a2 = 4⋅4 = 42 und deren Gesamtlänge lautet demnach
L2 = (42)/(32). Für die dritte Iteration gilt
l3 = ((1)/(3))3 ,
a3 = 43 und
L3 = (43)/(33). Daraus lässt sich folgern, dass für jeden beliebigen Teilschritt
n ln = (1)/(3)n ,
an = 4n und
Ln = ((4)/(3))ngilt, d.h. dass die Gesamtlänge pro Iteration um
(3)/(4) zunimmt. Da das Konstruktionsverfahren unendlich oft wiederholt wird, ergibt sich für die
Koch-Kurve eine Länge von
Die Koch-Kurve hat also eine unendliche Länge! Zwar belegt sie eine endliche Fläche, da man sie ja auf einem Blatt Papier darstellen kann (wenn auch nur ungenügend), ist sie dennoch von einer gänzlich anderen Natur wie andere bekannte Objekte wie z.B. der Kreis, der nachweislich einen endlichen Umfang und eine endliche Fläche besitzt. Dies ist der Grund, warum die
Koch-Kurve und die anderen klassischen Fraktale als “Monster” bezeichnet wurden: Sie entsprachen nun mal nicht den gängigen Vorstellungen geometrischer Objekte.
3.3 Die Cesàro-Kurve
Bei der
Cesàro-
Kurve handelt es sich um eine Verallgemeinerung der
Koch-Kurve. Zwar bleibt der Initiator die Einheitsstrecke, jedoch ändert sich der Generator dahin gehend, dass der Basiswinkel des von der Kurve umschlossenen gleichschenkligen Dreiecks, der bei der Koch-Kurve
θ = 60 ° beträgt, variabel im Bereich von
θ = 0 ° bis θ = 90 ° wird. Dadurch ändert sich folglich der Verkleinerungsfaktor in Abhängigkeit von
θ. Im Folgenden zeige ich eine Zusammenstellung von verschiedenen
Cesàro-Kurven im Bereich von
θ = 0 ° bis
θ = 90 ° in Schritten von 10°. Für
θ = 0 ° ergibt sich die nicht-fraktale Einheitsstrecke, da es keine Längenzunahme wie bei den andren Fällen gibt. Ansonsten sind alle
Cesàro-Kurven wie die Koch-Kurve unendlich lang, der Zuwachs an Länge pro Iteration ist aber offensichtlich von
θ abhängig. Da es sich bei
θ um einen Parameter handelt, bilden alle
Cesàro-Kurven eine sog.
Kurvenschar.
Man erkennt auf den ersten Blick, dass die Kurve mit zunehmendem
θ immer mehr “rauer” erscheint und immer mehr Fläche “umschließt”, bis sie schließlich bei
θ = 90 ° ein gleichschenkliges Dreieck mit einer Fläche von
(1)/(4) komplett ausfüllt. Dies scheint zunächst paradox, da es sich ja um eine Kurve, also ein Objekt mit der topologischen Dimension 1 handelt, das aber eine Fläche, also ein zweidimensionales Objekt, bildet.
3.3.1 Die fraktale Dimension D der Cesàro-Kurve
Wie es nun scheint, reicht die intuitive Vorstellung, die
Cesàro-Kurve als eindimensional zu betrachten, nicht aus. Für zunehmende Werte
θ von scheint sie immer mehr “zerklüftet” zu sein und sich immer mehr einer Fläche anzunähern, also praktisch von “eindimensional zu zweidimensional” zu wechseln. Wie kann man nun ein solches Fraktal charakterisieren? Wenn man die Länge der Kurve
u mit einer Genauigkeit von
(1)/(s) misst, ergibt sich ein Potenzgesetz der Form
u ∝ ((1)/(s))D, jedoch strebt die Länge bei zunehmender Genauigkeit gegen unendlich. Interessant ist aber, dass dabei der Exponent
D stets konstant bleibt, wodurch man
D + 1 als
Dimension der Kurve annehmen kann. Beispielsweise erhält man für die
Koch-Kurve
D ≈ 0, 26. Nur ergibt sich dadurch jedoch ein Problem: Bisher waren nur Zahlen aus
ℕ als Dimensionswerte erlaubt. Dies führte den französisch-polnischen Mathematiker
Benoît Mandelbrot zu einem radikalen Umändern des Dimensionsbegriffs für derartige Objekte: Er erweiterte den Bereich auf
ℝ + , d.h., dass Dimensionen auch
gebrochene Werte annehmen können (eine solche Dimension bezeichnet man daher als
fraktale Dimension D). Dazu verwendete
Mandelbrot die sog.
Hausdorff-
Besicovitch-Dimension
DH, die bereits zuvor von dem deutschen Mathematiker
Felix Hausdorff entwickelt und von
Abram S. Besicovitch verfeinert wurde. Sie wurde ursprünglich nur für “klassische” Objekte angewandt, doch
Mandelbrot erkannte, dass sie sich ideal zur Charakterisierung von Fraktalen eignet. Leider ist die Definition der
Hausdorff-
Besicovitch-Dimension derart komplex, dass sie den Rahmen dieser Arbeit sprengen würde. Stattdessen kann ich mich auf zwei andere Definitionen von fraktalen Dimensionen beschränken, die sich direkt aus der
Hausdorff-
Besicovitch-Dimension herleiten lassen: zum Einen die
Selbstähnlichkeitsdimension DS und zum Anderen die
Box-Dimension DB, die ich im nächsten Abschnitt behandeln werde.
Die Selbstähnlichkeitsdimension setzt voraus - wie bereits der Name vermuten lässt -, dass das zu untersuchende Objekt (es muss nicht unbedingt ein Fraktal sein) selbstähnlich ist. Sie lässt sich daher aus den bekannten Objekten, deren Dimension man intuitiv kennt, auf einfachste Weise herleiten. Als Beispiel wird eine Strecke der Länge 1 genommen. Sie ist selbstähnlich, da sie aus verkleinerten Kopien ihrer selbst zusammengesetzt werden kann. Dasselbe gilt für ein Quadrat und ebenso für einen Würfel, deren Dimensionen allesamt bereits bekannt sind.
Die oben abgebildete Einheitsstrecke wurde in vier gleich lange Teile unterteilt, dasselbe gilt für die Seiten des Einheitsquadrates und des Einheitswürfels, d.h. dass der Skalierungsfaktor
s jeweils
(1)/(4) lautet. Nun zähle man die Anzahl der Teilobjekte aus: Die Strecke besteht aus
n = 4, das Quadrat aus
n = 42 = 16 und der Würfel aus
n = 43 = 64 Teilobjekten. Wie unschwer zu erkennen ist, ergibt der Exponent, ich nenne ihn
D, jeweils die Dimension unserer Probeobjekte an. Daher kann folgende Behauptung aufgestellt werden:
((1)/(s))D = n
Die Anzahl der Teilobjekte ist also der Kehrwert des Skalierungsfaktors potenziert mit der Dimension des jeweiligen Probeobjektes. Diese Gleichung lässt sich durch Logarithmierung nach
D umstellen und man erhält
Dies ist die Definition der Selbstähnlichkeitsdimenision
Ds. Sie kann auf alle selbstähnlichen Fraktale angewendet werden. Nun wird versucht, die Dimension der
Cesàro-Kurve zu berechnen. Dazu wird zunächst der Fall
θ = 60 ° genommen, also die
Koch-Kurve, deren Skalierungsfaktor bereits bekannt ist; er lautet
s = (1)/(3). Genauso ist bereits bekannt, dass die
Koch-Kurve, wie auch jede
Cesàro-Kurve, aus vier Kopien ihrer selbst zusammengesetzt ist. Die Selbstähnlichkeitsdimenision beträgt daher
Ds = (log 4)/(log ((1)/(3) − 1)) = (2⋅log 2)/(log 3) ≈ 1, 262. Diesen Wert kann man als Maß für die “Gebrochenheit”, d.h. der komplexen Struktur, die das Fraktal bildet, ansehen.
Nun versuche ich, eine allgemeine Dimensionsgleichung für alle
Cesàro-Kurven aufzustellen. Dazu muss die Teilstreckenskalierung anhand des Basiswinkels
θ des gleichschenkligen Dreiecks bestimmt werden.
Wie der obigen Abbildung leicht zu entnehmen ist, entspricht der Skalierungsfaktor
s für die Länge der Teilstrecken
r dem Verhältnis der Grundstrecke
2r + x und
r. In Abhängigkeit von
θ ergibt sich folgende Rechnung
(1)/(s) = (2r + x)/(r)
cosθ = ((x)/(2))/(r) = (x)/(2r)
x = cosθ⋅2r
(1)/(s) = (2r + cosθ⋅2r)/(r) = (2r)/(r) + (cosθ⋅2r)/(r) = 2 + 2cosθ = 2(1 + cosθ)
s = (1)/(2(1 + cosθ))
Nun kann man die fraktale Dimension einer beliebigen
Cesàro-Kurve bestimmen
DCesàro(θ) = (log 4)/(log (2(1 + cosθ))) .
Beispielsweise erhält man für den Fall
θ = 50 ° einen Wert von
D ≈1, 165. Für die Grenzfälle
θ = 0 ° und
θ = 90 ° erhält man
D = 1 bzw.
D = 2. Die fraktale Dimension der
Cesàro-Kurve steigt also mit zunehmendem
θ und nimmt Werte zwischen 1 und 2 an. Die topologisch betrachtet
eindimensionale Kurve füllt bei
θ = 90 ° schließlich sogar eine
Fläche aus, bildet also ein zweidimensionales Objekt. Daher bezeichnet man die
Cesàro-Kurve in diesem Fall auch als
Cesàro-
Füllkurve, da die sie eine Fläche gänzlich ausfüllt. (Es gibt weitere Fraktale, die ein sehr ähnliches Verhalten zeigen.) Zu beachten ist jedoch, dass die Kurve stets topologisch eindimensional bleibt, und das Bilden einer Fläche nur aus deren besonderen Verhalten resultiert, da die Kurve
selbst nie zu einer Fläche wird, sondern theoretisch unendlich dünn bleibt. Ebenso interessant ist der Fall
θ = 0 °, bei dem die Kurve die Einheitsstrecke bildet und somit kein Fraktal ist (da keine Skaleninvarianz vorliegt).
Die
Cesàro-Kurve ist daher ein ideales Beispiel für die Auswirkungen der Änderung der fraktalen Dimension. Mit Hilfe dieser neuen Definition kann man beliebigen selbstähnlichen Objekten eine bestimmte Dimension zuordnen, die man als ein Maß für die “Zerklüftetheit” bzw. “Rauheit” sowie Komplexität des Fraktales auffassen kann. Natürlich ist eine Dimension, die Werte aus
ℝ annehmen kann, nicht besonders intuitiv, jedoch reicht die Betrachtung der topologischen Dimension nicht aus, um ein Fraktal zu beschreiben, da es sich anders verhält als die Objekte der “klassischen Geometrie”. Jedoch kann auch die Dimension eines Fraktales durchaus ganzzahlig sein, wie man leicht am Beispiel der
Cesàro-Kurve
θ = 90 ° feststellen kann. Eines haben aber alle fraktalen
Cesàro-Kurven gemeinsam: Ihre fraktale Dimension
D ist stets größer als ihre topologische Dimension
DT, d.h., dass
gilt. Diese Definition für Fraktale wurde ebenfalls von
Mandelbrot eingeführt und lässt sich auf fast alle fraktalen Mengen anwenden. Zwar gibt es wenige Ausnahmen, die sogar selbst
Mandelbrot bedauert, jedoch hilft diese Definition, die allermeisten Fraktale, auf die diese zutrifft, von anderen Mengen abzugrenzen. Fakt ist, dass ein Objekt mit einer nicht ganzzahligen Dimension immer ein Fraktal ist. Im Folgenden werden ausschließlich Fraktale behandelt, auf die
Mandelbrots Definition zutrifft.
3.3.2 Allgemeine Flächenformel der Cesàro-Kurve
Um noch einmal zu verdeutlichen, dass eine unendlich lange Kurve eine endliche Fläche einschließen kann, möchte ich an dieser Stelle die exakte Fläche berechnen, die die
Cesàro-Kurve mit der Einheitsstrecke, also ihrem Initiator, einschließt. Dazu ist es zunächst notwendig, die Fläche des gleichschenkligen Dreiecks, das bei der ersten Iteration entsteht, anhand des Basiswinkels
θ zu bestimmen.
Für die Fläche dieses Dreiecks
AΔ gilt in Abhängigkeit von
θ:
AΔ = s⋅h
h = sin θ⋅c
s = cos θ⋅c
c = (1)/(2(1 + cosθ))
AΔ = (1)/(4(1 + cosθ)2)⋅sin θ⋅cos θ
Interessant ist, dass diese Formel für
θ = 60 ° und variablem
c die bekannte Flächenformel für das gleichseitige Dreieck ergibt:
c²⋅sin 60 °⋅cos 6 0° = (c²√(3))/(4)
Nun kann man das Verhalten der Flächen während der ersten Iterationen untersuchen:
Während der 1. Iteration beträgt die Fläche der Konstruktionsstufe mit der Initiatorstrecke
A1 = (1)/(4(1 + cosθ)2)⋅sin θ⋅cos θ .
Bei der 2. Iteration kommen vier neue Dreiecke hinzu. Somit beträgt die Fläche nun
A2 = (1)/(4(1 + cosθ)2)⋅sin θ⋅cos θ + 4⎛⎝⎛⎝(1)/(4(1 + cosθ)2)⎞⎠2⋅sin θ⋅cos θ⎞⎠ .
Entsprechend beträgt sie während der 3. Iteration, bei der
42 = 16 neue Dreiecke hinzukommen:
A3 = A2 + 42⎛⎝⎛⎝(1)/(4(1 + cosθ)2)⎞⎠3⋅sin θ⋅cos θ⎞⎠
Hieraus ergibt sich für die Fläche der Grenzkurve folgende Reihe:
Diese Reihe ist für alle Werte von
θ (0 ° ≤ θ ≤ 90 °) konvergent. Beispielsweise erhält man für
θ = 60 ° die exakte Fläche, die die
Koch-Kurve mit der Initiatorstrecke einschließt:
AKoch = ∞⎲⎳n = 04n⎛⎝⎛⎝(1)/(4(1 + cos60 °)2)⎞⎠n + 1⋅sin 60 °⋅cos 60 °⎞⎠
= ∞⎲⎳n = 04n⎛⎝(1)/(9)n + 1⋅(√(3))/(4)⎞⎠ = √(3)⋅∞⎲⎳n = 0⎛⎝(4n − 1)/(9n + 1)⎞⎠
= (√(3))/(20) ≈ 0.0866025
Betrachtet man nun den Verlauf der Flächenentwicklung von
θ = 0 ° bis
θ = 90 °, so steigt der Graph annähernd linear mit der Steigung
m ≈ ((√(3))/(20))/(60) = (√(3))/(1200) an (nur kurz vor Erreichen des Grenzfalls von 90° wird der Graph etwas flacher). Dabei ändert sich die Fläche von
A = 0 bis auf
A ≈ 0, 125. Im Grenzfall beträgt die Fläche wiederum ebenfalls 0, da es zwischen der Kurve und der Initiatorstrecke keine Fläche mehr geben kann; die Kurve
selbst füllt nun diese aus, und zwar mit der oben genannten Fläche von
(1)/(4). Im Folgenden ist der Graph der Flächenfunktion
ACesàro (θ) = ∞⎲⎳n = 04n⎛⎝⎛⎝(1)/(4(1 + cosθ)2)⎞⎠n + 1⋅sin θ⋅cos θ⎞⎠; 0 ° ≤ θ ≤ 90 °
dargestellt.
Wie bereits erwähnt, sind die Flächen mit der Initiatorstrecke aller
Cesàro-Kurven mit
0 ° < θ ≤ 90 ° endlich, aber ihre Längen stets unendlich. Dieses Paradoxon erschwert es, solche Objekte zu handhaben. Jedoch kann dank der fraktalen Dimension jede dieser Kurven genau charakterisiert werden. Es lässt sich ebenfalls deutlich erkennen, dass mit zunehmender fraktaler Dimension auch die von der Kurve eingeschlossene Fläche ansteigt.
3.4 Weitere klassische Fraktale
Im Folgenden werde ich kurz einige weitere klassische Fraktale vorstellen. Ein tief gehendes Verständnis der ursprüngliche Gedanken der Mathematiker, die diese entwickelten, ist hier aus Platzgründen aber nicht möglich. Dennoch werden weitere “Anschauungsobjekte” benötigt, insbesondere im Hinblick auf den folgenden Abschnitt.
3.4.1 Das Sierpiński-Dreieck
Das
Sierpiński-Dreieck wurde 1916 vom polnischen Mathematiker
Wacław Sierpiński eingeführt. Es wird konstruiert, indem ein gleichseitiges Dreieck der Seitenlänge 1, dem
Initiator, in der Mitte ein weiteres Dreieck, deren Eckpunkte die Schnittpunkte der Seitenhalbierenden sind, entfernt wird (
Generator). Es verbleiben drei kongruente und dem Initiatordreieck ähnliche Dreiecke. Dieser Algorithmus wird unendlich oft auf die jeweils verbleibenden Dreiecke angewendet.
Das bei diesem Verfahren entstandene Fraktal hat keine Fläche, da es sich um einen unendlichen Entfernungsprozess handelt, und ist ebenso wie die
Koch-Kurve selbstähnlich: Es ist aus drei auf
(1)/(2) skalierten verkleinerten Kopien aufgebaut. Daher kann man auch hier die fraktale Dimension mit Hilfe der Selbstähnlichkeitsdimension bestimmen:
DDreieck = (log 3)/(log 2) ≈ 1, 59
Das
Sierpiński-Dreieck ist also ein Gebilde, dass zwar keine Fläche hat, sich jedoch mehr wie ein zwei- als ein eindimensionales Objekt verhält.
3.4.2 Der Sierpiński-Teppich
Dieses Fraktal wurde ebenfalls von
Wacław Sierpiński eingeführt. Es beruht ebenso wie sein Dreieck auf einem unendlichen Entfernungsprozess. Hierbei ist jedoch nicht ein gleichseitiges Dreieck, sondern ein Quadrat der Seitenlänge 1 der
Initiator. Anschließend wird dieses in neun Teildreiecke geteilt, wovon das mittlere entfernt wird, wobei acht auf
(1)/(3) skalierte, kongruente und zu Urspungsquadrat ähnliche Teilquadrate übrig bleiben (
Generator). Auch hier wird der Generator auf alle diese verbliebenen Quadrate angewendet. Zwar scheinen beide Fraktale einem sehr ähnlichen Konstruktionsprozess zu entstammen, so haben sie jedoch komplett unterschiedliche fraktale Dimensionen. Die Selbstähnlichkeitsdimension des
Sierpiński-Teppichs beträgt
DTeppich = (log 8)/(log 3) ≈ 1, 83
und zeigt, dass dieses Fraktal dem Verhalten nach einer Fläche deutlich näher ist als das
Sierpiński-Dreieck und von einer weitaus größeren Komplexität ist.
4 Iterierte Funktionensysteme (IFS)
In diesem Abschnitt stelle ich die sog. iterierten Funktionensysteme (IFS) vor. Es handelt sich hierbei um ein Verfahren zur Generierung fraktaler Bilder. Anhand der Theorie, die im Folgenden vorgestellt wird, habe ich als praktisches Produkt ein Computerprogramm entwickelt, das dieses Verfahren implementiert.
4.1 Die Metapher der MVKM
Iterierte Funktionensysteme lassen sich gut mit Hilfe der folgenden Metapher einer sog.
Mehrfach-Verkleinerungs-Kopier-Maschine (MVKM) erläutern: Man denke sich eine MVKM als ein Gerät, das aus
n Linsensystemen zusammengesetzt ist, wobei jedes dieser Linsensysteme Bilder unterschiedlich stark kontrahiert und unabhängig ist, d.h., die Eingabe, die das System erhält, nicht von den anderen beeinflusst wird. Dabei kann die Anordnung dieser Systeme innerhalb der Maschine beliebig sein. Nimmt man nun ein beliebiges Anfangsbild
A0, so wird dieses kopiert und durch die Linsensysteme geschickt. Diese erzeugen jeweils eine verkleinerte Ausgabe des Ursprungsbildes. Alle diese Ausgaben werden nun zu einem einzigen Ausgabe-Bild zusammengesetzt, d.h., die Ausgabe ist eine “Collage” der jeweiligen Linsenausgaben entsprechend deren Anordnung. Nun befindet sich die Maschine in einer
Rückkoppelungsschleife, d.h. dass ihre Ausgabe ihr wieder als Eingabe zugeführt wird. Führt man diese Rückkoppelung unendlich oft aus, so erhält man eine Ausgabe
A∞, die unabhängig von dem Anfangsbild
A ist. Ausschließlich die Anordnung der Linsensysteme ist für das Aussehen dieser als
Attraktor der MVKM bezeichnete Ausgabe verantwortlich. Der Attraktor ist ein Zustand, gegen den das Rückkoppelungssystem
immer streben wird. Nimmt man als Anfangsbild den Attraktor, so kommt es zu keiner Veränderung der Ausgabe. Es folgt eine Abbildung, die den Grundaufbau einer MVKM darstellt.
Eine MVKM ist eine
Rückkoppelungsmaschine: Links ist die sog.
Eingabeeinheit, in diesem Fall ein beliebiges Bild. Die Eingabe wird an die
Prozessoreinheit übergeben, wo jede Kopie des Eingabebildes entsprechend dem Linsensystem verändert und zu einer Collage zusammengesetzt wird. Anschließend wird das Bild der
Ausgabeeinheit übergeben. Diese wiederum übergibt die Ausgabe an die Eingabeeinheit über die sog.
Rückkoppelungsleitung.
Wie in der obigen Abbildung leicht zu erkennen ist, lässt diese spezielle MVKM ihren Attraktor unverändert. Der Attraktor der obigen MVKM ist in diesem Fall übrigens das
Sierpiński-Dreieck! Dies ist kein Zufall, denn MVKMs haben in der Regel Fraktale als Attraktoren.
Die MVKM ist daher eine geeignete Metapher für das Konzept der
iterierten Funktionensysteme, das durch den Mathematiker
John Hutchinson im Jahr 1981 entwickelt wurde.
4.2 Definition von IFS
Nun komme ich zur mathematischen Beschreibung von IFS:
Ein IFS ist gegeben durch eine Menge
F von
N ∈ ℕ Kontraktionen
wn eines vollständigen metrischen Raumes
X auf sich selbst, d. h. Bild- und Urbildpunkte der Abbildungen liegen im selben Raum:
Diese Kontraktionen stellen metaphorisch die Linsensysteme der MVKM dar. Es kann sich dabei um eine beliebige Kontraktion handeln, ich beschränke mich jedoch ausschließlich auf affine Abbildungen, theoretisch wären aber genauso auch andere Arten von Abbildungen möglich. Es wurde gezeigt, dass die MVKM alle Abbilder der Linsensysteme zu einem Ausgabebild zusammengefügt hat. Mathematisch betrachtet handelt es sich um die Abbildung
W(A) durch Vereinigung der jeweiligen Bildmengen, die durch eine der
n Abbildungen auf die Ausgangsmenge
A erzeugt wurden, formal
W(A) wird als
Hutchinson-
Operator bezeichnet. Er kann als die Prozessoreinheit der MVKM angesehen werden. Der
Hutchinson-Operator wird nun auf eine beliebige Anfangsmenge
A0 angewendet, wobei die erste Ausgabe der MVKM entsteht:
A1 = W(A0). Da es sich aber um ein Rückkoppelungssystem handelt, kann die Ausführung der MVKM als Iteration des
Hutchinson-Operators angesehen werden:
Die Ausgabe des Operators wird ihm also wieder als Eingabe zugeführt, genauso wie bei der MVKM. Iteriert man dieses System nun unendlich oft, so wird es stets immer gegen den stabilen Zustand, den
Attraktor A∞ des IFS, streben. Dabei gilt wie erläutert
d.h. dass der
Hutchinson-Operator den Attraktor unverändert (
invariant) lässt. Daher wird
A∞ auch als
Fixpunkt des IFS bezeichnet. Zu beachten ist, dass ein IFS nur einen
einzigen Attraktor haben kann, und dieser ist in der Regel fraktal. Diese Eigenschaft kann genutzt werden, um durch eine gegebene Anzahl von affinen Abbildungen ein Fraktal kodieren und generieren zu können. Das IFS strebt deshalb immer zu dem Attraktor, weil die verwendeten Abbildungen Kontraktionen sind, demnach auch der
Hutchinson-Operator selbst. Dadurch lässt sich das
Banachsche Fixpunktprinzip aufgreifen: Das System wird immer einen eindeutigen Fixpunkt haben.
4.3 Kodierung von Fraktalen durch IFS
Im Folgenden erläutere ich die Kodierung und Generierung von Fraktalen durch IFS. Der Attraktor dieser IFS wird dann stets das gegebene Fraktal sein. Da viele Fraktale selbstähnlich sind, lassen sie sich durch die Ähnlichkeitsabbildungen, die ihr Ganzes auf ihre Teile abbilden, kodieren. Als Beispiel nehme ich das Sierpiński-Dreieck. Es ist wie bekannt aus drei selbstähnlichen Teilen aufgebaut, daher kann es durch ein IFS mit den folgenden affinen Abbildungen dargestellt werden:
w1 = ⎛⎜⎝
0, 5
0
0
0, 5
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 5
0
⎞⎟⎠
w2 = ⎛⎜⎝
0, 5
0
0
0, 5
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 25
0, 5
⎞⎟⎠
w3 = ⎛⎜⎝
0, 5
0
0
0, 5
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0
0
⎞⎟⎠
Die Iteration des Hutchinson-Operators W(A) = w1(A)∪w2(A)∪w3(A) auf ein beliebiges Startbild A0 führt stets zu diesem Fraktal als Attraktor. Die affinen Abbildungen, die zur Beschreibung des Sierpiński-Dreiecks notwendig sind, wurden durch ihre Eigenschaft der Selbstähnlichkeit bestimmt: Man benötigt drei Ähnlichkeitsabbildungen, die das gesamte Fraktal jeweils auf eines ihrer ähnlichen Teile abbilden, z.B. bildet w3 das Dreieck auf den unteren linken Teil ab. Da IFS aber auch die allgemeineren affinen Abbildungen zulassen, lassen sich nicht nur selbstähnliche, sondern auch sog. selbstaffine Fraktale kodieren. Sie sind aus affinen Kopien, analog zu den selbstähnlichen Fraktalen, ihrer selbst zusammengesetzt. Fakt ist, dass jedes Fraktal, das aus selbstähnlichen oder selbstaffinen Kopien zusammengesetzt ist, ein Attraktor eines IFS ist.
Genauso wie man bereits vorhandene Fraktale kodieren kann, lassen sich mit IFS also auch komplett neue Fraktale durch beliebige Variation von kontrahierenden affinen Abbildungen erzeugen, die allgemein als IFS-Fraktale bezeichnet werden.
Um diese affinen Abbildungen auf eine einfache Weise bestimmen zu können, kann man sie durch ein Urbildparallelogramm und mehrere Abbildparallelogramme grafisch repräsentieren lassen. Durch Anwendung verschiedener affiner Abbildungen wie Translation oder Skalierung auf ein vorher definiertes Urbildparallelogramm lassen sich verschiedene Parallelogramme erzeugen, die jeweils eine affine Abbildung repräsentieren, nämlich diejenige, die das Urbildparallelogramm auf das entsprechende Abbildparallelogramm abbildet. Somit können auf eine sehr intuitive Weise beliebige affine Abbildungen definiert werden.
Dieses sehr anschauliche Konzept verfolgt auch mein Programm IFS-Generator: Im Hauptfenster befindet sich die Zeichenfläche, auf der sich das Urbildparallelogramm, hier ein Quadrat, befindet. Erstellt man nun eine neue affine Abbildung, so wird zunächst eine 1:1-Kopie des Urbildparallelogrammes erstellt, die Abbildung, die dadurch repräsentiert wird, ist daher w = ⎛⎜⎝
1
0
0
1
⎞⎟⎠⋅⟶x. Nun lässt sich dieses Parallelogramm mit dem Programm auf die durch affine Abbildungen definierte Art und Weise transformieren. Das Programm bestimmt anschließend aus drei Punkten des Urbildparallelogrammes und der jeweiligen Abbildparallelogramme die entsprechenden affinen Abbildungen, die durch jene repräsentiert werden.
Die Abbildparallelogramme enthalten zusätzlich ein einbeschriebenes “L”, um bei Spiegelungen und Rotationen eindeutig zu sein. Ansonsten könnten diese Abbildungsarten nicht unterschieden werden.
Natürlich kann der Hutchinson-Operator in der Praxis nicht unendlich oft iteriert werden. In der Regel reichen bereits 10 Iterationen aus, um eine gute Näherung erhalten zu können. Zwar kann das Startbild A0 theoretisch beliebig sein, jedoch wäre es jedoch sehr unpraktisch, dieses einzulesen, dann zu transformieren und dies mit der Ausgabe ständig zu wiederholen.
Stattdessen verwende ich folgenden Algorithmus, der durch Berechnen und Zeichnen von Parallelogrammen eine Näherung des Attraktors erzeugt: Man geht von den Eckpunkten
A(0|1), B(0|0), C(1|0) und D(1|1) eines Quadrats aus. Auf diese vier Punkte werden jeweils die n gegebenen affinen Abbildungen angewendet, wodurch man die Eckpunkte von n neuen Bild-Parallelogrammen erhält, dabei ersetzt man die Koordinaten des Urbild-Parallelogramms durch die gerade berechneten. Dieses Verfahren wird rekursiv auf alle entstandenen Parallelogramme angewendet. Dabei entspricht eine Rekursion jeweils einer Iteration des Hutchinson-Operators. Nach einer vorher definierten Zahl von Iterationen werden aus den berechneten Eckpunkten die Parallelogramme auf der Ausgabefläche gezeichnet und das Verfahren abgebrochen.
4.4 Fraktale Modellierung mit Hilfe von IFS
Bisher wurden ausschließlich die klassischen Fraktale behandelt, die zwar eine komplexe, aber nicht Natur-ähnliche Form haben. Jedoch gibt es nicht nur in der Mathematik skaleninvariante und selbstaffine Strukturen, sondern auch in der Natur. Natürlich ist dort der Grad an Skaleninvarianz begrenzt, dennoch ist z.B. ein Farnblatt aus vielen Unterblättern aufgebaut, die dem ganzen Blatt recht ähnlich sehen. Weitere skaleninvariante Systeme wären beispielsweise auch eine Wolke oder ein Baum. Der Begründer der modernen Fraktalgeometrie
Mandelbrot erkannte, dass fast alle natürlichen Strukturen fraktale Muster zeigen. Solche Systeme werden daher als
natürliche Fraktale bezeichnet. Am Beispiel der IFS möchte ich im Folgenden zeigen, wie man natürliche Bilder in einem gewissen Grad als ein Fraktal darstellen (
kodieren) kann.
Der Mathematiker
Michael Barnsley entwickelte eine Methode, mit der man viele vorhandene Bilder in ein IFS “umwandeln” kann. Dafür entwickelte er den sog.
Collagen-Satz. Dieser besagt, dass man ein beliebiges Bild derart mit affinen Kopien seines selbst überdecken soll, sodass alle diese Kopien eine Collage des Ursprungsbildes bilden. Die affinen Abbildungen, die das Urbild auf die Kopien abbilden, bilden dann den
Hutchinson-Operator des IFS. Dieses IFS wird nun als Attraktor in etwa das Bild erzeugen, das man als Vorlage verwendet hat. Natürlich lässt sich dieses interessante Verfahren nur auf solche Bilder anwenden, die bereits eine annähernd selbstaffine Struktur besitzen. Um die Methode auf eine sehr einfache Art durchzuführen, bietet es sich an, ein Computerprogramm zu verwenden, das ein gegebenes Bild einliest und daraus Kopien erstellt, die man auf dem Bildschirm gemäß des Collagen-Satzes anordnen kann.
Barnsley wandte sein Verfahren u.a. auch auf einen Farn an. Ergebnis ist das folgende IFS mit nur vier affinen Abbildungen (das als
Barnsley-
Farn bezeichnet wird):
w1 = ⎛⎜⎝
0, 85
0, 037
− 0, 037
0, 85
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 074
0, 182
⎞⎟⎠
w2 = ⎛⎜⎝
0, 197
− 0, 226
0, 226
0, 197
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 4
0, 049
⎞⎟⎠
w3 = ⎛⎜⎝
− 0, 15
0, 283
0, 26
0, 237
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 575
− 0, 084
⎞⎟⎠
w4 = ⎛⎜⎝
0
0
0
0, 159
⎞⎟⎠⋅⎛⎜⎝
x
y
⎞⎟⎠ + ⎛⎜⎝
0, 5
0
⎞⎟⎠
Nun versuche ich, dieses IFS mit der oben erläuterten Methode darzustellen. Dazu wird eine Iterationszahl von ni = 10 gewählt. Ergebnis ist die folgende Ausgabe:
Das Bild lässt bereits die Mächtigkeit von IFS zur Darstellung natürlicher Strukturen erkennen, dennoch scheint die Methode nicht zu dem gewünschten Ergebnis geführt zu haben. Man erkennt immer noch die einzelnen Parallelogramme, die das Programm gezeichnet hat. Tatsächlich ist es so, dass nicht nur 10, sondern etwa 50 Iterationen notwendig wären, um diesen Attraktor darzustellen. Dies wäre jedoch nicht perfomant, da die Anzahl an zu zeichnenden Parallelogrammen mit jeder Iteration ansteigt, was eine sehr rechenaufwendige Methode darstellen und eine sehr lange Berechnungszeit erfordern würde. Der Grund für dieses Verhalten sind die starken Differenzen bei den Kontraktionsfaktoren der affinen Abbildungen, sodass die Parallelogramme pro Iteration nur sehr langsam an Größe abnehmen. Das Problem der hinreichenden Darstellung eines Attraktors wird auch als Dekodierungs-Problem bezeichnet. Der bisherige Algorithmus ist also nicht geeignet, um alle Attraktoren generieren zu können.
4.5 Der Chaosspiel-Algorithmus
Um das Dekodierungs-Problem zu lösen, wurde der sog.
Chaosspiel-Algorithmus eingeführt. Es handelt sich dabei um eine erstaunliche Methode, um performant eine Näherung des Attraktors eines IFS generieren zu können. Diese neue Methode lässt sich metaphorisch durch eine sog.
Glücksrad-Verkleinerungs-Kopier-Maschine (GVKM) erläutern: Diese neue Art von Kopiermaschine arbeitet nicht mehr mit einem Anfangsbild, sondern einem einzigen Anfangspunkt. Sie wählt im Gegensatz zur MVKM ein Linsensystem zufällig mit einer bestimmten Wahrscheinlichkeit
pn aus und wendet es auf diesen Punkt an. Dabei erhält man einen neuen Punkt, den die Maschine auf ein Papier zeichnet. Anschließend wird dieses Verfahren auf diesen neu erhaltenen Punkt wiederholt angewandt.
Die GVKM ist wie die MVKM ein Rückkoppelungssystem: Der Anfangspunkt
zn wird durch eine zufällig mit der Wahrscheinlichkeit
pn ausgewählte affine Abbildung
wn auf den nächsten Punkt
zn + 1 abgebildet. Anschließend wird dieser der Maschine wieder als Eingabe zugeführt. Nach vielen Tausenden Iterationen bildet sich der Attraktor des entsprechenden IFS aus.
Dieses Verfahren unterscheidet sich grundlegend vom bisherigen
deterministischen Algorithmus, der bei gleichen Anfangsbedingungen stets dasselbe Ergebnis liefert. Das Chaosspiel erzeugt dagegen eine zufällige Folge von Punkten, die aber dennoch gegen den Attraktor strebt. Diese Methode wird in der Mathematik als
zufällig iteriertes Funktionensystem bezeichnet und ist eine der geeignetsten Methoden, Attraktoren von IFS zu erzeugen. Die Erklärung,
warum die Punktfolge gegen den Attraktor konvergiert, würde den Rahmen dieser Arbeit sprengen. Es sei aber zu erwähnen, dass dies nur aufgrund der kontrahierenden Eigenschaften der affinen Abbildungen möglich ist.
Algorithmisch wendet man das Chaosspiel an, indem ein beliebiger Punkt
z0 als Startpunkt gewählt wird. Am geeignetsten ist jedoch ein Fixpunkt der verwendeten affinen Abbildungen, da es sonst zu Punkten kommt, die nicht zum Attraktor gehören, weil die entstehende Punktfolge nicht sofort konvergieren würde. Anschließend wird mit einer Zufallsfunktion eine Zahl zwischen 0 und 1 bestimmt. Um die unterschiedlichen Wahrscheinlichkeiten zu beachten, wird geprüft, ob die Zufallszahl kleiner einer der vorher gewählten Wahrscheinlichkeiten ist, z.B. wird die affine Abbildung
wn mit der Wahrscheinlichkeitsangabe
pn dann ausgewählt, wenn die Zufallszahl
< pn ist. Nun wird
wn auf
z0 angewandt und der entstandene Punkt
zn + 1 = wn(zn) gespeichert bzw. gezeichnet. Anschließend wird diese Methode
N ∈ ℕ mal iteriert. Nach etwa
N = 100000 Iterationen erhält man eine sehr gute Näherung des Attraktors in performanter Zeit.
Nun wird versucht, diesen Algorithmus auf den
Barnsley-Farn anzuwenden. Dazu verwende ich für alle affinen Abbildungen zunächst gleiche Wahrscheinlichkeiten (
p = 0, 25) bei einer Iterationszahl von
N = 100000.
Wie unschwer zu erkennen ist, hat diese Methode nicht zu einem optimalen Ergebnis geführt. Um den Farn bei dieser Iterationszahl korrekt darzustellen, muss man die Wahrscheinlichkeiten, mit der die jeweiligen Abbildungen ausgewählt werden, anpassen. Dies bewirkt, dass die bisher wenig getroffenen Bereiche des Attraktors häufiger getroffen werden und dieser vollständig sichtbar wird. Dazu kann man sich als Faustregel merken: Die Verteilung der Wahrscheinlichkeiten entspricht in etwa der der Fläche, die die Abbildparallelogramme (bei dem oben vorgestellten Verfahren) einnehmen.
Nun können die Wahrscheinlichkeiten bestimmt werden, sie lauten in etwa
p1 = 0, 8; p2 = 0, 1; p3 = 0, 09 und p4 = 0, 01. Es handelt sich jedoch nur um eine “Methode durch Ausprobieren”. Es gibt zwar eine mathematische Näherungslösung, diese ist jedoch zu aufwendig für einfache Experimente (eine optimale Lösung ist auch algorithmisch nicht zu erreichen). Startet man nun die GVKM, so erhält man eine eindrucksvolles Fraktal, das dem Naturvorbild sehr nahe kommt.
4.6 Die Box-Dimension DB
Zum Schluss möchte ich noch kurz erläutern, wie man bei IFS-Fraktalen die fraktale Dimension bestimmen kann. Da bei Weitem nicht alle selbstähnlich sind, kann nicht auf die Selbstähnlichkeitsdimension zurückgegriffen werden. Stattdessen wird die allgemeinere Box-Dimension
DB verwendet. Man erhält sie, indem man über das Bild des Attraktors ein Gitternetz einer beliebigen Maschenweite
s1 legt und alle
N1 Maschen bzw. Boxen auszählt, die vom Attraktor getroffen wurden. Anschließend verringert man die Maschenweite
s2 und zählt erneut alle vom Attraktor getroffenen Maschen
N2 aus. Die Box-Dimension beträgt dann
Die Box-Dimension ist weniger exakt als die Selbstähnlichkeitsdimension, lässt sich jedoch besonders einfach algorithmisch berechnen, da das Maschenzählen dem Zählen von Pixeln einer Bitmapgrafik entspricht. Beispielsweise erhält man für den Farn dadurch eine fraktale Dimension von
DB ≈ 1, 81. Die Box-Dimension erlaubt es, den Komplexitätsgrad jedes beliebigen Attraktors zu bestimmen. Man geht sogar so weit, dass man sie auf natürliche Fraktale anwendet, z.B. auf Küstenlinien. Sie haben ein ähnliches Verhalten wie die
Koch-Kurve, denn umso genauer man sie misst, desto länger wird ihre Gesamtlänge.
4.7 Ausblick
Die IFS sind eine sehr mächtige Methode zur Kodierung fraktaler Bilder. Es ist mit ihnen ebenfalls problemlos möglich, bereits vorhandene Strukturen aus der Natur mathematisch modellieren und am Computer simulieren zu lassen. Man konnte deutlich erkennen, dass die Struktur einer derart komplexen Pflanze wie des Farns durch nur vier affine Abbildungen kodiert werden konnte, was äußerst erstaunlich ist, wenn man beachtet, wie wenig Information aus Sicht des IFS benötigt wird. Die sich daraus ergebenden Anwendungsmöglichkeiten sind sicherlich sehr vielfältig. So wurden IFS bereits zu einer sehr effektiven Komprimierungsmethode weiterentwickelt. Man darf daher auch in Zukunft davon ausgehen, dass die Forschung an diesem neuen Feld weiter vorangetrieben wird.
5 Eigene Wertung
Die fraktale Geometrie ist ein sehr interessantes, jedoch auch sehr umfangreiches Teilgebiet der Mathematik. Im Rahmen dieser BeLL war es daher nur möglich, einen Bruchteil dieser Thematik zu behandeln. So war es beispielsweise nicht möglich, auf den Bezug zur Chaostheorie sowie die Mandelbrot- und Juliamengen einzugehen. Dennoch hoffe ich, durch Betrachtung der Arbeiten von Koch, Cesàro, Sierpiński, Mandelbrot, Hutchinson und Barnsley ein grundlegendes Verständnis der Konzepte dieser neuen Art von Geometrie vermittelt zu haben.
Die Recherche zu den Themen sowie die Erstellung des Programmes IFS-Generator erforderte ein hohes Maß an Selbstständigkeit sowie die Fähigkeit zum Autodidaktimus. Ich bin überzeugt, durch diese Besondere Lernleistung einen wichtigen Schritt für ein eventuelles Studium getätigt zu haben.
Insgesamt habe ich sehr viel Interessantes und weit über den Rahmen des Schulunterrichts hinaus Gehendes gelernt und anwenden können. Daher bin ich äußerst zufrieden über die Tatsache, diese BeLL durchzuführen.
Flensburg, im März 2011
Adrian Jablonski
6 Anhang
In diesem Anhang finden sich einige erläuternde Informationen zu meinem Programm IFS-Generator sowie weitere Materialien.
6.1 Das Programm IFS-Generator
Im Rahmen dieser BeLL ist das Programm
IFS-Generator entstanden. Es implementiert die Funktionalität der oben erläuterten IFS. Die graphische Oberfläche der Software ist aus einem Zeichenfeld (
DrawPanel) und aus einem Ausgabefeld (
OutputPanel) aufgebaut.
Im
Zeichenfeld können gemäß der im Hauptteil beschriebenen Methode Abbildparallelogramme erstellt werden, die jeweils eine affine Abbildung repräsentieren, und somit ein intuitives Definieren des
Hutchinson-Operators erlauben. Dabei kann jedes dieser Parallelogramme im Programm an sog. Anfass-Punkten mit der Maus transformiert werden, wodurch sich ebenfalls die repräsentierte affine Abbildung ändert. Dabei ist jedoch zu beachten, dass IFS-Generator nicht prüft, ob es sich dabei um eine Kontraktion handelt, da der rechnerische Aufwand zu groß wäre. Stattdessen kann man sich als einfache Regel merken:
Eine Abbildung ist mindestens dann eine Kontraktion, wenn sich das Abbildparallelogramm innerhalb des Urbildparallelogramms befindet. Nachdem man die Abbildparallelogramme erstellt hat, werden aus drei Punkten des Urbildparallelogramms und jeweils drei Punkten eines Abbildparallelogramms zwei lineare Gleichungssysteme gemäß Formel 12 aufgestellt und mit Hilfe des
Gaussschen Algorithmus gelöst, wodurch man die Elemente der Abbildungsmatrix und des Translationsvektors erhält, die die durch das Parallelogramm repräsentierte affine Abbildung bilden.
Diese affinen Abbildungen werden dann an das
Ausgabefeld übergeben. Dieses bietet die Möglichkeit, den Attraktor des IFS entweder durch Verwendung des deterministischen (“MVKM starten”) oder des Chaosspiel-Algorithmus (“GVKM starten”) zu berechnen. Dabei kann die Farbe, in der dieser dargestellt werden soll, frei gewählt werden. Darüber hinaus bietet das Ausgabefeld die Möglichkeit, im Chaosspiel-Modus für jede verwendete affine Abbildung des
Hutchinson-Operators eine eigene Zufallsfarbe zuzuweisen, wodurch man erkennen kann, welche Abbildung für welchen Punkt verantwortlich ist. Ferner wird ebenfalls die Bestimmung der Box-Dimension des gezeichneten Attraktors, das Abspeichern der Parameter sowie das Erstellen von Screenshots unterstützt.
Eine besondere Funktion des Programmes ist jedoch der Collagen-Modus. Er erlaubt es, gemäß dem Collagen-Satz von
Barnsley, ein gegebenes Bild in ein IFS zu kodieren. Dazu lädt man das Bild in die Zeichenfläche, wo man es durch affine Kopien seiner selbst komplett überdecken kann. Wenn man anschließend den Attraktor zeichnen lässt, sollte in etwa das gegebene Bild dargestellt werden (natürlich nur einfarbig).
Es folgen einige Screenshots der Software:
6.2 Literaturverzeichnis
|
[Barn95]
|
Barnsley, Fraktale, Spektrum Akademischer Verlag, Heidelberg, 1995
|
|
[Baum01]
|
Baum, Lind, Schermuly u.a., Lineare Algebra mit analytischer
Geometrie (Leistungskurs), Ernst Klett Verlag, Stuttgart, 2001
|
|
[Peit92]
|
Peitgen, Jürgens, Saupe, Bausteine des Chaos: Fraktale, Springer-Verlag Berlin, und Klett-Cotta, Stuttgart, 1992
|
|
[Mand91]
|
Mandelbrot, Die fraktale Geometrie der Natur, Birkhäuser Verlag, Basel, 1991
|
|
[Gruh06]
|
(30. November 2010)
|
|
[Spre09]
|
(26. November 2010)
|
|
[Reit06]
|
(03. November 2010)
|
|
[WP1]
|
(24. Januar 2011)
|
|
[WP2]
|
(30. Januar 2011)
|
|
[WP3]
|
(30. Januar 2011)
|
|
[WP4]
|
(30. Januar 2011)
|
|
[WP5]
|
(3. November 2011)
|
|
[WP6]
|
(6. März 2011)
|
|
[WP7]
|
(23. Februar 2011)
|
6.3 Bildnachweise
|
Abb. 4
|
[Barn95] S. 86
|
|
Abb. 16
|
Boergens, Technische Hochschule Mittelhessen,
|
|
Abb. 21
|
|
Sofern nicht anders angegeben, stammen alle sonstigen Bilder aus meiner eigenen Produktion.
Copyright © 2011 by Adrian Jablonski. Alle Rechte vorbehalten. -
Impressum