Fraktály  

     
Úvodní stránka
  
Předchozí kapitola        
   Obsah 
(c)1999,2000
  
Další kapitola    
Pavel Tišnovský
 
E-mail


Obsah

1  Fraktály
    1.1  Úvod
    1.2  Fraktální geometrie
        1.2.1  Definice fraktální geometrie
        1.2.2  Geometricky hladké útvary
        1.2.3  Nekonečně členité útvary
    1.3  Hausdorffova dimenze a soběpodobnost
        1.3.1  Hausdorffova dimenze
        1.3.2  Mandelbrotova definice pojmu fraktál
        1.3.3  Měření Hausdorffovy dimenze
            Úsečka
            Čtverec
            Krychle
            Křivka Kochové
            Hausdorffova dimenze některých přírodních útvarů
            Závěr
        1.3.4  Soběpodobnost
    1.4  Typy fraktálů
        1.4.1  L-systémy
            Způsob generování L-systémů
        1.4.2  Systém iterovaných funkcí IFS
        1.4.3  Dynamické systémy
        1.4.4  Náhodné fraktály
    1.5  Využití fraktální geometrie v jiných vědních disciplínách a v praxi

Kapitola 1
Fraktály

1.1  Úvod

V tomto dokumentu se budeme zabývat dynamickými systémy a nelineárními systémy, jelikož při jejich studiu a aplikaci lze využít poznatků získaných pomocí fraktálů a fraktální geometrie.

První část této kapitoly se zabývá převážně základními pojmy z oboru fraktální geometrie. Je zde naznačeno, jak se fraktály mohou vytvářet a jak se zjistí, zda daný objekt je skutečně fraktálem. Na konci kapitoly jsou uvedeny některé základní typy běžně používaných fraktálů. Jsou zde také vyjmenovány některé disciplíny, ve kterých se už dnes využívá fraktálů a fraktální geometrie.

1.2  Fraktální geometrie

1.2.1  Definice fraktální geometrie

Fraktální geometrie je samostatná vědní disciplína, která je intenzivně rozvíjena zhruba od šedesátých let dvacátého století. Za jejího objevitele je dnes považován vědec polského původu Benoit B. Mandelbrot [1], který jako první matematicky definoval pojem fraktál.

I před zavedením pojmu fraktál a fraktální geometrie se vědci a umělci zabývali geometrickými útvary, které dnes nazýváme fraktály (např. sněhová vločka Kochové nebo Sierpinského kobereček). Nikdo z nich však fraktál matematicky obecně nedefinoval, takže prvenství je po právu připisováno Benoitu B. Mandelbrotovi.

Protože velká část fraktálů je využívána v počítačové grafice a fraktály lze nejlépe popsat jako geometrické objekty, lze fraktál nejjednodušeji definovat jako nekonečně členitý útvar. Pro vysvětlení tohoto pojmu musíme definovat pojem geometricky hladký útvar, který je jistým způsobem pravým opakem nekonečně členitého útvaru.

1.2.2  Geometricky hladké útvary

Běžná tělesa a útvary v našem okolí se dají popsat nebo zobrazit jako jistý konečný počet parametrů, které tato tělesa charakterizují. Pro základní geometrické tvary, například pro krychli, kouli, válec, prstenec, úsečku, přímku či rovinu, známe vzorce a vztahy, ze kterých můžeme vypočítat jejich geometrické charakteristiky, například délku, plochu či objem. Jako samozřejmost přitom bereme to, že výsledek je vždy stejný, i když počítáme v libovolných jednotkách. Je například nepodstatné, zda je poloměr koule zadaný v milimetrech či kilometrech; objem koule či její povrch vyjde vždy stejný (samozřejmě při přepočtu na stejné jednotky).

Tyto veličiny (objem, povrch atd.) můžeme spočítat i pro poněkud složitější útvary, které vzniknou kombinací konečného počtu elementárních útvarů. Lze třeba spočítat délku Bézierovy křivky nebo objem láhve vzniklé rotací této křivky okolo osy rotace.

Výsledky jsou opět nezávislé na použitých jednotkách. Všechny tyto útvary mají jednu společnou vlastnost. Každému útvaru můžeme přiřadit jisté celé číslo, které nazýváme počet rozměrů nebo také dimenze daného útvaru.

Takže úsečka, přímka či jiná křivka (například parabola, sinusovka či Bézierova křivka) má dimenzi rovnu 1. To znamená, že je jednorozměrná a tudíž poloha bodu je na ní definována pouze jedním číslem - souřadnicí. Například polohu bodu na sinusovce lze vyjádřit jako:

x = sin(t)
(1.1)
kde t je jediný parametr, který jednoznačně definuje polohu bodu na sinusovce. Hodnota x potom přímo udává polohu tohoto bodu.

To, že má křivka dimenzi rovnu jedné neznamená, že je zobrazována v jednorozměrném prostoru. Dimenze udává jen počet parametrů, které jsou nutné pro definování bodu na křivce. Následující křivka má dimenzi rovnu jedné, ale je zobrazována v trojrozměrném prostoru:

x
=
sin(t2)*log(t)
(1.2)
y
=
  ______
