Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Matematický model
Simulátor Immun
Immun Player
Experimenty - Simulácia imunitnej odozvy pri interakcii s vírusmi
Experimenty - Simulácia imunitnej odozvy pri interakcii s nádorovými bunkami
Zhrnutie



Ostatné kapitoly
Freemanove K modely
Umelé imunitné systémy
Biomimicry - Biomimetics
Umelé chémie
Chemické vlny
DNK počítače
Artificial Music
Memetika
Artificial Life Games
Artificial Art
Väzenská dilema


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


Simulátor Immun

Vizualizácia simulácie

Simulácia sa celá odohráva v 3D prostredí. Na vizualizáciu bola použitá knižnica OpenGL. Je to programová vizualizačná knižnica, ktorá programátorovi jednoduchým spôsobom sprístupňuje základné grafické primitíva ako body, čiary, polygóny a obrázky. Vďaka nim je potom možné vytvárať aj komplikované a interaktívne 2D a 3D grafické aplikácie.

3D prostredie má pre simulátor niekoľko výhod:

  • Simulácia lepšie zodpovedá reálnemu deju. Pri 2D simuláciách je potrebné urobiť niektoré zjednodušenia a kompromisy, ktoré môžu skresľovať výsledky simulácií. Pri 3D simulácii majú agenti väčšiu voľnosť pohybu, môžu sa pohybovať nielen horizontálne a vertikálne, ale aj dopredu a dozadu.
  • Jednoduchšie vytvorenie si predstavy o deji. Pri 3D simulácii je možné sa pohybovať simulačným prostredím, ľubovoľne si približovať jednotlivé detaily simulácie a tak si
    jednoducho urobiť trojrozmernú predstavu o simulovanom deji.

Samotné okno simulácie predstavuje prostredie s rozmermi 1000 x 1000 x 1000 bodov. Po bodoch sa môžu pohybovať jednotliví agenti. Pre jednoduchšiu orientáciu je v priestore simulácie zobrazený osový systém a mriežka v horizontálnej rovine.

Vizualizačné prostredie programu Immun
Vizualizačné prostredie programu Immun

V priestore simulácie je možný pohyb pomocou myši, stlačeného pravého tlačidla myši a kombinácie funkčných kláves:

Funkcia Pohyb myši Stlačená klávesa
Rotácia ↕ alebo ↔ ---
Pohyb do strán a hore ↕ alebo ↔ Ctrl
Priblíženie Shift
Posun do hĺbky Ctrl + Shift
Pohyb v simulačnom okne

Bunky imunitného systému sú farebne odlíšené, pričom rôzne farby majú aj bunky ktoré zmenia svoj stav. Zelené bunky sú nádorové/napadnuté vírusom, žlté sú Th lymfocyty, modré Tc lymfocyty, červenou farbou sú označené NK bunky a biela farba sa používa pri zvýraznenej bunke na ktorú bolo kliknuté. Rôzne stavy buniek sú odlíšené jasom - svetlejšie bunky sú aktivované, resp. živé nádorové bunky. Biela farba sa využíva pre bunky ktoré sú aktuálne vybraté užívateľom a takto sú zvýraznené.

Farebné odlíšenie buniek simulácie
Farebné odlíšenie buniek simulácie

Popis simulačného prostredia

Prostredie simulátora Immun môžeme rozdeliť na tri hlavné časti: simulačné okno, panel nástrojov a menu.

Simulátor Immun po štarte
Simulátor Immun po štarte

Pri spustení aplikácie sa užívateľovi zobrazí miesto simulačnej plochy logo Immunu. Na spustenie aplikácie je potrebné stlačiť tlačidlo Play z nástrojovej lišty. Na tejto lište sa ešte nachádzajú aj tlačidlá Pauza, Stop, ktorých význam je asi jasný. Tiež sa tam nachádza tlačidlo na skrytie simulačnej plochy.

Simulátor poskytuje užívateľovi veľké množstvo nastavení, umožňujúcich lepšie nastavenie samotnej simulácie a vlastnosti skupín agentov. Tieto nastavenia sa dajú nájsť v menu Tools. Tiež pri simulácii je možné meniť aj vlastnosti jednotlivých buniek. Pre sprístupnenie nastavení konkrétnej bunky je potrebné na vybranú bunku kliknúť.

Všeobecné nastavenia programu obsahujú voľby týkajúce sa behu programu ako rýchlosť behu simulácie a nastavenie farby pozadia simulácie, ale tiež nastavenia ovplyvňujúce samotnú simuláciu ako dĺžka MHC kódu, počet amino kyselín (čo je vlastne počet rôznych kombinácií MHC), alebo kolízna vzdialenosť a počet NK buniek.

Všeobecné nastavenia simulácie
Všeobecné nastavenia simulácie

Pri nádorových bunkách, resp. bunkách napadnutých vírusom (v programe označené CC bunky) je možné nastaviť počiatočný počet infikovaných buniek, polomer jadra, šanca s akou sa budú bunky deliť a šanca s akou si budú skrývať MHC molekuly. Toto nastavenie je v prípade simulácie odozvy na napadnutie vírusmi nastavené na 0.

Nastavenia nádorových buniek
Nastavenia nádorových buniek

Th a Tc lymfocyty majú všeobecné nastavenia podobné. Môžeme zvoliť počiatočný počet agentov u obidvoch skupín, šancu na vytvorenie nového agenta, počet pokusov na vytvorenie nového agenta, šancu na zmenu MHC, maximálny vek bunky po ktorom zomiera a čas do rozdelenia. Bunky sa delia pravidelne po uplynutí tohto času. Noví agenti sú do systému dodávaní v každom cykle, pričom vždy je urobených len daný počet pokusov o vytvorenie nového agenta a ten vzniká v každom pokuse iba s nastavenou pravdepodobnosťou.

Nastavenia pre Th a Tc agentov
Nastavenia pre Th a Tc agentov

Pri simulácii je možné nastavovať aj parametre jednotlivých buniek. Po kliknutí na konkrétnu bunku je bunka zvýraznená a je možné zmeniť jej atribúty. U všetkých buniek sa dá zmeniť vek a poloha bunky, pri T lymfocytoch aj aktivácia bunky, počet delení a čas do najbližšieho delenia a tiež MHC kód. Pri CC bunkách sa dá nastaviť či je bunka mŕtva, množstvo potravy, skrývanie MHC a samotné MHC. NK bunkám sa nedajú nastavovať parametre.

Nastavenie vlastností CC bunky
Nastavenie vlastností CC bunky

Kedykoľvek počas simulácie je možné si zobraziť aj graf zobrazujúci početnosti jednotlivých typov buniek. Je možné si buď vybrať s predvolených nastavení (iba jeden typ buniek, aktívne T bunky, atď.), alebo zvoliť si vlastné nastavenie. V okne grafu je tiež viditeľný presný počet agentov každého druhu v aktuálnom cykle. Graf je možné exportovať do súboru použiteľného v prostredí MATLAB.

Graf simulácie programu Immun
Graf simulácie programu Immun

Hore
Kontakt: Marek Bundzel