25.07.2013 Views

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 ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!