56
Fraktale Jerzy Pogonowski Zaklad Logiki Stosowanej UAM www.logic.amu.edu.pl [email protected] Funkcje rekurencyjne Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 1 / 56

Funkcje rekurencyjne - logic.amu.edu.pllogic.amu.edu.pl/images/1/1d/Frfract.pdf · Równanie macierzowe takiej transformacji (na płaszczyźnie) to: dx0e by0c = da be ... Krzywa Peana

  • 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

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 19 / 56

Zbiór Cantora

Diabelskie schody

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 20 / 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

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 22 / 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

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 24 / 56

Krzywa Hilberta

Krzywa Hilberta

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 25 / 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

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 30 / 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

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 37 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 38 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 39 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 40 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 41 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 42 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 43 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 44 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 45 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 46 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 47 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 48 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 49 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 50 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 51 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 52 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 53 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 54 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 55 / 56

Dodatek 2: obrazki fraktalne

Jerzy Pogonowski (MEG) Fraktale Funkcje rekurencyjne 56 / 56