Öcos2(t)
 
(1.3)
z
=
sin(Öt)/cos(t)
(1.4)
Jediným použitým parametrem je zde opět t, polohu bodu potom definují tři souřadnice x,y a z.

Také můžeme uvažovat tak, že pro křivky, které mají dimenzi jedna, je definována jejich délka (která může být i nekonečná), ale jejich plocha je nulová (jsou nekonečně tenké).

Jakákoliv hladká plocha (kruh, trojúhelník, n-úhelník) má dimenzi rovnu 2, to znamená, že poloha bodu musí být definována pomocí dvou souřadnic. Například sedlová plocha je definována takto:

x
=
u
(1.5)
y
=
v
(1.6)
z
=
u*v
(1.7)
kde u a v jsou parametry, které jednoznačně definují jakýkoliv bod na ploše, zatímco x,y a z jsou výsledné souřadnice bodu v prostoru pro dané u a v.

Takto definované plochy mají určitý obsah, ale jejich objem je nulový, protože mají nulovou tloušťku.

Krychle, koule, válec nebo celý běžný prostor kolem nás mají dimenzi 3, protože poloha bodu je v nich jednoznačně určena třemi souřadnicemi.

Takto lze samozřejmě pokračovat dále, ale s dalšími dimenzemi nemáme zkušenosti - možná ani neexistují. Z matematického hlediska však není velkým problémem definovat například čtyřrozměrnou kouli vzorcem:

x2+y2+z2+w2 = r2
(1.8)
Přitom x,y,z a w jsou polohy bodu v jednotlivých souřadných osách.

Zde je funkce pro čtyřrozměrnou kouli zapsána implicitně, to znamená, že nejsou přímo vyjádřeny jednotlivé souřadnice, ale je pouze zapsána podmínka pro jejich vzájemný vztah.

Trošku specifickým případem je bod, který má dimenzi 0, poněvadž polohu bodu v něm samém není třeba určovat žádnou souřadnicí.

Ve všech předchozích případech jsme mluvili o dimenzi, která je specifikována celým číslem. Tato dimenze se nazývá dimenze topologická.

Pro tyto tělesa, která můžeme označit jako normální nebo běžné, platí, že všechny jejich parametry mohou být zadány v libovolné jednotce, aniž by se změnily vlastnosti tělesa. To znamená, že nezáleží na měřítku, se kterým se na těleso díváme.

V klasické fyzice jsou tyto zákonitosti také využívány. Například při výpočtu proudu protékajícího elektrickým obvodem můžeme napětí udávat v kilovoltech, milivoltech nebo v jakékoliv jiné jednotce. To stejné platí při udávání ohmického odporu rezistoru.

1.2.3  Nekonečně členité útvary

Z předchozí podkapitoly vyplývá závěr, že pro běžné útvary vystačíme s dimenzemi 0, 1, 2 nebo 3. Proto bylo poměrně velkým překvapením, když byly objeveny zvláštní geometrické útvary, pro které toto rozdělení na celočíselné dimenze není dostatečné. Některé tyto útvary nejsou jen abstraktní objekty vzniklé fantazií matematiků, ale mají své vzory přímo v přírodě.

Klasický příklad takového útvaru je břeh nějaké řeky či potoka, nebo pobřeží nějakého reálného ostrova. Můžeme zkusit vypočítat délku pobřeží tohoto ostrova. Je-li linie pobřeží zobrazena na nějaké mapě (nebo leteckém snímku), má tato mapa určité měřítko, například 1: 1 000 000. Pomocí kružítka můžeme (krokováním) délku pobřeží přibližně zjistit a přepočítat na kilometry, protože známe měřítko mapy. Jestliže bude kružítko roztaženo tak, aby vzdálenost mezi jeho hroty byla jeden centimetr a měřítko mapy je 1 : 1 000 000, pak to znamená, že při jednom kroku kružítka se na mapě posuneme o 1 000 000 centimetrů, což po přepočtu dává deset kilometrů.

Dostaneme-li však k dispozici přesnější mapu, která má měřítko například 1: 10 000 a budeme-li opět měřit délku toho samého úseku pobřeží, dostaneme délku odlišnou - větší. To znamená, že se změnou měřítka se změnila délka toho samého objektu - v našem případě pobřeží. Důvod se zdá být jasný - při zmenšení měřítka vidíme i detaily pobřeží, které nebyly na mapě s větším měřítkem viditelné. Samozřejmě, že při cestě pěšky okolo ostrova bude délka ještě větší, ovšem za předpokladu, že půjdeme přesně na hranici pobřeží a nebudeme si cestu zkracovat. Se zmenšujícím se měřítkem by délka dále rostla, a při délce měření blížící se limitně k nule, by délka rostla dokonce až do nekonečna. Z toho vyplývá zajímavý fakt, že ostrov o konečné plošenekonečnou délku pobřeží.

Výše uvedený příklad není pouhou myšlenkovou abstrakcí, ale vyskytl se reálně při měření obvodu ostrova Korsiky. Čím byla větší přesnost tohoto měření, tím větší byla naměřená délka. Tato skutečnost nebyla dlouhou dobu známa, a proto se délky státních hranic lišily až o násobky očekávaných délek. V dnešní době se v moderních atlasech délka hranic většinou ani neuvádí.

