Prírodou inšpirované algoritmy

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

Späť ku kurzom triedy
Obsah
Bunka
Dendrity
SVRule
Laloky
Percepčný Lalok
Inštinkt
Stimul (Stimulus)
Emitor
Receptor
Half-life



Ostatné kapitoly
LEE
Framsticks
EINSTein
Nerve garden
Poly World
Simulácia evolúcie rozhodovania
Nornovia
Creatures 3
Primordial Life
Core War
Desktop Garp
Tierra
Avida


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


Receptor

Chemical receptor umožňuje, aby boli Organ, Tissue alebo Locus zmenené na základe hladiny chemikálie v Nornovi. Chemikália asociovaná s receptorom je neustále sledovaná, či neprekročila stanovený prah. Keď sa dosiahne prah, tak sa aplikuje vzorec na množstvo chemikálie a výsledok sa aplikuje na vybratý Organ, Tissue alebo Locus.

Dialog Box


Rozdelenie

Gene Header

Je rovnaká pre všetky gény.

Organs, Tissue, Locus

Definuje oblasť, na ktorú sa aplikuje výsledok zo vzorca receptoru. Aplikovaný výsledok je hodnota z rozsahu 0 až 255 a jej účinok je pre každý locus rozdielny.

Chemical Information

  • Chemical
    Určuje chemikáliu, ktorá bude receptorom sledovaná.

  • Threshold
    Určuje hladinu chemikálie, ktorá musí byť, predtým ako sa locus aktivuje. Pre digitálne receptory musí byť množstvo chemikálie väčšie ako je tento prah, predtým ako sa locus aktivuje. Pre analógové receptory je signál (množstvo chemikálie) znížený hodnotou tohto prahu predtým ako sa vypočíta množstvo, ktoré sa bude locusom stimulovať.

  • Nominal
    Určuje default hodnotu použitú na stimulovanie locus. Je to hodnota na akú bude locus nastavený ak množstvo chemikálie nie je väčšie než prah.

  • Gain
    Určuje na akú hodnotu bude nastavený locus v prípade digitálneho receptora alebo ako mierka pre výpočet množstva pre analógový receptor.

  • Output REDUCES with increased stimulation
    Ak je to nastavené, tak všetky zmeny základnej hodnoty receptora (napr. nominálne množstvo) znížia túto hodnotu.

  • Digital
    Locus bude nastavený na konštantné množstvo ak je množstvo chemikálie väčšie ako určitý prah. Ak je táto voľba neoznačená, tak sa receptor bude správať ako analógový receptor. To znamená, že locus bude nastavený hodnote úmernej množstvu chemikálie.

Vzorec

Vzorec pre výpočet hodnoty, na ktorú bude locus nastavený pre analógové receptory:

Nominal + (((ChemicalAmount - Threshold) * Gain/255) * R)

Kde R je 1 ak "Output Reduces with increased stimulation" nie je označená a -1 ak je označený.

Vzorec pre digitálne receptory:

Nominal + ((ChemicalAmount > Threshold ? Gain : 0) * R)

Takže, ak je množstvo chemikálie väčšie ako prah, potom nastavenie locus bude Nominálne množstvo zvýšené alebo znížené pomocou Gain v závislosti od "R". Ak nie je väčšie ako prah, potom je locus nastavený na Nominal.

Poznámky

Použitím horeuvedenej informácie som vyskúšal ako funguje reakcia hunger/glycogen. Použitím receptora je chemikália glycogen k floating recep-emitter číslu 2 (FRE-2). Nastavenie pre tento emitor zrobí FRE-2 rovné presne množstvu glykogénu. Takže 100 jednotiek glycogen spôsobí 100 jednotiek FRE-2.

Hunger emitor si zoberie vstup z FRE-2. Je to analógový emitor so vzorkovacou rýchlosťou 5, gain 2, prahom 0 a je obrátený.
To znamená, že približne každú pol sekundu je hunger zvýšený o toto množstvo:

(255 - GlycogenAmount) * 2/255

Takže vysoké hodnoty glycogen znamenajú, že Norn nebude hladný. Glycogen musí byť menší než 100, predtým ako sa hunger dostane k nejakým vyšším hodnotám. Takže ak nechcete, aby vaši Nornovia hladovali, tak udržuje v nich vysoké hladiny glycogenu.

Hore
Kontakt: Marek Bundzel