37
EVOLUČNÁ ROBOTIKA prednáška č. 2 František Mráz, KSVI MFF UK

EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

EVOLUČNÁ ROBOTIKAprednáška č. 2

František Mráz, KSVI MFF UK

Page 2: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Učenie robotov – robot learning

Riadiaci systém robota (napr. neurónová sieť) je učený na neúplných dátach a potom sa spolieha na generalizáciu.Často sa učí zobrazenie zo stavu senzorov na stav motorov, alebo učenie nejakého subsystému.Od metódy učenia, napr. spätným šírením (back-propagation), odloženým učením (reinforcement learning), klasifikátory, samoorganizujúce sa mapy (self-organized maps), závisí ako sa učia.Samoorganizácia spoločná pre učenie robotov i ERrozdiely

miera role učiteľaER sa neobmedzuje iba na učenie riadenia (napr. i návrh hardware)

Page 3: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Umelý život – artificial life

Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych entítZáklady

teória dynamických systémov – popis na viacerých úrovniach, globálne správanie na jednej úrovni vzniká lokálnou interakciou jednotlivých prvkov nižšej úrovne a v podstate sa nedá predpovedaťpočítačové experimenty – nutné veľké zjednodušenia

pre návrh robotov je nutné uvažovať fyzikálne vlastnosti, ER zdôrazňuje vývoj na reálnych robotoch

Page 4: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Umelý život – artificial life

Page 5: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Význam ER pre iné obory

Pre inžinierov:zložitosť návrhu reaktívnych systémov – ako rozložiť na jednoduchšie podúlohy na základe znalosti globálneho chovaniaklasický návrh – percepcia, plánovanie, vykonávanienovší – chovanie rozložiť na základné chovania a pridať ich koordináciu

možnosť postupného (inkrementálneho) návrhuzákladné chovania a koordinácia sa dajú učiť

aj tak ako zvoliť základné chovania?Popis chovania – zvonka vs. zvnútra

vonkajší popis vyžaduje vedieť aj niečo o vnútrajšku (robot môže napr. meniť svoje okolie)

Page 6: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Príklad

Pr. úloha pre Kheperu: nájsť objekt v pravouhlom bludisku a zostaťv jeho blízkosti

ručná dekompozícia1. Prieskum2. Vyhýbanie sa stenám3. Priblíženie k cylindru a zotrvanie v jeho blízkosti4. Rozpoznanie cylindru od stien

na každé správanie sa naučila neurónová sieť, ale dohromady sa to nepodarilo spojiťER prístup: geneticky sa hľadá riadenie iba na základe hodnotenia konkrétneho robota

Page 7: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Etológia – štúdium chovania živočíchov

Populácieekosystémyspoločenstvá

organizmy

orgánybunkymolekuly

SUPERORGANIZMUS

ORGANIZMUS(správanie / vedomie)

nervový systém

SUBORGANIZMUS

Evolučná biológiaekológiasociológia

psychológianeurológia

anatómia/fyziológiabiológia bunkygenetikamolekulárna biológia

Page 8: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Modelovanie chovania

Chovanie je senzorovo-motorická koordináciaadaptívne chovanie sa ťažko navrhuje. Každá motorická akcia má 2 následky:

čiastočne ovplyvňuje ako dobre agent (robot) vykonáva určenú činnosťčiastočne určuje čo „ucíti“ v ďalšom kroku, čo môže rozhodnúť či agent danú úlohu vyrieši alebo nie

elementárna akcia môže mať dlhodobé následkypr. krysa v bludisku

Page 9: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

EVOLUČNÁ ROBOTIKA A BIOLÓGIA

Prirodzená evolúcia: čo umožnilo, že úspešne vyvinula výborne adaptované formy života? Evolúcia robotov: za akých podmienok adaptácia v umelom prostredí vedie k vývoju komplikovaných schopností?Možné prístupy:a) postupná (inkrementálna) evolúcia spôsobená súperením v rámci

jedného druhu alebo medzi rôznymi druhmi;b) systém bez vonkajšieho dohľadu (riadenia), ktorý si musí sám

z prostredia extrahovať informácie potrebné na riadenie vývojac) zahrnúť zobrazenie z genotypu do fenotypu do evolučného procesu

Page 10: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Inkrementálna evolúcia –bootstrap

Problém: ako má umelá evolúcia vyberať jedincov, ktorí majúschopnosti vhodné na riešenie zložitých úloh?Ako sa pri prirodzenom vývoji objavujú nové schopnosti (napr. lietanie)?