Obvod ostrova Korsiky měřil Richardson, který také jako první zjistil, že obvod ostrova je závislý na délce tyče, kterou se měří. Richardson také empiricky odvodil následující vztah:

K = N(e)eD
(1.9)
kde K je délka celkového počtu N(e) úseček nutných k aproximaci (pokrytí) dané křivky. Délka pobřeží se ukázala být závislá na konstantě D, jejíž význam si však Richardson nedokázal vysvětlit. Až Benoit B. Mandelbrot dokázal souvislost této konstanty a Hausdorffovy dimenze - viz dále.

Také délka řek se musí měřit odlišným způsobem, než jaký byl běžně používán. Můžeme změřit délku řeky tak, že postupně změříme délku pravého a levého břehu a výslednou vzdálenost zprůměrujeme. Jak však již víme, v tomto případě by se při velmi přesném měření délka řek pohybovala v astronomických jednotkách a limitně by se blížila nekonečnu. Jak však intuitivně víme, délka řeky nemůže být nekonečná, protože jestliže na řece poplujeme konstantní rychlostí, určitě doplujeme na konec řeky v konečném čase. Je tedy nutné měřit například po pevně daných krocích, nebo přímo v toku řeky.

Také plocha některých objektů v přírodě, které mají konečný objem, může být nekonečná (nebo až o několik řádů větší, než bychom zprvu očekávali). Například povrch planety je teoreticky nekonečný. Zdálky vypadá planeta jako dokonalá koule (či rotační elipsoid). Při určitém přiblížení rozeznáme vrcholky hor a velká údolí. Při dalším příblížení zjistíme, že každá hora je velmi členitá a její plocha je obdobně členitá jako povrch celé planety. Každý kámen potom vypadá jako celá hora, ale je mnohem menší. S touto změnou měřítka můžeme pokračovat dále až do subatomárních struktur.

Obrovská je i plocha plic či lidského mozku při relativně malém objemu.

Ve všech těchto případech jde o praktickou aplikaci fraktálů v přírodě, kde obecně platí princip úspornosti.

1.3  Hausdorffova dimenze a soběpodobnost

1.3.1  Hausdorffova dimenze

V minulé podkapitole jsme si uvedli definici topologické dimenze. Nyní si uvedeme definici Hausforffovy dimenze, pomocí které následovně nadefinujeme pojem fraktál.

Měřením délky geometricky hladké křivky, která má dimenzi 1, dostaneme při měření v různých měřítkách vždy stejné konečné číslo. Měřením délky ostrova se při zmenšování měřítka toto číslo stává nekonečně velkým. Pobřeží tedy v rovině zabírá více místa než hladká křivka. Nezabírá však všechno místo (nevyplňuje celou rovinu). Jeho skutečná dimenze je tedy větší než dimenze křivky (ta je rovna jedné) a současně je menší než dimenze roviny (ta je rovna dvěma). Z toho jasně vyplývá, že dimenze takového útvaru není celočíselná. Toto neceločíselné číslo se nazývá Hausdorffovou dimenzí.

Hodnota Hausdorffovy dimenze udává, s jakou rychlostí délka těchto útvarů (či odpovídající veličina při větším počtu rozměrů) roste do nekonečna. Jestliže se bude Hausdorffova dimenze a topologická dimenze lišit velmi málo, bude takový objekt málo členitý. Bude-li Hausdorffova dimenze ostře větší než dimenze topologická, bude objekt velmi členitý.

Hausdorffova dimenze se někdy nazývá též fraktální dimenze.

1.3.2  Mandelbrotova definice pojmu fraktál

Jestliže víme, co je to topologická dimenze a Hausdorffova dimenze, můžeme zde uvést definici fraktálu tak, jak ji formuloval matematik Benoit B. Mandelbrot:

Fraktál je množina, jejíž Hausdorffova dimenze je větší než dimenze topologická.

Je nutné poznamenat, že ne všichni matematikové se dnes ztotožňují s touto definicí; ve skutečnosti žádná matematicky přesná definice fraktálu (zatím) neexistuje. Pro naše účely je však tato definice dostatečná.

Zajímavé také je, že Hausdorffova dimenze byla známa dlouho před definováním pojmu fraktál, ale neměla žádné praktické využití.

1.3.3  Měření Hausdorffovy dimenze

V této podkapitole si ukážeme, jak lze spočítat Hausdorffovu dimenzi na některých jednoduchých útvarech, abychom si lépe objasnili rozdíl mezi topologickou dimenzí a dimenzí Hausdorffovou.

Úsečka

Nejjednodušším příkladem bude zřejmě úsečka. Vytvoříme úsečku, která má jednotkovou délku. Nyní tuto úsečku rozdělíme na N dílů. To odpovídá tomu, jako bychom se na úsečku podívali s N-násobným zvětšením. Měřítko nové úsečky se tedy vypočítá takto:

s = 1
N
(1.10)
kde s je měřítko a N je počet dílů, na které se těleso rozdělí.

