Termity

Termity

Termity

Nekomentované

Matematický model termitov je jednoduchý celulárny automat simulujúci zhromažďovanie materiálu. Každý termit počas náhodného pohybu po ploche dodržuje iba 2 jednoduché pravidlá:
- ak nič nenesie (je prázdny) a narazí na materiál, vezme ho a pokračuje
- ak nesie materiál a narazí na iný, ten svoj nechá na najbližšom voľnom mieste a pokračuje prázdny
Takýmto jednoduchým pravidlom termiti časom zozbierajú všetok materiál na jedno miesto bez toho, aby to robili nejak organizovane. Termit nevie kde na ploche sa nachádza a nemá určené miesto kde má prioritne materiál zhromažďovať. Takisto ak narazí na materiál, tak nevie, či je tam iba jeden alebo viac.

Na začiatku začíname s náhodne rozmiestneným materiálom a termitmi. Dá sa povedať, že na začiatku každý jeden samostatný materiál je akoby samostatná kopa materiálu. Termity zbierajú materiál a kladú ho k inému a tým kopy zanikajú alebo sa zväčšujú. Postupne v čase počet kôp bude klesať, pretože ak termity z daného miesta odnesú všetok materiál, tak už nie je šanca na vznik novej kopy. Z istého hľadiska je to kontraproduktívna práca, pretože termity berú materiál z akejkoľvek kopy na ktorú narazia a nevedia, či je to tá najväčšia. Avšak postupne sa takto materiál nazbiera na jednu kopu.

Tento model je príkladom decentralizovanej stratégie. Žiaden termit nie je hlavný alebo vodca, žiaden nemá špeciálnu úlohu. Každý sa riadi danými dvoma jednoduchými pravidlami, avšak tým kolónia vykoná jednu oveľa zložitejšiu úlohu.

Na obrázkoch vidíme viacero postupov vývoja kolónie a materiálu. Hnedé bodky predstavujú materiál, biele bodky termity bez materiálu a červené bodky termity nesúce materiál. Na prvom obrázku je krátky úsek animácie v normálnej rýchlosti, na ďalších je zobrazený rýchlejší vývoj.

Program má 250 riadkov a spravil som ho v jazyku C#. Najprv náhodne popridávame materiál a termitov. Materiál sa dá pridávať aj klikaním myšov. Počet termitov je obmedzený na 200. Po spustení prebieha simulácia. Kliknutím na dané tlačidlá je možné posunúť simuláciu o 100 alebo o 10000 krokov vpred.

Pozrite si aj videosekvenciu priebehu simulácie:


facebooktwittergoogle_pluspinterestlinkedintumblr

Komentáre

Trochu matiky *

Späť hore