FH Graubünden PH Graubünden

Fraktale Dimension

Algorithmisches Denken in der Primarschule

Zusammenfassung

Dieser Baustein ist einer von zwei Bausteinen zum Thema Dimensionen von Fraktalen, beide stehen in einem engen Zusammenhang zum Baustein fraktale Kurven, welcher von den Lehrpersonen zuvor bearbeitet werden sollte. Dadurch erhalten die Lehrenden eine passende theoretische Einbettung für den Dimensionsbegriff bei Fraktalen. Der vorliegenden Baustein fraktale Dimension handelt von der Dimension artifizieller Fraktale, der Baustein Box-Counting-Methode von der Dimension natürlicher Fraktale.

Der Dimensionsbegriff ist uns aus dem Alltag und dem Mathematikunterricht der Volksschule geläufig. Wir nehmen unsere Umgebung dreidimensional wahr. So hat ein Haus die drei Dimensionen Länge, Breite (oder Tiefe) und Höhe. Die Objekte aus der euklidischen Geometrie haben entweder eine Dimension (Gerade, Strecke, Kreisperipherie), zwei Dimensionen (Ebene, Kreisfläche, Quadrat) oder drei Dimensionen (Würfel, Zylinder, Prisma). Ergänzen kann man noch einen Punkt mit der Dimension 0. In der höheren Mathematik können Dimensionen auch höherer Ordnung als 3 sein. Bei der sogenannten euklidischen Dimension handelt es sich stets um ganze Zahlen.

Für geometrische Figuren mit der Dimension \(\mathrm{dim}\) gilt: Wird eine Figur im Verhältnis \(1:n\) verkleinert, so findet die verkleinerte Figur \(n^{\mathrm{dim}}\)-mal Platz in der ursprünglichen Figur. Wird beispielsweise eine Strecke gedrittelt, so hat die verkleinerte Strecke 3-mal Platz in der ursprünglichen Strecke, wird die Seite eines Quadrates gedrittelt, so hat das verkleinerte Quadrat 9-mal im ursprünglichen Quadrat Platz oder wird die Kante eines Würfels gedrittelt, so hat der verkleinerte Würfel 27-mal Platz im ursprünglichen Würfel. Wird mit \(k\) die Anzahl der verkleinerten Objekte bezeichnet, welche im ursprünglichen Objekt Platz haben, so gilt stets \(k=n^{\mathrm{dim}}\). Dieser Dimensionsbegriff wird für die Anwendung auf Fraktale verallgemeinert.

Da Fraktale selbstähnliche Gebilde sind (vgl. Baustein fraktale Kurven), kann aus der Zuordnung \(k=n^{\mathrm{dim}}\) die Definition der fraktalen Dimension abgeleitet werden. Wir untersuchen, wie oft ein im Verhältnis \(1:n\) verkleinertes Objekt im ursprünglichen Objekt enthalten ist und berechnen daraus die Dimension \[ k = n^{\mathrm{dim}} \] und somit \[ \mathrm{dim} = \frac{\log k}{\log n} , \] wobei \(\log\) für einen beliebigen Logarithmus steht. In der obligatorischen Schulzeit werden Logarithmen nicht thematisiert. Die Lernenden sollen jedoch eigenständig Strategien entwickeln, um bei gegebenen Werten für \(n\) und \(k\) den Exponenten \(\mathrm{dim}\) approximativ zu bestimmen.

Beide Aufgaben dieses Bausteins können gelöst werden, ohne dass die Lernenden zuvor den Baustein fraktale Kurven bearbeitet haben. In diesem Fall ist zu empfehlen, die fraktalen Kurven in Aufgabe 1 im Klassengespräch einzuführen oder sich auf Aufgabe 2 zu beschränken. Aus den drei Bausteinen fraktale Kurven, fraktale Dimension und Box-Counting-Methode können auch ausgewählte Aufgaben in einer Lerneinheit passend zusammengestellt werden (siehe didaktischer Kommentar im Baustein Box-Counting-Methode).