Pro Hausdorffovu dimenzi obecně platí následující podmínka:

N*sD = 1
(1.11)
Z toho vyplývá, že Hausdorffova dimenze se pro dané dělení N a dané měřítko s vypočítá jako pomocí následujících vzorců:
N*sD
=
1
(1.12)
log N*sD
=
log 1
(1.13)
log N+log sD
=
0
(1.14)
log N+D*log s
=
0
(1.15)
D*log s
=
-log N
(1.16)
D
=
-log N
log s
(1.17)
D
=
log N
log 1
s
(1.18)

Po dosazení do vzorce:

D = log N
log 1
s
= log N
log N
= 1
(1.19)

Obrázek 1.1: Rozdělení úsečky se změnou měřítka

Topologickou dimenzi úsečky známe, je rovna jedné. Hausdorffovu dimenzi jsme nyní vypočítali a je také rovna jedné. Hausdorffova dimenze se tedy rovná dimenzi topologické. Z definice fraktálu jasně vyplývá, že úsečka není fraktál (pro fraktál musí být Hausdorffova dimenze ostře větší než dimenze topologická).

Čtverec

Dalším typickým tvarem, jehož Hausdorffovu dimenzi budeme zkoumat, je čtverec. Zkonstruujeme čtverec, jehož hrany budou mít jednotkovou délku. Tento čtverec má plochu taktéž jednotkovou.

Po dvojnásobném zjemnění čtverec vypadá tak, jako by měl čtyřnásobnou plochu. Měřítko se tedy musí změnit podle tohoto vztahu:

s = 1
ÖN
(1.20)

Hausdorffova dimenze čtverce se vypočítá:

D = log N
log 1
s
= logN
logÖN
= 1
1
2
= 2
(1.21)

Obrázek 1.2: Rozdělení čtverce se změnou měřítka

Topologická dimenze čtverce je rovna dvěma, neboť se jedná o plošný útvar. Hausdorffova dimenze čtverce je taktéž rovna dvěma, proto čtverec opět není, za použití předchozí definice, fraktálem.

Krychle

Pro vyšší dimenze vypadá výpočet obdobně, například pro krychli. S rozdělením krychle na díly se výsledné krychličky zmenší o třetí odmocninu z N. Měřítko se vypočítá:

s = 1
3 ć
Ö

N
 
(1.22)

Hausdorffova dimenze krychle se vypočítá:

D = logN
log 1
s
= logN
log 3 ć
Ö

N
 
= 1
1
3
= 3
(1.23)

Obrázek 1.3: Rozdělení krychle se změnou měřítka

Topologická dimenze krychle je rovna třem, neboť se jedná o útvar v prostoru. Hausdorffova dimenze krychle je taktéž rovna třem, krychle tedy také není fraktálem.

Křivka Kochové

Nyní zkusíme vypočítat Hausdorffovu dimenzi útvaru, jehož zjemnění o jeden krok spočívá v tom, že se každá úsečka předchozího útvaru nahradí dvěma úsečkami se třetinovou délkou a rovnostranným trojúhelníkem sestrojeným uprostřed mezi dvěma novými úsečkami (viz následující obrázky). Tento objekt se nazývá vločka či křivka Kochové.

Obrázek 1.4: První iterace křivky Kochové

Obrázek 1.5: Druhá iterace křivky Kochové

Obrázek 1.6: Třetí iterace křivky Kochové

Obrázek 1.7: Čtvrtá iterace křivky Kochové

Obrázek 1.8: Pátá iterace křivky Kochové

Při trojnásobném zjemnění se délka zvětší čtyřikrát, proto Hausdorffova dimenze není celé číslo:

Pro N=4 se tedy měřítko musí zmenšit na třetinu:

s = 1
3
(1.24)
N = 4
(1.25)

Hausdorffova dimenze se tedy vypočítá jako:

D = log N
log 1
s
= 4
3
= 1,2618595
(1.26)

Topologická dimenze této křivky je rovna jedné, Hausdorffova dimenze je větší než jedna. Z toho vyplývá, že křivka Kochové je fraktál.

Křivka Kochové má i další zajímavé vlastnosti. Mezi ně patří to, že sice je v celém svém rozsahu spojitá, ale v žádném bodě nemá derivaci. Každý bod na křivce je totiž po nekonečně mnoha transformacích průnikem dvou nekonečně malých úseček, které tvoří strany trojúhelníka, který je taktéž nekonečně malý. Křivka Kochové je také nekonečně dlouhá, i když zabírá konečný prostor, jak je vidět z obrázku.

Typickou vlastností fraktálů je, že se na ně nedají aplikovat běžné matematické poučky a vzorce. Na druhou stranu se některé výpočty mohou zjednodušit, například výpočty určitých vlastností dynamických systémů.

Hausdorffova dimenze některých přírodních útvarů

V následující tabulce je uveden odhad Hausdorffovy dimenze některých přírodních útvarů.

přírodní objekt odhad fraktální dimenze
pobřeží 1.26
povrch mozku člověka 2.76
neerodované skály 2.2 - 2.3
obvod 2D - průmětu oblaku 1.33

