Upload
lamphuc
View
223
Download
0
Embed Size (px)
Citation preview
Fraktale
Jerzy Pogonowski
Zakład Logiki Stosowanej [email protected]
Funkcje rekurencyjne
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 1 / 56
Wprowadzenie
Plan na dziś:
Fraktale — intuicyjna charakterystyka.Fraktale — przykłady.
Dlaczego mówimy o fraktalach na tym wykładzie? Powody są co najmniejtrzy:
obiekty fraktalne mogą być generowane przez stosownie określonealgorytmy;fraktale są obiektami powstającymi jako granice pewnych iterowanychoperacji;w algorytmach generujących fraktale istotna jest rekursywność reguł.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 2 / 56
Nieskończona złożoność strukturalna
Fraktale
Fraktale to obiekty, które mają cechę samopodobieństwa oraz ułamkowywymiar Hausdorffa-Besicovitcha. Pierwszą własność dość łatwo objaśnić naprzykładach, o drugą proszę się na razie nie martwić.Obiekty fraktalne dostarczają przykładów nieskończonej złożonościstrukturalnej. Im dokładniej przyglądamy się takim obiektom, tym więcejodnajdujemy szczegółów i na żadnym etapie nie widzimy wszystkich tychszczegółów. Nadto, na każdym z tych etapów napotykamy pewien staływzorzec, przynależny wyjściowej całości.Fraktale znane są od dość dawna: np. krzywa Peana (wypełniającakwadrat), dywan Sierpińskiego, zbiór Cantora. Od kilkudziesięciu latmatematyka fraktali znajduje wiele zastosowań w przyrodoznawstwie.Nadto, gdy rozejrzysz się dokładnie dookoła, to okaże się, iż prawiewszystko jest fraktalem (dokładniej: aproksymacją fraktala). Ale nie bójsię, ja czuwam i nie dam Ci zrobić krzywdy.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 3 / 56
Nieskończona złożoność strukturalna
Paprotka
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 4 / 56
Nieskończona złożoność strukturalna
Jeszcze jedna paprotka
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 5 / 56
Twierdzenie Hutchinsona
Twierdzenia o punkcie stałym
Przypomnijmy, że:
punktem stałym funkcji f : X → X nazywamy taki element x ∈ X , dlaktórego f (x) = x .f : X → X jest odwzorowaniem zwężającym, gdy istnieje liczbaλ ∈ (0, 1) taka, że dla wszystkich x , y ∈ X zachodzi nierównośćδ(f (x), f (y)) 6 λ · δ(x , y), gdzie X jest przestrzenią metrycznązupełną z metryką δ.
Twierdzenie Banacha o punkcie stałym głosi, że dowolne przekształceniezwężające przestrzeni metrycznej zupełnej w siebie ma dokładnie jedenpunkt stały.Tak więc, gdy położysz na ziemi np. w Poznaniu mapę tego miasta, todokładnie jeden punkt na mapie będzie znajdował się „na swoim miejscu”.Twierdzenia o punktach stałych mają wiele ważnych zastosowań w analiziei topologii.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 6 / 56
Twierdzenie Hutchinsona
Twierdzenie Hutchinsona
W 1981 roku Hutchinson udowodnił następujące twierdzenie:
THEOREM 1. Let X = (X , d) be a complete metric space andS = {S1, . . . , SN} be a finite set of contraction maps on X . Then
there exists a unique closed bounded set K such that K =N⋃
i=1SiK .
Furthermore, K is compact and is the closure of the set of fixed pointssi1...ip of finite compositions Si1 ◦ . . . ◦ Sip of members of S.
Korzystając z tego twierdzenia można określać fraktale właśnie jako punktystałe pewnych odwzorowań.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 7 / 56
Przekształcenia afiniczne
Przekształcenia afiniczne
Algorytm generowania fraktali wykorzystuje układy iterowanychodwzorowań oraz twierdzenia o punkcie stałym.Odwzorowania te to najczęściej zwężające transformacje afiniczne.Transformacja afiniczna to złożenie przesunięć, obrotów oraz skalowania.
Równanie macierzowe takiej transformacji (na płaszczyźnie) to:dx ′eby ′c =
da bebd ec · dxe
byc +dcebf c =
dax + by + cebdx + ey + f c
Współczynniki c i f reprezentują przesunięcie o pewien wektor, a a, b, doraz e reprezentują obrót i skalowanie.W transformacji afinicznej najpierw dokonujemy skalowania, potem obrotu ina końcu translacji.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 8 / 56
Przekształcenia afiniczne
Przekształcenia afiniczne
Równanie macierzowe transformacji afinicznej, w której:
współczynnik skalowania (względem poszczególnych osi) jest określonyparą liczb δ1, δ2;obrót jest wyznaczony przez kąty ϕ1, ϕ2 osi nowego układu do osistarego układu, odpowiednio;przesunięcie jest dane wektorem o współrzędnych t1, t2;
ma zatem postać:
dx ′eby ′c =
dδ1 0eb0 δ2c
· dcos(ϕ1) − sin(ϕ2)ebsin(ϕ1) cos(ϕ2)c
· dxebyc +
dt1ebt2c
=
dδ1 cos(ϕ1)x − δ2 sin(ϕ2)y + t1ebδ1 sin(ϕ1)x + δ2 cos(ϕ2)y + t1c
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 9 / 56
Przekształcenia afiniczne
Przekształcenia afiniczne
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 10 / 56
Wymiar fraktalny
Wymiar fraktalny
Wymiar topologiczny. Można w precyzyjny sposób zdefiniować wymiartak, aby:
jednowymiarowe były: linia prosta, okrąg, odcinek, itd.;dwuwymiarowe były: koło, kwadrat, płaszczyzna euklidesowa, itd.;trójwymiarowe były: kula, sześcian, torus, itd.;zerowymiarowe były: punkt, skończony zbiór punktów, itd.
Jednak pewnym obiektom nie przysługuje wymiar będący liczbą całkowitą.Właśnie fraktale charakteryzują się wymiarem, który może być (dowolną)liczbą rzeczywistą.Idea wyznaczania owego wymiaru fraktalnego jest podobna do tejże dlawymiaru topologicznego; dla naszych celów nie jest potrzebne jejprzedstawianie (zob. Dodatek 1).Dość przystępnie o wymiarze fraktalnym napisano np. w:
Piotr Pierański Fraktale. Od geometrii do sztuki. OśrodekWydawnictw Naukowych, Poznań, 1992.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 11 / 56
Generowanie fraktali
O generowaniu fraktali
Jedną z możliwości prostego opisu (generowania) obiektów fraktalnych jestwykorzystanie:
L-systemów (Aristid Lindenmayer, 1968);Grafiki żółwia (Seymour Papert, język Logo).
Przystępny wykład (z którego i my korzystamy) znaleźć można w:
Tomasz Martyn Fraktale i obiektowe algorytmy ich wizualizacji,Wydawnictwo Nakom, Poznań, 1996.
Polecam również np.:
Peitgen, H.O., Jürgens, H., Saupe, D. Granice chaosu. Fraktale.Wydawnictwo Naukowe PWN, Warszawa 1996 (2), 1997 (1).
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 12 / 56
Generowanie fraktali
Grafika żółwia i generowanie fraktali
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 13 / 56
Generowanie fraktali
Grafika żółwia i generowanie fraktali
Interpretacja symboli:
F oznacza krok żółwia z pozostawieniem śladu;f oznacza krok żółwia bez pozostawiania śladu;+ oznacza obrót żółwia przeciwnie do ruchu wskazówek zegara oustalony kąt;− oznacza obrót żółwia zgodnie z ruchem wskazówek zegara oustalony kąt;współczynnik zmiany długości kroku określa, jak długość kroku żółwiana n + 1 etapie konstrukcji ma się do tejże długości na etapie n;X → Y jest regułą przepisywania: ciąg symboli X zastąp ciągiemsymboli Y .
Współrzędne żółwia to układ: (x , y , α), gdzie x jest odciętą, y rzędną, a αkątem nachylenia względem osi odciętych. Na początku konstrukcjiwspółrzędne żółwia są równe (0, 0, 0).
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 14 / 56
Samopodobieństwo
Samopodobieństwo
Cechęsamopodobieństwa,definiującą fraktale,łatwo zaobserwować wprocesie konstruowaniaobiektu fraktalnego.Spójrzmy, jak powstajepłatek śniegu Kocha:
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 15 / 56
Krzywa i płatek śniegu Kocha
Krzywa Kocha
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 16 / 56
Krzywa i płatek śniegu Kocha
Krzywa Kocha
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 17 / 56
Krzywa i płatek śniegu Kocha
Płatek śniegu Kocha
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 18 / 56
Zbiór Cantora
Zbiór Cantora
Zbiór Cantora jest częścią wspólną zbiorów otrzymywanych w kolejnychkrokach konstrukcji; jest zatem generowany przez:
Aksjomat: FReguły:
F → FfFf → fff
Współczynnik zmniejszania długości kroku wynosi 13 .
W rozwinięciu trójkowym elementy zbioru Cantora dane są przez wzór:
x = d0 +∞∑
k=1
dk · 3−k .
Zbiór Cantora ma nieprzeliczalnie wiele elementów. Nie zawiera jednak wsobie żadnego odcinka.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 21 / 56
Krzywa Peana
Krzywa Peana
Krzywa Peana jest granicą jednostajnie zbieżnego ciągu funkcji ciągłych, awięc jest funkcją ciągłą.Zbiór jej wartości wypełnia kwadrat (jednostkowy).Nadto, każdy punkt wnętrza kwadratu jest wartością nieskończenie wieluargumentów tej funkcji, czyli jej wykres „przecina się” z sobą w każdymtakim punkcie.Krzywa Peana nie jest różniczkowalna w żadnym punkcie.
Aksjomat: FReguły:
F → FF + F + F + FF + F + F − F+ → +− → −
Kąt obrotu jest równy 90◦, a współczynnik zmniejszania długości kroku 13 .
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 23 / 56
Krzywa Hilberta
Krzywa Hilberta
Krzywa Hilberta jest granicą jednostajnie zbieżnego ciągu funkcji ciągłych,a więc jest funkcją ciągłą.Zbiór jej wartości wypełnia kwadrat (jednostkowy).Nadto, każdy punkt kwadratu jest wartością dokładnie jednego argumentutej funkcji, czyli jej wykres „nie przecina się” z sobą w żadnym punkcie.Krzywa Hilberta nie jest różniczkowalna w żadnym punkcie.
Aksjomat: XReguły:
X → +YF − XFX − FY +X → −XF + YFY + FX−F → F+ → +− → −
X = +F − F − F+, Y = −F + F + F−. Kąt obrotu jest równy 90◦, awspółczynnik zmniejszania długości kroku 1
2 .Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 26 / 56
Trójkąt Sierpińskiego
Trójkąt Sierpińskiego
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 27 / 56
Trójkąt Sierpińskiego
Trójkąt Sierpińskiego
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 28 / 56
Trójkąt Sierpińskiego
Trójkąt Sierpińskiego
Trójkąt Sierpińskiego jest granicą (iloczynem mnogościowym) zbiorówotrzymanych w poszczególnych krokach. Ma nieprzeliczalnie wieleelementów. Nie zawiera żadnego koła o niezerowym promieniu.
Aksjomat: XReguły:
X → +Y − X − Y +Y → −X + Y + X−+ → +− → −
X = +F − F − F+, Y = −F + F + F−.Kąt obrotu jest równy 60◦, a współczynnik zmniejszania długości kroku 1
2 .Ćwiczenie. Weź kwadrat zamiast trójkąta. Podaj odpowiednie aksjomaty ireguły („wyrzucamy” środkowy kwadrat z dziewięciu). Otrzymasz dywanSierpińskiego. W trzech wymiarach (wychodzimy od sześcianu) otrzymaszgąbkę Sierpińskiego.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 29 / 56
Krzywa smocza
Krzywa smocza
Aksjomat: XReguły:
X → −X + +YY → X −−Y ++ → +− → −
X = −− F + +F , Y = F −−F + +.Kąt obrotu jest równy 45◦, a współczynnik zmniejszania długości kroku 1√
2.
Krzywa smocza wypełnia figurę, której brzeg ma niecałkowity wymiarHausdorffa-Besicovitcha.Ćwiczenie. Wychoduj swojego smoka.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 31 / 56
Struktury rozgałęzione
Struktury rozgałęzione
W symbolice L-systemów reprezentować można także strukturyrozgałęzione.Niech symbol „[” oznacza początek rozgałęzienia, a ”]” jego koniec.Interpretacja tych symboli w grafice żółwia polega na zapamiętaniubieżącego stanu żółwia w przypadku wystąpienia symbolu „[” orazprzywróceniu ostatnio zapamiętanego stanu w przypadku wystąpieniasymbolu „]”.Dla przykładu: FF [+F ]F [−F ]F oznacza strukturę składającą się z odcinkao długości czterech kroków żółwia, z dwoma rozgałęzieniami: w lewo (wpołowie odcinka), w prawo (w 3
4 odcinka).Ćwiczenie. Narysuj np. pięć etapów wzrostu roślinki wyznaczonej przez:Aksjomat: F Reguły: F → F [+F ]F [−F ]F
+ → +− → −
Kąt obrotu niech będzie równy 45◦, a współczynnik zmniejszania długościkroku 1
2 .Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 32 / 56
Koniec
To były tylko bardzo elementarne informacje o fraktalach. Do omówieniaich dalszych, ważnych własności potrzebne jest przygotowaniematematyczne wykraczające poza programy studiów w InstytucieJęzykoznawstwa UAM.To, co najważniejsze do zapamiętania o fraktalach (na potrzeby tegokursu):
są to obiekty, które powstają jako elementy graniczne pewnychiterowanych operacji;lokalna struktura fraktala jest (na każdym poziomie)odzwierciedleniem jego struktury globalnej;fraktale są obiektami o nieskończonej złożoności (czasem mówi się:subtelności) strukturalnej.
Uwaga. Mówimy o powstawaniu lub konstrukcji fraktali jako obiektówmatematycznych. Nie oznacza to oczywiście, że Natura stosuje takie same(jak my) metody konstrukcji.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 33 / 56
Dodatek 1: wymiar fraktalny
Wymiary — uproszczone definicje
O wymiarze topologicznym.Liczba N(ε) kwadratów o boku ε potrzebnych do pokrycia odcinka jestproporcjonalna do ε i wynosi N(ε) = Lε−1, gdzie L jest współczynnikiemproporcjonalności. Dla ε → 0 wartość L jest zatem długością mierzonegoodcinka:L = lim
ε→0N(ε)ε.
Liczba N(ε) kwadratów o boku ε potrzebnych do pokrycia kwadratów jestproporcjonalna do ε2. Pole S kwadratu jest równe sumie pól pokrywającychgo kwadratów o boku ε → 0, czyli:S = lim
ε→0N(ε)ε2.
Zauważmy, że dla kwadratu mamy:limε→0
N(ε)ε = ∞.
Wymiar topologiczny (dla figur ograniczonych) charakteryzujemy jakowykładnik potęgi przy ε, dla którego rozważane granice są skończone.
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 34 / 56
Dodatek 1: wymiar fraktalny
Wymiary — uproszczone definicje
O wymiarze pojemnościowym (na płaszczyźnie).Pewne figury nie mają całkowitego wymiaru topologicznego w powyższymrozumieniu.Proponuje się przypisać im taki wymiar d , dla którego zachodziN(ε)εd = 1.Ponieważ wtedy N(ε) = ε−d , więc:d = − lgε N(ε) = − ln N(ε)
ln ε = ln N(ε)
ln( 1ε)
.
Wymiarem pojemnościowym obiektu geometrycznego X nazywa się liczbę:dim(X ) = lim
ε→0
ln N(ε)
ln( 1ε)
.
Mamy wtedy np.:
dla zbioru Cantora:dim(X ) = lim
n→∞ln 2n
ln 3n = ln 2ln 3 = 0, 6309297535715 . . .
dla trójkąta Sierpińskiego:dim(X ) = lim
n→∞ln 3n
ln 2n = ln 3ln 2 = 1, 584962500721 . . .
Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 35 / 56
Dodatek 1: wymiar fraktalny
Wymiary — uproszczone definicje
O wymiarze fraktalnym (wymiarze Hausdorffa-Besicovitcha).W ogólności, w pokryciach figur używa się kul o dowolnych promieniach.Niech BX oznacza rodzinę wszystkich pokryć obiektu X dowolnymi kulami,a Bε
X rodzinę wszystkich pokryć X kulami o średnicy nie większej niż ε.Dalej, niech:αX (d , ε) = inf{m : b ∈ Bε
X ∧m =∑a∈b
(∆a)d}
gdzie ∆(a) jest średnicą kuli a.Zauważmy, że jeśli zbiór X pokrywamy kulami o jednakowej średnicy (= ε),to αX (d , ε) = N(ε)εd , gdzie N(ε) jest liczbą użytych kul.
Wymiarem Hausdorffa-Besicovitcha Dim(X ) zbioru X nazywamy takąliczbę d0, dla której granica lim
ε→0α(d0, ε) ma skończoną wartość dodatnią.
W ogólności mamy: Dim(X ) 6 dim(X ).Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 36 / 56