Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Popis appletu
Zdrojový kod



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


Popis appletu

Applet pozostáva z hlavného okna, ktoré sa zobrazí hneď na začiatku, ďalšie - vykresľovacie - okno sa zobrazí po kliknutí na tlačidlo Draw. V tomto okne za zobrazí model spoločenstva dravec – korisť pre hodnoty parametrov, ktoré sú nastavené v hlavnom okne. Je ich možné ľubovolne meniť.

Je vhodné začať predvolenými príkladmi z combo boxu Interesting settings a experimenty s vlastnými nastaveniami parametrov robiť až po oboznámení sa s podkapitolami Diskrétny model a Vyšetrovanie štruktúry roviny h-p.

Hlavné okno

Parametre alfa, beta, gama, delta, p, h – sú základnými parametrami celého modelu, ktoré ovplyvňujú jeho celkové správanie. Prvé štyri sa spravidla volia rovné 1. Niekoľko typických dvojíc p, h možno nájsť v combo boxe Interesting settings. Pre vlastné voľby parametrov p, h je vhodné si pozrieť podkapitolu Vyšetrovanie štruktúry roviny h-p.

Parametre Xmax , Xmin , Ymax , Ymin – určujú hraničné hodnoty premenných x, y pre obrázok vo vykresľovacom okne. Pre väčšinu experimentov je vhodné ponechať prednastavené hodnoty.

Parametre Iteration, Periodicity tolerance, Infinity treshold – majú význam pri vyhľadávaní periód a detekcii divergencie, ich ich nevhodné nastavenie môže viesť k falošným výsledkom, prípadne k enormnému spomaleniu. Keď očakávame výskyt periodických cyklov, je vhodná voľba Iteration 500, resp. 1000, v ostatných prípadoch obvykle stačí 200. Obvyklá hodnota Periodicity tolerance je 0.001. Voľba veľkej hodnoty Iteration umožní na jednej strane spoľahlivejšie nájdenie periodických cyklov, na druhej strane výrazne spomalí výpočet a následné vykreslenie obrázka. Voľba veľkej hodnoty Periodicity tolerance môže viesť k nájdeniu neexistujúceho cyklu, na druhej strane veľmi malé hodnoty Periodicity tolerance môžu zase spôsobiť, že sa existujúci periodický cyklus nenájde, resp. že sa nájde neexistujúci invariantný cyklus (najmä pre menšie hodnoty Iteration). Prípad p=0.72 h=0.73 z Interesting settings nájde pre dané parametre okrem cyklov s periódami 9 a 26 aj invariantný cyklus (izolované biele body v obrázku zanikajú). Stačí ale zmeniť Periodicity tolerance na 0.01 a problém sa odstráni. Podobný problém je aj pre 0.54 0.57 z Interesting settings, tu ho možno vyriešiť zvýšením hodnoty Iteration na 2000.

Parametre Width, Height slúžia na nastavenie veľkosti vykresľovacieho okna. Pri zväčšení prednastavených hodnôt (400,300) je potrebné počítať so spomalením činnosti appletu.

V combo boxe pod názvom Interesting settings sa nachádza zopár zaujímavých nastavení parametrov modelu, ktoré sú dobre ako štartovací bod pri práci s týmto modelom.

Vykresľovacie okno

Farebné oblasti predstavujú množinu východzích bodov určitého typu orbity. V políčku Period info sú informácie o charaktere nájdených orbitov:

  • konvergencia k bodu (1,1) - Konverg. (bledomodrá plocha),
  • divergencia - Diverg. (čierne plochy)
  • periodické cykly (číslo udáva periódu a príslušná farba plôšky je v nižšie uvedenej tabuľke),
  • invariantný cyklus - IC (biele plochy).

V políčkach Start X, Start Y sú súradnice bodu, z ktorého celý proces štartuje. Keď sme v hlavnom okne vybrali niektorý zo zaujímavých prípadov v combo boxe Interesting settings, potom sú súradnice východzieho bodu orbity už nastavená na odporúčané hodnoty. Je možné ich zmeniť kliknutím myšou na požadovaný bod alebo zadaním nových hodnôt v políčkach Start X, Start Y. Pre vlastnú voľbu hodnôt p, h v hlavnom okne sú prednastavené hodnoty (0, 0) a je potrebné ich zmeniť jedným z vyššie uvedených spôsobov.

Tlačidlo Iterate iniciuje kreslenie orbity z aktuálneho bodu zadaného hodnotami (počet iteračných krokov sa zadáva v políčku Step. V prípade invariantného cyklu a podivných atraktorov je vhodné zvoliť veľkú hodnotu (1000-10000).

Aktuálne súradnice bodu sú v políčkach Current X, Current Y. Combo box line umožňuje rozhodnúť, či sa medzi bodmi orbity majú kresliť čiary alebo nie. Vedľajší combo box definuje spôsob vykresľovania bodov orbity (bod 1x1, bod 3x3 alebo krížik). V prípade invariantného cyklu a podivných atraktorov je vhodné zvoliť body 1x1 bez spojovacej čiary. Pre periodické cykly, konvergenciu a divergenciu sa zase viac hodí kreslenie čiary.

Po kliknutí na tlačidlo Change je možné nastaviť farbu, ktorou sa vykresľuje orbita, teda čiary a body/krížiky.

Vykreslenú orbitu možno vymazať dvoma spôsobmi:

  1. Tlačidlom Reset sa vynulujú obe počítadlá iterácií a po zadaní nového východzieho bodu sa začne kresliť úplne nová orbita.
  2. Tlačidlo Clear nuluje iba počítadlo Actual iter. a iteračný proces pokračuje od posledného bodu doterajšej orbity. Tento postup sa hodí na "odmazanie" prechodového deja a sledovanie orbity, na ktorej sa iterácia ustáli - periodických, resp. invariantných cyklov. Počítadlo Actual iter. pritom dobre poslúži na určenie vyšších periód cyklov.

Popis farieb

Hore
Kontakt: Marek Bundzel