Závěr

Ukázali jsme si jeden rozdíl mezi běžnými objekty a fraktálními objekty a způsob výpočtu topologické a Hausdorffovy dimenze. Byl kladen větší důraz na vysvětlení podstaty výpočtů, než na matematicky přesných odvozeních, což odpovídá zaměření celé této diplomové práce.

Obecně existují křivky, které zaplňují celou plochu; to znamená, že jejich topologická dimenze je rovna jedné a jejich Hausdorffova dimenze je rovna dvěma. Mezi takové křivky patří i hranice známé Mandelbrotovy množiny, o které budeme mluvit v dalších kapitolách.

1.3.4  Soběpodobnost

Dalším pojmem, o kterém se musíme při popisování fraktálů zmínit, je soběpodobnost. Soběpodobnost (matematicky se tato vlastnost nazývá invariance vůči změně měřítka) je taková vlastnost objektu, že objekt vypadá podobně, ať se na něj díváme v jakémkoliv zvětšení.

Soběpodobnost je hlavním znakem fraktálních útvarů a většinou je také považována za jejich definici. To nám také pomáhá při vyhledávání fraktálních útvarů v přírodě. Soběpodobný je například kámen, hory, mraky, stromy, rostliny ale i krátery atd., tedy objekty živé i neživé přírody.

Matematicky je soběpodobná množina definována takto: Soběpodobná množina A n-dimenzionálního Euklidovského prostoru En je taková množina, pro níž existuje konečně mnoho kontrahujících zobrazení f1...,fn takových, že A vznikne jako:

A = n
Č
i = 1 
fi(A)
(1.27)

Takto definovaná množina má několik velmi zajímavých vlastností:

Princip opakování podobných tvarů ve zmenšené podobě je vidět prakticky u jakékoliv komplexní, složité struktury, která je vytvářena i pomocí velmi jednoduchých pravidel. Způsob, jakým probíhá větvení stromů či cév a žil v tělech živočichů, nebo hromadění baktérií a řas v koloniích, se dá matematicky uspokojivě popsat pouze fraktální geometrií.

Fraktály však slouží i k modelování a pochopení složitých dějů, které se odehrávají v čase, jedná se tedy o jevy dynamické.

Při používání pojmu soběpodobnosti si musíme uvědomit, že se jedná o podobnost objektu při změně měřítka. Existuje mnoho geometrických útvarů, které jsou podobné (nebo shodné) při aplikaci jiné transformace. Například čtverec je invariantní vůči středovému zrcadlení, kruh je invariantní vůči stranovému zrcadlení a přímka je invariantní vůči posunu ve směru jejího vektoru. Tato invariance, pokud není doprovázena invariancí vůči změně měřítka, v žádném případě nedefinuje fraktál.

1.4  Typy fraktálů

Tak, jako v každé vědní disciplíně, i ve fraktální geometrii se po určitém čase začaly rozlišovat jednotlivé typy fraktálů. Toto rozlišení není zavedeno jen kvůli systematičnosti, ale i proto, že jednotlivé typy fraktálů jsou vhodné pro řešení určitého okruhu problémů, které se vyskytují v různých oborech. Také způsob vytváření (generování) se liší podle typu fraktálu.

Nejhrubší rozlišení fraktálů je následující:

1.4.1  L-systémy

L-systémy (Lindenmayerovy systémy) jsou skupinou fraktálů definovaných pomocí přepisovacích gramatik. Název pochází z anglického sousloví LOGO-like turtle. LOGO byl programovací jazyk, ve kterém se pomocí jednoduchých příkazů daly pomocí želvy kreslit různé obrazce. Podstatou tvorby L-systémů je přepisování řetězců podle určitých pravidel. Každý symbol v řetězci má přiřazen jistý geometrický význam, například transformaci či generování objektu.

Zajímavé obrazce se začnou tvořit, jestliže v LOGu použijeme iteraci, což odpovídá iteraci v gramatice (na pravé straně pravidla je nonterminální symbol shodný se symbolem na levé straně pravidla). S pomocí L-systémů lze generovat fraktály, které se podobají rostlinám, stromům a dalším přírodním útvarům. Poslední aplikace také směřují k využití těchto fraktálů při generování textur.

Z toho, jak se fraktál generuje, je zřejmé, že jde o deterministický postup a výsledný fraktál je tedy též deterministický. Těmto fraktálům se také někdy říká graftály.

Obrázek 1.9: Ukázka L-systému - první iterace Hilbertovy křivky

Obrázek 1.10: Ukázka L-systému - druhá iterace Hilbertovy křivky

Obrázek 1.11: Ukázka L-systému - třetí iterace Hilbertovy křivky

Obrázek 1.12: Ukázka L-systému - čtvrtá iterace Hilbertovy křivky

Obrázek 1.13: Ukázka L-systému - pátá iterace Hilbertovy křivky

Způsob generování L-systémů

Deterministický bezkontextový L-systém je uspořádaná trojice:

G=[V,P,S], kde

Determinismus tohoto L-systému pramení z podmínky, že v množině P nesmějí být dvě pravidla se stejnou levou stranou. Při přepisování tedy vždy přesně víme, které pravidlo pro přepis vybrat.