Beispielsequenz

Aufgabe 1

  1. In der unten dargestellten Abbildung sind die ersten drei Generationen der Kochkurve abgebildet. Die Generation 1 entsteht aus der Generation 0 durch das Wegwischen (Ausradieren) des mittleren Drittels und das Ersetzen dieses mittleren Drittel durch zwei Seiten eines gleichseitigen Dreiecks. Entsprechend wird für die Generation 2 verfahren, in dem dieses Vorgehen auf jede der vier Teilstrecken angewendet wird. Für weitere Generationen müssen stets alle Teilstrecken gedrittelt und das gleichseitige Dreieck ergänzt werden. .Kochkurve_bw.png. In diesem Beispiel ist das Teilverhältnis \(1:3\) und es entstehen stets vier Mal so viele Teilstrecken wie in der Generation vorher. Bestimmen Sie aus diesen Angaben die fraktale Dimension.
  2. Die unten dargestellte Abbildung zeigt die Generationen 0, 1 und 2 der Peanokurve, wobei in der 1. Generation noch der Generator mit Pfeilen verdeutlicht wurde. Bestimmen Sie die Dimension dieser Kurve. Was folgern Sie aus dem Ergebnis? .Peano_bw.png.
  3. Bestimmen Sie die Dimension der unten dargestellten fraktalen Kurve. .kochquadr_bw.png.
  4. Zeichnen Sie die Generationen 0 und 1 einer fraktalen Kurve mit einer Dimension grösser als 2.

Aufgabe 2

