Prírodou inšpirované algoritmy

študijné materiály pre projekt mobilnej triedy umelej inteligencie

Späť ku kurzom triedy
Obsah
Applet pre výpočet dimenzie
O tejto kapitole



Ostatné kapitoly
Dimenzia pobrežia
Chaos - úvod
Model kyvadla
Pickoverove biomorfy
Fraktály v prírode
Teória katastrôf
Fractint
Lotka-Volterra model
IFS - systém iterovaných funkcií
Logistická rovnica
Mandelbrotova množina
Newtonova metóda generuje fraktály


Tutoriály
 Celulárne automaty
 Morfogenéza
 Simulátory
 Evolučné algoritmy
 Chaos
 Roboty
 Rôzne


Applet pre výpočet dimenzie

Popis

Tento applet slúži na prezentáciu problematiky merania dimenzie pobrežia fraktálového charakteru. Primárnou funkciou appletu je demonštrovať dva rôzne postupy určenia dimenzie, založené na odlišnom spôsobe meranie dĺžky pobrežia:

  • meranie pomocou "kružidla" - ruler metóda
  • meranie pomocou mriežky - grid metóda.

Použitie appletu

Používateľ si na začiatku zvolí typ animácie, tj. či bude chcieť vidieť jednotlivé kroky generovania pobrežia (vtedy si zvolí položku Krokovanie) alebo na jednotlivé kroky nie je zvedavý (zvolí položku Automaticky). Sliderom si nastaví ako členité má byť pobrežie (Členitosť). Po kliknutí na tlačidlo Kresliť sa mu vygeneruje pobrežie alebo bude krokovať vytváranie pobrežia. Vytváranie pobrežia končí pri dosiahnutí 1025 zlomových bodov na obrazovke. Je to kvôli tomu, lebo merať pobrežie nemá zmysel pri malom počte iterácií. Na začiatku je to číslo 2, pretože spájame horný a dolný bod pobrežia. V ďalšom kroku sa pridá jeden bod do stredu a ďalej počet už exponenciálne narastá, pretože medzi každé 2 susedné body vloží ďalší bod. Predstavte si to takto, sú 5 študenti. 2 z nich uchytia lano, 1 za jeden koniec, 2 za druhý koniec. Lano napnú. Kolmo na lano sa zvolí pozitívny a negatívny smer pohybu. Čiže náhodne sa teraz vyberie buď + alebo - smer. 3 študent uchytí lano v strede a posunie sa kolmo na napnuté lano v smere, ktoré sa náhodne zvolilo (+ alebo -). 4 a 5 študent urobia to isté. Poloha bodu #3 predstavuje členitosť pobrežia, čiže čím ďalej budem od stredu úsečky, tým to bude členitejšie

Generovanie pobrežia

Ak sa používateľovi dané pobrežie nepáči, môže ho jednoducho zrušiť kliknutím na Reset. Po vygenerovaní pobrežia sa aktivuje tlačidlo Merať, ktoré umožní prepnúť sa do režimu merania.. V tomto režime sa zmení vzhľad okna.

V ňom je potrebné zvoliť typ merania a pomocou slidera Veľkosť kružidla alebo mriežky nastaviť veľkosť mriežky alebo dĺžku kružidla, ktorým bude pobrežie merané. Pri zaškrtnutom checkboxe automatické meranie sa kliknutím na tlačidlo Zmeraj pobrežie odmeria automaticky. Keď používateľ odklikne tento checkbox, tak môže realizovať meranie dĺžky sám. Keď bolo v predchádzajúcom kroku nastavené meranie kružidlom, tak dotyčný uvidí úsečku o zvolenej veľkosti a postupne aproximuje pobrežie pomocou úsečiek tejto dĺžky (natočí myšou koncový bod úsečky do vhodnej polohy, kliknutím ju zafixuje a celý postup opakuje pozdĺž celého pobrežia).

Meranie

Na konci klikne na tlačidlo Potvrdiť, a údaje sa uložia do tabuľky. Keď stlačí Zrušiť, tak sa údaje neuložia a vráti sa ku predchádzajúcemu oknu. Keď bola zvolená metóda merania pomocou mriežky, tak používateľ uvidí mriežku, pričom kliknutím niekde do nej sa vnútro políčka zafarbí na červeno. Opätovným kliknutím sa odfarbí. Meranie spočíva v čo najlepšom pokrytí pobrežia červenými štvorčekmi.

Mriežka

Potvrdením sa údaje ukladajú do tabuľky. Po ukončení merania sa aktivuje tlačidlo Tabuľka a graf. Po kliknutí naň sa zobrazí graf a tabuľka nameraných hodnôt.

Na vygenerovanie krivky je však potrebné urobiť viacej meraní, k meraniu je preto možné sa vrátiť kliknutím na Späť. Keď je počet meraní väčší ako dva, tak sa kliknutím na Krivka vykreslí aproximačná krivka a zobrazí sa aj jej analytické vyjadrenie. Exponet v tomto výraze je hľadaná dimenzia pobrežia . Jednotlivé metódy merania sa v grafe, vzorci a v tabuľke zobrazujú odlišnými farbami. Zaškrtnutím alebo odškrtnutím chceckboxov je možné vypnúť/zapnúť zobrazenie jednotlivých bodov. Ďalej je možné meniť merítka zobrazovania na jednotlivých osách.

Použité zdrojové kódy

V mojej práci som čerpal už z existujúceho appletu SimuLab 1: "Walking" Along a Coastline, ktorý je na tejto stránke

Hore
Kontakt: Marek Bundzel