Derivace (Ţ) řetězce A Î V* znamená paralelní přepsání všech symbolů X Î A řetězce V z pravé strany pravidel z množiny P.

Například první dvě derivace L-systému G:

G = [{A,F,-,+},
{A Ž F - - F - - F,F Ž F + F - - F + F,+ Ž +,- Ž -},A]
se startovním symbolem A mají podobu:

A Ţ F - - F - - F Ţ F + F - - F + F - - F + F - - F + F - - F + F - - F + F.

Poslední posloupnost symbolů získaná v poslední derivaci se ve druhém kroku geometricky interpretuje. K tomu se používá takzvaná želví grafika (turtle graphics), ve které želva reprezentuje pomyslné kreslící zařízení.

Želva je definována svým stavem a tabulkou akcí. Stav se skládá ze dvou prvků, z polohy želvy a z její orientace. Želva čte sekvenčně řetězec a pomocí tabulky akcí interpretuje jednotlivé symboly jako příkazy. Pro úplné zadání tedy musíme přiřadit každému symbolu jeho význam.

symbol význam
F posun želvy dopředu
B posun želvy dozadu
+ natočení želvy doleva
- natočení želvy doprava
( uschování stavu želvy do zásobníku
) obnovení stavu želvy ze zásobníku


Pomocí těchto příkazů dovede želva kreslit různé rostliny, stromy, řeky atd. Záleží jen na vhodné volbě startovacího symbolu a přepisovacích pravidlech.

Ukázky některých L-systémů jsou na obrázcích, kde je také ukázáno, jak se změní tvar fraktálu při různých počtech iterací (přepsání řetězce).

Obrázek 1.14: Ukázka L-systému - první iterace Sierpinského koberečku

Obrázek 1.15: Ukázka L-systému - druhá iterace Sierpinského koberečku

Obrázek 1.16: Ukázka L-systému - třetí iterace Sierpinského koberečku

Obrázek 1.17: Ukázka L-systému - čtvrtá iterace Sierpinského koberečku

Obrázek 1.18: Ukázka L-systému - pátá iterace Sierpinského koberečku

Obrázek 1.19: Ukázka L-systému - šestá iterace Sierpinského koberečku

Obrázek 1.20: Ukázka L-systému - Cantorovo diskontinuum

1.4.2  Systém iterovaných funkcí IFS

Systém iterovaných funkcí IFS je generativní metoda tvoření fraktálů. Tato metoda je vhodná jak pro generování fraktálů, tak i pro kompresi bitmapových obrazů, zavedeme-li tzv. inverzní úlohu. Zajímavé je, že tato metoda může být jak deterministická, tak i náhodná. Oboje však paradoxně vede ke stejnému výslednému fraktálu, použijeme-li dostatečný počet iterací.

Obrázek 1.21: Ukázka IFS fraktálu

1.4.3  Dynamické systémy

Dynamické systémy jsou pravděpodobně tím typem fraktálů, který má v technické praxi nejšiřší uplatnění. Dynamický systém je matematický model, který je závislý na nějaké proměnné, většinou to bývá na čase. Dynamický systém vychází z počátečních podmínek a je jimi v čase determinován.

Existují dynamické systémy, které se po určitém čase neustálí v pevném stavu, ale ani nedivergují. Tento případ, který připomíná iracionální čísla, má většinou fraktální dynamiku a označuje se termínem deterministický chaos.

Obrázek 1.22: Dynamický systém - orbit v prostoru

Typickým příkladem dynamického systému s fraktální dynamikou je výpočet populačního růstu, který má tu zajímavou vlastnost, že volbou jediného parametru lze určit, zda systém bude ustálený, oscilující nebo chaotický. Při zkoumání dynamiky populačního růstu byly také objeveny některé konstanty, které mají obecnou platnost, podobně jako například konstanta p, nebo základ přirozených logaritmů e.

Dynamické systémy existují i v komplexní rovině. Tady jsou asi nejvíce známé Juliovy množiny a Mandelbrotova množina.

Obrázek 1.23: Dynamický systém - Mandelbrotova množina

Obrázek 1.24: Dynamický systém - Juliova množina

Znalost toho, zda nějaký systém je ustálený či zda směřuje k chaosu, je velmi důležitá pro výpočty nad tímto systémem. Pro chaotický systém (nebo fraktálně dynamický systém) nelze předpovědět stav systému v budoucnosti, aniž by se musel simulovat celý vývoj systému. Taktéž platí, že dynamické systémy jsou obecně velmi závislé na počátečních podmínkách, takže i nepatrná změna počátečních podmínek má za následek odlišné chování systému v budoucnosti.

Jelikož mají dynamické systémy široké uplatnění v praxi, zabýváme se jimi více v druhé kapitole.

1.4.4  Náhodné fraktály