V prírode iba jedno kritérium: schopnosť reprodukcie

Keď chceme nájsť jedincov schopných riešiť danú úlohu, tak ich môžeme vyberať podľa ich schopnosti riešiť danú úlohu

funguje iba na jednoduché úlohy, pre zložité úlohy všetci jedinci v počiatočnej generácii dostanú rovnaké nulové ohodnotenie – selekcia nemôže fungovať – problém inicializácie – “bootsprap problem“

Page 11: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

A. S vyššou mierou dohľadu: experimentátor do selekčného kritéria pridá ohodnotenie za podúlohy

inkrementálna evolúcia: evolúcia sa začne so zjednodušenou úlohou, potom sa postupne jej zložitosť zvyšuje zmenou selekčných kritérií (fitness funkcie)Príklad: Robot má ísť k farebnému obdĺžniku a má sa vyhnúťtrojuholníku1. Nájdi farebnú stenu.

2. Nájdi farebný obdĺžnik.

3. Nájdi farebný obdĺžnik a vyhýbaj sa trojuholníku.

Bootstraping 1 – inkrementálna evolúcia

Page 12: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Bootstraping 2 – ko-evolúcia

B. Bez zvýšeného dohľadu: inkrementálna evolúcia môže vzniknúť i samo-organizáciou pri súperiacich populáciách s prepojenou fitnessfunkciou – ko-evolúcia

Príklad: evolúcia dvojice „dravec – korisť “fitness:

• dravec – schopnosť chytiť korisť• korisť – schopnosť utiecť dravcovi

evolučné preteky v zbrojeníaj keď sa selekčné kritérium nemení, tak je adaptácia postupne ťažšia a ťažšia

Page 13: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Využitie prostredia na riadenie evolúcie

Prostredie nedáva priamo návod ako má agent postupovať, aby dosiahol cieľInformácia o prostredí získaná zo senzorov sa dá využiť nielen na určenie agentovej reakcie, ale i na adaptáciu na prostredie po celúdobu života agenta – celoživotné učenie – ontogenetická adaptáciaprincipiálne každá schopnosť, ktorá sa dá naučiť pri celoživotnom učení, sa dá získať i evolúciou – fylogenetická adaptáciaceloživotné učenie sa od evolučného učenia líši tým, že pri celoživotnom učení máme síce málo špecifickú, ale veľmi bohatúspätnú väzbu, pri evolúcii sú jedinci ohodnotení iba raz – jediným číslom, ktoré hovorí ako si viedli za celý život (počet potomkov pri prírodnej evolúcii, fitness pri umelej evolúcii)

Page 14: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Celoživotné učenie

pri celoživotnom učení dostávame mnoho vstupov zo senzorov, ale tie o celkovej úspešnosti vypovedajú iba veľmi nepriamo a transformovať tieto vstupy na informácie ako dobre si vedie a akéakcie má agent vykonať, je veľmi ťažképrirodzená evolúcia to rieši tak, že vyvíja podsystémy schopnéextrahovať informácie pre rýchle celoživotné učenie.to už bolo vyskúšané v počítačových experimentoch

riadiaci systém sa rozdelil na dve časti jedna počítala ako reagovať na aktuálny stav senzorov a druhá generovania učiace signály pre prvú. Každá z týchto častí bola neurónová sieťpodobné výsledky priniesli experimenty, keď sa evolučne vyvíjali neurónové siete, ktoré mohli meniť svoju topológiu v evolučnom vývoji a mohli sa učiť pri celoživotnom učení

Page 15: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Celoživotné učenie

zrejme to čo sa dá získať evolúciou a učením, sa dá získať aj iba samotnou evolúciouevolúciou môžu vzniknúť dva druhy jedincov schopných dobre fungovať premenlivom prostredí1. plastic general – nemajú obecnú stratégiu, ale sú schopné sa

prispôsobiť v priebehu života prostrediu, v ktorom sa nachádzajú2. full general – má obecnú stratégiu vhodnú pre rôzne typy prostredí,

teda sa v priebehu života nemusí prispôsobovaťMôže sa však stať, že full general sa nedá vytvoriť (neexistuje, alebo je príliš zložitý na to aby ho selekcia vybrala).Ukazuje sa, že v niektorých prostrediach úplne obecné stratégie neexistujú, alebo je ťažké ich nájsť, ale súbor jednoduchých stratégií vhodných v rôznych situáciách sa dá nájsť jednoducho.

