Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Základné údaje
Jednorázový výpočet
Vyšetrenie obdĺžnikovej oblasti
Prehliadač
Základný algoritmus, hľadanie cyklov



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


Základný algoritmus, hľadanie cyklov

Hlavný výpočtový algoritmus Jadro programu, ktoré zabezpečuje hlavný výpočet je v podstate jednoduché. Náčrt algoritmu je na nasledujúcom obrázku. Výpočet prechádza cez dve hlavné slučky. Prvá zabezpečuje iba prechod cez všetky body roviny x-y a tá druhá vykonáva výpočet nových hodnôt x_{new} a y_{new} pre každú iteráciu. Testovanie nových hodnôt podľa prah prebieha v každej iterácií. Ak hodnota testu prekročí hodnotu prah, iteračný proces sa ukončí a informácia zistená o bode je "nekonečno". Ak túto hodnotu neprekročí, po skončení všetkých iterácií vyhľadá periódu alebo invariantný cyklus a výsledok hľadania zapíše na pozíciu bodu.

Samotné hľadanie cyklov v programe je zabezpečené volaním funkcií na prehľadanie poľa s hodnotami iterácií, ktoré sa uložili v každom kroku. Pole je prehľadávané odzadu, pretože ak vzniknú periódy, tak potrebujú čas na ustálenie. Funkcia jednoducho overí hodnoty (s presnosťou Periodicity tolerance) prvku s hodnotou (prvok - perióda). Tento test je veľmi prísny, pretože požaduje, aby všetky hodnoty testovaných prvkov spĺňali test Periodicity tolerance.

Hore
Kontakt: Marek Bundzel