Další skupinou fraktálů jsou nepravidelné fraktály. Zatímco všechny předchozí skupiny fraktálů byly v určitém smyslu symetrické, nepravidelné fraktály vnáší při generování fraktálu do algoritmu náhodu. Tento typ fraktálů také umožňuje nejlepší popis přírodních objektů. Zatímco při generování stromu klasickým L-systémem nebo IFS koláží dostaneme jako výsledek perfektně symetrický strom, je skutečnost už na první pohled zcela jiná. Strom rostoucí v přírodě má nepravidelné délky a tloušťky větví, úhel růstu větví také není vždy stejný, strom rostoucí v lese má jiný tvar než tentýž druh stromu rostoucí osamoceně apod. Proto je velmi vhodné zavést do generování fraktálů náhodu.

Způsob, jakým se náhodnost bude podílet při generování fraktálů, bude vždy určovat tvar fraktálu i jeho Hausdorfovu dimenzi. Pro generování náhodných čísel se používá například gaussovský generátor, nebo generátor bílého šumu.

Náhodné fraktály můžeme vytvářet více způsoby:

Simulace Brownova pohybu vytváří fraktální objekt, jehož Hausdorffova dimenze je úměrná absolutní velikosti změny při jednom kroku iterace. Tato metoda se používá například při generování toků řek. Není příliš vhodná pro trojrozměrné objekty.

Mezi typické metody generování tohoto typu fraktálů je metoda přesouvání prostředního bodu, a to jak na ploše, tak i v prostoru. Tato metoda se velmi často používá v počítačové grafice k vygenerování a následné vizualizaci přírodní krajiny. Volbou maximální odchylky při posunu prostředního bodu potom lze měnit celkový ráz krajiny od pouště až po vysokohorskou krajinu.

Další často používanou metodou je spektrální syntéza, která vychází z Fourierovy řady. Metoda spočívá v tom, že náhodně vygenerujeme Fourierovy obrazy, které mají spektrální hustotu úměrnou zadané Hausdorffově dimenzi. Potom provedeme inverzní Fourierovu transformaci s těmito koeficienty. Výsledkem je fraktální objekt. Pomocí této metody lze generovat hory či povrchy planet. Výhodou je, že lze přímo zadat požadovanou Hausdorffovu dimenzi výsledného objektu.

1.5  Využití fraktální geometrie v jiných vědních disciplínách a v praxi

Jedním z problémů, které úzce souvisí s fraktály a dynamickými systémy je takzvaný problém tří těles. Jde o úlohu z klasické newtonovské fyziky.

Problém tří těles je definován tak, že máme ve vesmíru tři tělesa a dané počáteční podmínky (tedy polohu těles, jejich hmotnost, počáteční rychlost a směr pohybu). Máme analyticky vypočítat polohu těles v libovolném okamžiku. Bylo dokázáno, že tento problém není řešitelný, což je jistě zajímavé, protože problém dvou těles je až triviálně jednoduchý (v newtonovské mechanice). Při studiu pohybu tří těles se ukázalo, že se tělesa pohybují po částečně chaotických drahách, a jsou přitahovány k určitým bodům na své dráze. Tyto body se pro svou vlastnost (přitažlivost, anglicky attraction) nazývají atraktory, v tomto případě podivné atraktory (anglicky strange attractors), jelikož je jejich poloha a působení opravdu divná. Systémů s podivnými atraktory je velmi mnoho a nemůžeme je zde všechny popsat.

Další oblastí, kde byly objeveny fraktály, je obecně změna stavu některých materiálů. Podrobně byla studována například změna stavu magnetického materiálu na materiál nemagnetický. Materiál je uspořádán z elementarních magnetů, které v závislosti na teplotě určují, zda je materiál magnetický či nikoliv. Při nízkých teplotách je materiál jako celek magnetický, ale při mikroskopickém pohledu existují jisté lokální fluktuace, kde nejsou elementární magnety uspořádané. Naopak, za dostatečně vysoké teploty je materiál jako celek nemagnetický, ale existují domény, kde jsou elementární magnety uspořádány. Vlastnost magnetismu je tedy závislá na měřítku pohledu na materiál. Při kritické teplotě (takzvaná Curierova teplota) materiál přechází z magnetického stavu do nemagnetického a naopak. Jesliže má materiál tuto teplotu, vypadá stejně ve všech měřítkách a má fraktální strukturu. Při této teplotě také nemůžeme jednoznačně dokázat, zda je materiál magnetický či nikoli.

Tato fraktální struktura existuje například i při změně skupenství látky, jako je tání ledu či vypařování vody. Zakladní stavy hmoty jsou z makroskopického hlediska tři (pevné, kapalné, plynné), můžeme přidat i plazmu a další (například degenerovaná hmota). Z mikroskopického hlediska je ovšem těchto stavů mnohem více. Fraktální strukturu hmoty potom můžeme vidět při přechodu hmoty z jednoho stavu do druhého stavu.

Také Brownův pohyb má fraktální strukturu. Brownův pohyb vzniká chaotickým pohybem částeček v hmotě, který je způsoben nenulovou teplotou tělesa. Brownův pohyb lze sledovat například při míchání dvou kapalin či plynů, ale lze ho i poměrně věrně simulovat na počítači s využitím fraktální geometrie.