Page 16: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Celoživotné učenie

Zatiaľ existuje iba málo experimentálnych dôkazov, že v evolučnej robotike môže evolúcia spolu s učením vyvinúť zložitejšie schopnosti, než samotná evolúcia

Page 17: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Vývoj a evolúcia vyvíjateľnosti

Genotyp – sada charakteristických vlastností udržovanáv reprodukovanej populácii alebo tiež genetický základ jednej alebo skupiny charakteristických vlastnostíFenotyp – prejav genotypu vo forme správaní závislý na konkrétnom prostredív prírode jedinci s tým istým genotypom si môžu v rôznych prostrediach rozvinúť rôzne vlastnosti (správania)

vývoj = rast organizmu

v evolučnej robotike ide o problém zobrazenia z genotypu do fenotypu alebo problém reprezentácie

Page 18: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Zobrazenie genotypu na fenotyp

najjednoduchšie je vzájomne jednoznačné zobrazeniev ER sa používajú aj zložitejšie formya) rôzne organizačné úrovne (genotyp, nervový systém, chovanie)

usporiadané v hierarchiib) inštrukcie pre rast, ktoré sú rekurzívnec) plasticitad) genotyp s premenlivou dĺžkou

pri prírodnej evolúcii je do evolučného procesu zahrnuté aj samotné zobrazenie z genotypu do fenotypupri umelej evolúcii je toto zobrazenie väčšinou zostavenéexperimentátorom

Page 19: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

EVOLUČNÉ A NEURÓNOVÉTECHNIKY

Základné okruhyevolučné algoritmy – genetické algoritmyneurónové sietekombinácie evolučných algoritmov a neurónových sietígenetické programovanie

Evolúcia riadiacich systémov pre roboty už bola aplikovaná nariadenie neurónovými sieťamiparametre pevného riadiaceho programusamotný počítačový program

Page 20: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

GENETICKÉ ALGORITMY (GA)

Holland 60. roky 20. stor. Populácia umelých chromozómov sa cyklicky podrobuje

selektívnej reprodukcii preferujúcej výkonnejších jedincov a náhodným zmenám

Umelý chromozóm (genotyp) = reťazec symbolov kódujúci vlastnosti jedinca (fenotyp)

napr. binárna hodnota premennej alebo postupnosť hodnôt premennýchmnoho typov kódovaní

binárne, Greyov kód, reálne hodnoty

abecedy – napr. binárna, ternárna, …

Page 21: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Fitness funkcia (účelová, cieľová funkcia) – kritérium výkonnosti, zobrazenie: genotyp → reálne (celé) číslo

čím vyššia hodnota, tým je jedinec lepší

GA – fitness funkcia

R→Φ genotyp:

M

Φ(x)

populácia fitness

12824

M

14

Page 22: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Genetické algoritmy

Jednoduchý genetický algoritmus (Goldberg 1989)

vytvor populáciu N náhodne vygenerovaných chromozómov x1, x2, …, xN

opakujdekóduj všetky chromozómy a spočítaj ich fitness fi = Φ(xi)vytvor novú populáciu selektívnou reprodukciourekombinuj chromozómy – kríženiemutuj chromozómy

skonči, keď sa objaví hľadaný jedinec, alebo fitness najlepšieho nerastie

Page 23: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Jednoduchá selekcia

Zo starej populácie vytvárame novú kopírovaním chromozómov tak, že čím lepší jedinec, tým viacej jeho kópií sa môže objaviť v novej populáciireprodukcia ruletou:

každý jedinec dostane na kole rulety priehradku veľkosti pi úmernej jeho fitness funkcii – to bude pravdepodobnosť, že bude reprodukovaný (predpokladáme nezápornú fitness funkciu)

ruletou sa otočí N krát

∑=

= n

jj

ii

f

fp

1

p1= 0.25

p2= 0.1

Page 24: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Varianty selekcie 1

Problémy jednoduchej selekciea) keď všetci jedinci majú podobnú fitness

náhodné prehľadávanie s genetickým posunom

b) keď jeden až dvaja jedinci majú fitness o mnoho vyššiu než zvyšok populácie

takmer všetci jedinci v novej generácii budú kópiou toho istého jedinca, predčasná konvergencia

Riešenie:1. škálovanie [scaling] (typicky lineárna transformácia)

pre a) zväčšiť rozdiely, pre b) zmenšiť

