FEI TU Košice Diplomová práca List č. 1 Slovo robot sa začalo ...
FEI TU Košice Diplomová práca List č. 1 Slovo robot sa začalo ...
FEI TU Košice Diplomová práca List č. 1 Slovo robot sa začalo ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 1<br />
Úvod<br />
…stroj je tělo, které v kursu exaktnosti<br />
přišlo o duši.<br />
Josef Šafařík: Člověk ve věku stroje<br />
<strong>Slovo</strong> <strong>robot</strong> <strong>sa</strong> za<strong>č</strong>alo používať v dvadsiatom storo<strong>č</strong>í, no myšlienka týchto strojov<br />
je oveľa staršia. Už v antických bájkach a mýtoch <strong>sa</strong> môžeme do<strong>č</strong>ítať o bytostiach,<br />
ktoré majú podobu zvierat i ľudí. Tieto bytosti fantázie príchodom novej, stále<br />
vyspelejšej technológie a automatizácie, <strong>sa</strong> za<strong>č</strong>ali stávať skuto<strong>č</strong>nosťou a zrodili <strong>sa</strong> prvé<br />
formy <strong>robot</strong>ov. Dnes už <strong>robot</strong>y napomáhajú ľudom v rôznych oblastiach priemyslu,<br />
taktiež vo výskume, vo vojenských technológiách, v domácnostiach, ba aj ako u<strong>č</strong>ebné<br />
materiály.<br />
Stále majú však rovnaký cieľ: napomáhať ľudom, nahradiť ich v situáciách, ktoré<br />
môžu byť pre <strong>č</strong>loveka nebezpe<strong>č</strong>né alebo nedostupné. Rozvoj <strong>robot</strong>izácie v podstatnej<br />
miere ovplyvňovalo a stále ovplyvňuje vývoj výpo<strong>č</strong>tovej techniky.<br />
Existuje široká škála aplika<strong>č</strong>ného potenciálu mobilných <strong>robot</strong>ov. Uplatniť <strong>sa</strong><br />
môžu pri transporte rôznych objektov v budovách, fabrikách, skladoch, letiskách a<br />
knižniciach, servisní <strong>robot</strong>i, ktorí <strong>č</strong>istia ulice alebo vysávajú izby, prieskumní <strong>robot</strong>i v<br />
nebezpe<strong>č</strong>ných prostrediach, autonómne vozidlá, <strong>robot</strong>i skúmajúci vesmír, planetárne<br />
vozidlá, atď. Hoci dopyt po takýchto aplikáciách mobilných <strong>robot</strong>ov je vysoký,<br />
obmedzenia existujúcich <strong>robot</strong>ov v konfrontácii so skuto<strong>č</strong>ným svetom ako aj ich vysoká<br />
cena bráni ich širokému praktickému využitiu. Kameňom úrazu v tejto snahe je problém<br />
navigácie a nedostatok potrebnej flexibility a adaptácie na rôzne situácie.<br />
V nasledujúcej kapitole <strong>sa</strong> nachádza stru<strong>č</strong>ný prehľad hlavných <strong>č</strong>astí tejto<br />
diplomovej práce ako aj formulácia <strong>č</strong>iastkových úloh, pri<strong>č</strong>om hlavným cieľom práce je<br />
prezentovať plánovanie cesty a vyhýbanie <strong>sa</strong> prekážkam v statickom prostredí s<br />
použitím rekurentnej neurónovej siete Hopfieldovho typu, ktorá vytvára model<br />
kognitívnej mapy. Externý vstup (senzorický vstup) poskytuje systému informáciu o<br />
pozícii prekážok, momentálnej pozícii agenta a požadovanej cieľovej pozícii v<br />
usporiadanom priestore agenta. Hybnosť siete vytvára rovnovážny stav plochy do<br />
usporiadaného priestoru, odkiaľ može byť aplikovaním techniky najstrmšieho vzostupu<br />
konštruovaná ideálna cesta.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 2<br />
1 Formulácia úlohy<br />
Na základe zadania diplomovej práce sú formulované nasledujúce <strong>č</strong>iastkové<br />
úlohy:<br />
1. Realizovať prehľad metód priestorovej navigácie v oblasti mobilnej <strong>robot</strong>iky.<br />
2. Realizovať prehľad prístupov k reprezentácii priestoru pomocou kognitívnych<br />
máp umožňujúcich inkrementálne budovanie priestorového modelu prostredia.<br />
3. Navrhnúť riadiacu architektúru pre mobilného <strong>robot</strong>a a spôsob integrácie<br />
kognitívnej mapy do riadiaceho systému. Navrhnúť stratégiu adaptácie<br />
kognitívnej mapy na základe interakcie mobilného <strong>robot</strong>a s neznámym<br />
prostredím. Navrhnúť spôsob využitia nau<strong>č</strong>enej informácie v cieľovo<br />
orientovanej navigácii mobilného <strong>robot</strong>a.<br />
4. Implementovať navrhnutý riadiaci systém v prostredí simulátora mobilných<br />
<strong>robot</strong>ov.<br />
5. Vykonať experimenty zamerané na adaptáciu kognitívnej mapy a cieľovo<br />
orientovanú navigáciu navrhnutého systému pri rôznej zložitosti prostredia.<br />
6. Vypracovať dokumentáciu podľa pokynov vedúceho diplomovej práce.<br />
1.1 Popis diplomovej práce<br />
Celá <strong>práca</strong> je rozdelená do niekoľkých hlavných kapitol.<br />
Kapitola 2 – Priestorová navigácia u mobilných <strong>robot</strong>ov – poskytuje základný<br />
prehľad naviga<strong>č</strong>ných stratégií;<br />
Kapitola 3 – Neurónové mapy – pokrýva koncept neurónovej mapy (tiež<br />
nazývanej kognitívna mapa) ako reprezenta<strong>č</strong>ného média prostredia;<br />
Kapitola 4 – Návrh a implementácia riešenia pre plánovanie cesty pomocou<br />
neurónových máp – stru<strong>č</strong>ná charakteristika rekurentných neurónových sietí, využitie<br />
Hopfieldovej neurónovej siete na reprezentáciu priestoru pri návrhu priestorovej<br />
navigácie a následná implementácia riešenia;<br />
Kapitola 5 – Experimenty – vykonané experimenty po implementácii navrhnutého<br />
naviga<strong>č</strong>ného systému v prostredí simulátora mobilných <strong>robot</strong>ov.<br />
V závere je tento prístup porovnaný s navigáciou pomocou geometrických<br />
výpo<strong>č</strong>tov s cieľom budovať topologickú mapu, ktorá bola predstavená v [38].
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 3<br />
2 Priestorová navigácia u mobilných <strong>robot</strong>ov<br />
2.1 Mobilné <strong>robot</strong>y<br />
V [28] je <strong>robot</strong> definovaný ako „aktívny, umelý agent, ktorého životným<br />
prostredím je fyzický svet“. Táto všeobecná definícia zahrňuje všetky umelé tvory, ktoré<br />
existujú fyzicky (teda zaberajú <strong>č</strong>asť priestoru) v reálnom svete a ur<strong>č</strong>itým spôsobom<br />
s ním interagujú. Osobitnú triedu <strong>robot</strong>ov, ktorí priťahujú špeciálnu pozornosť tvoria<br />
mobilné <strong>robot</strong>y. Títo <strong>robot</strong>i majú vo všeobecnosti schopnosť pohybu, t.j., sú schopní<br />
v reálnom prostredí pohybovať svojim „fyzickým telom“. Podľa Lazea a Lupu, mobilný<br />
<strong>robot</strong> je „<strong>robot</strong>ické vozidlo schopné vlastného pohonu a naprogramovaného pohybu<br />
pod automatickou kontrolou s cieľom vykonať istú úlohu“ [19].<br />
Teoreticky, životným prostredím <strong>robot</strong>a môže byť pevnina, voda, vzduch, vesmír<br />
alebo akákoľvek ich kombinácia. Vä<strong>č</strong>šina výskumných úsilí <strong>sa</strong> zameriava na prvú<br />
triedu.<br />
V takmer všetkých <strong>robot</strong>ických systémoch môžeme ur<strong>č</strong>iť dva základné prvky:<br />
senzory a efektory alebo jednoducho povedané, nástroje na vnímanie a odozvu (akciu).<br />
Je jasné, že mobilný <strong>robot</strong> potrebuje oboje: senzory na získavanie informácií o okolí a<br />
efektory na umožnenie pohybu.<br />
Existuje široká škála senzorov pre mobilné <strong>robot</strong>y. Jedna trieda zahŕňa množstvo<br />
vyhľadávacích zariadení, ktoré dokážu zmerať vzdialenosť k najbližšiemu objektu<br />
v ur<strong>č</strong>itom smere. Typickými senzorickými zariadeniami v tejto kategórii sú<br />
ultrazvukové (alebo <strong>č</strong>asto používaný výraz sonar = SOund NAvigation and Ranging),<br />
infra<strong>č</strong>ervené a laserové diaľkové vyhľadáva<strong>č</strong>e. Sonáre sú pomerne lacné a schopné<br />
pokryť veľké rozpätie (vzdialenosť), ale ich veľká nevýhoda je v slabej (zašumenej)<br />
kvalite meraní. Infra<strong>č</strong>ervené vyhľadáva<strong>č</strong>e sú zna<strong>č</strong>ne lepšie, ale drahšie a pokryjú len<br />
krátku vzdialenosť. Laserové vyhľadáva<strong>č</strong>e sú najpresnejšie ďiaľkové vyhľadáva<strong>č</strong>e,<br />
avšak v porovnaní s predchádzajúcimi omnoho drahšie. Iné snímacie metódy pre<br />
mobilné <strong>robot</strong>y predstavujú dotykové (hmatové) senzory alebo <strong>č</strong>idlá, ktoré oznamujú<br />
kolízie a kamerové systémy pre mono alebo stereo vizuálne vnímanie.<br />
Podľa druhu efektorov rozlišujeme dve základné triedy mobilných <strong>robot</strong>ov:<br />
kon<strong>č</strong>atinové (z angl. výrazu legged) a kolesové (z angl. výrazu wheeled). V prvej<br />
kategórii je pohyb dosiahnutý pomocou mechanických nôh, ktoré napodobňujú ľudský a
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 4<br />
zvierací pohyb. Koordinácia nôh pri takomto systéme je <strong>č</strong>iasto<strong>č</strong>ne náro<strong>č</strong>ná úloha, ktorá<br />
vedie k problémom s polohovou stabilitou. Prednosťou kon<strong>č</strong>atinového pohybu (chôdze)<br />
je však schopnosť „krá<strong>č</strong>ať“ v nerovnom teréne. Druhá kategória (kolesový pohyb) je<br />
praktickejšia a vo vä<strong>č</strong>šine prípadov posta<strong>č</strong>ujúca v prostrediach vytvorených <strong>č</strong>lovekom.<br />
Ovládanie kolesových <strong>robot</strong>ov je oveľa jednoduchšie, pri pohybe nie je potrebné brať<br />
do úvahy podmienky polohovej stability.<br />
2.2 Navigácia<br />
Zvieratá trávia vä<strong>č</strong>šinu svojho <strong>č</strong>asu tým, že <strong>sa</strong> pohybujú z miesta na miesto, v<br />
rámci jedného alebo medzi rôznymi prostrediami. Prežitie jedinca závisí od jeho<br />
adaptívnych schopností, ako sú schopnosti nájsť, poznať a vrátiť <strong>sa</strong> na ur<strong>č</strong>ité miesta<br />
rýchlo a bezpe<strong>č</strong>ne. Tieto zru<strong>č</strong>nosti zhrnieme pod slovo navigácia.<br />
V práci Gallistela [9] „Organizácia u<strong>č</strong>enia” (str. 35) <strong>sa</strong> hovorí: „Navigácia je<br />
proces ur<strong>č</strong>ovania a zachovávania kurzu <strong>č</strong>i trajektórie z jedného miesta na druhé.<br />
Procesy, ktoré odhadujú pozíciu jednotlivca vzhľadom na poznaný svet, sú v navigácii<br />
kľú<strong>č</strong>ové. Poznaný svet <strong>sa</strong> skladá z plôch, ktorých jednotlivé umiestnenia sú zobrazené<br />
na mape.“<br />
Táto definícia ob<strong>sa</strong>huje dve kľú<strong>č</strong>ové hypotézy. Jedna hovorí o tom, že svet, v<br />
ktorom zviera žije a pohybuje <strong>sa</strong>, je zobrazovaný v mozgu a druhá o tom, že toto<br />
zobrazenie môžeme nazývať mapa. Waterman [37] taktiež predpokladá, že navigácia u<br />
zvierat vyžaduje použitie mapy, ktorá je buď vrodená alebo nau<strong>č</strong>ená.<br />
Ale <strong>č</strong>o presne je táto „mapa v hlave“. Keď mám citovať Kuiper<strong>sa</strong> [16]: „Ako<br />
vlastne funguje na nervovej úrovni? Aké správanie je pozorovateľné po<strong>č</strong>as navigácie?“<br />
Štúdie z etiológie, psychológie, umelej inteligencie, neurovedy a <strong>robot</strong>iky nám<br />
poskytujú rozli<strong>č</strong>né predbežné odpovede. V celku sú však rozdielne a <strong>č</strong>asto<br />
problematické.<br />
Preto je najprv potrebné definovať, <strong>č</strong>o navigácia je a aké sú funkcie naviga<strong>č</strong>ného<br />
systému. Napríklad podľa Levitta a Lawtona [20] je navigácia definovaná podľa<br />
nasledujúcich troch otázok:<br />
1. Kde som?<br />
2. Kde <strong>sa</strong> nachádzajú ostatné miesta v prostredí vo vzťahu ku mne?<br />
3. Ako <strong>sa</strong> k týmto miestam odtiaľto dostanem?
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 5<br />
Pri prvej otázke vzniká problém rozpoznania a identifikovania ur<strong>č</strong>itého miesta, na<br />
ktorom <strong>sa</strong> zviera alebo <strong>robot</strong> nachádza. Odpoveď na otázku nemusí nutne znamenať<br />
poznanie ur<strong>č</strong>itej pozície vo vzťahu k súradniciam, ktoré <strong>sa</strong> viac vzťahujú k druhej<br />
otázke, i keď <strong>sa</strong> veľká <strong>č</strong>asť literatúry z <strong>robot</strong>iky zaoberá práve týmto typom odpovede<br />
[8]. Pokiaľ je miesto rozpoznané vďaka situácii zažitej v minulosti, môže nastať<br />
procedúra zvolenia pohybu a viesť tak k vytúženému cieľovému miestu bez toho, aby<br />
sme odpovedali na nejakú z uvedených troch otázok. Všeobecnejšia formulácia prvej<br />
otázky by preto mala znieť takto:<br />
1. Aké sú identifikovateľné vlastnosti tohto miesta?<br />
Druhá otázka znamená spracovať komplexné priestorové zobrazenie, napríklad<br />
sieť priestorových vzťahov, kde poznáme vzťah každej inej pozície k aktuálnemu<br />
miestu, no nepoznáme vzťah medzi ostatnými pozíciami.<br />
Prvé dve otázky vytvárajú potrebný rámec, z ktorého môžu byť odvodené<br />
príslušné kroky, to znamená objekt tretej otázky. Všimnime si, že otázka 3 implikuje<br />
nielen aktuálny cieľ, ale taktiež všetky možné miesta v komplexnom priestorovom<br />
zobrazení. Naviac zahŕňa predstavu „plánovania“, t.z., pýta <strong>sa</strong> na celú dráhu od<br />
aktuálneho umiestnenia až k pozícii cieľa.<br />
Podľa Pouceta [31] navigáciu charakterizujú tiež otázky seba-lokalizácie a<br />
plánovania priestorových krokov. Agent (<strong>robot</strong>), podľa Pouceta, vypo<strong>č</strong>íta svoju<br />
aktuálnu pozíciu a cieľovú pozíciu v rámci priestorového zobrazenia podobného mape a<br />
naplánuje poradie pohybov jeden po druhom cez prechodné pozície v tej istej mape.<br />
Pre terajšie použitie sú tieto definície navigácie príliš obmedzujúce, keďže<br />
navigácia je možná aj bez spracovávania komplexného priestorového zobrazenia a<br />
plánovania. Preto je užito<strong>č</strong>né rozlišovať medzi niekoľkými typmi navigácie.<br />
Každý typ navigácie vyžaduje isté minimálne priestorové údaje o prostredí, ktoré<br />
však nemusia nutne viesť k vytvoreniu kognitívnej mapy 1 . Tolman [35] predstavuje<br />
koncept kognitívnych máp ako spôsob interpretovania experimentálnych poznatkov,<br />
kedy zvieratá (v Tolmanovej štúdii potkany) pri reakciách na výber dráhy reflexívne<br />
1 Mnoho štúdií zaoberajúcich <strong>sa</strong> navigáciou podobne trvali na používaní termínu kognitívna mapa<br />
jednoducho ako metaforu na opí<strong>sa</strong>nie hocijakého mechanizmu, ktorý zvieratá používajú pri navigácii.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 6<br />
nereagovali na stimuly od prekážok, ale namiesto toho používali istú formu vnútorného<br />
priestorového zobrazenia.<br />
Proces hľadania cesty <strong>sa</strong> môže vyskytnúť buď s plánovaním alebo bez neho a<br />
viesť tak k vytvoreniu trajektórie skladajúcej <strong>sa</strong> len z <strong>č</strong>astí známych dráh alebo<br />
trajektórie z nových dráh. Ako je ďalej znázornené, prvý typ trajektórií <strong>sa</strong> dá vyvodiť z<br />
topologického zobrazenia prostredia, zatiaľ <strong>č</strong>o druhý typ trajektórií <strong>sa</strong> dá zostrojiť len z<br />
metrického zobrazenia prostredia o <strong>č</strong>om <strong>sa</strong> pojednáva v nasledujúcej kapitole.<br />
2.3 Lokálna a globálna navigácia<br />
Rozlíšme schopnosť lokálnej navigácie a schopnosť hľadania cesty v prostredí –<br />
globálna navigácia [32]. Lokálna navigácia je proces pohybovania <strong>sa</strong> v aktuálnom<br />
prostredí, t.z. prostredí, v ktorom sú objekty v poli vnímania <strong>robot</strong>a. Preto nie je<br />
potrebný žiadny druh vnútorného zobrazenia objektov a miest mimo tohto daného<br />
prostredia. Robot si ďalší krok zvolí na základe aktuálnych zmyslových údajov.<br />
Globálna navigácia je proces pohybovania <strong>sa</strong> v rozľahlejšom prostredí, t.z., že<br />
máme k dispozícii globálnu informáciu o prostredí – kognitívnu mapu. Informácia<br />
o prostredí môže byť poskytovaná nejakým externým senzorickým zdrojom, napríklad<br />
kamerou umiestnenou v tomto prostredí.<br />
Navigácia by nebola možná bez základnej schopnosti približovať <strong>sa</strong> (alebo<br />
vzďaľovať <strong>sa</strong> od) k vnímanému objektu. Ur<strong>č</strong>ite by sme nemali podceňovať uplatnenie<br />
takýchto schopností, a to aj napriek Morrisovmu tvrdeniu, že „to nevyžaduje ni<strong>č</strong> viac<br />
ako fungovanie motorického systému“ [27]. Zvieratá <strong>sa</strong> musia nau<strong>č</strong>iť koordinovať svoje<br />
pohyby a to najprv vo vizuálno-motorickej oblasti (z angl. výrazu vizuomotor space)<br />
ako napríklad koordinácia oko-ruka alebo oko-hlava-ruka-ústa a potom v oblasti<br />
miestnej motoriky (z angl. výrazu locomotor space). Čo <strong>sa</strong> týka <strong>robot</strong>ov, musia mať<br />
buď primerané schopnosti vstavané, alebo <strong>sa</strong> schopnosti u<strong>č</strong>iť <strong>sa</strong> musia zaviesť.<br />
Jednoduchý vhodný mechanizmus by mohol byť obvod spätnej väzby, kde zmenšenie<br />
vzdialenosti od cieľa znamená nasledovať nárast intenzity senzorových podnetov<br />
typických pre cieľ.<br />
So schopnosťou približovať <strong>sa</strong> je <strong>robot</strong> schopný orientovať <strong>sa</strong> k cieľu na základe<br />
senzorových údajov (so zmenami pohľadu a otá<strong>č</strong>aním tela alebo hlavy), kedykoľvek je<br />
tento cieľ zamerateľný (z angl. výrazu tzv. proximal-cue situation). Tomuto procesu
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 7<br />
potom môžeme hovoriť „smerovanie k cieľu“ alebo „navádzanie“. V psychologickej<br />
terminológii je to príklad typického správania stimul-reakcia (S-R).<br />
Ak cieľ nie je v dohľade, <strong>robot</strong> tento mechanizmus použiť nemôže. Avšak, môže<br />
<strong>sa</strong> dozvedieť, že blízko cieľa je orienta<strong>č</strong>ný bod. Takémuto orienta<strong>č</strong>nému bodu môžme<br />
hovoriť maják [22]. To, že <strong>sa</strong> <strong>robot</strong> vie dostať k tomuto majáku ho ďalej navedie k<br />
skrytému cieľu. Funkcie cieľa a majáku sú pri vedení pohybov rozhodujúce. Robot<br />
môže pri stratégii približovania <strong>sa</strong> k cieľu využiť maják ako hlavnú senzorovú stopu,<br />
<strong>č</strong>ím môže poslúžiť ako prechodný cieľ.<br />
2.4 Naviga<strong>č</strong>né stratégie<br />
2.4.1 Navádzanie<br />
Ak je cieľ skrytý a nie je k dispozícii žiadny maják, <strong>robot</strong> <strong>sa</strong> môže riadiť podľa<br />
priestorového rozloženia orienta<strong>č</strong>ných bodov (z angl. výrazu landmark-configuration)<br />
alebo skupiny týchto bodov (z angl. výrazu landmark-array). Pri cieli si <strong>robot</strong> zapamätá<br />
priestorové vzťahy medzi ním a usporiadaním orienta<strong>č</strong>ných bodov. Ďalej <strong>sa</strong> bude<br />
pohybovať presne podľa tohto zobrazenia.<br />
Zachovávať si „istý egocentrický vzťah“ k „príslušnému orienta<strong>č</strong>nému bodu <strong>č</strong>i<br />
objektu“ znamená v O’Keefeho a Nadelovej [29] terminológii navádzanie (str. 82).<br />
Napríklad, keď si <strong>robot</strong> pamätá vzdialenosť od steny, pohybuje <strong>sa</strong> tak, aby túto<br />
vzdialenosť zachoval. Výsledkom je správanie, kedy <strong>robot</strong> nasleduje stenu.<br />
Pri pohybe, ktorým <strong>sa</strong> <strong>robot</strong> snaží nadobudnúť istý priestorový vzťah medzi ním a<br />
orienta<strong>č</strong>ným bodom, <strong>sa</strong> tento <strong>robot</strong> dostane na pozíciu, na ktorej si tento priestorový<br />
vzťah zapamätal. Napríklad pozíciu skrytého cieľa môžeme definovať pomocou jeho<br />
vzdialeností od troch rozli<strong>č</strong>ných orienta<strong>č</strong>ných bodov a tak <strong>sa</strong> môže <strong>robot</strong> úspešne<br />
približovať alebo odďaľovať od každého orienta<strong>č</strong>ného bodu, pri<strong>č</strong>om <strong>sa</strong> jeho aktuálne<br />
vzdialenosti zhodujú so zapamätanými. Kľú<strong>č</strong>ový senzorový údaj pre tento typ navigácie<br />
nazvali Cartwright a Collet [5] snímka (z angl. výrazu snapshot). Collet takýto proces<br />
nazýva navádzanie pomocou orienta<strong>č</strong>ného bodu [7]. Tento mechanizmus je však<br />
všeobecnejší a nemusí nutne zahŕňať len orienta<strong>č</strong>né body.<br />
Okrem toho, zapamätanie si ur<strong>č</strong>itého priestorového vzťahu vo<strong>č</strong>i usporiadaným<br />
orienta<strong>č</strong>ným bodom nutne nevyžaduje presnejšie údaje ako napríklad totožnosť<br />
orienta<strong>č</strong>ných bodov, ich pozície alebo vzdialenosti od nich. Robot si však môže
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 8<br />
zapamätať príslušný prvotný senzorový údaj – to, ako vníma orienta<strong>č</strong>né body bez<br />
skuto<strong>č</strong>ného rozpoznania. Napríklad v prípade nasledovania steny, poznanie vzdialenosti<br />
od steny môže byť nahradené zapamätaním si hodnôt senzorov z nadzvukového pásma.<br />
Podobne môže byť nahradené aj poznanie vzdialeností k orienta<strong>č</strong>ným bodom a to<br />
zapamätaním si sietnicového obrazu týchto bodov pri pozícii cieľa (snapshots). Inými<br />
slovami, voľba vhodného kroku, ktorý povedie navigáciu nevyžaduje vnútorné<br />
priestorové zobrazenie. Zapamätaný senzorový stav nemá žiadny priestorový<br />
„význam“, preto nie je „zobrazením“ nijakého priestorového znaku v prostredí.<br />
Príslušný pohyb je zvolený z nesúladu medzi aktuálnym stavom senzorov a ich<br />
požadovaným stavom.<br />
Odteraz budeme hovoriť, že <strong>robot</strong> využíva navádzací typ naviga<strong>č</strong>nej stratégie<br />
vždy, keď je na dosiahnutie cieľa možné dostato<strong>č</strong>ne naplno využiť na senzor <strong>sa</strong><br />
vzťahujúce kritérium založené na zapamätanom senzorovom údaji. Na rozdiel od tohto,<br />
vyššie stupne naviga<strong>č</strong>ných stratégií, ktoré sú opí<strong>sa</strong>né ďalej, vyžadujú istý druh<br />
priestorového zobrazenia.<br />
2.4.2 Reakcia vyvolaná známym miestom<br />
Do<strong>sa</strong>hovanie cieľa a navádzacie stratégie <strong>sa</strong> týkajú lokálnej navigácie, keďže cieľ,<br />
maják alebo presné usporiadanie orienta<strong>č</strong>ných bodov musí byť vždy v okruhu<br />
vnímateľnom <strong>robot</strong>ovi. Nasledujúce naviga<strong>č</strong>né stratégie <strong>sa</strong> týkajú veľkoškálových<br />
prostredí a vyžadujú predstavu miesta. Na rozdiel od navádzania, kde sú miestami body,<br />
miesto vo veľkoškálovom prostredí definujeme ako množinu susediacich polôh, ktoré<br />
sú zhodné pri výbere kroku. Inými slovami, <strong>robot</strong> zvolí rovnaký hybný krok z každej<br />
polohy v rámci daného miesta. Miesto môže byť tiež definované ako množina polôh,<br />
z ktorých súbor orienta<strong>č</strong>ných bodov a ich usporiadanie sú vnímané rovnakým alebo<br />
veľmi podobným spôsobom. Ak je množina polôh senzorovo identická (z uhla pohľadu<br />
<strong>robot</strong>a), bude zvolený rovnaký pohyb. Tieto dve definície sú preto opera<strong>č</strong>ne rovnaké.<br />
Všimnime si, že identifikácia miesta musí byť závislá od uhlu pohľadu, t.z.,<br />
orientácie <strong>robot</strong>a.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 9<br />
1<br />
4<br />
X<br />
2<br />
R Y<br />
cieľ 1<br />
3<br />
orienta<strong>č</strong>ný bod<br />
referen<strong>č</strong>ný smer<br />
smer k danému cieľu<br />
trajektória vedúca<br />
do pozície X<br />
"miesto"<br />
cieľ 2<br />
cieľ 3<br />
Obr. 2.1: Robot musí najprv rozpoznať svoju pozíciu a orientáciu v<br />
rámci miesta (ozna<strong>č</strong>eného kružnicou) pred tým, než si zvolí ďalší<br />
smer svojho pohybu. Rozmiestnenie orienta<strong>č</strong>ných bodov mu môže<br />
poskytnúť údaje o pozícii – na ktorom mieste <strong>sa</strong> <strong>robot</strong> nachádza bez<br />
ohľadu na presné umiestnenie X v rámci miesta. Rozmiestnenie<br />
orienta<strong>č</strong>ných bodov môže tiež ur<strong>č</strong>ovať lokálne alebo náhodne zvolený<br />
referen<strong>č</strong>ný smer (napr. R), ktorý poskytne údaj o smere. Následný<br />
pohyb je zvolený na základe vzťahu medzi referen<strong>č</strong>ným smerom R a<br />
smerom k aktuálnemu cieľu (Y pre cieľ 1). Mierka je nerovnomerná –<br />
ciele a orienta<strong>č</strong>né body sú v skuto<strong>č</strong>nosti od seba ďalej.<br />
Pri tomto type navigácie <strong>sa</strong> stratégia do<strong>sa</strong>hovania poznaného, no práve<br />
neviditeľného cieľa <strong>robot</strong>a skladá z troch krokov (Obr. 2.1):<br />
1. rozpoznanie miesta, kde <strong>sa</strong> <strong>robot</strong> práve nachádza;<br />
2. zorientovanie <strong>sa</strong> v rámci tohto miesta;<br />
3. zvolenie smeru pohybu na dosiahnutie aktuálneho cieľa. Nie je tu žiadne<br />
plánovanie poradia následných pohybov, len výber kroku, ktorý okamžite<br />
nasleduje. Robot tak reaguje na situáciu veľmi neflexibilne. Toto nazývame<br />
reakcia vyvolaná známym miestom.<br />
Na základe predošlého skúmania môžeme aktuálne miesto spájať so zapamätaným<br />
smerom k cieľu z tohto miesta. Zvolenie smeru (v stratégii krok 3) <strong>sa</strong> môže udiať<br />
dvoma spôsobmi. Tento smer môžeme ur<strong>č</strong>iť pomocou „snímky“. Potom <strong>sa</strong> <strong>robot</strong> bude<br />
musieť oto<strong>č</strong>iť v zhode s aktuálnym sietnicovým obrazom snímky, ktorý ur<strong>č</strong>uje smer k<br />
cieľu. Táto naviga<strong>č</strong>ná stratégia nasmeruje <strong>robot</strong>a k danému cieľu. Na druhej strane<br />
môže byť zapamätaný smer k cieľu ur<strong>č</strong>ený s ohľadom na lokálne alebo náhodne<br />
zvolený referen<strong>č</strong>ný smer. Tento referen<strong>č</strong>ný smer môžeme ur<strong>č</strong>iť na základe<br />
priestorových stôp (podnetov, prekážok). Potom <strong>sa</strong> <strong>robot</strong> bude musieť oto<strong>č</strong>iť o ur<strong>č</strong>itý<br />
uhol daný na základe referen<strong>č</strong>ného smeru.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 10<br />
Takéto stratégie neflexibilných reakcií založených na lokálnom rozmiestnení stôp<br />
bude viesť <strong>robot</strong>a k ďalšiemu miestu, na ktorom môžu byť použité rovnaké stratégie.<br />
Ak <strong>robot</strong> vie, aký pohyb má z každého miesta urobiť, potom je schopný dosiahnuť cieľ<br />
sekvenciou úspešných trajektórií.<br />
Na tomto mieste si všimnime ako <strong>robot</strong> identifikuje miesta na základe lokálnych<br />
stôp a disponuje radou nemenných reakcií. Nemá však žiadne vnútorné zobrazenie<br />
vzťahov medzi aktuálnym miestom a inými miestami v prostredí. Z informácií, ktoré<br />
<strong>robot</strong> doteraz nadobudol však stále nemôže naplánovať svoju cestu, t.z., zobraziť<br />
celkovú dráhu z aktuálneho miesta k vzdialenému cieľu. Pretože pri každom kroku sú<br />
jeho vedomosti obmedzené len na ďalší krok, ktorý vykoná. Ak vykoná zvolený krok<br />
a tento krok ho povedie na nesprávne miesto napríklad kvôli prekážkam, <strong>robot</strong> nebude<br />
schopný dosiahnuť cieľ, ak nebude trošku blúdiť, nerozpozná ďalšie miesto a nepoužije<br />
tu tie isté reak<strong>č</strong>né stratégie (Obr. 2.2).<br />
Naviga<strong>č</strong>ný systém používa mapovanie miesta a cieľa na usmerňovanie krokov<br />
prostredníctvom ak<strong>č</strong>ného modelu [4]. Takéto mapovania budeme nazývať spojenia<br />
miesto-cieľ-krok.<br />
x<br />
x<br />
x<br />
x<br />
cieľ<br />
x<br />
x<br />
x<br />
x<br />
x<br />
miesto<br />
lokálny referen<strong>č</strong>ný smer<br />
smer k ďalšiemu subcieľu<br />
trajektória medzi za sebou<br />
idúcimi "vybranými bodmi"<br />
blúdivé správanie<br />
nová prekážka<br />
Obr. 2.2: Reakcia vyvolaná známym miestom umožňuje <strong>robot</strong>ovi<br />
pohybovať <strong>sa</strong> z miesta na miesto, ak <strong>robot</strong> pozná smer, ktorým <strong>sa</strong> z<br />
každého miesta vybrať. Ak <strong>sa</strong> stratí kvôli prekážkam musí napríklad<br />
blúdiť dovtedy, kým <strong>sa</strong> opäť nedostane na známe miesto.<br />
2.4.3 Topologická navigácia<br />
Jeden spôsob, akým <strong>sa</strong> môže <strong>robot</strong> dostať k cieľu bez toho, aby zablúdil –<br />
napríklad kvôli chybným smerom alebo prekážkam – zatiaľ <strong>č</strong>o <strong>sa</strong> bude riadiť<br />
naviga<strong>č</strong>nou stratégiou reakcia vyvolaná známym miestom, je vedieť predvídať následne
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 11<br />
prichádzajúce podnety, t.z., predvídať, na ktoré miesto <strong>sa</strong> ďalej pohne. Toto je typ<br />
asociácie Stimul-Reakcia-Stimul (S-R-S) a sekvenciu takýchto asociácií budeme<br />
nazývať cesta [29].<br />
Cesty sú jedna od druhej nezávislé a každá z nich vedie k jedine<strong>č</strong>nému cieľu.<br />
Neberie <strong>sa</strong> tu do úvahy, že dve rozli<strong>č</strong>né cesty by mohli viesť cez rovnaké miesta. V<br />
tomto zmysle je zobrazenie cesty jednoduchou nadstavbou toho, <strong>č</strong>o využíva naviga<strong>č</strong>ná<br />
stratégia reakcia vyvolaná známym miestom, t.z., ze ide o asociácie miesto-cieľ-krokmiesto,<br />
nie asociácie miesto-cieľ-krok. Navigácia by bola adaptívnejšia, keby bola<br />
priestorová navigácia nezávislá od cieľa, t.z., keby rovnaké priestorové zobrazenie<br />
mohlo byť využité pre iné ú<strong>č</strong>ely. Takýto výsledok môžeme získať spojením asociácií<br />
miesto-krok-miesto odvodených zo skupiny ciest (a tak upustiť od zobrazenia cieľu) s<br />
topologickým zobrazením prostredia. Ktorékoľvek miesto <strong>sa</strong> tak môže stať za<strong>č</strong>iatkom<br />
alebo cieľom cesty a v prípade prekážok môžu byť využité alternatívne križujúce <strong>sa</strong><br />
cesty.<br />
Pri tomto type navigácie môže <strong>robot</strong> nasledovať cesty alebo úseky ciest. V<br />
každom prípade však <strong>robot</strong> prechádza len navštívenými (pod)cestami. Toto nazývame<br />
topologická navigácia.<br />
Topologické zobrazenie môžeme vyjadriť matematickými termínmi ako je graf,<br />
kde uzly predstavujú miesta a okraje predstavujú susednosť alebo priamu prepojenosť.<br />
Dva uzly sú spojené, ak je prítomná predtým navštívená priama cesta, ktorá vedie z<br />
jedného príslušného miesta k druhému bez prechodu cez tretie známe miesto.<br />
Pri tomto type navigácie je stratégia do<strong>sa</strong>hovania známeho, no zatiaľ<br />
neviditeľného cieľa u <strong>robot</strong>a štvorstupňová (Obr. 2.3):<br />
1. rozpoznanie miesta, na ktorom <strong>sa</strong> <strong>robot</strong> práve nachádza;<br />
2. nájdenie príslušného uzla v topologickom grafe;<br />
3. hľadanie sekvencie uzlov (miest), cez ktoré treba prejsť na dosiahnutie cieľa;<br />
4. výsledná cesta je zreťazením úsekov prejdených ciest a <strong>robot</strong> ju môže<br />
nasledovať, aj keď daný úsek ešte nikdy predtým neprešiel.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 12<br />
S1<br />
S1<br />
S2<br />
S2<br />
G2<br />
A<br />
G1<br />
G1<br />
G1<br />
B<br />
G2<br />
S3<br />
G2<br />
(a) množina ciest<br />
do cieľov G1 a G2<br />
miesto<br />
Obr. 2.3a: Pri stratégii reakcia vyvolaná známym miestom <strong>sa</strong> môže<br />
vyskytnúť súbor križujúcich <strong>sa</strong> ciest. Robot je schopný prejsť od<br />
miesta S1 ku G1, z S2 ku G2 a z S3 ku G1. Ak <strong>sa</strong> však na ceste z S1<br />
ku G1 vyskytne prekážka, ako na obrázku, <strong>robot</strong> <strong>sa</strong> stratí, pretože<br />
cesta z S1 ku G1 je jedine<strong>č</strong>ná (viď tiež Obr. 2.2).<br />
A<br />
G1<br />
G1<br />
B<br />
G2<br />
S3<br />
G2<br />
smer pohybu k<br />
dosiahnutiu cieľa<br />
nová prekážka<br />
(b) topologická reprezentácia<br />
odvodená z ciest<br />
miesto<br />
Obr. 2.3b: Ak <strong>robot</strong> spojí svoje zobrazenia ciest v topologické<br />
zobrazenie, môže <strong>sa</strong> vrátiť späť na miesto A, prejsť pod-cestou medzi<br />
miestami A a B, a tak prejsť pod-cestou z miesta B k cieľu G1.<br />
Výsledná dráha je potom zreťazením troch pod-úsekov odvodených z<br />
troch rozli<strong>č</strong>ných ciest.<br />
smer cesty medzi<br />
dvoma susednými<br />
miestami<br />
nová prekážka<br />
Dostávame zobrazenie niektorých priestorových (topologických) vzťahov medzi<br />
miestami. Hlavný výsledok spo<strong>č</strong>íva v tom, že <strong>robot</strong> si naplánuje celú postupnosť miest,<br />
ktoré navštívi. Aby túto postupnosť nasledoval, <strong>robot</strong> si pomôže vygenerovaním rady<br />
príkazov pre stratégiu reakcia vyvolaná známym miestom tak, že každé nasledujúce<br />
miesto (uzol) ozna<strong>č</strong>í ako (pod)cieľ.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 13<br />
2.4.4 Metrická navigácia<br />
Tri predchádzajúce stupne naviga<strong>č</strong>ných stratégií umožňujú <strong>robot</strong>ovi úspešne <strong>sa</strong><br />
dopraviť k cieľovým miestam, hoci nie vždy optimálnymi cestami. Príslušné údaje totiž<br />
nemôžu byť použité na výpo<strong>č</strong>et alebo naplánovanie nových dráh, konkrétne na okľuky<br />
popred nepredvídané prekážky, ani na skratky. Tu „okľuky“ a „skratky“ znamenajú<br />
metrické okľuky a metrické skratky. Dva prototypy príkladov ilustrujú reakcie, ktoré<br />
predchádzajúce naviga<strong>č</strong>né stratégie neboli schopné vykonať (Obr. 2.4).<br />
Prvý príklad: dajme tomu, že <strong>robot</strong> za<strong>č</strong>ína v mieste A a náhle narazí na novú stenu<br />
v mieste B, no plánoval pokra<strong>č</strong>ovať na druhú stranu: z miesta D na E (Obrázok 2.4a).<br />
Musí obísť prekážku, napríklad tak, že nasleduje túto stenu až kým ju neprejde (miesto<br />
C) a potom ju nasleduje po druhej strane. Presná pozícia miesta D na druhej strane steny<br />
z miesta B <strong>sa</strong> nedá rozpoznať vizuálne, pretože stena prekáža vo výhľade na príslušné<br />
orienta<strong>č</strong>né body. Robot potrebuje poznať vzdialenosť pozdĺž steny – dĺžku okľuky (B-<br />
C-D). Tu je potrebná integrácia dráhy 2 . Tiež tu neberieme do úvahy prípad, kedy môžu<br />
byť orienta<strong>č</strong>né body pre miesto E vnímané z miesta C, <strong>č</strong>iže v tomto prípade <strong>robot</strong><br />
nemusí dokon<strong>č</strong>iť svoju okľuku, ale môže ísť skratkou – za pomoci navádzacej stratégie<br />
– z C ku E.<br />
Druhý príklad: dajme tomu, že <strong>robot</strong> za<strong>č</strong>ína z miesta A a potrebuje ísť na druhú<br />
stranu „le<strong>sa</strong>“ na miesto C, ktoré pozná, no nevidí ho z miesta, na ktorom <strong>sa</strong> práve<br />
nachádza – z miesta B (Obrázok 2.4b). Robot taktiež pozná omnoho dlhšiu cestu z<br />
miesta B na miesto C, okolo „le<strong>sa</strong>“. Na základe tohto poznatku <strong>sa</strong> <strong>robot</strong> pokúsi<br />
odhadnúť správny smer cez „les“ a pôjde skratkou. Robot na to potrebuje poznať<br />
relatívnu orientáciu medzi miestami a keď už bude v „lese“, nemusí <strong>sa</strong> priblížiť k<br />
orienta<strong>č</strong>ným bodom miesta B ani miesta C.<br />
2 Integrácia dráhy je schopnosť <strong>robot</strong>a odhadnúť aktuálnu pozíciu vo vzťahu k poznanej štartovacej<br />
pozícii vypo<strong>č</strong>ítaním dislokácie pomocou integrácie rýchlosti a smeru, t.z., výhradne pomocou využitia<br />
údajov získaných po ceste [25]. Tento proces <strong>sa</strong> tiež nazýva hrubý odhad polohy (dead-reckoning).
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 14<br />
nová stena<br />
E<br />
D<br />
B<br />
A<br />
okľuka<br />
C<br />
"les"<br />
predtým neprejdený región<br />
B<br />
A<br />
(a) (b)<br />
C<br />
D<br />
skratka<br />
Obr. 2.4: Reakcie (a) Metrická okľuka a (b) Metrická skratka. V<br />
oboch prípadoch <strong>robot</strong> pôjde cestou, ktorou predtým ešte nikdy nešiel,<br />
bez použitia známych orienta<strong>č</strong>ných bodov (nová stena je privysoká a<br />
les veľmi hustý). Všimnime si (a), <strong>robot</strong> by v podstate mohol ísť<br />
priamo z miesta C na miesto E. Takto by vyzeral ná<strong>č</strong>rt metrickej<br />
skratky.<br />
známa,<br />
ale príliš<br />
dlhá cesta<br />
Metrické údaje – vzdialenosti a uhly medzi miestami – spolu s predchádzajúcimi<br />
topologickými údajmi <strong>sa</strong> takto stávajú potrebnou požiadavkou na vytvorenie nových<br />
ciest, akými sú metrické okľuky a metrické skratky. Otázkou zostáva, ako musí <strong>robot</strong> s<br />
týmito údajmi naložiť, aby získal potrebné inštrukcie a vedel <strong>sa</strong> týchto ciest držať. Z<br />
pohľadu výpo<strong>č</strong>tu, vzdialenosť a uhol v súradnicovom rámci môžeme vyjadriť vektorom<br />
a naviga<strong>č</strong>ný systém by mal byť schopný previesť od<strong>č</strong>ítanie vektoru a zo známych ciest<br />
AB a AC tak dostať novú cestu BC. Voľba pohybu je preto výsledkom niektorých<br />
deduktívnych úvah.<br />
Z funk<strong>č</strong>ného uhla pohľadu by <strong>robot</strong> mohol použiť vnútornú metrickú mapu<br />
prostredia – hoci je stále kontroverzné, <strong>č</strong>i zvieratá takúto mapu naozaj používajú.<br />
Preto budeme hovoriť, že <strong>robot</strong> zúžitkuje metrickú naviga<strong>č</strong>nú stratégiu zakaždým,<br />
keď úspešne zdolá cestu z jedného miesta na druhé cez prechod novými miestami,<br />
nezávisle od doteraz prejdených ciest, t.z., keď realizuje metrické okľuky a skratky.<br />
2.5 Zhrnutie<br />
Hoci Gallistel [9] pre navigáciu definuje podmienky ako sú získavanie,<br />
spracovávanie a uchovávanie „geometrických vzťahov medzi bodmi, priamkami a<br />
plochami, ktoré ur<strong>č</strong>ujú makroskopický tvar prostredia <strong>robot</strong>a“, z predchádzajúcich úvah<br />
je jasné, že uvedené štyri typy naviga<strong>č</strong>ných stratégií v skuto<strong>č</strong>nosti nevyžadujú<br />
získavanie, spracovávanie a uchovávanie všetkých priestorových údajov, ktoré sú v<br />
prostredí dostupné.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 15<br />
Tabuľka 2.1 poskytuje stru<strong>č</strong>ný prehľad porovnania štyroch stupňov naviga<strong>č</strong>ných<br />
stratégií podľa troch kritérií:<br />
(a) štruktúra údajov a ob<strong>sa</strong>hu<br />
(b) proces voľby pohybu<br />
(c) zásoba možných reakcií naviga<strong>č</strong>nej stratégie<br />
Prvý stupeň naviga<strong>č</strong>nej stratégie zahŕňa zmyslové údaje (porovnávanie<br />
zmyslových údajov zapamätaných pri cieli s prichádzajúcimi údajmi). Druhý stupeň<br />
vyžaduje údaje o orienta<strong>č</strong>ných bodoch, ako napríklad ich identita a priestorové<br />
usporiadanie v rámci egocentrického obrazu, ako tiež schopnosť ur<strong>č</strong>iť lokálny smerový<br />
údaj. No neexistujú tu žiadne údaje o vzájomných priestorových vzťahoch medzi<br />
rozli<strong>č</strong>nými miestami. Naproti tomu, tretí a štvrtý stupeň kódujú niektoré typy<br />
vzájomných priestorových vzťahov medzi miestami, t.z., topologické alebo metrické<br />
údaje.<br />
Často <strong>sa</strong> však využívajú kombinácie týchto stratégií. Napríklad, nová cesta<br />
vypo<strong>č</strong>ítaná metrickou naviga<strong>č</strong>nou stratégiou môže viesť cez nepredvídateľné ale<br />
rozpoznateľné miesto. Keď <strong>sa</strong> <strong>robot</strong> už ocitne na tomto známom mieste, môže si zvoliť<br />
ísť známou cestou, ktorá už bola vypo<strong>č</strong>ítaná topologickou naviga<strong>č</strong>nou stratégiou,<br />
pretože to môže byť bezpe<strong>č</strong>nejšie než pokra<strong>č</strong>ovať po neznámej ceste. Po<strong>č</strong>as cesty môže<br />
<strong>robot</strong> náhle zbadať cieľ, ktorý bol pred cestou skrytý a následne využiť navádzaciu<br />
stratégiu namiesto toho, aby pokra<strong>č</strong>oval predtým ur<strong>č</strong>enou cestou. Túto druhú reakciu by<br />
sme mohli považovať za metrickú skratku vypo<strong>č</strong>ítanú z plánovanej cesty k cieľu<br />
pomocou novej trajektórie, no v našej terminológii je to jednoducho oportunistické<br />
správanie, vyplývajúce zo vzájomného pôsobenia rozli<strong>č</strong>ných naviga<strong>č</strong>ných stratégií.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 16<br />
Stratégia Uložené priestorové údaje Procedúra Charakteristika<br />
1 Navádzanie Identita usporiadaných orienta<strong>č</strong>ných<br />
bodov.<br />
Pôvodný stav senzorových vstupov<br />
2 Reakcia vyvolaná známym<br />
miestom<br />
pri pozícii cieľa.<br />
Usporiadania orienta<strong>č</strong>ných bodov definujú<br />
miesta.<br />
Lokálny smerový rámec pre každé<br />
miesto.<br />
Smer pohybu, ktorý vedie k cieľu<br />
z každého miesta.<br />
3 Topologická navigácia Rada usporiadaní orienta<strong>č</strong>ných bodov,<br />
ktoré sú prepojené topologickými<br />
vzťahmi.<br />
4 Metrická navigácia Rada usporiadaní orienta<strong>č</strong>ných bodov,<br />
ktoré sú prepojené metrickými<br />
vzťahmi.<br />
Minimalizuje nevhodné spojenie<br />
vnímaného usporiadania a zapamätaného<br />
usporiadania.<br />
Sebalokalizovanie rozpoznaním<br />
aktuálneho miesta, ktoré už bolo<br />
navštívené.<br />
Orientovanie vo vzťahu k miestu.<br />
Hľadanie úsekov miest, ktoré sú<br />
spojené prejdenými cestami<br />
z aktuálneho miesta k cieľu.<br />
Plánovanie trajektórie, na ktorej<br />
budú využité stratégie nižšieho<br />
stupňa. Výsledná cesta nemusí<br />
byť prejdená.<br />
Tab. 2.1: Porovnanie naviga<strong>č</strong>ných stratégií<br />
Lokálna navigácia.<br />
Len v prípade, že je dostupné priame<br />
vnímanie.<br />
Hľadanie cesty.<br />
Typ správania: Stimul-Reakcia<br />
Hľadanie cesty.<br />
Typ správania: Stimul-Reakcia-<br />
Stimul.<br />
Topologické okľuky (výber cesty).<br />
Hľadanie cesty.<br />
Metrické okľuky, metrické skratky,<br />
originalita ciest.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 17<br />
3 Neurónové mapy<br />
Neurónové mapy (v predchádzajúcej kapitole spomenuté pod pojmom kognitívne<br />
mapy) sú dôležitými štrukturálnymi komponentami mozgu. Vyskytujú <strong>sa</strong> v skoro<br />
všetkých senzorických (napr. retinotektálna mapa, sluchová mapa) a motorických (napr.<br />
superior colliculus) moduloch. Ďalším bežne používaným pojmom sú kortikálne mapy<br />
(cortical maps), ktoré <strong>sa</strong> nachádzajú v mozgovej kôre. Okrem toho, že neurónové mapy<br />
sú biologické modely, používajú <strong>sa</strong> tiež ako prostriedky na reprezentáciu pri riešení<br />
praktických problémov. Nasledovne berieme do úvahy neurónovú mapu ako<br />
zobrazovacie médium.<br />
3.1 Mapovanie<br />
„Neurónová mapa je lokalizovaným neurónovým zobrazením signálov z<br />
vonkajšieho sveta“ [1]. Takýmito signálmi môžu byť vstupné signály (senzorické<br />
vstupy) alebo výstupné signály (motorické ovládanie). Dajme tomu, že X je<br />
(viacrozmerný) signálový priestor vo vonkajšom svete. Ďalej, F bude sieť neurónov<br />
(alebo filtrov), nazvané neurónové pole F. Potom je neurónová mapa jednoduché<br />
izomorfické mapovanie Ψ z X do F (Ψ: X→F), ktoré mapuje signály v X do (vstupov)<br />
neurónov v F a naopak. O aktivovaných neurónoch v F môžeme uvažovať ako o<br />
výstupnom signále mapy. Ak rozšírime vyššieuvedenú definíciu, signálový priestor X<br />
môže byť výstupom ďalšej mapy, a tak môžu byť definované vrstvy máp. Obrázok 3.1<br />
ukazuje zjednodušený konceptuálny nákres neurónovej mapy.<br />
Ψ<br />
F<br />
Obr. 3.1: Koncept neurónovej mapy<br />
Neurónové mapy <strong>sa</strong> zvyknú radiť do dvoch kateórií: topografické a funkcionálne<br />
(alebo výpo<strong>č</strong>tové) mapy. Prvá kategória <strong>sa</strong> týka prípadu, kedy je mapovanie založené na<br />
X
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 18<br />
priestorovom topografickom usporiadaní medzi X a F. Biologické príklady zahrňujú<br />
somatosenzorickú kôru a sietnicu, pri ktorých <strong>sa</strong> mapovanie zakladá poprvé na<br />
umiestnení hmatového stimulu na pokožke, podruhé na umiestnení svetelného stimulu<br />
v oku. Na druhej strane, funkcionálna mapa <strong>sa</strong> týka prípadu, kedy je mapovaný<br />
signálový priestor založený na atribútových alebo funkcionálnych hodnotách signálov.<br />
Ako príklad v tomto prípade môže poslúžiť primárna vizuálna kôra, kde <strong>sa</strong> mapovanie<br />
zakladá na orientácii stimulu.<br />
V príncípe <strong>sa</strong> mapovanie neobmedzuje na nejaký ur<strong>č</strong>itý typ, rovnaký signál môže<br />
byť mapovaný na viacerých neurónoch a viaceré signály môžu byť mapované na<br />
jednom neuróne. Zvy<strong>č</strong>ajne býva priestor X spojitým priestorom, zatiaľ <strong>č</strong>o neurónové<br />
pole F <strong>sa</strong> skladá z kone<strong>č</strong>ného po<strong>č</strong>tu neurónov. Pri veľkom po<strong>č</strong>te neurónov <strong>sa</strong> F môže<br />
pokladať za neurónové výpo<strong>č</strong>tové kontinuum 3 .<br />
Najzaujímavejší prípad je také mapovanie, kde v skuto<strong>č</strong>nosti Ψ kategorizuje<br />
vstupné signály [12]. Obmedzené inverzné mapovanie<br />
−1<br />
<br />
Ψ () i pripíše jeden<br />
“prototypový” signál x i k neurónu i, známeho ako centrum (pole) vnímania. Skuto<strong>č</strong>né<br />
inverzné mapovanie Ψ -1 bude vracať celú podoblasť Xi signálového priestoru, ktorý<br />
korešponduje do neurónum i, známeho ako pole vnímania neurónu. Formálne zapí<strong>sa</strong>né,<br />
Xi = {x є X : Ψ (x) = i}. V tomto prípade <strong>sa</strong> polia vnímania dvoch rozli<strong>č</strong>ných neurónov<br />
nemôžu prekrývať. Vo všetkých prípadoch však izomorfizmus vyžaduje, aby<br />
zjednotenie centier vnímania zahŕňalo aj signálový priestor X. Existuje niekoľko<br />
spôsobov ako formálne definovať takéto mapovanie. Amari navrhuje súbor vektorov<br />
synaptických ú<strong>č</strong>inností si (váh), jeden vektor pre každý neurón, t.z., že pre daný signál<br />
xєX je vstup neurónu i skalárnym sú<strong>č</strong>inom (dot product) si a x mínus nejaká odchýlka<br />
(bias) [1]. V skuto<strong>č</strong>nosti slúži vektor siєX ako referen<strong>č</strong>ný vektor pre neurón i a vnútorný<br />
(skalárny) sú<strong>č</strong>in si×x je merítkom toho, ako blízko je x ku si, ktoré ak prekro<strong>č</strong>í istú<br />
hrani<strong>č</strong>nú hodnotu (bias) následne vybudí neurón i [15]. Všimnime si, že takéto<br />
mapovanie definuje topografické usporiadanie neurónov v F v signálnom priestore X a<br />
to v tom zmysle, že neurón i bude vybudený všetkými signálmi v susedstve svojho<br />
referen<strong>č</strong>ného vektoru.<br />
3<br />
Spojitý nepriestorový celok, rozmer alebo poradie, v ktorom žiadna <strong>č</strong>asť nie je jednozna<strong>č</strong>ne rozlíšiteľná<br />
od susednej <strong>č</strong>asti.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 19<br />
Niekedy si môžeme neurónovú mapu predstaviť omnoho jednoduchšie –<br />
pomocou priameho fyzického topografického usporiadania neurónov v F v signálovom<br />
priestore X. Biologický príklad pochádza z vizuálneho systému, kde fyzické<br />
topografické usporiadanie fotoreceptorov v sietnici (F) ur<strong>č</strong>uje ako na nich (Ψ) bude<br />
zmapované projektované svetlo (X).<br />
3.2 Základné vlastnosti<br />
Existuje niekoľko typických vlastností neurónovej mapy, z ktorých už niektoré<br />
boli spomenuté. Ostatné vlastnosti, ktoré si zaslúžia špeciálnu pozornosť, budeme<br />
osobitne zvažovať ďalej.<br />
Pole vnímania neurónu v F <strong>sa</strong> definuje ako podmnožina signálového priestoru X,<br />
ktorý tento konkrétny neurón excituje. Veľkosť poľa vnímania je závislá od rozlišovacej<br />
schopnosti mapy, ktorá je mierou diskretizácie X na F. Neurónová mapa je zvy<strong>č</strong>ajne<br />
usporiadaná tak, že najfrekventovanejšie a najdôležitejšie oblasti signálov v X sú na F<br />
projektované s vyšším rozlíšením. Inými slovami, rozloženie neurónov v X nie je<br />
rovnomerné, ale v kritických miestach v X <strong>sa</strong> nachádza viac neurónov. Toto <strong>sa</strong> nazýva<br />
amplifika<strong>č</strong>ná (zosilňovacia) vlastnosť neurónovej mapy (pozri tiež Obr. 3.2).<br />
Tu vzniká otázka, <strong>č</strong>i je mapa statická alebo dynamická. Je mapovanie statické a<br />
od <strong>č</strong>asu nezávislé alebo <strong>sa</strong> dynamicky v <strong>č</strong>ase mení vzhľadom na signálovú históriu?<br />
Biologický dôkaz skôr poukazuje na ten druhý prípad a vlastnosť <strong>sa</strong>moorganizácie (viď<br />
kapitola 3.5) neurónových máp bola dokázaná vo vzťahu k dynamickým<br />
<strong>sa</strong>moorganizujúcim pravidlám, najznámejšie z nich sú od Kohonena [15].<br />
Najvýraznejšia funkcia neurónových máp, ktorá ich odlišuje od klasických (napr.<br />
feed-forward) modelov neurónových sietí a iných techník ako je vektorová<br />
kvantifikácia, je vlastnosť zachovania susedstva. Vzťahy susednosti, ktoré existujú<br />
medzi podobnými signálmi v X <strong>sa</strong> na základe týchto vzťahov rozmnožujú medzi<br />
podobnými neurónmi v F [12].<br />
Vzájomné prepojenia medzi neurónmi v F, ktoré vyjadrujú podobnosť medzi<br />
referen<strong>č</strong>nými vektormi prepojených neurónov [33], definujú dynamické správanie<br />
neurónového poľa F. V tomto kontexte je dôležitým aspektom stabilita vo vzťahu k<br />
dynamickej evolúcii F, ktorý <strong>sa</strong> chápe ako vektor všetkých neurónových aktivácií.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 20<br />
3.3 Zachovanie susedstva<br />
Ako už bolo spomenuté, topologické usporiadanie neurónov v signálovom<br />
priestore (definovanom neurónovou mapou) nie je ľubovoľné, ale podobné signály <strong>sa</strong><br />
mapujú na podobných neurónoch. Táto vlastnosť prináša problém podobnosti. Čo to<br />
znamená, že dva signály sú podobné alebo ako je definované susedstvo signálu?<br />
V prípade topografických neurónových máp <strong>sa</strong> podobnosť definuje podľa<br />
geometrickej blízkosti signálov. Na druhej strane, v prípade funkcionálnych máp, je<br />
podobnosť definovaná fun<strong>č</strong>knou blízkosťou signálov. V každom prípade je možné<br />
definovať rozli<strong>č</strong>nú metriku, ktorá presnejšie ur<strong>č</strong>uje stupeň podobnosti. Podobnosť<br />
neurónovových polí <strong>sa</strong> definuje podľa sily spojení medzi neurónmi. Čím vyššia je sila<br />
spojenia, tým podobnejšie sú neuróny.<br />
Vlastnosť zachovania susedstva pramení z faktu, že podobné signály <strong>sa</strong> mapujú na<br />
podobných neurónoch, a tak zachovávajú vzťah susednosti. Inak povedané, podobnosť<br />
dvoch neurónov je v súlade s podobnosťou ich prototypových vektorov.<br />
3.4 Neurónové pole<br />
Neurónové pole F <strong>sa</strong> skladá zo siete neurónov. Veľký po<strong>č</strong>et neurónov a bohatý<br />
vzor laterálnych prepojení nám umožňuje vidieť F ako neurónové výpo<strong>č</strong>tové<br />
kontinuum. Následne tak jednotlivé aktivácie neurónov, ak <strong>sa</strong> na ne pozeráme z tejto<br />
perspektívy, definujú aktiva<strong>č</strong>ný povrch na F, ktorý vystupuje ako výsledok distribúcie<br />
centier vnímavého poľa v X a vzoru laterálnych prepojení [26]. Z tohto pohľadu <strong>sa</strong><br />
neurónová mapa správa ako výpo<strong>č</strong>tový model, ktorý transformuje vzory výpo<strong>č</strong>tovo<br />
náro<strong>č</strong>ným spôsobom.<br />
Definovaná dynamika vytvára dynamické správanie aktiva<strong>č</strong>ného povrchu, ktorý<br />
<strong>sa</strong> v <strong>č</strong>ase jemne mení a je schopný previesť rozmanité operácie ako sú difúzia, disperzia<br />
alebo konvekcia. V celkovom správaní neurónovej mapy takto laterálne prepojenia a<br />
interakcie zohrávajú kľú<strong>č</strong>ovú úlohu. Tu vzniká otázka, <strong>č</strong>i sú tieto prepojenia vopred<br />
ur<strong>č</strong>ené alebo vznikajú v procese <strong>sa</strong>moorganizácie (pre lepšie vysvetlenie pojmu<br />
<strong>sa</strong>moorganizácia viď nasledujúcu kapitolu).<br />
Po<strong>č</strong>iato<strong>č</strong>ný výskum [1, 2] <strong>sa</strong> zaoberal pevnými laterálnymi interakciami vo forme<br />
lokálnej excitácie a vzdialenej inhibície, ktorá sledovala dvojrozmerný profil mexického<br />
klobúka (mexican-hat). Vä<strong>č</strong>šina úsilia v rámci týchto riadkov predpokladá, že vnútro-
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 21<br />
kôrové interakcie sú zredukované na dvojrozmerný systém. Posledné trendy [25, 26] <strong>sa</strong><br />
však sústreďujú na interakcie, ktoré vyplývajú z aplikovania <strong>sa</strong>moorganizovania na<br />
ľubovoľnú po<strong>č</strong>iato<strong>č</strong>nú prepojenosť vo forme Hebbovho u<strong>č</strong>enia [30]. Je zaujímavé, že<br />
interakcie „mexický klobúk“ <strong>sa</strong> vyvinuli ako výsledok takéhoto u<strong>č</strong>iaceho procesu, ako<br />
<strong>sa</strong> spomína v [24].<br />
Vo všetkých prípadoch, konkurencia (inhibi<strong>č</strong>né interakcie) a kooperácia<br />
(excita<strong>č</strong>né interakcie) zohrávajú veľmi dôležitú rolu pri stabilite a presnosti aspektov<br />
aktivácií neurónového poľa [AmAr82].<br />
3.5 Samoorganizácia<br />
Dynamická organizácia je dôležitá vlastnosť neurónovej mapy. Amari tvrdí, že<br />
„zvrásnená (biologická) mapa je formovaná pod vedením genetickej informácie v<br />
inicializa<strong>č</strong>nej fáze vývoja, ale je modifikovaná a uhladená následnou<br />
<strong>sa</strong>moorganizáciou“ [Amar89]. Inými slovami, mapovanie je <strong>sa</strong>monastavovacie v tom<br />
zmysle, že odzrkadľuje závislosti vo vnútri signálového priestoru a závislosti v<br />
neurónovom poli s cieľom vytvoriť reprezentáciu, ktorá je ďalej vhodná pre systém.<br />
Tento proces je známy ako formovanie mapy [33] alebo <strong>sa</strong>moorganizovanie [15].<br />
Obrázok 3.2 ukazuje jednoduchý príklad formovania mapy.<br />
Algoritmus u<strong>č</strong>enia nemá informáciu o požadovaných aktivitách výstupných<br />
neurónov v priebehu trénovania. Špecifickou <strong>č</strong>rtou <strong>sa</strong>moorganizovania je to, že (pri<br />
splnení istých podmienok) umožňuje realizovať zobrazenie zachovávajúce topológiu<br />
a zobraziť tak charakteristické príznaky (<strong>č</strong>rty) trénovacej množiny dát. Za týmto ú<strong>č</strong>elom<br />
sú neuróny zoradené v pravidelnej, zvä<strong>č</strong>ša dvojrozmernej alebo jednorozmernej<br />
štruktúre (mriežka alebo reťaz). Takto uvažované usporiadanie neurónov predstavuje<br />
výstupný priestor, v ktorom vzdialenosť dvoch neurónov je oby<strong>č</strong>ajne daná euklidovskou<br />
vzdialenosťou vektorov ich súradníc v uvažovanej štruktúre. Zobrazenie zachovávajúce<br />
topológiu, ktoré vznikne po natrénovaní SOM (z angl. Self-Organizing Map), má<br />
dôležitú vlastnosť: ľubovoľné dva vzory blízke vo vstupnom priestore spôsobujú v sieti<br />
odozvy na neurónoch, ktoré sú tiež fyzicky blízke (vo výstupnom priestore).
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 22<br />
Obr. 3.2: Horná trojica obrázkov znázorňuje tri rôzne množiny<br />
vstupných dát. Trénovacie vektory tvoria súradnice bodov v rovine,<br />
t.j., (x,y). Spodná trojica obrázkov znázorňuje váhy všetkých 20x20<br />
neurónov SOM po natrénovaní. Váhy susedných neurónov sú spojené<br />
<strong>č</strong>iarou.<br />
Bolo navrhnutých viacero <strong>sa</strong>moorganizovacích pravidiel pre modely neurónových<br />
máp. Najvýznamnejším je návrh Teuvo Kohonena [15], modifikovaný vo viacerých<br />
variáciách. Vä<strong>č</strong>šina z nich, po<strong>č</strong>as formovania mapy, smeruje k transformácii distribúcie<br />
signálov v X na rovnomernú distribúciu na F. Iné pravidlo, navrhnuté Ojom [30], je<br />
založené na Hebbovom u<strong>č</strong>iacom algoritme a po<strong>č</strong>as formovania mapy organizuje mapu<br />
takým spôsobom, ktorý odráža hlavné komponenty distribúcie signálu v X na F.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 23<br />
4 Návrh a implementácia riešenia plánovania cesty<br />
pomocou neurónových máp<br />
Predchádzajúce kapitoly vo všeobecnosti pojednávali o navigácii a neurónových<br />
mapách. Stále však ostáva nezodpovedaná hlavná <strong>č</strong>asť úlohy tejto diplomovej práce,<br />
ako riešiť plánovanie cesty mobilného <strong>robot</strong>a pomocou neurónových máp.<br />
Vä<strong>č</strong>šia <strong>č</strong>asť výskumov, ktoré študujú aplikácie neurónových sietí pri navigácii, je<br />
zameraná na dopredné siete. Tieto spracúvajú u<strong>č</strong>itý druh senzorického vstupu a ďalej<br />
interpretujú do špecifickej <strong>č</strong>innosti agenta. Mapovanie priestoru je založené na nejakom<br />
predchádzajúcom u<strong>č</strong>ení a zovšeobecnení schopností siete. Neexistuje žiadna vnútorná<br />
reprezentácia prostredia a preto je nevyhnutné kompenzovať to iným, symbolicky<br />
založeným komponentom.<br />
Prinajmenšom je však z tohto dôvodu potrebné vysvetliť základné pojmy z oblasti<br />
subsymbolickej umelej inteligencie o neurónových sieťach, ktoré tvoria stavebný prvok<br />
pri návrhu riešenia navigácie pojednávanej v tejto práci. Ako <strong>sa</strong> ďalej dozvieme, bude<br />
<strong>sa</strong> jednať o implementáciu rekurentnej neurónovej siete Hopfieldovho typu, ktorá <strong>sa</strong><br />
svojimi charakteristickými vlastnosťami zdá pre riešenie problému mapovania<br />
prostredia optimálna a za použitia vhodnej naviga<strong>č</strong>nej procedúry môže namapovaná<br />
informácia viesť k posta<strong>č</strong>ujúcim výsledkom pri cielenej navigácii.<br />
4.1 Neurónové siete<br />
Neurónové siete <strong>sa</strong> podľa toho, akým spôsobom sú v nich navzájom prepojené<br />
neuróny, delia na dva základné typy:<br />
• Feed-forward (dopredné) siete, medzi ktoré patria napríklad viacvrstvové<br />
perceptróny, majú štruktúru, ktorá dovoľuje usporiadať neuróny do<br />
niekoľkých vrstiev tak, aby všetky prepojenia v sieti viedli od neurónu v<br />
nižšej vrstve smerom k neurónu v niektorej z vyšších vrstiev, nikdy však nie<br />
naopak. Sieť teda prenáša vstupný signál postupne cez všetky sieťové vrstvy<br />
smerom k výstupu. Tomuto procesu hovoríme dopredné šírenie signálu v<br />
neurónovej sieti [34].<br />
• Rekurentné siete (siete so spätnou väzbou) sú zovšeobecnením feed-forward<br />
sietí. Dovoľujú prepojenia medzi neurónmi v oboch smeroch a dokonca<br />
prepojenie neurónu <strong>sa</strong>mého so sebou. Tým <strong>sa</strong> komplikuje úloha hľadania
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 24<br />
vhodných u<strong>č</strong>iacich algoritmov. Tieto majú vä<strong>č</strong>šinou oveľa vä<strong>č</strong>šie <strong>č</strong>asové a<br />
pamäťové nároky ako algoritmy na u<strong>č</strong>enie feed-forward sietí. Rekurentné siete<br />
sú však svojou štruktúrou prispôsobené na vytvorenie lepšej vnútornej<br />
reprezentácie vstupných údajov a na uchovávanie svojich predošlých stavov, z<br />
<strong>č</strong>oho vyplýva ich schopnosť prostredníctvom spätného šírenia signálu<br />
adaptovať <strong>sa</strong> aj na zložitejšie úlohy, než aké je možné riešiť pomocou sietí s<br />
feed-forward architektúrou [17, 34].<br />
4.1.1 Klasifikácia rekurentných neurónových sietí<br />
Okrem všeobecnej klasifikácie neurónových sietí [34] rozdeľujeme rekurentné<br />
siete podľa niekoľkých ďalších kritérií.<br />
Prvým z nich je stupeň využitia spätných prepojení v sieťovej architektúre,<br />
pri<strong>č</strong>om rozlišujeme siete na:<br />
• plne rekurentné - najvšeobecnejší typ rekurentných sietí, dovoľuje úplné<br />
vzájomné prepojenie všetkých neurónov v sieti ako aj <strong>sa</strong>mo-prepojenia<br />
(prepojenia neurónov <strong>sa</strong>mých so sebou);<br />
• <strong>č</strong>iasto<strong>č</strong>ne rekurentné - tieto siete ob<strong>sa</strong>hujú okrem vä<strong>č</strong>šieho množstva<br />
dopredných prepojení aj malú množinu spätných prepojení, ktoré sú volené<br />
tak, aby zostali zachované niektoré vlastnosti typické pre feed-forward siete.<br />
Čiasto<strong>č</strong>ne rekurentné siete môžeme považovať za podmnožinu plne rekurentných<br />
sietí, ak chýbajúce spätné prepojenia nahradíme prepojeniami s konštantnými váhami<br />
wij=0. Preto všetky u<strong>č</strong>iace algoritmy pre plne rekurentné siete môžeme použiť aj pre<br />
siete s <strong>č</strong>iasto<strong>č</strong>nou rekurenciou.<br />
Podľa toho, v akom vzájomnom vzťahu sú prepojenia medzi dvoma neurónmi v<br />
sieti, delíme rekurentné siete na tie, ktoré majú:<br />
• symetrické prepojenia - pre každú dvojicu neurónov i a j platí, že prepojenie z<br />
neurónu i do neurónu j má vždy rovnakú váhu ako prepojenie opa<strong>č</strong>né, teda<br />
wij=wji;<br />
• nesymetrické prepojenia - nie je splnená podmienka symetrie prepojení medzi<br />
dvoma neurónmi v sieti, prepojenia môžu mať ľubovoľné váhy.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 25<br />
Pre siete, ktoré nemajú symetrické prepojenia, nie je zaru<strong>č</strong>ený ich prechod do<br />
stabilného stavu (situácia, keď <strong>sa</strong> stav siete nemení), zatiaľ <strong>č</strong>o siete, ktoré spĺňajú<br />
podmienku symetrie, vždy tento stabilný stav dosiahnu.<br />
Posledným kritériom je charakter signálov, ktoré vstupujú do siete. Podľa neho<br />
rozoznávame siete, ktoré majú:<br />
• diskrétny vstup - vstupné hodnoty sú nezávislé na <strong>č</strong>ase - nazývame ich tiež<br />
statickými veli<strong>č</strong>inami, v každom <strong>č</strong>asovom kroku je na vstup siete podaná<br />
jedna množina vstupných hodnôt, ktorá je nahradená inou množinou až pri<br />
prechode na ďalší krok;<br />
• spojitý vstup - vstupný signál je spojitá veli<strong>č</strong>ina, ktorá je funkciou <strong>č</strong>asu, mení<br />
<strong>sa</strong> teda neustále po<strong>č</strong>as práce siete.<br />
Pre siete so spojitým vstupom je veľmi dôležitý spôsob, akým je reprezentovaný<br />
<strong>č</strong>as a veli<strong>č</strong>iny, ktoré sú na ňom závislé.<br />
4.1.2 Základná výpo<strong>č</strong>tová jednotka – neurón<br />
Neurón je základná výpo<strong>č</strong>tová jednotka, ktorá je stavebným prvkom rekurentných<br />
neurónových sietí. Neurón i je charakterizovaný vstupným vektorom ϒ , vektorom váh<br />
Wi, odchýlkou vstupu θi (ďalej bias), vstupom siete ui, aktiva<strong>č</strong>nou funkciou Φ(•) a jeho<br />
výstupom vi. Vstup ϒ je váhovaný Wi a pri<strong>č</strong>ítaný k bias-u θi, <strong>č</strong>ím <strong>sa</strong> vytvára skalár ui,<br />
ktorý prechádza nelinárnou funkciou Φ(•) ešte predtým, ako dostaneme výstup vi<br />
neurónu i (viď Obr. 4.1) Formálne, vstup siete je definovaný ako<br />
kde n je dimenzia vstupu a vektora váh.<br />
n<br />
i = i×ϒ + i = ij j + i<br />
j=<br />
1<br />
u () t W () t θ () t ∑ w v θ () t<br />
(4.1)<br />
(W) i<br />
i<br />
Obr. 4.1: Základná nelineárna výpo<strong>č</strong>tová jednotka - neurón<br />
u i<br />
( )<br />
v i
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 26<br />
Aktiva<strong>č</strong>ná funkcia Φ(•) môže nadobúdať niekoľko foriem, zvy<strong>č</strong>ajne to je<br />
nelineárna rastúca funkcia. Môže to byť jednotková (alebo Heavisideova) funkcia<br />
⎧1<br />
x > 0<br />
Θ ( x)<br />
=⎨<br />
⎩0<br />
x ≤ 0<br />
v prípade ktorej máme neurón s diskrétnymi stavmi {0, 1}. Ak použijeme sign funkciu<br />
⎧+<br />
1 x > 0<br />
sign( x)<br />
= ⎨<br />
⎩−1<br />
x ≤ 0<br />
(4.2)<br />
(4.3)<br />
výstup je diskrétny, ale so stavmi {-1, 1}. Neurón, kde hodnota spadá do intervalu [0, 1]<br />
alebo [-1, 1], môžeme získať použitím sigmoidálnej (alebo logistickej) funkcie<br />
resp. Hyperbolickej tangent funcie<br />
1<br />
gx ( )<br />
1 e − =<br />
+<br />
e − e<br />
tanh( x)<br />
=<br />
e + e<br />
x<br />
x − x<br />
x − x<br />
(4.4)<br />
(4.5)<br />
Potom Φ(x) = Φβ(x) = g(βx) alebo Φ(x) = Φβ(x) = tanh(βx), kde parameter β determinuje<br />
najstrmší sklon Φ(x). Inverznosťou β, T=1/β, <strong>sa</strong> zvy<strong>č</strong>ajne odvoláva ako na teplotný<br />
parameter. Keď vezmeme do úvahy<br />
sign( x) = 2 Θ( x) − 1, tanh( x) = 2 g(2 x)<br />
− 1<br />
(4.6)<br />
tak neurón so stavmi {0, 1} (alebo [0, 1]) môže byť ľahko transformovaný do stavu<br />
{-1, 1} (alebo [-1, 1]) a naopak. V limite β → ∞ <strong>sa</strong> analógový neurón stáva diskrétny.<br />
4.1.3 Dynamika<br />
Zmena výstupu neurónu i v <strong>č</strong>ase je definovaná dynamikou systému. Čiarkovaná<br />
šípka na obrázku (Obr. 4.1) vyzna<strong>č</strong>uje miesto <strong>č</strong>asovania. McCulloghove a Pittsove [21]<br />
pravidlo dynamiky, obvykle použité v Hofieldovej sieti, má pre dynamiku v diskrétnom<br />
<strong>č</strong>ase nasledujúci tvar:<br />
n ⎛ ⎞<br />
vi( t+ 1) =Φ ( ui()) t =Φ ( Wi×ϒ () t + θi()) t =Φ ⎜∑ wijvj() t + θi()<br />
t ⎟ (4.7)<br />
⎝ j=<br />
1<br />
⎠<br />
Dynamika v spojitom <strong>č</strong>ase z hladiska zmeny vi v <strong>č</strong>ase je formulovaná ako nelineárna<br />
diferenciálna rovnica:
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 27<br />
n<br />
dvi () t<br />
⎛ ⎞<br />
=Φ( ui()) t − vi() t =Φ ( Wi×ϒ () t + θi()) t − vi() t =Φ ⎜∑ wijvj() t + θi()<br />
t ⎟−vi()<br />
t (4.8)<br />
dt<br />
⎝ j=<br />
1<br />
⎠<br />
4.2 Hopfieldova neurónová sieť<br />
Hopfieldova sieť so svojím u<strong>č</strong>iacim algoritmom patrí do triedy plne rekurentných<br />
sietí s binárnym vstupom, trénovaných bez dozoru. Po prvýkrát ju popí<strong>sa</strong>l J. J. Hopfield<br />
[13, 14] v roku 1982. Pracuje ako asociatívna pamäť, ktorej úlohou je uchovávať ur<strong>č</strong>ité<br />
vzory a rekonštruovať nekompletný alebo poškodený vstup tak, aby skonvergoval k<br />
jednému z týchto vzorov.<br />
Obr. 4.2: Jednoduchá Hopfieldova sieť so 6-timi neurónmi (ini=ui, oui=vi pre i=1,…,6)<br />
Každý neurón v sieti je prepojený so všetkými ostatnými neurónmi, pri<strong>č</strong>om<br />
prepojenia sú symetrické, to znamená, že wij = wji. Žiaden neurón však nemá prepojenie<br />
<strong>sa</strong>mého so sebou, teda wii=0.<br />
Spojenie neurónov s kladnou váhou je excita<strong>č</strong>né, naproti tomu inhibi<strong>č</strong>né spojenie<br />
predstavuje záporná váha. Neuróny <strong>sa</strong> môžu nachádzať v dvoch stavoch - jeden z nich<br />
je charakterizovaný aktiva<strong>č</strong>nou hodnotou +1 a druhý aktiva<strong>č</strong>nou hodnotou -1. Stav iteho<br />
neurónu ozna<strong>č</strong>íme vi. Teda platí vi = ±1.<br />
Aktiva<strong>č</strong>ná hodnota (stav) každého neurónu je daná vzťahom<br />
n ⎛ ⎞<br />
vi =Φ ( hi) =Φ⎜∑ wijuj −θi⎟<br />
(4.9)<br />
⎝ j=<br />
1 ⎠
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 28<br />
kde hi je celkový vstup do i-teho neurónu a u1,...,un sú vstupné hodnoty neurónov, ktoré<br />
spolu tvoria vstupný vektor u = (u1,...,un), pri<strong>č</strong>om platí, že ui = ±1. Pre Hopfieldovu sieť<br />
budeme používať aktiva<strong>č</strong>nú funkciu Φ(u)=sign(u) – tvrdé ohrani<strong>č</strong>enie (4.3). Vektor<br />
aktiva<strong>č</strong>ných hodnôt (stavov) všetkých neurónov v=(v1,...,vn) tvorí stav siete.<br />
Pre jednoduchosť pridáme do siete dodato<strong>č</strong>ný neurón s konštantným výstupom -1,<br />
takže ďalej môžeme uvažovať prahové hodnoty θi = 0 a vzťah (4.9) napí<strong>sa</strong>ť v tvare<br />
n ⎛ ⎞<br />
vi =Φ⎜∑ wijuj⎟ (4.10)<br />
⎝ j=<br />
0 ⎠<br />
Práca siete spo<strong>č</strong>íva v tom, že stavy neurónov v <strong>č</strong>ase t sú opäť použité na vstupe<br />
siete v <strong>č</strong>ase t+1, takže u ( t+ 1) = v ( t)<br />
a teda sieť v každom <strong>č</strong>asovom kroku upravuje<br />
stavy neurónov podľa pravidla<br />
i i<br />
n n<br />
⎛ ⎞ ⎛ ⎞<br />
vi( t+ 1) =Φ ⎜ wijuj t+ 1 ⎟=Φ⎜ wijvj t ⎟<br />
⎝ j= 0 ⎠ ⎝ j=<br />
0 ⎠<br />
∑ ( ) ∑ ( )<br />
(4.11)<br />
až kým <strong>sa</strong> stav siete nezmení v dvoch po sebe nasledujúcich krokoch, teda nastane<br />
rovnosť<br />
v () t = v ( t+ 1) = v<br />
(4.12)<br />
i i i<br />
potom tento stav siete v=(v1,...,vn) nazývame stabilným stavom. Aktiva<strong>č</strong>né hodnoty<br />
(stavy) vi neurónov po konvergencii tvoria výstup siete, teda i i v ϒ = .<br />
Všetky vektory ϒ ( t) = ( v1( t), v2( t),..., vn( t))<br />
, ku ktorým skonverguje sieť, ak na jej<br />
vstup podávame rôzne vektory u=(u1,...,un), nazývame exemplárnymi vzormi siete. Pre<br />
každý exemplárny vzor teda platí po do<strong>sa</strong>dení (4.12) do rovnice (4.11), že<br />
4.2.1 Energetická funkcia<br />
n ⎛ ⎞<br />
vi =Φ⎜∑ wijvj⎟ (4.13)<br />
⎝ j=<br />
0 ⎠<br />
V každom <strong>č</strong>asovom okamihu môžeme definovať celkovú energiu siete pomocou<br />
energetickej funkcie<br />
1<br />
E = E() v =− ∑∑ wijvv i j<br />
(4.14)<br />
2<br />
i j
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 29<br />
pri<strong>č</strong>om úlohou siete je dosiahnuť stav s <strong>č</strong>o najmenšou energiou. Energetická funkcia E<br />
je funkcia n premenných v1,...,vn a do<strong>sa</strong>huje na svojom defini<strong>č</strong>nom obore lokálne<br />
maximá a minimá. Bolo pritom dokázané [13], že funkcia E do<strong>sa</strong>huje svoje lokálne<br />
minimá práve pre vektory u, ktoré sú exemplárnymi vzormi siete. Podmienka<br />
konvergencie siete k exemplárnemu vzoru a podmienka dosiahnutia lokálneho minima<br />
energetickej funkcie E sú teda ekvivalentné.<br />
Chceme ukázať, že sieť pomocou pravidla (4.11) mení stavy neurónov tak, že<br />
postupne znižuje svoju celkovú energiu. V každom <strong>č</strong>asovom kroku <strong>sa</strong> energia siete<br />
zmení o hodnotu ∆E, pri<strong>č</strong>om<br />
( ( 1)<br />
) ( ( ) )<br />
∆ E = Et+ 1 − Et = E v t+ − E v t =<br />
1 1<br />
=− ∑∑wv ij i( t+ 1) vj( t+ 1) + ∑∑wv<br />
ij i( tv ) j ( t)<br />
=<br />
2 i j 2 i j<br />
1<br />
=− ∑∑w<br />
⎡ ij vi( t+ 1) vj( t+ 1) −vi()<br />
t vj() t ⎤<br />
2<br />
⎣ ⎦<br />
i j<br />
(4.15)<br />
Nech v danom <strong>č</strong>asovom kroku prejde neurón k zo stavu vk(t) do stavu vk(t+1) = -<br />
vk(t), stavy ostatných neurónov <strong>sa</strong> pritom nemenia, teda vi(t+1) = vi(t) pre i ≠ k. Potom<br />
(4.15) môžeme ďalej upraviť<br />
1 1<br />
∆ E=− ∑w ⎡ kj ( 1) ( 1) () () ( 1) ( 1) () ()<br />
2 ⎣vkt+ vjt+ −vkt vjt ⎤<br />
⎦− ∑∑w<br />
⎡ ij<br />
2 ⎣vit+ vjt+ − vit vjt ⎤<br />
⎦=<br />
j i≠k j<br />
1 1<br />
=− ∑w ⎡ kj k( 1) j( 1) k() j() ij i() j() i() j()<br />
2 ⎣v t+ v t+ −v t v t ⎤<br />
⎦−∑∑w ⎡v t v t v t v t<br />
j 2 ⎣ − ⎤<br />
⎦=<br />
i≠k j<br />
(4.16)<br />
1 1<br />
=− ∑ wkjvj[ vk( t+ 1) −vk( t) ] − 0 =− [ vk( t+ 1) −vk(<br />
t)<br />
] ∑wv<br />
kj j ( t)<br />
=<br />
2 j<br />
2<br />
j<br />
1<br />
=− [ vk( t+ 1) −vk(<br />
t) ] hk( t)<br />
2<br />
Pre zmenu energie siete pri prechode neurónu k zo stavu vk(t) do stavu vk(t+1)<br />
teda platí<br />
1<br />
∆ E =− [ vk( t+ 1) − vk( t) ] hk( t)<br />
(4.17)<br />
2<br />
Keďže vk(t+1)=-vk(t), upravíme (4.17) do kone<strong>č</strong>nej podoby<br />
∆ E = v () t h () t<br />
(4.18)<br />
k k
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 30<br />
Rozlíšime dva prípady:<br />
(1) vk(t) = -1 vk(t) = -1 ⇒ vk(t+1) = Φ(hk(t)) = sign(hk(t)) = 1 ⇒ hk(t) ≥ 0<br />
vk(t) = -1 & hk(t) ≥ 0⇒ ∆E = vk(t)hk(t) ≤ 0<br />
(2) vk(t) = 1 vk(t) = 1 ⇒ vk(t+1) = Φ(hk(t)) = sign(hk(t)) = -1 ⇒ hk(t) < 0<br />
vk(t) =-1 & hk(t) < 0⇒ ∆E = vk(t)hk(t) < 0<br />
Vidíme teda, že ∆E ≤ 0 v oboch prípadoch, <strong>č</strong>o znamená, že každá zmena stavu<br />
neurónu podľa pravidla (4.11) vedie k zníženiu celkovej energie siete. Keďže si sú<br />
diskrétne veli<strong>č</strong>iny vi = ±1, po kone<strong>č</strong>nom po<strong>č</strong>te krokov sieť dosiahne lokálne minimum,<br />
<strong>č</strong>o je ekvivalentné s tým, že skonverguje k niektorému exemplárnemu vzoru.<br />
4.2.2 Nastavenie váh prepojení<br />
Ak chceme dosiahnuť, aby si Hopfieldova sieť zapamätávala ur<strong>č</strong>ité vzory,<br />
musíme nájsť spôsob, ako nastaviť váhy wij na príslušné hodnoty tak, aby sieť vždy<br />
skonvergovala k jednému z týchto vzorov.<br />
Ak má sieť uchovávať jeden vzor u = (u1,...,un), nastavíme váhy prepojení na<br />
hodnoty<br />
w<br />
ij<br />
⎧uu<br />
i j ak i≠ k<br />
= ⎨<br />
⎩0<br />
ak i = k<br />
(4.19)<br />
Úlohou je dokázať, že pre sieť s takto nastavenými váhami je vektor u jej<br />
exemplárnym vzorom. Musí teda platiť rovnosť (4.13). Ak do jej pravej strany<br />
do<strong>sa</strong>díme za wij (4.19), dostaneme<br />
⎛ ⎞ ⎛ ⎞ ⎛ 2⎞ ⎛ 2⎞<br />
∑wu ij j ∑uuu i j j ui∑( uj) signui∑( uj)<br />
Φ ⎜ ⎟=Φ ⎜ ⎟=Φ ⎜ ⎟= ⎜ ⎟=<br />
⎝ j ⎠ ⎝ j ⎠ ⎝ j ⎠ ⎝ j ⎠<br />
⎛ 2 ⎞<br />
∑(<br />
)<br />
= sign( ui) sign⎜ u j ⎟=<br />
sign( ui).1= ui<br />
⎝ j ⎠<br />
a teda vektor u je exemplárnym vzorom siete s váhami wij nastavenými podľa (4.19).<br />
(4.20)<br />
Ak má sieť uchovávať m vzorov uk=(u1k,...,unk), kde k=1,...,m, nastavíme váhy<br />
prepojení podľa pravidla<br />
m<br />
⎧1<br />
k k<br />
⎪ ∑ uu i j ak i≠ k<br />
wij = ⎨n k = 1<br />
(4.21)<br />
⎪<br />
⎩0<br />
ak i = k
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 31<br />
Sieť s takto nastavenými váhami pri dodržaní istých podmienok uchováva vzory<br />
u k a správne rozpoznáva nekompletné alebo poškodené vstupné vektory.<br />
4.2.3 Zovšeobecnený algoritmus pre Hopfieldovu sieť<br />
1. krok: Priradenie váh prepojeniam<br />
⎧1<br />
w n<br />
m<br />
k k<br />
⎪ ∑ i j ≠<br />
ij = ⎨ k = 1<br />
⎪ 0<br />
=<br />
⎩<br />
uu ak i k<br />
ak i k<br />
2. krok: Inicializácia siete neznámym vstupným vzorom u=(u1,...,un); vi(0)= ui, kde<br />
vi(0) je stav i-teho neurónu v <strong>č</strong>ase t=0<br />
3. krok: Iterácia, kým sieť neskonverguje<br />
n ⎛ ⎞<br />
vi( t+ 1) =Φ⎜∑ wijvj() t ⎟<br />
⎝ j=<br />
0 ⎠<br />
opakujeme pre t=0,1,..., až pokiaľ neplatí v ( t+ 1) = v ( t) = v a teda sieť<br />
skonvergovala.<br />
4. krok: Ohodnotenie výstupného vektora i i v ϒ = .<br />
4.2.4 Obmedzenia siete<br />
i i i<br />
Hopfieldova sieť má niekoľko základných obmedzení, ktoré podmieňujú jej<br />
schopnosť plniť úlohu asociatívnej pamäti. Prvým je obmedzenie po<strong>č</strong>tu vzorov, ktoré je<br />
sieť schopná uchovávať. Bolo dokázané [3], že ak máme sieť pozostávajúcu z n<br />
neurónov, pre po<strong>č</strong>et exemplárnych vzorov m platí ohrani<strong>č</strong>enie m ≤ 0.15*n na to, aby<br />
vstupné vzory boli správne rozoznané s pravdepodobnosťou 0.99. Táto nerovnosť platí<br />
pre siete s veľkým po<strong>č</strong>tom neurónov.<br />
Ďalšou podmienkou je, aby vzájomná korelácia (súvzťažnosť) vzorov potrebných<br />
na uchovanie bola <strong>č</strong>o najmenšia alebo žiadna. Mierou korelácie dvoch vzorov a, b môže<br />
byť<br />
1<br />
1<br />
n<br />
u = ∑ ab i i<br />
(4.22)<br />
n i=<br />
Z tejto rovnosti vyplýva, že u∈〈-1,1〉. Ak u je blízke 0, hovoríme, že korelácia<br />
medzi vzormi a a b je malá.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 32<br />
Ďalšou mierou korelácie je funkcia<br />
n 1<br />
h= ∑ ai − bi<br />
(4.23)<br />
2<br />
i=<br />
1<br />
ktorá <strong>sa</strong> tiež nazýva Hammingova vzdialenosť a nadobúda hodnoty z intervalu 〈0,n〉.<br />
Pritom koreláciu medzi vzormi považujeme za malú, ak hodnota h je blízko (1/2)*n.<br />
Po<strong>č</strong>as práce Hopfieldovej siete môže tiež dôjsť k situácii, keď sieť opakovane<br />
prechádza medzi dvoma stavmi, ktoré majú rovnakú hladinu energie, <strong>č</strong>o zabraňuje<br />
konvergencii. Tento jav <strong>sa</strong> nazýva oscilácia siete.<br />
4.3 Plánovanie cesty pomocou neurónových máp<br />
Uvažujme <strong>robot</strong>ického agenta R a priestor C, v ktorom <strong>sa</strong> <strong>robot</strong> nachádza. Istý<br />
vonkajší zdroj (napr. senzorický systém) neustále poskytuje informácie o prostredí.<br />
Pomocou vhodného mapovania <strong>sa</strong> tieto informácie dajú použiť na aktualizáciu stavu<br />
priestoru agenta. Treba poznamenať, že takéto mapovanie nie je vždy <strong>sa</strong>mozrejmé<br />
a závisí na forme a možnostiach zdroja. Za predpokladu, že mapovanie je zabezpe<strong>č</strong>ené,<br />
musí prebehnúť istá operácia v rámci C, ktorá ur<strong>č</strong>í cestu, ktorú by mal <strong>robot</strong> sledovať,<br />
aby dosiahol cieľ.<br />
V domnienke dosiahnutia cieľa a teda hľadania optimálnej cesty <strong>sa</strong> táto úloha zdá<br />
byť vhodná na aplikáciu kognitívnej mapy. Zmyslové (senzorické) informácie (X) <strong>sa</strong><br />
pomocou neurónového mapovania (Ψ) mapujú na neurónové pole (F), ktoré následne<br />
poskytuje riešenie pre problém plánovania cesty, ktorý <strong>sa</strong> zakladá na vlastných<br />
dynamických interakciách. Bez ďalších informácií o vonkajších vstupoch nemôžeme<br />
definovať mapovanie Ψ, i keď Ψ môže vyplynúť zo <strong>sa</strong>moorganiza<strong>č</strong>ného procesu alebo<br />
z detailnej analýzy návrhára.<br />
Predpokladajme, že Ψ je nejakým spôsobom definované. Cieľom je s údajmi<br />
mapovanými na poli F zostrojiť naviga<strong>č</strong>nú mapu v rámci C pomocou poľovej aktivácie,<br />
odkiaľ môžno vhodnou technikou (mimo mapy) zostrojiť cestu. Prezentovaná metóda<br />
v tejto práci ukazuje teoretický prístup použitý v <strong>práca</strong>ch [10,11]. Aplikácia je taktiež<br />
rozšírením publikovaného <strong>č</strong>lánku [38] o experimenty, vykonané na simulátore, ktorý<br />
bol vytvorený v priestoroch Labolatória umelej inteligencie v Centre pre inteligentné<br />
technológie, <strong>TU</strong> <strong>Košice</strong>.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 33<br />
4.3.1 Subsystém pre plánovanie cesty<br />
Subsystém agenta na riešenie problému plánovania cesty reprezentovaný na tomto<br />
obrázku (Obr. 4.3) pozostáva z dvoch hlavných komponentov. Menovite je to<br />
Hopfieldova neurónová sieť a konštruktor cesty.<br />
Vstup do systému prichádza z hypotetických modulov, ktoré poskytuje senzorický<br />
vstup (pozície prekážok), cieľová pozícia a sú<strong>č</strong>asná pozícia. Hybnosť siete vytvára<br />
rovnovážny stav plochy, ktorý je závislý na polohe prekážok a cieľa. Potom, priamym<br />
použitím konštruktora <strong>sa</strong> rozhoduje o ďalšom pohybe agenta.<br />
Vnímanie<br />
(senzorický vstup)<br />
Cieľová pozícia Aktuálna pozícia<br />
Kognitívna mapa<br />
Hopfieldova<br />
neurónová sieť<br />
v stabilnom stave<br />
Rovnovážny stav<br />
(stabilita siete)<br />
Konštruktor cesty<br />
Subsystém plánovania cesty<br />
Obr. 4.3: Architektúra subsystému plánovania cesty pomocou<br />
kognitívnej mapy<br />
4.3.2 Kognitívna mapa<br />
Akcia<br />
Uvažujme Hopfieldovu neurónovú sieť s n neurónmi. Neuróny sú usporiadané v<br />
d-dimenzionálnej mriežke (d je dimenzia C), homogénne rozloženej nad priestorom<br />
agenta. Rozloženie mriežky nech nám slúži ako diskrétna, topologicky usporiadaná<br />
reprezentácia priestoru C. Topológia usporiadania a vzájomné prepojenie neurónov<br />
môže byť rôzne. Obrázok (Obr. 4.4) znázorňuje štyri alternatívy pre d=2 (pri<br />
implementácii návrhu riešenia budeme ďalej uvažovať alternatívu topológie b na tomto<br />
obrázku). Každý neurón i korešponduje do podmnožiny Ci z C a zjednotenie všetkých<br />
Ci pokrýva C. Všetky pozície vo vnútri Ci sú reprezentované (alebo korešpondujú s)<br />
neurónom i. Ďalej, uvažujme len tieto diskrétne pozície mriežky a odvolávajme <strong>sa</strong> na ne<br />
ako na neurónové pole F 4 .<br />
4 Tu si treba uvedomiť, že výpo<strong>č</strong>tové nedostatky nám neumožňujú veľmi mohutný po<strong>č</strong>et neurónov, preto<br />
F nemôžeme pokladať za výpo<strong>č</strong>tové kontinuum.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 34<br />
Obr. 4.4: Rôzne topológie siete a prepojenia neurónov v 2-d priestore.<br />
Spojenia v sieti sú krátkeho do<strong>sa</strong>hu, symetrické a excita<strong>č</strong>né bez sebaprepojení.<br />
Každý neurón i je spojený s podmnožinou neurónov v jeho susedstve NHi (z angl.<br />
výrazu neighborhood). NHi má tvar hypersféry do<strong>sa</strong>hu r v neurónovom poli F s<br />
koncentráciou na neurón i. Sila spojenia wij medzi neurónmi i a j je funkciou<br />
Euklidovskej vzdialenosti p(i,j) medzi neurónmi v F:<br />
w = f( p( i, j))<br />
(4.24)<br />
ij<br />
Funkcia f(x) definuje susedstvo a váhy v F. Je to zvy<strong>č</strong>ajne kla<strong>sa</strong>júca funkcia a môže<br />
nadobúdať niekoľko foriem. Niektoré z nich vyzerajú nasledovne (γ je kladné reálne<br />
<strong>č</strong>íslo) a sú zobrazené na obrázku (Obr. 4.5) pre r=5.<br />
⎧1<br />
ak 0<<br />
x ≤r<br />
f( x)<br />
= ⎨<br />
⎩0<br />
ak x = 0 alebo x > r<br />
⎧1<br />
⎪ ak 0 < x ≤r<br />
f( x) = ⎨ x<br />
⎪<br />
⎩0<br />
ak x = 0 alebo x > r<br />
2<br />
⎧ −γ<br />
x<br />
< ≤<br />
⎪e<br />
ak 0 x r<br />
f( x)<br />
= ⎨<br />
⎪⎩ 0 ak x = 0 alebo x > r<br />
(4.25)<br />
(4.26)<br />
(4.27)
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 35<br />
r r r<br />
Obr. 4.5: Váha ako funkcia vzdialenosti<br />
Pre každú dvojicu neurónov i a j, ak j je v NHi, potom i je v NHj a naopak, platí,<br />
že prepojenie z neurónu i do neurónu j má vždy rovnakú váhu ako prepojenie opa<strong>č</strong>né,<br />
teda wij=wji, p(i,j)=p(j,i), t.z., prepojenia sú symetrické. Z tohto dôvodu je kritérium pre<br />
znižovanie energie siete v <strong>č</strong>ase uspokojivé.<br />
Majme vyššie uvedené zdiskretizované pole F. Nech pozícia agenta korešponduje<br />
s jedným neurónom siete, budeme mu hovoriť neurón agenta, pozície prekážok do<br />
podmnožiny neurónov Ci, neuróny prekážok a cieľová pozícia do jedného neurónu siete,<br />
cieľový neurón. Prepokladané moduly poskytujú informáciu o každej jednej z<br />
diskrétnych pozícií, <strong>č</strong>i už je ob<strong>sa</strong>dená nejakou prekážkou alebo to je cieľ. Tieto<br />
informácie môžeme považovať za tvz. pole vnímania agenta. Po vhodnom zmapovaní<br />
vstup θi(t) pre neurón i je daný<br />
⎧+<br />
∞ i je cieľový neurón v <strong>č</strong>ase t<br />
⎪<br />
θi<br />
(t)= ⎨−∞<br />
i je prekážkový neurón v <strong>č</strong>ase t<br />
⎪<br />
⎩0<br />
inak<br />
(4.28)<br />
kde nekone<strong>č</strong>no je prakticky nejaká vysoká hodnota. Dôsledkom tohoto je, že cieľový<br />
neurón bude maximálne aktivovaný, nezávisle od hodnoty ostatných neurónov.<br />
Podobne, hodnota všetkých prekážkových neurónov bude minimálna. Pre všetky ostatné<br />
neuróny (vrátane neurónu agenta) hodnota nie je ovplyvňovaná priamo externým<br />
vstupom. Celkový vstup ui do neurónu i je daný<br />
ui() t = ∑ wijvj() t + θi()<br />
t<br />
(4.29)<br />
j∈NHi Hodnota vi neurónu i je absolútne <strong>č</strong>íslo v intevale [0, 1]. Hodnota 1 znamená, že<br />
neurón je maximálne aktivovaný, kým hodnota 0 indikuje deaktivovaný neurón.<br />
Nelineárna aktiva<strong>č</strong>ná funkcia Ф(x) by mala byť 0 pre záporné alebo nulové aktivácie a
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 36<br />
monotónne narastajúca pre kladné vstupy siete, nasýtením do 0 a 1 resp. pre limity -∞ a<br />
+∞. Príklad takejto funkcie zobrazenej na obrázku (Obr. 4.6) je nasledovný<br />
⎧0<br />
x ≤ 0<br />
Φ β ( x)<br />
=⎨<br />
⎩tanh(<br />
β x) x><br />
0<br />
Obr. 4.6: Nelineárna aktiva<strong>č</strong>ná funkcia<br />
Nasledujúcu aproximáciu možno taktiež použiť ako alternatívu.<br />
⎧0<br />
β x ≤ 0<br />
⎪<br />
Φ ' β ( x) = ⎨βx<br />
0< βx<<br />
1<br />
⎪<br />
⎩1<br />
β x ≥1<br />
(4.30)<br />
(4.31)<br />
Celková hodnota stavu je daná stavovým vektorom ϒ ( t) = ( v1( t), v2( t),..., v ( t))<br />
a všetky<br />
jeho možné hodnoty ur<strong>č</strong>ujú fázový priestor S tohoto systému.<br />
4.3.3 Evolúcia siete<br />
Uvažujme statické prostredie, kde nie sú žiadne prekážky a nie je špecifikovaný<br />
cieľ. Potom extrený vstup je nula, za predpokladu, že v sieti nie je predchádzajúca<br />
aktivácia, stav siete bude i naďalej nula. Predpokladajme, že je špecikovaný nejaký cieľ.<br />
Toto má za následok, že cieľový neurón bude maximálne aktivovaný, táto aktivácia <strong>sa</strong><br />
prenesie na jeho susedné neuróny, pri<strong>č</strong>om šírenie aktivácie prechádza na ďalšie<br />
neuróny. Konvergencie schopnosť zabezpe<strong>č</strong>í, že systém dosiahne vo fázovom priestore<br />
stav stability.<br />
n
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 37<br />
Teraz uvažujme, že nejaké neuróny sú špecifikované ako prekážkové neuróny. Pri<br />
šírení aktivácie <strong>sa</strong> budú chovať ako hrani<strong>č</strong>né body, pri<strong>č</strong>om aktivácia <strong>sa</strong> môže rozširovať<br />
okolo týchto neurónov cez ne-prekážkové neuróny. Prekážkové neuróny si potom<br />
môžme predstaviť akoby v sieti neboli prítomné. Po nejakom <strong>č</strong>ase <strong>sa</strong> systém opäť<br />
dostane do rovnovážneho stavu; prítomnosť prekážok a teda „absencia“<br />
korešpondujúcich neurónov v sieti bude ovplyvňovať len <strong>č</strong>as konvergencie. Nakoniec,<br />
je nápomocné myslieť na cieľový neurón ako na zdroj vĺn, ktoré <strong>sa</strong> rozširujú okolo siete<br />
vo všetkých možných smeroch, bez prechodu cez prekážky, až pokiaľ <strong>sa</strong> nedosiahne<br />
stabilný stav.<br />
Otázka je, <strong>č</strong>i tento stabilný atraktor (cieľ) je unikátny za predpokladu, že externý<br />
vstup ostáva konštantný a systém je inicializovaný do nejakého ľubovolného<br />
po<strong>č</strong>iato<strong>č</strong>ného stavu. Pre tento ú<strong>č</strong>el je dôležité, aby stav atraktoru bol unikátny z<br />
jednoduchého dôvodu: pre danú kombináciu externých vstupov chceme vytvoriť<br />
unikátnu cestu, ktorá je priamou funkciou stabilného stavu systému. Toto môže byť<br />
dosiahnuté len a len vtedy ak energetická funkcia je striktne konvexná, neexistujú<br />
lokálne minimá a prítomnosť jediného minima je globálne. Môžme to považovať za<br />
pravdu ak všetky charakteristické <strong>č</strong>ísla matice spojitosti W (matica aktivácií neurónov)<br />
sú záporné. V prípade, že sú nejaké kladné, posta<strong>č</strong>ujúca podmienka je [11]<br />
1<br />
β < (4.32)<br />
λ<br />
kde β je najstrmší sklon aktiva<strong>č</strong>nej funkcie a λmax je najkladnejšie charakteristické <strong>č</strong>íslo<br />
v matici spojitosti W. Z inej perpektívy, <strong>č</strong>ím ďalej <strong>sa</strong> nachádza šírená aktivácia od<br />
svojho zdroja, tým ostrejšie táto podmienka stupňovito tlmí aktiva<strong>č</strong>nú vlnu (šírenie<br />
aktivácie).<br />
Podmienka konvergencie pre paralelné dynamiky v diskrétnom <strong>č</strong>ase [11]<br />
max<br />
1<br />
β < , λ = max{| λmin |,| λmax<br />
|}<br />
(4.33)<br />
λ<br />
kde β je najstrmší sklon aktiva<strong>č</strong>nej funkcie, λmin je najzápornejšie charakteristické <strong>č</strong>íslo<br />
v matici spojitosti W a λmax je najkladnejšie charakteristické <strong>č</strong>íslo, zaru<strong>č</strong>uje, že bude<br />
dosiahnutý unikátny stabilný stav v každom prípade.<br />
Keďže sieť pri danej kombinácii externých vstupov konverguje do hodnoty<br />
unikátneho atraktora, musí pre sieť existovať unikátny stav i keď nie sú dané explicitné
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 38<br />
externé vstupy, t.j., keď všetky neuróny sú nulové. Taktiež, pokiaľ je prítomný cieľový<br />
neurón, prekážkové neuróny nemôžu mať vplyv na evolúciu systému; sú jednoducho<br />
deaktivované. Pri absencii ceľového neurónu nezáleží na po<strong>č</strong>te prekážkových neurónov,<br />
sú<strong>č</strong>asný stav bude v nejakom ľubovolnom, a stav systému bude <strong>č</strong>asom nulový.<br />
4.3.4 Konštruktor cesty<br />
Modul konštruktora cesty prijíma ako vstup sieť v stabilnom stave a taktiež<br />
buduje optimálnu cestu. Jeho funkcia je vcelku jednoduchá. Je daná sú<strong>č</strong>asná pozícia<br />
agenta, potom, ďalší krok v ceste je zmenou z pozície prislúchajúceho neurónu agenta<br />
do pozicie prislúchajúcej susediacemu neurónu. Tento neurón je potom smerový s<br />
najvyšším gradientom s rešpektom na rovnováhu siete. Tento proces <strong>sa</strong> opakuje s novou<br />
pozíciou ako sú<strong>č</strong>asný stav až pokiaľ nenastane žiadny pohyb, t.z., až kým nebude<br />
dosiahnutý cieľový bod. Po tomto itera<strong>č</strong>nom procese je ideálna cesta zkonštruovaná. Ak<br />
i a j sú dva susediace neuróny potom gradient smeru z i do j je aproximovaný funkciou<br />
aktivácia( j) − aktivácia( i)<br />
gradient(, i j)<br />
= (4.34)<br />
pi (, j)<br />
1. Cesta ← 0<br />
2. Aktuálny neurón ← Neurón agenta<br />
3. Nasledujúci neurón ← Neurón susedný k Aktuálnemu s max.<br />
gradientom v jeho smere<br />
4. while (hodnota(Nasledujúci neurón) > hodnota(Aktuálny neurón))<br />
do<br />
a. Prechod (pozícia(Aktuálny neurón),<br />
pozícia (Nasledujúci neurón))<br />
b. Aktuálny neurón ← Nasledujúci neurón<br />
c. Nasledujúci neurón ← Neurón susedný k Aktuálnemu s max.<br />
gradientom v jeho smere<br />
Tab. 4.1: Algoritmus koštruktora cesty v statickom prostredí.<br />
V prípade, že cieľ je nedosiahnuteľný zo sú<strong>č</strong>asnej pozície agenta, hodnota<br />
neurónu agenta bude 0 ako aj hodnota všetkých neurónov, ktoré ležia vo vnútri oblasti<br />
obklopenej prekážkami. Potom nebude budovaná žiadna cesta.<br />
4.3.5 Implementácia<br />
Pokiaľ uvažujeme o prevedení takejto schémy na digitálnom po<strong>č</strong>íta<strong>č</strong>i, musíme<br />
brať do úvahy niekoľko faktorov. Simulácia veľkého paralelne rozloženého
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 39<br />
výpo<strong>č</strong>tového systému na po<strong>č</strong>íta<strong>č</strong>i zvy<strong>č</strong>ajne dopláca na <strong>č</strong>asové a priestorové obmedzenia,<br />
<strong>č</strong>o môže takéto prevedenie veľmi ľahko urobiť neaplikovateľným na reálne problémy.<br />
Priestor na pamäť, potrebný na sieť je úmerný po<strong>č</strong>tu neurónov. Všimnime si, že je<br />
tu malý po<strong>č</strong>et krátkych prepojení pre každú jednotku a vzor prepojenosti a váha hodnôt<br />
sú rovnaké pre všetky neuróny. Výhodou tejto regularity je ľahšie využitie takejto<br />
neexplicitnej reprezentácie prostredníctvom váhovej matice v po<strong>č</strong>íta<strong>č</strong>ovej pamäti, kde<br />
hodnoty váh v rámci susedstava každého neurónu <strong>sa</strong> môžu pevne zapojiť do lokálnej<br />
adapta<strong>č</strong>nej procedúry a následne môžu byť využité napr. pri konštruovaní optimálnej<br />
cesty.<br />
Konvergen<strong>č</strong>ný <strong>č</strong>as závisí od adapta<strong>č</strong>nej procedúry. Ak poznáme umiestnenie<br />
prepojení, <strong>č</strong>as potrebný na aktualizáciu jedného neurónu bude konštantný a<br />
determinovaný po<strong>č</strong>tom neurónov v jeho susedstve. Lokálna adaptívna procedúra, ktorá<br />
aktualizuje jeden neurón, musí brať v úvahu len neuróny v rámci aktuálneho susedstva.<br />
Aktuálna znalosť môže byť využitá pri kontrole evolúcie siete a vlastne ju<br />
pozastaviť skôr, než <strong>sa</strong> dosiahne rovnováha bez oplyvnenia kvality výslednej cesty.<br />
Aktiva<strong>č</strong>ný front <strong>sa</strong> rozšíri okolo cieľa rovnomerne vo všetkých smeroch. Výsledkom je,<br />
že aktiva<strong>č</strong>ný front zakaždým vytý<strong>č</strong>i izo-aktiva<strong>č</strong>né <strong>č</strong>iary okolo cieľa. Viď obrázky<br />
experimentov v nasledujúcej kapitole (obrázky (c)), ktoré znázorňujú takýto druh<br />
šírenia. Štruktúra a tvar „<strong>č</strong>iar“ závisí výlu<strong>č</strong>ne od usporiadania cieľa a prekážok a po<strong>č</strong>as<br />
evolúcie <strong>sa</strong> nemenia; <strong>č</strong>o <strong>sa</strong> mení je relatívna amplitúda aktivácie. Na záver vyplýva, že<br />
smer maximálneho gradientu <strong>sa</strong> v istom bode nezmení ani vtedy, keď aktiva<strong>č</strong>ný front do<br />
tohto bodu „narazí“.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 40<br />
5 Experimenty<br />
Aby sme tento prístup demonštrovali, predkladám výsledky simulácie z<br />
aplikovania kognitínej mapy pri problémoch plánovania cesty pre bodového mobilného<br />
<strong>robot</strong>a, ktorý <strong>sa</strong> pohybuje v podmnožine 2-rozmernej plochy. Pre zjednodušenie, v<br />
každom prípade je špecifikovaná len jedna cieľová rovina.<br />
Neuróny neurónovej mapy sú usporiadané v 2-rozmernej pravidelnej obdĺžnikovej<br />
mriežke, homomorfnej k rozlohe priestoru <strong>robot</strong>a, ktorý je identický s prostredím alebo<br />
pracovným priestorom. Topológiu neurónov sleduje Obrázok 4.4. Predpokladáme, že<br />
pre každú <strong>sa</strong>mostatnú pozíciu existuje 8 priľahlých neurónov v 8 možných smeroch a<br />
<strong>robot</strong> je schopný <strong>sa</strong> medzi nimi ľahko pohybovať. Výsledné váhy sú 1 pre priame<br />
spojenia a pre uhloprie<strong>č</strong>kové spojenia. Hodnoty použité pre β <strong>sa</strong> pohybovali od 0,13 a<br />
0,04, na jednej strane preto, aby sme dodržali podmienku pre konvergenciu (β
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 41<br />
5.1 Experiment <strong>č</strong>. 1<br />
Obr. 5.1a: Experiment <strong>č</strong>. 1 – Simula<strong>č</strong>né prostredie.<br />
Simula<strong>č</strong>né prostredie 5.1a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.1b: Experiment <strong>č</strong>. 1 – Rovnovážny stav siete.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 42<br />
Obrázok 5.1b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.1c: Experiment <strong>č</strong>. 1 – Kontúry plochy.<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.2 Experiment <strong>č</strong>. 2<br />
Obr. 5.2a: Experiment <strong>č</strong>. 2 – Simula<strong>č</strong>né prostredie.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 43<br />
Simula<strong>č</strong>né prostredie 5.2a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.2b: Experiment <strong>č</strong>. 2 – Rovnovážny stav siete.<br />
Obrázok 5.2b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.2c: Experiment <strong>č</strong>. 2 – Kontúry plochy.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 44<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.3 Experiment <strong>č</strong>. 3<br />
Obr. 5.3a: Experiment <strong>č</strong>. 3 – Simula<strong>č</strong>né prostredie.<br />
Simula<strong>č</strong>né prostredie 5.3a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.3b: Experiment <strong>č</strong>. 3 – Rovnovážny stav siete.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 45<br />
Obrázok 5.3b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.3c: Experiment <strong>č</strong>. 3 – Kontúry plochy.<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.4 Experiment <strong>č</strong>. 4<br />
Obr. 5.4a: Experiment <strong>č</strong>. 4 – Simula<strong>č</strong>né prostredie.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 46<br />
Simula<strong>č</strong>né prostredie 5.4a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.4b: Experiment <strong>č</strong>. 4 – Rovnovážny stav siete.<br />
Obrázok 5.4b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.4c: Experiment <strong>č</strong>. 4 – Kontúry plochy.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 47<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.5 Experiment <strong>č</strong>. 5<br />
Obr. 5.5a: Experiment <strong>č</strong>. 5 – Simula<strong>č</strong>né prostredie.<br />
Simula<strong>č</strong>né prostredie 5.5a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.5b: Experiment <strong>č</strong>. 5 – Rovnovážny stav siete.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 48<br />
Obrázok 5.5b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.5c: Experiment <strong>č</strong>. 5 – Kontúry plochy.<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.6 Experiment <strong>č</strong>. 6<br />
Obr. 5.6a: Experiment <strong>č</strong>. 6 – Simula<strong>č</strong>né prostredie.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 49<br />
Simula<strong>č</strong>né prostredie 5.6a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.6b: Experiment <strong>č</strong>. 6 – Rovnovážny stav siete.<br />
Obrázok 5.6b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.6c: Experiment <strong>č</strong>. 6 – Kontúry plochy.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 50<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.<br />
5.7 Experiment <strong>č</strong>. 7<br />
Obr. 5.7a: Experiment <strong>č</strong>. 7 – Simula<strong>č</strong>né prostredie.<br />
Simula<strong>č</strong>né prostredie 5.7a pozostávajúce z prekážok, cieľovej pozície <strong>robot</strong>a<br />
(aktuálna pozícia <strong>robot</strong>a na obrázku) a zkonšturovanej optimálnej cesty z po<strong>č</strong>iato<strong>č</strong>nej<br />
pozície <strong>robot</strong>a.<br />
Obr. 5.7b: Experiment <strong>č</strong>. 7 – Rovnovážny stav siete.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 51<br />
Obrázok 5.7b ukazuje výsledný stav stabilnej siete pre dané rozmiestnenie<br />
prekážok a cieľa v prostredí simulátora. Cieľ je najvyšším bodom tohto zobrazenia.<br />
Obr. 5.7c: Experiment <strong>č</strong>. 7 – Kontúry plochy.<br />
Kontúry plochy znázorňujú postupné šírenie aktivácie z cieľového neurónu, ktoré<br />
postupne prechádza cez „otvory“ v prostredí. Prekážkové neuróny tento signál odrážajú.
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 52<br />
Záver<br />
Na základe formulácie úlohy a uvedených <strong>č</strong>iastkových úloh diplomovej práce<br />
v kapitole 1 boli vypracované nasledovné <strong>č</strong>asti:<br />
Druhá kapitola poskytuje základný prehľad konceptov pre porozumenie problému<br />
navigácie mobilných <strong>robot</strong>ov, ktoré <strong>sa</strong> <strong>č</strong>asto vyskytujú vo viacerých kapitolách. Zahŕňa<br />
typológiu naviga<strong>č</strong>ných stratégií a následne zatrieďuje „biologicky inšpirované“<br />
výpo<strong>č</strong>tové modely do štvor-stupňovej hierarchie [36]. V závere kapitoly sú hlavné<br />
charakteristiky týchto rozli<strong>č</strong>ných výpo<strong>č</strong>tových modelov porovnané.<br />
Tretia kapitola pokrýva koncept neurónovej mapy (tiež nazývanej kognitívna<br />
mapa) ako reprezenta<strong>č</strong>ného média prostredia a predstavuje dynamiku neurónovej siete<br />
ako jednoduchý výpo<strong>č</strong>tový model neurónovej mapy, vhodný pre po<strong>č</strong>íta<strong>č</strong>ovú<br />
implementáciu a simulácie.<br />
Štvrtá kapitola predstavuje návrh a implementáciu rešenia plánovania cesty<br />
mobilného <strong>robot</strong>a v neznámom prostredí pomocou kognitívnej mapy, ktorú vytvára<br />
Hopfieldov model neurónovej siete. Sú<strong>č</strong>asťou kapitoly je tiež stru<strong>č</strong>ná charakteristika<br />
rekurentných neurónových sietí.<br />
Piata kapitola demoštruje <strong>sa</strong>motnú aplikáciu kognitívnej mapy pre riešenie<br />
problému hľadania optimálnej cesty v podobe experimentov vykonaných v simula<strong>č</strong>nom<br />
prostredí mobilných <strong>robot</strong>ov, vytvoreného v Laboratóriu umelej inteligencie v Centre<br />
pre inteligentné technológie, <strong>TU</strong> <strong>Košice</strong>.<br />
Sú<strong>č</strong>asné <strong>robot</strong>y majú len obmedzené množstvo možných reakcií na podnety a hoci<br />
sú schopné veľmi ú<strong>č</strong>inne <strong>sa</strong> pohybovať v prostredí a vedia obísť prekážky, ich<br />
naviga<strong>č</strong>né systémy sú z <strong>č</strong>asti obmedzené a nestále [6]. Navigácia je preto jednou z<br />
najzložitejších úloh, ktorú <strong>sa</strong> sú<strong>č</strong>asné technológie <strong>robot</strong>ov pokúšajú zvládnuť.<br />
Navigovanie <strong>sa</strong> zdá byť viac-menej špecifickou úlohou a to v tom zmysle, že jeho<br />
požiadavky môžu byť veľmi dobre definované matematickými (geometrickými)<br />
pojmami a jeho potencionálne riešenia budú jasné. To však zahrňuje mnohé odlišné<br />
zmyslové vnemy a výpo<strong>č</strong>tové procesy. Základné rozhodnutia ako napríklad choď vľavo<br />
(vpravo), rovno alebo zastav, <strong>sa</strong> zakladajú na tisíckach prichádzajúcich signálov [37].<br />
Tieto signály pochádzajú zo senzorov, ale tiež z pamäti a o<strong>č</strong>akávaní, odvodených z
<strong>FEI</strong> <strong>TU</strong> <strong>Košice</strong> <strong>Diplomová</strong> <strong>práca</strong> <strong>List</strong> <strong>č</strong>. 53<br />
predchádzajúcich krokov. Celkový mechanizmus, akým <strong>sa</strong> multisenzorové, vnútorné a<br />
vonkajšie informácie zlu<strong>č</strong>ujú, uchovávajú a využívajú, zatiaľ veľmi jasne nechápeme.<br />
Pri porovnaní dvoch prístupov [38] budovania kognitívnej mapy, kde v prvom <strong>sa</strong><br />
jedná o topologickú navigáciu a v druhom o cielenú navigáciu použitím Hopfieldovej<br />
rekurentnej siete, sú vo všeobecnosti známe. Otázkou však ostáva, ktorý zo<br />
spomenutých je vhodnejší. Tu <strong>sa</strong> treba v prvom rade zamyslieť nad zložitosťou<br />
skúmaného prostredia, t.z., zvážiť nielen mohutnosť po<strong>č</strong>tu objektov, ale i <strong>sa</strong>motnú<br />
dynamiku tohto prostredia. V prípade statického prostredia, ktorý bol skúmaný pri<br />
oboch experimentoch, nemožno jednozna<strong>č</strong>ne tvrdiť o zlyhaní <strong>č</strong>i nepresnosti ani jednej<br />
zo stratégií. Z hľadiska výpo<strong>č</strong>tovej náro<strong>č</strong>nosti zmapovania priestoru môžeme z<br />
ur<strong>č</strong>itosťou povedať, že v prípade neurónovej siete, ktorá pokrýva celú oblasť<br />
prehľadávacieho priestoru, je tento prístup s cieľom navigovať oveľa rýchlejší. Avšak<br />
komplikácie by <strong>sa</strong> mohli vyskytnúť pri inkrementálnom budovaní mapy, kde neurónová<br />
sieť nepokrýva celý prehľadávací priestor, ale len „vidiace“ spektrum <strong>robot</strong>a. Znalosť<br />
priestoru pri topologickej navigácii vytvára rada usporiadaní orienta<strong>č</strong>ných bodov, ktoré<br />
sú prepojené topologickými vzťahmi. Charakteristickým typom správania pri procese<br />
hľadania optimálnej cesty je hľadanie úsekov miest, ktoré sú kvázi spojené prejdenými<br />
cestami z aktuálneho miesta k požadovanému cieľu. V našom prípade sú orienta<strong>č</strong>né<br />
miesta <strong>sa</strong>motné prekážky bez zváženia iných, dynamicky <strong>sa</strong> pohybujúcich objektov v<br />
prostredí, ktoré by mohli spôsobiť zna<strong>č</strong>né problémy pri do<strong>sa</strong>hovaní cieľa. V takomto<br />
prípade metóda zlyháva a je vhodné použiť spomínanú neurónovú sieť, ktorá dokáže<br />
adaptovať znalosť o prostredí flexibilnejším spôsobom.
Zoznam literatúry<br />
[1] Amari, Shun-ichi: “Dynamical Stability of Formation of Cortical Maps” in<br />
Dynamic Interaction in Neural Networks: Models and Data, New York: Springer-<br />
Verlag, 1989.<br />
[2] Amari, Shun-ichi: Competition and Cooperation in Neural Nets, New York:<br />
Springer-Verlag, 1982.<br />
[3] Amit, D. J.: Modeling Brain functions: The world of attractor neural networks.<br />
ISBN 0521361001, 1989.<br />
[4] Barto, A. G., Sutton, R. S.: Landmark learning. An illustration of associative<br />
search. Biological Cybernetics, 42:1-8, 1981.<br />
[5] Cartwright, B., A., Collett, T., S.: Landmark learning in bees. Experiments and<br />
models. Journal of Comparative Physiology A, 151:521-543, 1983.<br />
[6] Cliff, D., Husbands, P. A., Meyer, J.-A., et al.: From Animals to Animats 3.<br />
Proceedings of the Third International Conference on Adaptive Behavior. The<br />
MIT Press/Bradford Book, 1994.<br />
[7] Collet, T. S.: Landmark learning and guidance in insects. Philosophical<br />
Tran<strong>sa</strong>ctions of the Royal Society of London B, 337-295:303, 1992.<br />
[8] Feng, L., Borenstein, J., et al: „Where am I“: Sensors and methods for<br />
autonomous mobile <strong>robot</strong> positioning. Technical report, University of Michigan,<br />
1994.<br />
[9] Gallistel, C. R.: The Organization of Learning. The MIT Press/Bradford Book,<br />
1990.<br />
[10] Glasius, R., Komoda, A., Gielen C. A. M., S.: A Biologically Inspired Neural Net<br />
for Trajectory Formation and Obstacle Avoidance. Biological Cybernetics, 1996.<br />
[11] Glasius, R., Komoda, A., Gielen C. A. M., S.: Neural Network Dynamics for Path<br />
Planning and Obstacle Avoidance. Neural Networks, 8, 1995.<br />
[12] Herrmann, M., Vilmann, T., et al: Neural Maps and Topographic Vector<br />
Quantization, submitted to Neural Networks.<br />
[13] Hopfield, J.: “Neural Networks and Physical Systems With Emergent Collective<br />
Computational Capabilities” in Proceedings of the National Academy of Science,<br />
USA, 1982.
[14] Hopfield, J.: “Neurons With Graded Response Have Collective Computational<br />
Properties Like Those of the Two-State Neurons” in Proceedings of the National<br />
Academy of Science, USA 1984.<br />
[15] Kohonen, T.:, Self-Organizing Maps, New York: Springer-Verlag, 2nd ed., 1997.<br />
[16] Kuipers, B. J.: The „map in the head“ metaphor. Environment and Behavior,<br />
14(2):202-220, 1982.<br />
[17] Kvasni<strong>č</strong>ka, V., Beňušková, Ľ., a kol.: Úvod do neurónových sietí. IRIS Bratislava,<br />
1997.<br />
[18] Lagoudakis, G., M.: Mobile Robot Local Navigation with a Polar Neural Map.<br />
Master thesis, spring 1998.<br />
[19] Lazea, G., Lupu, A. E.: Aspects on Path Planning for Mobile Robots. TEMPUS<br />
M-JEP 11467: Intensive Course on Computer Aided Engineering in Flexible<br />
Manufacturing, Bucharest, Romania, May 19-23, 1997.<br />
[20] Levitt, T. S., Lawton, D. T.: Qualitative navigation for mobile <strong>robot</strong>s. Artificial<br />
Intelligence, 44:305-360, 1990.<br />
[21] McCulloch, W.S., Pitts, W.: A Logical Calculus of Ideas Immanent in Neurous<br />
Activity. Bulletin of Mathematical Biophysics, 1943.<br />
[22] McNaughton, L. B., Leonard, B.: Rat: Cenceptual, behavioral, and neurophysiological<br />
perspectives. Neurobiology of comparative cognition, chapter 13,<br />
1990.<br />
[23] Meyer, J.-A., Roitblat, L., H., et al: From Animals to Animats. Proceedings of the<br />
First International Conference on Adaptive Behavior: The MIT Press/Bradford<br />
Book, 1991.<br />
[24] Miikkulainen, S.: “How Lateral Interactions Develops in a Self-Organizing<br />
Feature Map” in Proceedings of the IEEE International Conference on Neural<br />
Networks, San Francisco: IEEE Press, 1993.<br />
[25] Mittelstaedt, H. M.-L.: Homing by path integration. Springer Verlag, 1982.<br />
[26] Morasso, P., Frisone, F., et al: “Cortical Maps of Sensorimotor Spaces” in Self-<br />
Organization. Computational Maps and Motor Control, Amsterdam: Elsevier,<br />
North-Holland, 1997.<br />
[27] Morris, R. G. M.: Spatial localization does not require the presence of local cues.<br />
Learning and Motivation, 12:239-260, 1981.
[28] Norvig, R., S., P.: Artificial Intelligence: A Modern Approach. Upper Saddle<br />
River, New Jersey: Prentice Hall, 1995.<br />
[29] O’Keefe, J., Nadel, L.: The Hippocampus as a Cognitive Map. Clarendon Press,<br />
Oxford, 1978.<br />
[30] Oja, E.: “A Simplified Neuron Model as a Principal Component Analyzer” in<br />
Journal of Mathematical Biology 1982.<br />
[31] Poucet, B.: Spatial cognitive maps in animals: New hypotheses on their structure<br />
and neural mechanisms. Psychological Review, 100:163-182, 1993.<br />
[32] Prescott, A. J.: Explorations in reinforcement and model-based learning. PhD<br />
thesis, Dpt of Psychology, University of Sheffield, 1994.<br />
[33] Sejnowski, T.: “Constrained Optimization for Neural Map Formation: A Unifying<br />
Framework for Weight Growth and Normalization” in Neural Computation, 1998.<br />
[34] Sin<strong>č</strong>ák, P., Andrejková, G.: Neurónové siete (Inžiniersky prístup) 1, 2. Elfa, 1996.<br />
[35] Tolman, E., C.: Cognitive maps in rats and men. The Psychological Review,<br />
55:189-208, 1948.<br />
[36] Trullier, O., Berhoz, A., et al: Biologically-based Artificial Navigation Systems:<br />
Review and prospects, Progress in Neurobiology, October 1996.<br />
[37] Waterman, T.: Animal Navigation. Scientific American Library, 1989.<br />
[38] Zvada, M., Vacek, M., Kostelnik, P.: Navigácia mobilného <strong>robot</strong>a v neznámom<br />
prostredí pomocou kognitívnej mapy, III. Slovensko - Český seminár: Kognícia,<br />
umelý život a po<strong>č</strong>íta<strong>č</strong>ová inteligencia, Stará Lesná, 2003.
Zoznam obrázkov a tabuliek<br />
Obr. 2.1: Situa<strong>č</strong>ný stav <strong>robot</strong>a v prostredí. ....................................................................... 9<br />
Obr. 2.2: Reakcia vyvolaná známym miestom. .............................................................. 10<br />
Obr. 2.3a: Topologická navigácia................................................................................... 12<br />
Obr. 2.3b: Topologické zobrazenie................................................................................. 12<br />
Obr. 2.4: Metrická navigácia. ......................................................................................... 14<br />
Tab. 2.1: Porovnanie naviga<strong>č</strong>ných stratégií.................................................................... 16<br />
Obr. 3.1: Koncept neurónovej mapy............................................................................... 17<br />
Obr. 3.2: Príklad SOM.................................................................................................... 22<br />
Obr. 4.1: Základná nelineárna výpo<strong>č</strong>tová jednotka – neurón......................................... 25<br />
Obr. 4.2: Jednoduchá Hopfieldova sieť. ......................................................................... 27<br />
Obr. 4.3: Architektúra subsystému plánovania cesty pomocou kognitívnej mapy. ....... 33<br />
Obr. 4.4: Rôzne topológie siete a prepojenia neurónov v 2-d priestore.. ....................... 34<br />
Obr. 4.5: Váha ako funkcia vzdialenosti......................................................................... 35<br />
Obr. 4.6: Nelineárna aktiva<strong>č</strong>ná funkcia. ......................................................................... 36<br />
Tab. 4.1: Algoritmus koštruktora cesty v statickom prostredí........................................ 38<br />
Obr. 5.1a: Experiment <strong>č</strong>. 1 – Simula<strong>č</strong>né prostredie........................................................ 41<br />
Obr. 5.1b: Experiment <strong>č</strong>. 1 – Rovnovážny stav siete...................................................... 41<br />
Obr. 5.1c: Experiment <strong>č</strong>. 1 – Kontúry plochy................................................................. 42<br />
Obr. 5.2a: Experiment <strong>č</strong>. 2 – Simula<strong>č</strong>né prostredie........................................................ 42<br />
Obr. 5.2b: Experiment <strong>č</strong>. 2 – Rovnovážny stav siete...................................................... 43<br />
Obr. 5.2c: Experiment <strong>č</strong>. 2 – Kontúry plochy................................................................. 43<br />
Obr. 5.3a: Experiment <strong>č</strong>. 3 – Simula<strong>č</strong>né prostredie........................................................ 44<br />
Obr. 5.3b: Experiment <strong>č</strong>. 3 – Rovnovážny stav siete...................................................... 44<br />
Obr. 5.3c: Experiment <strong>č</strong>. 3 – Kontúry plochy................................................................. 45<br />
Obr. 5.4a: Experiment <strong>č</strong>. 4 – Simula<strong>č</strong>né prostredie........................................................ 45<br />
Obr. 5.4b: Experiment <strong>č</strong>. 4 – Rovnovážny stav siete...................................................... 46<br />
Obr. 5.4c: Experiment <strong>č</strong>. 4 – Kontúry plochy................................................................. 46<br />
Obr. 5.5a: Experiment <strong>č</strong>. 5 – Simula<strong>č</strong>né prostredie........................................................ 47<br />
Obr. 5.5b: Experiment <strong>č</strong>. 5 – Rovnovážny stav siete...................................................... 47<br />
Obr. 5.5c: Experiment <strong>č</strong>. 5 – Kontúry plochy................................................................. 48<br />
Obr. 5.6a: Experiment <strong>č</strong>. 6 – Simula<strong>č</strong>né prostredie........................................................ 48<br />
Obr. 5.6b: Experiment <strong>č</strong>. 6 – Rovnovážny stav siete...................................................... 49<br />
Obr. 5.6c: Experiment <strong>č</strong>. 6 – Kontúry plochy................................................................. 49<br />
Obr. 5.7a: Experiment <strong>č</strong>. 7 – Simula<strong>č</strong>né prostredie........................................................ 50<br />
Obr. 5.7b: Experiment <strong>č</strong>. 7 – Rovnovážny stav siete...................................................... 50<br />
Obr. 5.7c: Experiment <strong>č</strong>. 7 – Kontúry plochy................................................................. 51
Zoznam príloh<br />
Príloha 1: Používateľská príru<strong>č</strong>ka<br />
Príloha 2: Systémová príru<strong>č</strong>ka<br />
Príloha 3: CD-R médium so zdrojovým kódom a dokumentáciou
Ob<strong>sa</strong>h<br />
Úvod ...............................................................................................................................1<br />
1 Formulácia úlohy ......................................................................................................2<br />
1.1 Popis diplomovej práce ......................................................................................... 2<br />
2 Priestorová navigácia u mobilných <strong>robot</strong>ov ..........................................................3<br />
2.1 Mobilné <strong>robot</strong>y ...................................................................................................... 3<br />
2.2 Navigácia............................................................................................................... 4<br />
2.3 Lokálna a globálna navigácia ................................................................................ 6<br />
2.4 Naviga<strong>č</strong>né stratégie ............................................................................................... 7<br />
2.4.1 Navádzanie .................................................................................................. 7<br />
2.4.2 Reakcia vyvolaná známym miestom ........................................................... 8<br />
2.4.3 Topologická navigácia............................................................................... 10<br />
2.4.4 Metrická navigácia .................................................................................... 13<br />
2.5 Zhrnutie ............................................................................................................... 14<br />
3 Neurónové mapy.....................................................................................................17<br />
3.1 Mapovanie ........................................................................................................... 17<br />
3.2 Základné vlastnosti.............................................................................................. 19<br />
3.3 Zachovanie susedstva .......................................................................................... 20<br />
3.4 Neurónové pole ................................................................................................... 20<br />
3.5 Samoorganizácia.................................................................................................. 21<br />
4 Návrh a implementácia riešenia plánovania cesty pomocou neurónových máp ...23<br />
4.1 Neurónové siete................................................................................................... 23<br />
4.1.1 Klasifikácia rekurentných neurónových sietí ............................................ 24<br />
4.1.2 Základná výpo<strong>č</strong>tová jednotka – neurón..................................................... 25<br />
4.1.3 Dynamika................................................................................................... 26<br />
4.2 Hopfieldova neurónová sieť ................................................................................ 27<br />
4.2.1 Energetická funkcia ................................................................................... 28<br />
4.2.2 Nastavenie váh prepojení........................................................................... 30<br />
4.2.3 Zovšeobecnený algoritmus pre Hopfieldovu sieť ..................................... 31<br />
4.2.4 Obmedzenia siete....................................................................................... 31<br />
4.3 Plánovanie cesty pomocou neurónových máp .................................................... 32<br />
4.3.1 Subsystém pre plánovanie cesty................................................................ 33<br />
4.3.2 Kognitívna mapa........................................................................................ 33<br />
4.3.3 Evolúcia siete............................................................................................. 36<br />
4.3.4 Konštruktor cesty....................................................................................... 38<br />
4.3.5 Implementácia ........................................................................................... 38<br />
5 Experimenty ............................................................................................................40<br />
5.1 Experiment <strong>č</strong>. 1.................................................................................................... 41<br />
5.2 Experiment <strong>č</strong>. 2.................................................................................................... 42<br />
5.3 Experiment <strong>č</strong>. 3.................................................................................................... 44<br />
5.4 Experiment <strong>č</strong>. 4.................................................................................................... 45<br />
5.5 Experiment <strong>č</strong>. 5.................................................................................................... 47<br />
5.6 Experiment <strong>č</strong>. 6.................................................................................................... 48<br />
5.7 Experiment <strong>č</strong>. 7.................................................................................................... 50<br />
Záver ............................................................................................................................52<br />
Zoznam literatúry ........................................................................................................54<br />
Zoznam obrázkov a tabuliek ......................................................................................57<br />
Zoznam príloh..............................................................................................................58