Zeichnen Sie ein gleichseitiges Dreieck und halbieren Sie jede Seite. Verbinden Sie die Seitenmittelpunkte miteinander. Im ursprünglichen Dreieck (der Ausgangsfigur) sind jetzt vier Teildreiecke zu erkennen.

  1. Für die kleineren einbeschriebenen Dreiecke gilt:

    Die vier kleinen Dreiecke sind untereinander kongruent.

    Jedes der vier kleinen Dreiecke ist zur Ausgangsfigur ähnlich. Der Ähnlichkeitsfaktor ist \(1/2\).

    Begründen Sie diese Aussagen und bestimmen Sie die Fläche eines kleinen Dreiecks.

  2. Wischen Sie das mittlere Teildreieck (mit den Ecken in den Seitenmitten des ursprüglichen Dreiecks) gedanklich aus dem Bild. Die entsprechende Figur kann durch drei Streckungen erzeugt werden wie in der Abbildung unten. Streckung \(S_1\): Streckzentum \(A\) und Streckfaktor \(1/2\) Streckung \(S_2\): Streckzentum \(B\) und Streckfaktor \(1/2\) Streckung \(S_3\): Streckzentum \(C\) und Streckfaktor \(1/2\) .Sierp_Streckungen.png. Dieser Prozess kann jetzt fortgeführt werden. Das Dreieck ABC mit den drei Teildreiecken wird erneut allen drei Streckungen unterworfen. Zeichnen Sie diese neue Figur.

    Wie bei den fraktalen Kurven (vgl. Aufgabe 1) sprechen wir von Generationen. Das ursprüngliche Dreieck ABC ist die Generation 0, das Dreieck mit den 3 Teildreiecken die Generation 1. Nach der erneuten Abbildung mit allen drei Streckungen erhalten wir die Generation 2. Zeichnen Sie die Generation 3.

    Wir dieser Prozess fortgesetzt, so entsteht das sogenannte Sierpinskidreieck. Bestimmen Sie die Dimension dieses Fraktals.

  3. Das Fraktal (Limesbild) Sierpinskidreieck kann mit einem Computer erzeugt werden, indem die Bildfiguren immer wieder durch alle drei Streckungen abgebildet werden, wie in der Abbildung unten in der ersten Spalte dargestellt. Da jede Figur aus unendlich vielen Punkten besteht, müssen in jedem Iterationsschritt unendlich viele Punkte abgebildet werden. Auf dem Grafikdisplay eines Bildschirms gibt es zwar nur endlich viele Pixel, jedoch müssen trotzdem in jedem Iterationsschritt sehr viele Punkte abgebildet werden. Viel schneller geht es, wenn man anstatt mit einem Dreieck als Ausgangsfigur mit einem beliebig gewählten Punkt beginnt. Dieser muss mit einer der drei Streckungen abgebildet werden. Wichtig ist jedoch, diese Streckung aus den drei zur Verfügung stehenden Streckungen \(S_1\), \(S_2\) und \(S_3\) zufällig auszuwählen. Mit dem jeweiligen Bildpunkt muss dieser Schritt wiederholt werden. Nach einer grossen Anzahl von Iterationsschritten (zum Beispiel 100'000) ist das Sierpinskidreieck gut erkennbar, siehe Abbildungen unten, zweite Spalte. Die Erzeugung des Fraktals ist nicht nur schneller (Mathematiker sprechen vom beschleunigten Verfahren), es ist auch einfacher zu programmieren. Setzen Sie diesen Algorithmus in einem Programm (Logo oder Python) um. .sierp_abb.png.
  4. Die folgende Abbildung zeigt die Generationen 0, 1, 2, 3 und 10 des Sierpinskiteppichs. .sierp_tepp.png. Das Ausgangsbild (Generation 0) ist ein Quadrat. Die Seiten werden gedrittelt, es entstehen neun Quadrate, das mittlere wird (gedanklich) gelöscht. Es bleiben also acht verkleinerte Quadrate, auf welche wiederum derselbe Algorithmus angewendet wird etc. Bestimmen Sie die Dimension dieses Fraktals.

    Für dieses Fraktal braucht es acht Streckungen. Notieren Sie die Streckzentren und die Streckfaktoren.

    Ändern Sie das Logo- oder Python-Programm für die Erzeugung des Sierpinskidreiecks so ab, dass der Sierpinskiteppich erzeugt wird.

Lösungen zu den Aufgaben

Aufgabe 1

Falls die Schülerinnen und Schüler zuvor bereits den Baustein fraktale Kurven bearbeitet haben, so können sie jetzt bei diesen Aufgaben auf die entsprechenden Programme zurückgreifen. Die Bedeutung der Dimensionsunterschiede fraktaler Kurven zeigt sich anschaulich in höheren Generationen.

  1. Da die fraktale Dimension auf der aus der euklidischen Geometrie bekannten Zuordnung \(k = n^{\mathrm{dim}}\) fusst, gilt für die Kochkurve \(4=3^{\mathrm{dim}}\), also \(\mathrm{dim} = (\log 4)/(\log 3) \approx 1.26\).

    Die Schülerinnen und Schüler können den Exponenten \(\mathrm{dim}\) approximativ mithilfe einer selbsterstellten Tabelle oder mit einer Tabellenkalkulationssoftware bestimmen. Abbildung 1 zeigt ein entsprechendes Excel-Tabellenblatt. In der ersten Spalte ist der Wert \(n=3\) und in der zweiten Spalte \(\mathrm{dim}\) sind aufsteigende Dezimalzahlen mit Abstand 0.1. Hier kann man mit der Zahl 1 beginnen, da der Exponent von 3 zwischen 1 und 2 liegen muss. In der 3. Spalte findet sich stets das Ergebnis aus \(3^{\mathrm{dim}}\). Sobald dieser Wert 4 übersteigt, hat man eine erste Annäherung für den Exponenten \(\mathrm{dim}\) gefunden. Dieser Wert kann genauer approximiert werden, wenn in der 2. Spalte die Zahlen im Abstand von 0.01 ansteigen. Derart lässt sich \(\mathrm{dim}\) beliebig genau bestimmen.

    .Excel_dim.png.
    Abbildung 1. Approximative Bestimmung der Dimension mit einer Excel-Tabelle bestimmen
    Der Grundgedanke der Approximation wie in einer Tabelle kann in einem einfachen Logo- oder Python-Programm umgesetzt werden. Mit der Vorgabe des Parameters d kann die Genauigkeit der Näherung vorgegeben werden. Auch hier könnte mit dem Wert 1 (anstatt 0) für \(\mathrm{dim}\) begonnen werden.
    from math import *
    n = 3
    d = input("Genauigkeit")
    dim = 0
    k = n**dim
    while k < 4:
        dim += d
        k = n**dim
        print(k)
    print(dim-d, dim)
    
  2. Das Verkleinerungsverhältnis beträgt wiederum \(1:3\) und es handelt sich jeweils um 9 verkleinerte Objekte (Teilstrecken). Daher ergibt sich die Dimension \(\mathrm{dim} =\frac{\log 9}{\log 3} =2\). In diesem Fall können die Lernenden die Dimension direkt aus der Gleichung \(9=3^{\mathrm{dim}}\) ablesen.

    Es handelt sich um ein exakt zweidimensionales Gebilde, wie zum Beispiel ein Quadrat. Vergleichen wir die 10. Generationen der Koch- und der Peanokurve, so wird der Dimensionsunterschied deutlich (siehe Abbildung 2).

    .Gen10.png.
    Abbildung 2. 10. Generation der Kochkurve (links) und der Peanokurve (rechts)
  3. Das Verkleinerungsverhältnis beträgt \(1:4\) und es sind acht verkleinerte Objekte: \(8=4^{\mathrm{dim}}\) (also \(\mathrm{dim} =\frac{\log 8}{\log 4} =1.5\)).

    Wie in den vorhergehenden Teilaufgaben kann der Exponent approximativ mithilfe einer Tabelle oder einem Programm bestimmt werden. In diesem speziellen Fall (in der Sekundarstufe I) könnte auch aus \(8=2^{3}\) und \(4=2^{2}\) auf \(\mathrm{dim}=1.5\) geschlossen werden.

  4. Jede Kurve, bei welcher die Anzahl der verkleinerten Objekte \(k\) grösser ist als die zweite Potenz von \(n\), weist eine grössere Dimension als 2 auf, also es muss \(k>n^2\) gelten. Abbildung 3 zeigt ein Beispiel mit \(18=4^{\mathrm{dim}}\). Die Bestimmung des Exponenten ergibt \(\mathrm{dim} \approx 2.085\).
    .Kurveg2.png.
    Abbildung 3. Generationen 0 und 1 einer Kurve mit \(\mathrm{dim}\) grösser als 2
    Werden höhere Generationen dieser Kurve mit einem Computerprogramm erzeugt, so wird sichtbar, dass Teile der Kurve übereinander liegen.

Aufgabe 2

Ähnlichkeit und Streckungen gehören nicht zum Mathematik-Curriculum der Primarstufe. Beide Konzepte lassen sich jedoch im Falle des Sierpinskidreiecks propädeutisch einführen. Es müssen lediglich Strecken halbiert (bzw. beim Sierpinskiteppich gedrittelt) werden. Dies kann jeweils auch durch Abmessen erreicht werden.

  1. Die Erzeugung des Dreiecks \(CM_aM_b\) kann als Streckung mit Streckzentrum \(C\) und Streckfaktor \(1/2\) betrachtet werden. Dabei geht der Punkt \(B\) in \(M_a\) über, \(A\) in \(M_b\) und \(C\) als Streckzentrum bleibt an Ort (Fixpunkt).
    .LsgA1a.png.
    Abbildung 4. Skizze zur Argumentation in Aufgabe 1a
    Bei einer Streckung werden Geraden in parallele Geraden abgebildet und die Streckenlängen verändern sich gemäss dem Streckfaktor. Daher ist die Strecke \(M_aM_b\) parallel zu \(AB\) und halb so lang. Entsprechend kann für die anderen Mittellinien argumentiert werden. Bei einer Streckung bleiben alle Winkel invariant, das heisst sowohl in der Ausgangsfigur als auch in allen Teildreiecken betragen alle Winkel \(60^{\deg}\). Somit sind die vier Teildreiecke untereinander kongruent und ähnlich zur Ausgangsfigur. Die Fläche eines Teildreiecks beträgt ein Viertel der Fläche der Ausgangsfigur. (Schülerinnen und Schüler der Primarstufe können diese Zusammenhänge ohne exakte Herleitungen aus einem Schaubild ableiten.)
  2. Abbildung 5 zeigt die Generationen 0 bis 4 und 10 des Sierpinskidreiecks.
    .Sierp_Generationen.png.
    Abbildung 5. Verschiedene Generationen des Sierpinskidreiecks
    Aus dem Verkleinerungsverhältnis \(1:n=1:2\) und der Anzahl \(k=3\) der verkleinerten Objekte ergibt sich für die Dimension \(3=2^{\mathrm{dim}}\). Wie bereits in Aufgabe 1 kann der Wert für die Dimension mit einer Tabelle approximiert werden. Abbildung 6 zeigt eine Excel-Tabelle, in welcher links mit Zehntel-Genauigkeit die Dimension approximiert wird. Rechts wird der Wert zwischen 1.5 und 1.6 auf Hunderstel genau bestimmt. Es ergibt sich \(\mathrm{dim} \approx 1.58\).
    .DimSierp.png.
    Abbildung 6. Approximative Bestimmung der Dimension des Sierpinskidreiecks mit einer Excel-Tabelle
    Wiederum könnte die Dimension auch mit einem Logo- oder Python-Programm approximiert werden. Würde beim Iterationsprozess das mittlere Dreieck nicht gelöscht, so wäre \(k=4\) und aus \(4=2^{\mathrm{dim}}\) ergibt sich \(\mathrm{dim}=2\). Dieser Vergleich könnte für die Schülerinnen und Schülern eine geeignete Veranschaulichung gebrochener und ganzer Dimensionen sein.
    .Generationen_Dreieck.png.
    Abbildung 7. Generationen 0, 1, 2, 3 und 10 ohne Löschen des mittleren Dreiecks
    Abbildung 7 zeigt einige Generationen des entsprechenden Prozesses. (Für die Beschreibung mit Streckungen muss in diesem Fall eine vierte Abbildung ergänzt werden. Diese könnte beispielsweise eine Komposition einer der drei Streckungen mit einer Punktspiegelung am Mittelpunkt einer der drei Mittellinien sein.)
  3. Im Folgenden werden je ein Logo- bzw. Python-Programm zum beschleunigten Verfahren zur Erzeugung des Sierpinskidreiecks. Der Ausgangspunkt wird zufällig gewählt. Dieser Punkt sowie die ersten Bildpunkte können noch weit weg vom eigentlichen Limesbild liegen. Daher werden die Punkte erst ab der 10'000. Iteration gezeichnet.
    from gpanel import *
    import time
    from random import *
    import random
    def sierp():
      eckpunkte = [(0,0), (1, 0), (0.5, 0.87)]
      P = [random.random(), random.random()]
      for n in range(10000, 1000000):
        r = randint(0, 2)
        A = eckpunkte[r]
        P = [(A[0] + P[0]) / 2,(A[1] + P[1]) / 2]
        point(P)
    makeGPanel(-0.1, 1.1, -0.1, 1.1)
    setColor("red")
    sierp()
    
  4. Aus \(8=3^{\mathrm{dim}}\) lässt sich durch eine Tabelle oder ein Programm die Dimension \(\mathrm{dim} \approx 1.89\) bestimmen.

    Die Zentren der acht Streckungen sind die vier Eckpunkte und die vier Seitenmittelpunkte des Quadrats in Generation 0.

    .Streckzentren.png.
    Abbildung 8. Streckzentren der acht Streckungen zur Erzeugung des Sierpinskiteppichs
    Exemplarisch wird im Folgenden ein Python-Programm zum beschleunigten Verfahren für die Erzegung des Sierpinskiteppichs gegeben.
    from gpanel import *
    import time
    from random import *
    import random
    def sierptep():
      eckpunkte = [(0,0), (1, 0), (1,1), (0,1),
                   (0.5,0), (1,0.5), (0.5,1), (0,0.5)]
      P = [random.random(), random.random()]
      for n in range(10000, 1000000):
        r = randint(0, 7)
        A = eckpunkte[r]
        P = [(2*A[0] + P[0]) / 3, (2*A[1] + P[1]) / 3]
        point(P)
    makeGPanel(-0.1, 1.1, -0.1, 1.1)
    setColor("red")
    sierptep()
    
    Im Vergleich zum Programm zur Erzeugung des Sierpinskidreiecks müssen alle acht Streckzentren (Variable eckpunkte) aufgenommen werden. Es muss eine der acht Streckungen zufällig bestimmt werden. Da der Streckfaktor jetzt auf \(1/3\) angepasst wird, müssen die Koordinaten der Streckzentren bei der Berechnung der Bildpunkte doppelt gewichtet werden. (Dies lässt sich in einer entsprechenden Skizze leicht erkennen.)

Didaktischer Kommentar

Die beiden Aufgaben dieses Bausteins können im Unterricht einzeln verwendet werden. Da die fraktale Dimension aus der euklidischen Dimension abgeleitet wird, ist eine Aktivierung des Vorwissens zur euklidischen Dimension unerlässlich. Das Verständnis für den Zusammenhang zwischen dem Verkleinerungsverhältnis \(1:n\) und der Anzahl \(k\) der verkleinerten Objekte sollte durch Übungen gefördert werden. So können Rechtecke und Quader, im speziellen auch Quadrate und Würfel, in den Verhältnissen \(1:2\), \(1:3\), \(1:4\) usw. unterteilt werden und die Verhältnisse der Anzahl \(k\) der verkleinerten Objekte in Tabellen zugeordnet werden. Die Lernenden erkennen so die Bedeutungen der Zuordnungen \(k=n^2\) und \(k=n^3\) in konkreten Kontexten.

Bei der Verwendung von Aufgabe 1 im Unterricht wird empfohlen, dass sich die Lernenden vorerst mit einigen Aufgaben des Bausteins fraktale Kurven auseinandersetzen. Wird nur Aufgabe 2 im Unterricht umgesetzt, so ist die vorgängige Beschäftigung mit den fraktalen Kurven weniger sinnvoll. In diesem Fall müssen jedoch wichtige Begriffe wie Fraktal, Selbstähnlichleit, Iteration oder Limesbild in geeigneter Form eingeführt werden. Dies kann direkt anhand des Sierpinskidreiecks geschehen.

Die Strategien zur Approximation der fraktalen Dimensionen sollen durch die Lernenden entwickelt werden. In Klassengesprächen können unterschiedliche Vorgehensweisen thematisiert und verglichen werden, so dass schliesslich alle Schülerinnen und Schüler die Strategien verstehen und anwenden können. Im Baustein Box-Counting-Methode sind die gleichen Techniken für die Bestimmung der Dimensionen natürlicher Fraktale nützlich.

Für das Programmieren wird in der Primarstufe Logo und in der Sekundarstufe I Python empfohlen.

Quellenangaben und Weiterführende Literatur

  1. Paul S. Addison: Fractals and Chaos. An illustrated course. IOP Publishing Ltd., London, 1997.
  2. Kristin Dahl und Sven Nordqvist: Zahlen, Spiralen und magische Quadrate. Mathe für jeden. Oetinger Verlag, Hamburg, 1996.
  3. Benoît B. Mandelbrot: Die fraktale Geometrie der Natur. Birkhäuser, Basel, 1987.
  4. Heinz-Otto Peitgen, Hartmut Jürgens und Dietmar Saupe: Chaos and Fractals. New Frontiers of Science. Springer, New York, 1992.
  5. Thomas Schweingruber: Auf zum MATHerhorn. Spannende Mathematik für Kinder. Pestalozzianum Zürich, 2. Auflage, 2006.

Abbildungsverzeichnis

Alle Abbildungen wurden durch den Autor erzeugt.

Zurück PDF Übungen als PDF