2. selekcia podľa poradia [rank based] – jedinci sa zoradia podľa fitness a pravdepodobnosť reprodukcie je úmerná poradiu jedinca, nie jeho fitness

Page 25: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Varianty selekcie 2

3. S orezávaním [truncation] – jedincov usporiadame podľa veľkosti fitness, M najlepších jedincov okopírujeme O krát tak, že N = M xO

4. Turnajom [tournament] – náhodne sa vyberú 2 jedinci a vygeneruje sa náhodné číslo r ∈ <0,1>, ak je r < T, kde T ∈<0,1> je preddefinovaný parameter, tak bude okopírovaný jedinec s vyššou fitness inak ten druhý

Pri ďalších genetických operáciách sa môže doteraz najlepší jedinec stratiť. Pomoc: elitizmus [elitism] – S najlepších jedincov je bez zmeny okopírovaných do novej generácie

Page 26: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Kríženie

Jedinci sú náhodne spárovaní a každý pár je s danou pravdepodobnosťou skrížený

Jednobodovékríženie

Viacbodovékríženie

Page 27: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Nedeterminizmus

Celý GA je nedeterministický, používa náhodné veličinyTypicky sa sleduje priemerná a maximálna fitness, GA sa zastaví, keď je dosiahnutá dopredu zadaná hodnota fitness, alebo zadaný počet generácií, alebo sa fitness v priebehu niekoľkých generáciínemení.Následne sa GA spúšťa opakovane aj s pozmenenými parametramiVýsledkom je najlepší jedinec vybraný z finálnych generácií zo všetkých behov GA

Page 28: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Fitness krajina – „fitness landscape“

Fitness si môžeme predstaviť ako mnohorozmernú nadrovinu udávajúcu hodnotu fitness vo všetkých možných hodnotách genotypu – fitness krajina s kopcami a údoliami; pre chromozóm dĺžky 1 je to funkcia jednej premennej

Fitness

Priestor genetických vlastností

Max. fitness

generácie

Page 29: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Schémy

Chromozóm = reťazec dĺžky m nad k-prvkovou abecedouSchéma = reťazec dĺžky m nad (k+1)-prvkovou abecedou

schéma s r hviezdičkami reprezentuje kr reťazcovkaždý reťazec dĺžky m je reprezentovaný (k+1)r schémamirád schémy S: o(S)= počet pevných symbolov (nie *)(definičná) dĺžka schémy S: δ(S)= vzdialenosť medzi prvou a poslednou pevnou pozíciou v schémePríklad:

o(S) δ(S)S1=(***001*110) 6 6S2=(****00**0*) 3 4S3=(11101**001) 8 9

Page 30: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Schémy

pop_vel = počet jedincov v populáciiξ(S,t ) = počet reťazcov v populácii v čase t, ktoré sú

reprezentované schémou SΦ(S,t ) = fitness schémy v čase t = priemerná fitness

reťazcov reprezentovaných schémou S

kde sú reťazce z P(t ) pokryté schémou Spravdepodobnosť, že x∈ P (t ) bude vybrané selekciou do P (t+1 ) je

( ) ( ) ( )( ) ,

,,

,

∑=

Φ=ΦtS

ji j

xtS

tSξ

ξ 1

1