Poslední dobou se fraktální geometrie využívá i v biologii a medicíně. Například při zkoumání vlastností krve se měří Hausdorffova dimenze jejich částeček. Někteří odborníci také zkoumají, zda má nějakou souvislost Hausdorffova dimenze povrchu mozku a inteligence člověka (povrch mozku je tvořen mozkovými závity, které svým počtem a členitostí určují různé schopnosti mozku, například paměť či inteligenci).

Pravděpodobně největší uplatnění má fraktální geometrie a fraktály v počítačové grafice. Počítačová grafika dává vědcům aparát, pomocí kterého mohou fraktály detailně zkoumat, a naopak počítačová grafika hojně využívá poznatků vyplývajících ze zkoumání fraktálů.

S rozvojem grafických schopností počítačů se stále více ukazovalo, že je potřeba objevit nové postupy, jak modelovat přírodní objekty. V principu jsou možné tři různé způsoby zadávání dat pro modely.

Prvním způsobem je modelování objektů animátorem. Pro tento způsob se dlouhou dobu vytvářely modelovací programy typu CAD a CAM. V případě modelování technických a geometrických předmětů je tento způsob ideální. Problém nastává v případě, že chceme modelovat nějaký složitější přírodní objekt, například hory nebo stromy. Množství vytvářených dat je obrovské a vynaložená práce většinou neodpovídá kvalitě a věrohodnosti výsledku.

Druhým způsobem je přímé snímání (skenování) daného objektu. Tato metoda má své uplatnění, ale není výhodná ve všech případech. Prostorové (trojrozměrné) skenery jsou drahá zařízení, která mají omezenou rozlišovací schopnost. Také jsou schopny skenovat pouze objekty určité velikosti a struktury. Například skenování hory či stromu je nemožné. Také objekty, které mají velkou členitost, je obtížné skenovat (hlava člověka s vlasy). Množství výstupních dat, která vycházejí po naskenování, je obrovské, protože je objekt reprezentován malými trojúhelníčky. Proto se tato metoda používá jen pro určitý okruh problémů a je vyhrazena jen CAD pracovištím, které mají možnost si toto drahé zařízení pořídit.

Třetím způsobem je použít takzvané procedurální modelování. Animátor nezádává přímo tvar objektu, ale způsob jakým bude objekt generován. Tato metoda má tu výhodu, že objem zadávaných dat je většinou malý a výsledný objekt lze modifikovat změnou počátečních podmínek (tak lze vytvářet zajímavé animace, jako je například růst stromů). Nevýhodou je nutnost výběru správné metody pro generování určité množiny objektů a také nutnost pochopit, co který parametr znamená a jak se projeví na výsledném tvaru objektu. Při vytváření objektu (zadávání parametrů) není přímo vidět výsledek, pracuje se tedy metodou pokus-omyl.

Při procedurálním modelování se mimo jiné používají i fraktály.

Fraktály lze v počítačové grafice využít například ke generování přírodních útvarů jako jsou stromy, rostliny, hory, mraky, kameny atd. V této oblasti neexistuje lepší způsob, který by dával věrohodnější výsledky.

Dále se fraktály hojně využijí při generování textur. Obrovskou výhodou fraktálů je jejich paměťová nenáročnost. Data pro texturu, která má být generovaná fraktálem mají velikost několika bytů nebo desítek bytů, oproti běžné bitmapě s velikostí řádově stovky kilobytů. Také je možno texturu zobrazit v různých velikostech, aniž by bylo vidět nějaké zkreslení, které běžně nastává u bitmapových textur. Tato paměťová nenáročnost je využita při fraktálové kompresi, o které se zmíníme v dalších kapitolách.

Fraktály lze také využít při animaci. Rozšíříme-li generování fraktálu o jeden rozměr, lze tento nadbytečný rozměr považovat za čas a tímto způsobem fraktál animovat. Tato metoda je použita při zobrazování ohně nebo pohybujících se mraků. Lze ji také kombinovat se systémem částic (particles), což umožňuje animaci mnoha jevů, které nelze běžnými metodami zobrazit.

Obsah

1  Fraktály
    1.1  Úvod
    1.2  Fraktální geometrie
        1.2.1  Definice fraktální geometrie
        1.2.2  Geometricky hladké útvary
        1.2.3  Nekonečně členité útvary
    1.3  Hausdorffova dimenze a soběpodobnost
        1.3.1  Hausdorffova dimenze
        1.3.2  Mandelbrotova definice pojmu fraktál
        1.3.3  Měření Hausdorffovy dimenze
            Úsečka
            Čtverec
            Krychle
            Křivka Kochové
            Hausdorffova dimenze některých přírodních útvarů
            Závěr
        1.3.4  Soběpodobnost
    1.4  Typy fraktálů
        1.4.1  L-systémy
            Způsob generování L-systémů
        1.4.2  Systém iterovaných funkcí IFS
        1.4.3  Dynamické systémy
        1.4.4  Náhodné fraktály
    1.5  Využití fraktální geometrie v jiných vědních disciplínách a v praxi


File translated from TEX by TTH, version 2.25.
On 14 Nov 2000, 23:08.


Předchozí kapitola Další kapitola Obsah Úvodní stránka Domácí stránka E-mail