IFS aus zwei Ähnlichkeitstransformationen

Wir erläutern kurz, wie der Algorithmus zum randomisierten Erzeugen eines Fraktals funktioniert. Randomisiert heisst "vom Zufall gesteuert", und in der Tat nutzt der Algorithmus als entscheidendes Element Zufallsstrukturen.

Nehmen wir an, wir haben zwei Drehstreckungen

z -> f1(z) und z-> f2(z)

gegeben. Der Algorithmus funktioniert dann wie folgt: Ausgehend von einem beliebigen Startpunkt z0 wird zufällig (sagen wir mit einer 50:50-Wahrscheinlichkeit) eine der beiden Abbildungen f1(z) oder f2(z) gewählt und der Bildpunkt z1 berechnet. Dieser Punkt wird nun gezeichnet und dient als Startpunkt für die nächste Iteration. Man wählt also wieder eine der beiden Abbildungen zufällig aus, bildet ab (das Ergebnis ist z2 und zeichnet den Punkt. Das Ganze wiederholt man viele, viele Male. Es entsteht eine Punktewolke die ungefähr so aussehen wird, wie die Grenzpunktmenge.

Das Ganze funktioniert dabei nicht nur mit zwei Abbildungen, sondern im Prinzip mit beliebig vielen. Schreibt man das Verfahren als Computerprogramm auf, so sieht das für Transformationen f_1, f_2,... f_k ungefähr folgenderma§en aus.

       z=startpunkt;
       n=Anzahl der Iterationen;
       wiederhole n-mal: (
            f=Eine zufÄllige Transformation aus f_1, f_2,... f_k;
            z=f(z);
            zeichne(z);
       )

Die einzelnen Befehle müssen natürlich an den Syntax der jeweiligen Programmiersprache angeglichen weden.

Eine Feinheit blieb bisher noch unerwähnt. Da der Startpunkt ja zufällig gewählt war, kann man nicht erwarten, dass sich gleich die ersten paar Punkte in der Nähe der Grenzpunktmenge befinden. Daher ignoriert man üblicherweise die ersten circa 100 Punkte.


Das folgende Applet demonstriert am Beispiel der im letzen Kapitel betrachteten Abbildungen die Erzeugung des IFS. Die Abbildungen f1, f2 seien dabei bereits vorher festgelegt. Mit dem Schieberegler kann man die Zahl der verwendeten Iterationen einstellen. Man beobachtet, dass für kleine Punktanzahlen zunächst noch keine Struktur erkennbar ist, dass sich aber für gro§e Punktmengen deutlich die Struktur der Grenzpunktmenge abzeichnet.

Bitte schalten Sie Java ein, um eine Cinderella-Konstruktion zu sehen.


Selbst aus sehr einfachen Transformationen lassen sich bereits interessante Grenzpunktmengen erzeugen. Betrachten wir zum Beispiel für einen gegebenen Punkt p die Transformation

fp(z):=(z+p)/2

die den Punkt z auf die Mitte zwischen p und z abbildet. In anderen Worten: fp ist eine Stauchung um den Faktor 2 mit Stauchungszentrum p. Das folgende Beispiel zeigt, was herauskommt, wenn man aus drei solchen Stauchungen fa(z), fb(z), fc(z) ein iteriertes Funktionensystem bildet. Die entstehende Grenzpunktmenge ist ein bekanntes Fraktal, das so genannte Sierpinski-Dreieck.

Bitte schalten Sie Java ein, um eine Cinderella-Konstruktion zu sehen.