{ }),(

,,tSii xx

ξK

1

( )( ) ( ) ( ) populácie fitness je kde , ∑

=

Φ=Φ

=N

jixtF

tFxp

1

Page 31: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Schémy a selekcia

Po selekcii očakávame ξ(S,t+1 ) reťazcov pokrytých schémou S

kde je priemerná fitness popuácie P (t )teda “nadpriemerná” schéma pokryje v nasledujúcej generácii viacej reťazcov – ak by platilo pre prvých t generácií

tak tj. počet reťazcov reprezentovaných “nadpriemernou” schémou rastie geometrickou postupnosťou

( ) ( ) ( )( ) ( ) ( )

( )tFtStS

tFtSpop_veltStS ,,,,, Φ

⋅=Φ⋅⋅=+ ξξξ 1

( )tF

( ) ( ) ( ) 0 nejaké pre , >+⋅≥Φ εε1tFtS

( ) ( ) ( )tStS εξξ +⋅≥ 10,,

Page 32: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Pravdepodobnosť, že schéma bude zmenená (zničená) krížením

teda pravdepodobnosť zachovania príslušnosti k schéme bude

ALE:kríženie nastáva iba s pravdepodobnosťou pk

aj keď je bod kríženia “vo vnútri schémy”, tak schéma môže prežiť

teda pravdepodobnosť zachovania schémy je

selekcia + kríženie:

**** ****

Schémy a kríženie

( )1−m

( )1

1−

−m

( )1

1−

⋅−≥m

Spp kzδ

( ) ( ) ( )( )

( )⎥⎦⎤

⎢⎣⎡

−−⋅

Φ⋅≥+

111

mSp

tFtStStS k

δξξ ,,,

Page 33: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Schémy a mutácia

Ak mutácia zmení v reťazci jeden z pevných symbolov schémy, tak reťazec nebude schémou pokrytý; pravdepodobnosť, že mutácia nezmení žiaden z pevných symbolov schémy je

selekcia + kríženie + mutácia:

schéma S “prežíva” dobre, ak je krátka (δ(S)) a malého rádu (o(S))

( ) ( ) ( ) 111 <<⋅−≈− mmSo

m ppSop pretože

( ) ( ) ( )( )

( ) ( )[ ]

( ) ( )( )

( ) ( ) ⎥⎦⎤

⎢⎣⎡ ⋅−

−−⋅

Φ⋅≥

⋅−⋅⎥⎦⎤

⎢⎣⎡

−−⋅

Φ⋅≥+

mk

mk

pSom

SptFtStS

pSom

SptFtStStS

11

11

11

δξ

δξξ

,,

,,,

Page 34: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Veta o schémach

Veta o schémach (Schema Theorem): Schémy, ktoré sú krátke, majú nízky rád a sú nadpriemerné, pokrývajú exponenciálne rastúci počet reťazcov v po sebe idúcich generáciách genetického algoritmuHypotéza o stavebných blokoch (Building blockHypothesis): Genetický algoritmus hľadá riešenie blízke optimu reťazením krátkych schém s nízkym rádom nazývaných stavebnébloky.

Nie je to veta!Niekedy stavebné bloky znemožnia nájdenie optimaHolland spočítal, že za určitých podmienok môže genetický algoritmus v jednom kroku spracovať až n3 krátkych schém, ale funguje to iba ak je možné „dobré“ vlastnosti kódovať takýmito schémami – variácie GA

Page 35: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Sú GA dobrou simuláciou biologickej evolúcie?

Evolúcia nekončí a nezačína vždy od nuly (bootstraping)SAGA – Species Adaptation Genetic Algorithm: premenná dĺžka genotypu, značne skonvergovaná populácia sa mení postupnými mutáciami, nie kríženímNeutrálne siete – drobné náhodné zmeny v genotype nemusia meniťfitness, ale môžu populáciu posunúť inam

fitness krajina môže byť sústava prepojených neutrálnych sietí s rôzne vysokými hodnotami fitness„prázdne“ úseky DNA

Ďalšie variácie GA – spojenie s „dospievaním“ a učením – fitness sa mení v priebehu života jedincaČO SA NEMENÍ: a) genetická reprezentácia jedinca

b) autonómna interakcia s prostredím

Page 36: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Vylepšenia genetických algoritmov

Delenie na druhyna genotype sa definuje vzdialenosť = miera podobnosti jedincov1 druh = množina podobných jedincovŠpeciálny typ kríženia – iba v rámci druhu (predpoklad, že krížením podobných jedincov vznikne podobný, teda funkčný jedinec)Ochrana nových druhov

Po obmedzenú dobu od vzniku nového druhu jedinci pri selekcii sú vyberaníiba na základe fitness pre jedincov ich vlastného druhu

Premenlivá veľkosť populácieOptimálna veľkosť populácie sa ťažko určujeStarnutie

Pri vzniku nového jedinca je mu (podľa jeho fitness) nastavený max. vek = max. počet generácií, než bude jedinec z populácie vyradený

Page 37: EVOLUČNÁ ROBOTIKA prednáška č. 2mraz/EvoRob/Predn2_09.pdf · Umelý život – artificial life Napodobenie života simuláciou – napodobovanie vzájomných reakcií rôznych

Vylepšenia genetických algoritmov

KódovanieKonečná doména

Pevný počet bitov – čo ak počet prvkov domény nie je mocnina 2?

Celé číslaBinárneGrayov kód

Reálne číslaS obmedzeným rozsahom – binárne kódovanie rovnomerne rozdelených deliacich bodovČísla s pevným počtom desatinných miestČísla s plávajúcou desatinnou čiarkou – ako robiť kríženie a mutácie?