FAKULTA ELEKTROTECHNICKÁ DIPLOMOVÁ PRÁCE. Tomáš Pytlíček. Strategie multi-robotického průzkumu neznámého prostředí

Rozměr: px
Začít zobrazení ze stránky:

Download "FAKULTA ELEKTROTECHNICKÁ DIPLOMOVÁ PRÁCE. Tomáš Pytlíček. Strategie multi-robotického průzkumu neznámého prostředí"

Transkript

1 ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA ELEKTROTECHNICKÁ DIPLOMOVÁ PRÁCE Tomáš Pytlíček Strategie multi-robotického průzkumu neznámého prostředí Katedra kybernetiky Vedoucí diplomové práce: Ing. Jan Faigl, Ph.D. Praha, 2012

2

3

4 Abstrakt Tato práce se zabývá přístupy řešení problému autonomního průzkumu neznámého prostředí skupinou mobilních robotů. Hlavním cílem je porovnat vybrané metody průzkumu především z hlediska času průzkumu. V úloze multi-robotického průzkumu je hlavním řešeným problémem nalezení vhodného rozdělení cílů mezi jednotlivé roboty tak, aby bylo co nejefektivněji využito počtu robotů. Pro porovnání byly vybrány tři metody vycházející z tzv. frontier-based přístupu, který definuje potencionální cílová místa k navštívění. První metoda je hladová, ve které je každému robotu přiřazen nejbližší cíl. Druhá metoda je založena na řešení problému přiřazení n cílů mezi r robotů mad arským algoritmem. Ve třetí metodě je problém přiřazení řešen jako úloha více obchodních cestujících, ve které je uvažováno přiřazení cílů z dlouhodobějšího horizontu plánování. Porovnání metod je založeno na vyhodnocení řady testů multi-robotického průzkumu pro různá prostředí a nastavení metod. Mimoto je vyvinutý rámec pro multi-robotický průzkum experimentálně ověřen v reálném prostředí se dvěma roboty. Abstract This thesis discusses various approaches of autonomous exploration of unknown environment using a team of mobile robots. The main objective is to compare selected methods regarding the time needed to explore the whole environment. The main problem of the multi-robot exploration is to find assignment of goals to the robots. Three methods based on frontier based approach are selected for the comparison of various strategies how to distribute goals to the robots. The first method is greedy, i.e., each robot explores its nearest goal. The second method is based on the assignment problem of n tasks to r robots using the Hungarian algorithm. The third method solves the assignment problem as a solution of the multiple traveling salesman problem, which aims to consider distribution of goals regarding a longer planning horizon. The methods have been evaluated in thousands of tests for various environments and parameters settings. Besides, the developed multi-robot exploration framework has experimentally verified using two real robots.

5 Velice děkuji vedoucímu mé práce Ing. Janu Faiglovi, Ph.D. za jeho ochotu a množství času, které mi věnoval při konzultacích a kontrolách práce. Dále bych chtěl poděkovat své rodině a přátelům za poskytovanou podporu.

6 Obsah 1 Problémy robotického průzkumu Senzory Modely prostředí Lokalizace Navigace Robotický průzkum Přístupy robotického průzkumu Frontier-Based přístup Základní metoda robotického průzkumu Užitečností metody robotického průzkumu Řešení robotického průzkumu jako problém obchodního cestujícího Multi-robotický průzkum Přidělování cílů v multi-robotickém průzkumu Aukční metody Metody založené na rozdělení prostředí Využití mad arského algoritmu Využití genetických algoritmů Využití formulace problému více obchodních cestujících Problém více obchodních cestujících Řešení úlohy MTSP v multi-robotickém průzkumu Porovnání strategií multi-robotického průzkumu Uvažované parametry průzkumné mise Poznámky k implementaci Výsledky porovnání nastavení a metod strategií průzkumu Testované scénáře robotických misí Testy chování jednotlivých testovaných metod Porovnání strategií průzkumu Reálný experiment i

7 5 Závěr 38 A Výsledky testů 40 A.1 Časy průzkumu A.1.1 Prostředí autolab A.1.2 Prostředí jh A.1.3 Prostředí hospital A.2 Vliv uvažování neznámého prostoru jako volného nebo obsazeného A.3 Vliv počtu robotů na čas průzkumu B Obsah CD 48 ii

8 Seznam obrázků 2.1 Příklad předem zadané trajektorie Mřížka s vyznačením frontieru Porovnání výběru nejbližšího cíle a plánování přes více cílů Ukázka prostředí s chodbou Příklad výběru cílů při multi-robotickém průzkumu Ukázka mapy prostředí s vytvořenými Voroného diagramy Geometrická interpretace SOM pro TSP Příklad grafu vytvořeného pro SOM metodu řešení MTSP Vliv velikosti frontieru Plánování průjezdu přes neznámý prostor Testovací prostředí pro průzkumné mise Robot bez přiřazeného cíle Průměrné časy průzkumu: prostředí autolab, výchozí pozice P Průměrné časy průzkumu: prostředí autolab, výchozí pozice P Průměrné časy průzkumu: prostředí jh, počet robotů R = Průměrné časy průzkumu: prostředí jh, počet robotů R = Průměrné časy průzkumu: prostředí hospital, počet robotů R = Průměrné časy průzkumu: prostředí hospital, počet robotů R = Roboty S1R v úloze autonomního multi-robotického průzkumu Ukázka modelu prostředí generovaného během reálného průzkumu iii

9 Seznam tabulek A.1 Časy průzkumu prostředí autolab, hladová metoda A.2 Časy průzkumu prostředí autolab, metoda s mad arským algoritmem A.3 Časy průzkumu prostředí autolab, metoda MTSP A.4 Časy průzkumu prostředí jh, hladová metoda A.5 Časy průzkumu prostředí jh, metoda s mad arským algoritmem A.6 Časy průzkumu prostředí jh, metoda MTSP A.7 Časy průzkumu prostředí hospital, hladová metoda A.8 Časy průzkumu prostředí hospital, metoda s mad arským algoritmem A.9 Časy průzkumu prostředí hospital, metoda MTSP A.10 Čas průzkumu při uvažování neznámého prostoru jako volného nebo obsazeného A.11 Čas průzkumu pro rozdílné počty robotů; G - hladová metoda, H - metoda s mad arským algoritmem, M - metoda MTSP B.1 Adresářová struktura na CD iv

10 Úvod Mobilní robotika je v současné době stále se rozvíjejícím technickým oborem, ve kterém se využívají znalosti z mnoha jiných technických oborů, jako je měření a zpracování senzorických dat, teorie systémů a řízení, umělá inteligence, elektronika nebo počítačová grafika. Uplatňují se zde však i obory netechnické, jako je například biologie. V té lze hledat inspiraci nejen pro tvorbu nových konstrukcí robotů, ale také postupů. Biologicky inspirovaných robotů a principů řešení úloh již existuje značné množství. Vznikají konstrukce robotů napodobující rozličné živočichy, kteří se pohybují po dvou, čtyř či šesti nohou, roboty skákající, plovoucí a mnoho dalších konstrukcí. Mezi postupy pak patří například genetické algoritmy nebo algoritmy mravenčích kolonií. S mobilními roboty se lze setkat v oblastech, která jsou svým charakterem pro člověka nehostinná nebo nebezpečná, například při průzkumu vesmíru či vojenství - bezpilotní letadla. V posledních letech se mobilní roboty začínají také stávat součástí běžného života, například v podobě robotických vysavačů. První mobilní roboty však byly spíše experimentální, které měly jen velmi omezené možnosti a byly bud předprogramované nebo spíše (a to častěji) tele-operované, tj. neměly žádnou míru autonomie a byly řízeny na dálku člověkem - operátorem. Tele-operovaný robot explicitně nevyužívá znalosti o prostředí, ve kterém se pohybuje. Řízení je tak výlučně na operátorovi, který na základě těchto znalostí rozhoduje o dalším postupu mise. S rozvojem výpočetní techniky se zlepšují schopnosti mobilních robotů, které tak mohou zpracovat senzorická data o prostředí a na jejich základě se samočinně rozhodovat a tím zvýšit svou autonomii. Tele-operované roboty mají sice stále své uplatnění i v současnosti, například již zmíněná bezpilotní letadla, avšak zajímavější aplikace mobilní robotiky se týkají především zcela autonomních a inteligentních robotů. Z hlediska řízení mobilního robotu lze v triviálních úlohách využít takzvaných reaktivních algoritmů. Robot řízený reaktivním algoritmem se rozhoduje pouze na základě aktuálních vjemů a podobně jako robot tele-operovaný, nevyužívá explicitně budované znalosti o pracovním prostředí. Má-li robot v daném prostředí vykonávat složitější činnost, nemusí reaktivní algoritmus postačovat, nebot například v případě opakované činnosti mohou být sledována další kritéria činnosti robotu jako je například efektivita a výkonnost. V takovém případě je vhodné, aby robot vyžíval znalosti o prostředí, ve kterém se pohybuje, a přizpůsoboval svou činnosti aktuální situaci s ohledem na zvolené optimalizační kritérium. Základní znalosti o prostředí, které umožňují mobilnímu robotu se v prostředí efektivně pohybovat, mohou být reprezentovány modelem prostředí, typicky ve formě nějaké mapy. Jsou-li k dispozici mapy prostředí (např. plány budov), lze model vytvořit přímo z těchto plánů, což může být snadné například v případě existujících elektronických nákresů budov. V případech, kdy nejsou podklady k dispozici, nebo jim nelze důvěřovat, je možné model prostředí vytvořit takzvaným robotickým průzkumem. Robotický průzkum proto 1

11 představuje jednou z důležitých úloh mobilní robotiky, nebot jeho hlavním cílem je autonomní získání znalostí o prostředí a tvorba modelu prostředí. Význam autonomního robotického průzkumu spočívá především v aplikačním nasazení v prostředích, která jsou člověku nebezpečná či nedostupná. Postupem času bylo představeno mnoho různých metod, které problém průzkumu řeší. Tyto metody se v mnohém liší. Na druhou stranu lze v celé řadě metod nalézt společné vlastnosti. Jednou z důležitých vlastností všech metod je, zda-li k průzkumu využívají jeden či více robotů. V případě více robotů se jedná o tzv. úlohu multi-robotického průzkumu. Přirozenou motivací této úlohy je předpokládané zrychlení průzkumu a robustnosti s ohledem na případné poruchy jednotlivých robotů zapojených v průzkumné misi. Tato práce je zaměřena na studium strategií řešení úlohy autonomního multi-robotického průzkumu prostředí, zejména s ohledem na efektivitu průzkumu, tj. čas potřebný k vytvoření modelu prostředí autonomním pohybem skupiny robotů v neznámém prostředí. Nedílnou součástí řešení úlohy autonomního průzkumu je též úloha autonomní navigace mobilního robotu, která zahrnuje řadu dílčích problémů. Tyto problémy jsou společné pro mnoho aplikací mobilních robotů a lze je tak označit za klíčové. Tato práce je členěna následovně. Přehledu souvisejících problémů autonomní navigace v kontextu robotického průzkumu je věnována následující kapitola, která stručně shrnuje elementární přístupy řešení těchto dílčích problémů. V kapitole 2 jsou podrobněji popsány obecné techniky robotického průzkumu prostředí, především pro průzkum jedním robotem. Většina uvedených technik tvoří základ pro přístupy řešení úlohy multirobotického průzkumu, které jsou rozšířením základních technik. Problémy související s rozšířením pro multi-robotický průzkum a vybrané metody multi-robotického průzkumu jsou popsány v kapitole 3. V kapitole 4 jsou pak popsány implementace vybraných metod, které byly použity k ověření vlastností zkoumaných strategií, a dosažené výsledky získané v prostředí Player/Stage [?]. Závěrečné zhodnocení a možnosti dalšího zaměření výzkumu jsou diskutovány v kapitole 5. 2

12 Kapitola 1 Problémy robotického průzkumu V podstatě v každé úloze mobilní robotiky je nutné řešit základní úlohu navigace mobilního robotu, která v sobě zahrnuje řadu dílčích pod-problémů, které přímo nesouvisí s řešení úlohy efektivního robotického průzkum, tj. rozhodování do které části dosud neprozkoumané oblasti se má robot vydat. I přesto však nelze pro úspěšné řešení úlohy průzkumu tyto podproblémy opomíjet, nebot zanedbání řešení těchto dílčích problémů může zcela znehodnotit výsledky hlavní úlohy. Základní problémy související s úlohou navigace lze rozdělit na problémy související s konstrukcí robotu (tj. jeho kinematické a dynamické vlastnosti) a na úlohy vztahující se k s vlastnímu rozhodování, řízení a zpracování senzorických data, tj. problémy spíše algoritmické. S ohledem na řešení nějaké konkrétní úlohy robotického průzkumu souvisí s konstrukcí robotu také jeho tvar, způsob řízení, požadavky na rychlost a výkon, výdrž baterie, a také prostředí, kde se robot bude pohybovat a musí být před ním chráněn apod. Dle pracovního prostředí lze roboty dělit na pozemní, vzdušné a podvodní. Každou takovou skupinu lze pak dále dělit dle konstrukce, přičemž pro každou konstrukci platí určitá omezení pohybu vyplývající z kinematiky robotu. Tato omezení se zahrnují do takzvaného konfiguračního prostoru C, který představuje přípustné konfigurace (stavy) robotu [?]. Konfigurační prostor představuje abstrakci kinematických vlastností robotu a využívá se pro řešení algoritmických problémů, zejména pro plánování pohybu, přičemž dimenze C je dána počtem stupňů volnosti robotu. Dále lze do konstrukčních problémů zařadit také požadavky na senzorické vybavení robotu a s tím související modely senzorů a jejich omezení. Algoritmické problémy souvisí s inteligencí robotu a mírou jeho autonomie. Mezi nejvýznamnější z nich patří úloha lokalizace, plánování cesty nebo pohybu a také práce s vlastním modelem prostředí, která souvisí se způsobem reprezentace prostředí. V následujících oddílech jsou stručně diskutovány dílčí pod-problémy a přístupy jejich řešení související s robotickým průzkumem. Jsou zde taktéž uvedeny konkrétní přístupy řešení dílčích úloh využité v této práci, jejichž shrnutí je uvedeno v závěru této kapitoly. Oddíl 1.4 je věnován vlastní problematice navigace robotu. 1.1 Senzory Senzory poskytují robotu informace o okolním pracovním prostředí a zpracování senzorických dat patří mezi základní problémy robotiky. Pro tvorbu modelu prostředí (mapy) 3

13 KAPITOLA 1. PROBLÉMY ROBOTICKÉHO PRŮZKUMU se využívají především dálkoměrné senzory (laser, sonar) nebo kamera. Lze využít i kombinaci těchto senzorů a data z nich slučovat metodami senzorické fúze. Problém zpracování a interpretace senzorických dat je těžký především z důvodu nepřesnosti dat poskytovaných reálnými senzory. Mezi chyby může patřit například šum, nesprávné odrazy u dálkoměrných senzorů, nevhodné světelné podmínky pro kameru atd. Dalším problémem, který se může vyskytovat v multi-robotických aplikacích, je použití stejných senzorů, u kterých může docházet k přeslechům. Pro řešení chyb v senzorických datech se používá model senzoru, na jehož základě je do jisté míry možné určit, jak moc jsou data důvěryhodná a tím například filtrovat chybná měření. Přestože v této práci diskutované přístupy robotického průzkumu jsou v podstatě nezávislé na konkrétním typu senzoru, je tato práce zaměřena především na budování mapy prostředí z laserových dálkoměrných senzorů. Konkrétně je použit senzor Hokuyo URG-04LX, s úhlovým rozsahem až 240. Měřené vzdálenosti jsou filtrovány na očekávaný rozsah. Hodnoty vzdálenosti větší než zvolená maximální hodnota jsou omezeny na očekávaný dosah (např. 3,5 m). Znamená to, že taková měření informují o volném prostoru a odraz od vzdálenější překážky není uvažován. Dále nejsou uvažovány hodnoty měřené vzdálenosti menší než je poloměr robotu, zde se předpokládá, že dálkoměr je umístěn ve středu robotu a nejsou uvažovány bližší překážky než je poloměr robotu. 1.2 Modely prostředí Mezi základní modely prostředí patří mřížka obsazenosti, topologická mapa nebo symbolická mapa [?]. Každý z těchto modelů poskytuje určité výhody, ale má také své nevýhody, zejména v souvislosti s náročností tvorby modelu a následné práci s modelem. Pravděpodobnostní mřížka obsazenosti patří mezi velmi jednoduché modely, ale zároveň také poskytuje snadnou manipulaci. Pracovní prostředí robotu je reprezentováno mřížkou, která dělí prostor na množinu buněk. Každá buňka pak má přiřazenu hodnotu pravděpodobnosti obsazení buňky překážkou. Nevýhody tohoto modelu jsou především pamět ová náročnost a s ní související výpočetní náročnost, což platí zejména pro rozsáhlá prostředí. Náročnost také vzrůstá při požadavku na vyšší přesnost, kdy je dělení prostoru na buňky jemnější a tím celkový počet buněk vyšší. Se současnou úrovní výpočetních prostředků je však tato nevýhoda ve většině případů (pro reprezentaci vnitřních prostor s řádově jednotkami až desítkami metrů čtverečních) nepodstatná. Proto se jedná o často využívaný způsob reprezentace prostředí. V této práci je jako model použita právě mřížka, která dobře vyhovuje požadavkům pro průzkum prostředí. Pro úlohu průzkumu je podstatné, že se velmi snadno integruje více měření do jediné mapy. Pravděpodobnostní přístup určuje pravděpodobnost obsazení buňky b za předpokladu měření r. Alternativně lze využít například věrohodnostní přístup, tzv. Dempster Shaferova teorie [?]. V pravděpodobnostním přístupu lze pro slučování více měření do jediné mapy zavést zjednodušující předpoklady, kterými jsou nezávislost stavu jednotlivých buněk a komplementarita pravděpodobnostního popisu. Komplementaritou se rozumí uvažování pouze dvou stavů buňky, kde s(b) = v značí volnost a s(b) = o obsazenost buňky. Pak platí P (s(b) = v) = 1 P (s(b) = o). Po zavedení zjednodušujících předpokladů platí pro novou hodnotu pravděpodobnosti 4

14 KAPITOLA 1. PROBLÉMY ROBOTICKÉHO PRŮZKUMU obsazení buňky b: P (s(b) = o r) = p(r s(b) = o).p (s(b) = o) p(r s(b) = o).p (s(b) = o) + p(r s(b) = v).p (s(b) = v), kde p(r s(b) = o) reprezentuje model senzoru a P (s(b) = o) je předchozí hodnota buňky. 1.3 Lokalizace Úlohou lokalizace se rozumí problém určení polohy robotu v prostředí. Pro řešení této úlohy byla vyvinuta celá řada přístupů řešení, které jsou méně či více sofistikované. Mezi základní přístupy lokalizace patří takzvaná úloha dead-reckoning, jejímž nejjednodušším případem je odometrie, u které se pozice robotu určuje na základě sledování ujeté vzdálenosti. Tento přístup je sice velmi jednoduchý, má však nevýhody především v integrující se chybě. Jiné způsoby lokalizace využívají například principu trilaterace [?], která slouží k určení vzdáleností od známých bodů, podobně jako u GPS. Existuje však mnoho dalších metod, například třída přístupu označovaná jako SLAM z anglického Simultaneous localization and mapping [?]. Lokalizace je složitý problém a zabývá se jím mnoho prací, nebot úloha lokalizace patří mezi základní a klíčové problémy mobilní robotiky. Cílem této práce však není řešit úlohu lokalizace, proto je v řešené úloze autonomního průzkumu robot uvažován jako lokalizovaný, tzn. lokalizaci řeší nezávislý systém, který poskytuje dostatečně přesné určení polohy robotu. 1.4 Navigace Úloha navigace řeší problém jak dostat robot z nějakého místa na zvolenou pozici, aniž by se robot srazil s objekty prostředí. Tato úloha v sobě kromě lokalizace také zahrnuje úlohu řízení a zejména plánování pohybu / cesty. Z pohledu plánování a řízení lze navigaci rozdělit do dvou kategorií: na globální a lokální. Úkolem globální navigace je naplánovat cestu z jednoho místa prostředí do druhého ve známém prostředí (mapě). Taková globální mapa však nemusí zcela odpovídat skutečné situaci, protože mohla být například vytvořena dříve než došlo k nějaké modifikaci prostředí. Proto se využívají lokální plánovače, které jsou schopny korigovat pohyb robotu dle globálně naplánované cesty v závislosti na aktuálním stavu prostředí. Navigační (plánovací) metody lze dále dělit podle použitého modelu prostředí. Globální i lokální možnosti navigace jsou podrobněji popsány dále v tomto oddíle. Globální navigace Na mřížkové reprezentaci prostředí (použité v této diplomové práci) je příkladem plánovacího algoritmu takzvaný Distance Transform (DT) [?] či také wavefront, který je též využit v této diplomové práci. Podstatou tohoto algoritmu je ohodnocení všech buněk určitou cenou. Cena každé buňky odpovídá vzdálenosti od buňky označené jako cílová. Tento algoritmus dokáže naplánovat nejkratší bezkolizní cestu ze všech buněk reprezentující volný prostor do cílové buňky. 5

15 KAPITOLA 1. PROBLÉMY ROBOTICKÉHO PRŮZKUMU Alternativně lze pro plánování cesty využít algoritmy hledání cesty v grafu, nebot mřížku si lze představit také jako graf, kde každá buňka znamená jeden vrchol spojený hranami s vrcholy reprezentující sousední buňky volného prostoru. Tím se mřížková reprezentace podobá topologické mapě. Topologická mapa je v podstatě také graf, kde vrcholy grafu představují určité oblasti prostředí a hrany pak cesty mezi vrcholy. Mezi základní algoritmy hledání cesty v grafu patří například Dijkstrův algoritmus, algoritmus A nebo algoritmy prohledávání do šířky či do hloubky [?]. U plánování cesty je třeba uvažovat také fyzické rozměry robotu, protože by se mohlo snadno stát, že naplánovaná cesta není pro robot schůdná, nebot vede robot nějakým úzkým průjezdem, do kterého se robot nevejde. K plánování schůdných cest a trajektorií se využívá dříve zmíněný konfigurační prostor C [?]. Ten zohledňuje různá omezení robotu, například že robot s Ackermanovým podvozkem se nemůže otočit na místě. V této práci je uvažován robot s diferenciálním podvozkem, který lze snadno modelovat jako disk o poloměru r, kružnice opsané kolem půdorysu robotu. Konfigurační prostor takového robotu lze snadno vytvořit z mapy prostředí, ve kterém jsou překážky zvětšeny právě o poloměr r operací označovanou jako Minkowského suma. Tuto operaci si lze na mřížkové mapě představit (a též přímo implementovat) jako vepsání kružnice poloměru r, která modeluje robot, kolem hraničních bodů překážek. Všechny buňky uvnitř této kružnice jsou označeny jako překážky. Takto získaný konfigurační prostor je vlastně pouze zvětšenou mapu, ve které lze jednoduše plánovat pro bodový robot. Lokální navigace Lokální plánovací algoritmy slouží především pro zabránění kolizím. I přesto, že globální plánovací algoritmus dokáže naplánovat bezkolizní cestu, nelze předpokládat její přesné projetí. Při průzkumu neznámého prostředí je totiž například možné, že se vyskytnou dříve špatně detekované překážky. Další problém nastává u dynamického prostředí, což je v podstatě i případ použití více robotů. V multi-robotickém průzkumu je totiž nutné zajistit, aby některý z robotů neuvažoval jiný robot jako překážku. To by mohlo vést k tomu, že v budované mapě, která je též použita pro plánování pohybu dalších robotů, by se mohl robot označený jako překážka (jiným robotem) zablokovat. Na druhé straně může globální plánovač pro některý robot naplánovat cestu přes pozici jiného robotu. Jedním z možných přístupů řešení zmíněných problémů jsou vlastní lokální mapy pro každý robot, kde pozice ostatních robotů mohou být označeny jako překážky. Lokální mapy však neřeší problém dynamických překážek. V takovém případě může přesným (a slepým ) sledováním naplánované cesty dojít ke kolizi robotu s pohybující se překážkou či vzájemné kolizi mezi roboty. Proto je při pohybu robotu nutné sledovat, zda se v cestě neobjevila nová překážka. Pokud ano, je nutné se ji vyhnout. K tomu lze využít některého z reaktivních algoritmů řízení robotu, jako je například algoritmus Bug [?]. Další možností jsou rozšíření tohoto algoritmu jako jsou například přístupy Vector Field Histogram (VFH) [?] či jeho vylepšení VFH+ [?] nebo Smooth Nearness Diagram (SND) [?]. Reaktivní algoritmy využívají přímo aktuální data z dálkoměrných senzorů robotu k detekci překážek a navrhují směr pohybu robotu jak se jim vyhnout. V této práci je použit algoritmus SND, konkrétně jeho implementace z projektu Player [?]. 6

16 KAPITOLA 1. PROBLÉMY ROBOTICKÉHO PRŮZKUMU Předpoklady a přístupy autonomní navigace uvažované v práci V předchozích odstavcích jsou zmíněna některá možná řešení dílčích problémů v souvislosti s robotickým průzkumem. Konkrétní řešení využitá v této práci jsou následující. Robot: Je použit robot S1R ze systému SyRoTek [?] s diferenciálním podvozkem. Senzory: Robot je vybaven laserovým dálkoměrem Hokuyo URG-04LX. Lokalizace: Robot je lokalizovaný. Model prostředí: pravděpodobnostní mřížka obsazenosti. Navigace - globální plánovač: algoritmus DT. Navigace - lokální plánovač: algoritmus SND. 7

17 Kapitola 2 Robotický průzkum Cílem robotického průzkumu je vytvořit požadovaný model neznámého prostředí, tj. dané prostředí prozkoumat. Základním problémem průzkumu neznámého prostředí je určit kam navigovat robot s ohledem na zvolené kritérium průzkumné mise. V případě stavby modelu prostředí v co nejkratším čase tak mohou být místa navigace určována s požadavek získání co nejvíce nových informací o prostředí. Alternativně lze také zohledňovat například požadavky na podmínky lokalizace [?]. Mimoto je možné v úloze průzkumu zohledňovat dílčí cíle průzkumu, které souvisí s konkrétními požadavky, např. vytvoření modelu celého prostředí, nalezení nějakých prvků v prostředí apod. Složitost efektivního autonomního průzkumu neznámého prostředí vyplývá přímo z definice úlohy, a to proto, že se jedná o prostředí neznámé. Hlavním problémem tedy je, že je nutné se rozhodovat v okamžiku, kdy všechny relevantní informace nejsou k dispozici, nebot znalosti o prostředí jsou budovány postupně tak jak je prostředí postupně prozkoumáváno. Z důvodu nedostatku informací nelze zajistit správné rozhodnutí, jak nejlépe postupovat, nebot možnosti předvídání následného vývoje jsou omezené. Je zřejmé, že různé metody, případně různá nastavení konkrétních metod, mají za následek různé chování, a také mohou poskytovat různé výsledky. Posouzení kvality vybraných strategií přidělování cílů (konkrétních nových míst pro navigaci) jsou hlavní náplní této diplomové práce, přičemž kvalita průzkumu je posuzována z hlediska času potřebného k vytvoření mapy celého prozkoumávaného prostředí. Přehled základních přístupů řešení úlohy robotického průzkumu je uveden v následujících oddílech této kapitoly. 2.1 Přístupy robotického průzkumu Přestože je z hlediska řízení mobilního robotu nejjednodušším způsobem řízení robotu operátorem na dálku, tzv. tele-operovaný režim, zabývá se tato práce autonomními způsoby robotického průzkumu. Zejména proto, že v řadě případů není tele-operovaný způsob řízení efektivní, například z důvodu značného dopravního zpoždění řídicího signálu. Dále to jsou případy, kdy pracovní prostředí je velmi rozsáhlé a složité a proces rozhodování o dalším postupu je pro lidského operátora značně náročný. Lze sice operátorovi poskytnout různé prostředky pro podporu rozhodování, nicméně ty však mohou využívat přístupy, které se blíží využití plně autonomní metody řízení robotu. Navíc je přirozeným cílem nově vyvíjených metod zvýšení efektivity. Proto je jedním z výzkumných témat současné robotiky studium takových přístupů řešení, která povedou na autonomní 8

18 KAPITOLA 2. ROBOTICKÝ PRŮZKUM rozhodování bez nutnosti zásahu lidského operátora. Takovými přístupy se také zabývá tato diplomová práce a některé z těchto přístupů jsou diskutovány v následující části textu. Reaktivní přístupy První skupinu přístupů tvoří ty, u kterých robot nové informace zjišt uje pohybem po předem zadané trajektorii. Tento přístup je využit například v [?]. Zde se robot může pohybovat po kružnicích, trojúhelnících nebo jiných předem definovaných trajektoriích, případně je jeho pohyb náhodný. V [?] je uveden algoritmus, který robot naviguje po křivce inspirované Archimédovou spirálou. Příklad takové trajektorie je uveden na obr Náhodný pohyb robotu byl popsán v [?] a další odkazy na podobné postupy lze najít v [?]. Obrázek 2.1: Příklad průzkumu pohybem po předem zadané trajektorii - spirále. Obrázek převzat z [?]. Výše zmíněné metody byly jedny z prvních, které se k robotickému průzkumu využívaly. Není zde potřeba žádný složitý plánovač, způsob průjezdu prostředím je znám již před začátkem průzkumu. Pro navigaci pak při vlastním průzkumu stačí jednoduchý reaktivní algoritmus, který slouží pro sledování překážek. Nijak se zde nevyužívá nově získaných informací o prostředí, což může způsobit nevhodné chování, například opakované průjezdy již prozkoumaným prostředím. Nevýhody se projeví zejména ve velmi komplexních prostředích. U těchto metod se také často předpokládají značně omezující podmínky na prostředí - rovnoběžnost či kolmost stěn apod. Tyto metody proto tvoří specifickou skupinu a nelze je dobře srovnávat s ostatními metodami, především s těmi, které využívají vytvářené znalosti o prostředí. Z tohoto důvodu nejsou v této práci dále podrobněji popisovány. Informované přístupy Na druhé straně reaktivních algoritmů jsou přístupy, které pro navigaci využívají nově získaných informací o prozkoumávaném prostředí. Tyto algoritmy zpravidla pracují iterativně. Nejdříve je provedeno zjištění prvotních informací o prostředí v okolí robotu. Následně již probíhá hlavní iterativní cyklus řízení robotického průzkumu. Průběh cyklu lze shrnout v pěti krocích: 9

19 KAPITOLA 2. ROBOTICKÝ PRŮZKUM 1. Na základě doposud získaných informací o prostředí se provede rozdělení prostředí na určité oblasti. Způsob rozdělení se může lišit podle konkrétní metody/strategie průzkumu. 2. Provede se ohodnocení definovaných oblastí. 3. Po ohodnocení se provede výběr cíle (či množiny cílů), kam má být robot navigován. 4. Následně se robot k cíli vydá, přičemž zkoumá své okolí a průběžně aktualizuje mapu (budovanou reprezentaci znalostí o prostředí). 5. Po dosažení cíle či jiné události, kterou může být například uplynutí zadaného času se provádí test ukončení průzkumu. Takovým testem může být například detekce situace kdy neexistují neprohledané části prostředí, které jsou dosažitelné. V takovém případě je průzkum ukončen. V opačném případě následuje nový běh cyklu (skok na krok 1), ve kterém jsou již uvažovány nově získané informace o prostředí. Jednou z důležitých částí tohoto obecného přístupu je uvažování nedosažitelných částí prostředí. Ty se mohou vyskytovat například za úzkým průchodem, kam se robot nemůže dostat. Takové části proto musí být vyřazeny, nebot by vedly na snahu o splnění nedosažitelného cíle. Z tohoto důvodu je nutné je označit jako neprozkoumatelné. Vlastní ohodnocování oblastí/cílů probíhá podle zvolených kritérií, například vzdálenosti od robotu, vzdálenosti mezi jednotlivými cíli nebo možného informačního zisku. Je zřejmé, že různá kritéria mohou být kombinována, případně použita pouze některá podle konkrétní úlohy řešení robotického průzkumu. Základním problémem řešeným u všech metod je výběr vhodného cíle k navštívení. V každém okamžiku existuje množina cílových pozic, které je nutno prozkoumat, přičemž počet cílů se v průběhu průzkumu mění. Na začátku bývá cílů málo a tím, že se robot vydá k vybranému cíli, odkrývá nové prostředí a tím přibývají i cíle nové. Vlastním úkolem plánování průzkumu je postupně vybírat jednotlivé cíle, aby byla dodržena stanovená kritéria. Právě způsob výběru nového cíle definuje strategii robotického průzkumu. Mezi kritéria patří například rychlost (potřebný čas) průzkumu. V případě, že se robot většinou pohybuje nějakou konkrétní známou rychlostí, lze místo času uvažovat kritérium ujeté dráhy. Pořadí průzkumu/navštívení jednotlivých cílů vyplývá z ohodnocení jednotlivých oblastí. Takové ohodnocení je však vytvořenou bez celkové znalosti prostředí, proto je tak pouze aproximací skutečné očekávané hodnoty. Hlavním důvodem je, že při pohybu robotu k jedné oblasti se objevují oblasti nové, se kterými se v předchozím plánu nepočítalo. Výběr nejlepšího cíle pro průzkum proto není triviální a postupy výběru mohou být složité. V souvislosti s cílovými oblastmi se nabízejí následující otázky. První takovou otázkou je, jaký vliv na kvalitu a rychlost průzkumu má pořadí, ve kterém se cíle navštíví. Druhá otázka je, jaký vliv má na průzkum počet cílových oblastí. Zde je možné předpokládat, že s rostoucím počtem cílů a při využití vhodných postupů je možné navštívení jednotlivých cílů lépe naplánovat. Nalezení odpovědí na tyto otázky je rovněž cílem této diplomové práce a lze je nalézt v kapitole 4. Hlavním představitelem informovaného přístupu robotického průzkumu je takzvaný frontier-based přístup, který představitel Yamauchi v [?]. Jádrem tohoto přístupu je definice cílových oblastí pro pohyb robotu, které jsou velmi často používány i v jiných 10

20 KAPITOLA 2. ROBOTICKÝ PRŮZKUM přístupech, proto představuje Yamauchiho přístup de facto standardní způsob nalezení množiny cílových oblastí v robotickém průzkumu. Proto je tento elementární přístup podrobněji popsán v následujícím oddíle. 2.2 Frontier-Based přístup V úloze průzkumu se rozlišují dva základní stavy prostředí. Daná část prostředí je bud známá, tj. prozkoumaná již dříve, nebo neznámá. Mezi známými a neznámými částmi je rozhraní, pro které Yamauchi v [?] zavedl termín frontier. Jeho práce [?] se stala základem pro mnoho dnes používaných metod robotického průzkumu a všechny metody využívající rozhraní se proto označují frontier-based. Z důvodu významu jeho práce se i v této práci používá originálního anglického termínu 1. Jako model prostředí je v původní práci [?] zvolena pravděpodobnostní mřížka. Ta se pro tento účel jeví jako velmi vhodný model. Mřížkou lze totiž prostředí rozdělit na mnoho malých částí - buněk. Jemnější dělení znamená vyšší počet buněk a též vyšší přesnost určení cílových oblastí. Jednoduše se také hledají frontiery a existují dobré metody plánování cesty, například algoritmus DT uvedený v oddíle 1.4. Frontier se skládá ze souvislé množiny hraničních bodů, přičemž hraniční bod je každý takový bod, který leží ve volném (a tedy známém) prostoru a sousedí s nějakým neznámým bodem. Pro zjednodušení se každá taková množina bodů - frontier reprezentuje nějakým významným bodem, například středem oblasti množiny bodů. Frontiery, respektive jejich středy, tvoří množinu cílů, kam je robot následně navigován. Příklad mřížky s vyznačeným frontierem je uveden na obrázku 2.2. Obrázek 2.2: Mřížka s vyznačením prozkoumaného prostou - bíle je značen volný prostor, černě překážky, neznámý prostor světlým a frontiery tmavým odstínem šedi. Frontier-based je skupina metod, které využívají definice frontieru k výběru cílů pro navigaci robotu. Základem těchto metod je metoda, kterou popsal Yamauchi v [?]. Jednotlivé rozšiřující metody odvozené od této základní metody se liší především ve způsobu ohodnocení cílů. Z toho vyplývá i změna pořadí, ve které jsou cíle navštíveny, a které se upřednostňují. Základní metoda robotického průzkumu a vybrané rozšiřující metody jsou popsány v následujících oddílech. 1 Mimoto vhodný český ekvivalent, který by dobře vystihoval podstatu rozhraní známé a neznámé části prostředí, není dosud ustálen. 11

21 2.3 Základní metoda robotického průzkumu KAPITOLA 2. ROBOTICKÝ PRŮZKUM Základní metoda popsaná Yamauchim v [?] je velmi jednoduchá. Spočívá v navigaci robotu k nejbližšímu frontieru. Jedná se o takzvaný hladový algoritmus a v době svého uvedení bylo experimentálně zjištěno, že poskytuje uspokojivé výsledky. Tato metoda je sice velmi snadná na implementaci má však některé nevýhody plynoucí z hladové strategii přidělování cílů. V prvé řadě není vždy nejvhodnější navigovat robot k nejbližšímu frontieru. Příkladná situace je znázorněna na obrázku 2.3(a). Robot se pohybuje po zelené křivce. Následně se provede výběr nejbližšího cíle, naplánovaná cesta je znázorněna silnými černými úsečkami. Je zřejmé, že v této situaci je vhodnější nejprve vybrat cíl nalevo a následně pokračovat, jak je znázorněno na obrázku 2.3(b). V konečném důsledku může robot řízený hladovou strategií ujet mnohem delší trasu a průzkum se tak značně prodlouží. (a) hladový přístup (b) plánování přes více cílů Obrázek 2.3: Porovnání výběru cíle. Obrázek převzat z [?]. Především z důvodu možného neefektivního hladové výběru nejbližšího cíle se navazující přístupy snaží o rozšíření této základní metody. Touto problematikou se zabývá například [?], odkud je převzat i obrázek 2.3. Vybrané metody rozšířující základní Yamauchiho přístup jsou uvedeny v následujících oddílech. 2.4 Užitečností metody robotického průzkumu Jedno z možných rozšíření základního přístupu spočívá v přidání dalšího parametru k ohodnocení potencionálních cílů. Takové rozšířující metody používají různě definované tzv. užitkové funkce, které zohledňují i jiné kritéria než jen vzdálenost cíle od aktuální pozice robotu. Tyto metody jsou založeny na ohodnocení informačního zisku, pravděpodobnosti výskytu dalších neprohledaných částí, výpočtu viditelnosti a podobně, tj. potencionálního užitku daného cíle pro následný průzkum. Jeden z příkladů možného ohodnocení užitečnosti je popsán v [?], kde je generována množina potencionálních cílů Q ve volném prostoru poblíž frontierů. Ohodnocení každého kandidáta probíhá podle očekávané informačního zisku v kombinaci se vzdáleností od současné pozice. Užitková funkce je definována vztahem (2.1), kde L(q) je délka bezkolizní cesty, λ je kladná konstanta a A(q) je potencionální viditelnost z kandidáta q, q Q. g(q) = A(q)e λl(q), (2.1) Zajímavým užitečnostním přístupem je ohodnocení založené na struktuře prostředí [?]. Tento přístup je motivován faktem, že prostředí vytvořená člověkem často obsahují 12

22 KAPITOLA 2. ROBOTICKÝ PRŮZKUM Obrázek 2.4: Ukázka prostředí s chodba. Převzato z [?]. určité struktury, jako jsou například chodby s přilehlými místnostmi. Těchto apriorních znalostí lze využít k zefektivnění průzkumu. Autoři [?] upřednostňují v případě průzkumu vnitřních prostor (např. kancelářských budov) právě chodby, nebot jejich průzkumem se zvyšuje počet nových cílů a tím také nalezení přilehlých místností. To je výhodné zejména při větším počtu robotů, protože nalezené cíle lze lépe rozdělit mezi roboty. Ukázka takového prostředí je znázorněna na obrázku 2.4. Jedná se o mapu skutečné nemocnice, která je jednou ze vzorových map systému Player/Stage [?]. Podobné rozšířující metody průzkumu předpokládají, že změna způsobu výpočtu ohodnocení potencionálních cílů bude mít za následek zefektivnění průzkumu. Výsledky zmíněných rozšířujících metod ukazují, že průzkum může být skutečně efektivnější při uvažování dalších parametrů v ohodnocení jednotlivých cílů. Výběr následujícího cíle je však stále prováděn podobně jako v základním přístupu. Jako příští cíl je vždy vybrán ten, který má nejlepší ohodnocení. Proto může dojít k podobné situaci, která je znázorněna na obrázku 2.3(a). Přístupy, které vybírají pouze aktuální nejlepší řešení, se často označují jako hladové. Nevýhodou prostého výběru nejbližšího, či nejlépe ohodnoceného frontieru, jako následujícího cíle je, že se vůbec nezohledňuje výběr cílů v dalším běhu plánovacího cyklu. Je zřejmé, že většina hraničních oblastí nalezených během průzkumu musí být prozkoumána přímo. Výjimkou jsou situace, kdy robot objede překážku a k hranici se dostane z druhé strany. Pak nemusí prozkoumávat původně nalezený cíl. Pokud však překážku nelze objet a někde na začátku zůstane neprohledaná část, robot se musí vracet zpět, aby byly prohledány všechny cíle. Tato situace typicky nastává právě při průzkumu hladovou metodou. Je proto možné, že dlouhodobější plánování a snaha optimalizovat celkovou ujetou vzdálenost může přinést vyšší užitek a průzkum tak zefektivnit. Cílem takové strategie průzkumu je zohlednění výběru cílů v budoucnu, tj. nalezení plánu, který definuje pořadí, v jakém se mají současné cíle navštívit. 2.5 Řešení robotického průzkumu jako problém obchodního cestujícího Využití problému obchodního cestujícího při řešení úlohy průzkumu neznámého prostředí jedním robotem bylo představeno v [?]. Hlavní motivací tohoto přístupu je určit pořadí navštívení více cílů, což je problém velmi podobný úloze obchodního cestujícího. Problém obchodního cestujícího, v angličtině Traveling Salesman Problem (TSP), byl popsán v roce 1930 [?]. Jedná se o problém nalezení nejkratší hamiltonovské kružnice (hamiltonovského cyklu) v ohodnoceném grafu [?]. Graf tvoří množina vrcholů v 0, v 1,..., v n a ohodnocených hran s cenou d(v i, v j ), která představuje délku hrany z vrcholu v i do 13

23 KAPITOLA 2. ROBOTICKÝ PRŮZKUM vrcholu v j, pokud tato hrana existuje. Hamiltonovská kružnice je v teorii grafů taková kružnice, která projde právě jednou všemi vrcholy grafu. Kružnice je uzavřená (tj. počáteční vrchol je identický s koncovým vrcholem) posloupnost vrcholů. Pro využití TSP pro robotický průzkum je důležité poznamenat, že na rozdíl od výše uvedené definice problému, ve kterém se hledá uzavřená cesta, se při průzkumu hledá otevřená cesta, tj. robot se nevrací na výchozí pozici v 0. Tento problém je možno řešit přidáním fiktivního vrcholu v tak, že z tohoto vrcholu vede hrana do všech ostatních vrcholů, přičemž d(v, v 0 ) = 0 a d(v, v i ) = ω, i = 1,..., n, kde ω je nějaké velmi vysoké číslo, např. větší než délka nejdelší možné cesty [?]. Jelikož řešení úlohy TSP optimalizuje cenu celkové cesty přes více cílů, tak velmi dobře popisuje požadavek na zlepšení metody průzkumu více cílových oblastí. Řešení založené na formulaci úlohy průzkumu jako TSP navíc umožňuje k ohodnocení hrany využít kromě vzdáleností i užitkových funkcí popsaných v předchozím oddíle 2.4 a využít tak i jejich výhod. Uvedená formulace problému obchodního cestujícího je definován pro graf, na který je nutné převést i úlohu plánování navštívení více cílů v robotickém průzkumu. Při reprezentaci prostředí mřížkou to může na první pohled sice vypadat jako nevýhoda, ale vytvoření grafu z mřížky je velmi jednoduché. Vrcholy v grafu jsou dvou typů. První vrchol reprezentuje výchozí pozici robotu. Druhým typem jsou vrcholy, které jsou tvořeny středy všech hraničních oblastí, tj. vrcholy které je nutné prozkoumat. Ohodnocení hran se nalezne z délky cest mezi jednotlivými vrcholy, například algoritmem DT [?], který je určen přímo pro plánování na mřížce. V [?] autoři provedli porovnání robotického průzkumu založeného na řešení úlohy TSP se základním hladovým přístupem pro různá prostředí a nastavení. Z uvedených výsledků vyplývá, že průzkum touto metodou je až o 30 % rychlejší než při použití hladové metody. Tento nárůst efektivity je jednou z hlavní motivací řešení této diplomové práce, která se věnuje ověření možnosti rozšíření tohoto principu pro průzkum více roboty, tj. na základě řešení problému více obchodních cestujících. 14

24 Kapitola 3 Multi-robotický průzkum Využití více robotů pro průzkum neznámého prostředí představuje způsob, jak průzkum urychlit. Mezi další výhody nasazení více robotů také patří vyšší robustnost - při výpadku některého z robotů mohou průzkum dokončit ostatní roboty. V mobilní robotice se úlohy řešené vyšším počtem robotů označují jako multi-robotické. Při multi-robotickém průzkumu prostředí však nelze předpokládat, že použití n robotů zrychlí průzkum n- krát. V multi-robotických úlohách je totiž nutné uvažovat další omezující podmínky plynoucí ze sdílení pracovního prostoru více roboty, což přináší řadu komplikací. Mezi komplikace patří koordinace robotů, jejímž úkolem je zajistit, aby se roboty nesrazily. To lze řešit několika způsoby. Jednou z možností je, že každý robot zná pozice ostatních a s ohledem na to plánuje své další akce. Alternativní možností je využití některého z reaktivních navigačních algoritmů. Dále je vhodné zajistit, aby se roboty při průzkumu prostředí vzájemně neoznačovaly jako překážky. To by totiž mohlo vést k tomu, že robot označený v mapě za překážku by byl v případě použití stejné mapy k plánování jeho trajektorie zablokovaný a nemohl by dále pokračovat v průzkumu. Další komplikace mohou být způsobeny použitím stejných senzorů jednotlivými roboty, například sonary, u kterých může docházet ke vzájemnému rušení nebo přeslechům. Z hlediska efektivního řešení úlohy je hlavní problém multi-robotického přístupu takzvaná kooperace, která spočívá ve vhodném rozdělení cílů jednotlivým robotům. V případě multi-robotického průzkumu je u složitých a rozsáhlých prostor vhodné, aby každý robot prozkoumával určitou část prostředí. Nevhodné je naopak, aby více robotů prozkoumávalo stejné či blízké části prostředí nebo, aby jeden robot často přejížděl přes již známé části prostředí. Podobně jako v případě průzkumu neznámého prostředí jediným robotem, je i při využití více robotů obtížnost plánování dána právě znalostmi o prostředí, které jsou budovány postupně během průzkumu. V multi-robotického průzkumu je možné zvolit jak bude přidělování cílů a plánování pohybu probíhat. Zde je možné volit mezi centralizovaným nebo decentralizovaným přístupem. Centralizovaná architektura plánování se vyznačuje jediným řídicím prvkem, který rozděluje cíle všem robotům. Při decentralizovaném způsobu si každý robot vybírá cíle sám, tj. každý robot se rozhoduje individuálně. Oba jmenované přístupy mají své výhody i nevýhody. Mezi výhody centralizovaného přístupu patří jednoduché řešení problému koordinace robotů, nebot v tomto přístupu se využívá společná globální mapa a při plánování jsou známy pozice všech robotů. Lze tedy jednoduše zabránit označení ostatních robotů za překážky a také případně naplánovat cesty jednotlivým robotů tak, aby se roboty vzájemně vyhnuly. 15

25 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM Kromě pozic všech robotů jsou v případě centralizovaného přístupu také vždy známy všechny potencionální cíle. Využitím jediného plánovače pak lze také jednodušeji řešit i kooperaci robotů, nebot plánovač může využít veškeré dostupné znalosti o aktuální situaci průzkumu. Hlavní nevýhodou centralizovaného přístupu je však robustnost, která je závislá na centrálním řídicím prvku. Při selhání řídicího systému totiž selhává i celá průzkumná mise. Naproti tomu výhoda decentralizovaného přístupu je právě v robustnosti na případné výpadky dílčích komponent, nebot neobsahuje centrální prvek [?]. V tomto přístupu může mít každý robot také jinou strategii výběru cílů, což může vést k efektivnějšímu průzkumu. Decentralizovaný přístup je však složitější na koordinaci, nebot roboty si udržují své lokální mapy a je nutná vzájemná komunikace. Plánování a výběr cílů je také složitější, protože ne vždy jsou všechny informace o možných cílech dostupné každému robotu. Dalším problémem je omezený dosah komunikace robotu, což vede na přístupy, ve kterých je společná mapa budována pouze v jistých definovaných okamžicích. Cílem této práce je studium strategií přidělování cílů v centralizovaném přístupu a jejich vliv na rychlost provedení průzkumné mise. Proto jsou dále v textu uvažovány zejména centralizované přístupy. Diskuse základního problému multi-robotického průzkumu a stručný přehled možných přístupů řešení je uveden v následujícím oddíle. Podrobnější popis vybraných strategií přidělování cílů je pak uveden v navazujících oddílech. 3.1 Přidělování cílů v multi-robotickém průzkumu Tak jako v případě průzkumu jediným robotem jsou i přístupy řešení problému rozdělení cílů v úloze multi-robotického průzkumu založeny na frontier-based přístupu, který zavedl Yamauchi v [?]. V této hladové metodě robot vybírá jako následný cíl pro průzkum vždy nejbližší frontier. Přirozeným rozšířením pro multi-robotický průzkum je, že každý robot vybírá jako svůj další cíl k němu nejbližší frontier. Toto rozšíření představil sám Yamauchi v [?]. Jedná se o decentralizovaný a hladový způsob průzkumu, ve kterém má každý robot svoji mapu a nové cíle jsou vybírány individuálně. To má však za následek, že více robotů může prozkoumávat stejný cíl, a proto je tento způsob výběru neefektivní, viz obr. 3.1(a). V případě centralizované realizace přístupu [?] je možným řešením problému průzkumu jednoho cíle více roboty postupné vybírání ze společného seznamu frontierů. Pořadí výběru cílů může být například dáno pořadím v jakém jsou roboty aktivovány a registrovány v centrálnímu prvku. Případně může být pořadí výběru náhodné. Po přiřazení určitého frontieru některému z robotů se tento frontier odstraní ze seznamu. I v tomto případě však nemusí být přidělování cílů jednoznačné, nebot je vhodné zohlednit zvolená kritéria. Například celkový čas průzkumu závisí na ujeté vzdálenosti jednotlivými roboty, které jsou závislé právě na pořadí v jakém jsou cíle robotům přiděleny. Může tak nastat situace, kdy je jednomu robotu přiřazen jemu nejbližší cíl, který je následně odstraněn ze seznamu aktivních cílů. Z pohledu maximální ujeté vzdálenosti jednotlivými roboty však může být výhodnější, aby tento cíl prozkoumal jiný robot. Příklad takovéto situace je zobrazena na obrázku 3.1. Při hladovém přístupu, obr. 3.1(b), vybere robot R1 nejbližší cíl C1, robot R2 následně vybere nejbližší cíl ze zbylých cílů. V tomto případě je však výhodnější rozdělení cílů dle obrázku 3.1(c), které vede na kratších dobu potřebnou k navštívení obou cílů. 16

26 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM (a) dva roboty prohledávají jeden cíl (b) nevhodné rozdělení cílů (c) optimální rozdělení cílů Obrázek 3.1: Příklad výběru cílů hladovým a optimalizovaným přístupem při multirobotickém průzkumu. Neefektivita hladové metody plyne především z nedostatečného řešení kooperace. Snadno se tak může stát, že několik blízkých cílů či jedna místnost je prohledána více roboty. V těchto případech je však většinou mnohem výhodnější blízké cíle prohledávat jedním robotem, zatímco zbylé roboty mohou prohledávat ostatní cíle v jiné (vzdálenější) části prostředí. Pokud by navíc jednu místnost prozkoumávalo více robotů mohlo by se stát, že by se roboty potkaly ve dveřích, což může průzkum ještě více zdržet z důvodu nutnosti postupného průjezdu dveřmi. Je zřejmé, že základní hladová metody sice dokáže úlohu multi-robotického průzkumu řešit, avšak její nevýhoda je v neefektivním rozdělování cílů mezi roboty. Tato práce se zabývá studiem vlivu jiných strategií přidělování cílů na efektivitu průzkumu pokročilejšími metodami plánování, které se snaží o lepší řešení kooperace. Mezi pokročilejší přístupy patří například aukční metody či různé metody využívající rozdělení prostředí na menší celky. Jinou možností pro rozdělení cílů je využití některých biologicky inspirovaných algoritmů, v literatuře též označované jako softcomputing techniky, mezi které patří genetické algoritmy nebo algoritmy mravenčích kolonií. Jednou z možných metod je také rozšíření přístupu řešení robotického průzkumu formulovaného jako úloha obchodního cestujícího (viz oddíl 2.5) pro průzkum více roboty. Vybrané metody jmenovaných pokročilých přístupů jsou podrobněji popsány v následujících oddílech. 3.2 Aukční metody Aukční přístupy, někdy také nazývané market-based, je množina podobných a velmi často používaných metod pro řešení problému rozdělování úloh. V případě multi-robotického průzkumu se tyto přístupy využívají pro přidělení jednotlivých cílů mezi roboty. Aukční přístupy jsou reprezentantem metod založených na takzvaných agentních technologiích. Jako agent se označuje entita, která je schopna vykonávat určitou činnost, proto lze mobilní robot považovat za agenta. Dále se agent označuje jako racionální agent, pokud se vždy snaží vykonat nejlepší činnost z ohledem na řešenou úlohu. Aukční metody vycházejí z tržního chování, proto se v aukčním přístupu každý agent snaží zajistit vysokou globální produktivitu tím, že maximalizuje osobní zisk pokud možno za minimálních výdajů. Hlavním problémem v aukčním přístupu je určit, co je ještě pro agenta výhodné a co již nikoli. Princip aukčního přístupu je následující. Nejdříve je nutné provést ohodnocení užitečnosti každého potencionálního cíle pro každého agenta. Dále každý agent vypočte cenu dosažení cílů. Výpočet ceny dosažení je 17

27 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM poměrně jednoduchý, nebot lze přímo použít vzdálenost cíle od robotu. Výpočet užitečnosti je však složitější. Slouží k tomu užitkové funkce podobné těm uvedeným v předchozí kapitole, v oddíle 2.4. K užitečnosti tak lze přistupovat z mnoha různých pohledů, čímž se také liší její výpočet. Podobně jako při průzkumu jediným robotem se používá řada dodatečných kritérií jako jsou předpokládaný informační zisk nebo viditelnost ostatních cílových pozic. Oproti užitečnosti definované pro jeden robot však existují některé významné rozdíly. Například důležitým faktem je, že určitý cíl může mít pro různé roboty různý užitek. Je zřejmé, že pro efektivní kooperaci by užitečnost potencionálního cíle měla být také závislá na skutečnosti, zda tento (či jiný blízký) cíl je již vybrán některým z robotů. Výpočet užitečnosti pro multi-robotický průzkum je proto složitější než pro případ jediného robotu a lze k němu přistupovat z různých hledisek. Po ohodnocení spolu agenti soupeří a snaží se získat takový cíl, který je pro ně nejvýhodnější. Přístupy založené na strategii trhu byly popsány například v [?] nebo v [?]. Xin Ma a kolektiv [?] popisují využití více-kolové jedno-položkové aukce. V tomto přístupu je užitečnost každého potencionálního cíle definována následovně: Jestliže nějaký robot má přiřazen nějaký cíl, tak užitečnost tohoto cíle se pro ostatní roboty snižuje. Dále se pro ostatní roboty snižuje užitečnost všech cílů, které tento robot může pokrýt. Celková cena daného cíle, která vstupuje do aukce, se poté vypočte jako rozdíl jeho užitečnosti a vzdálenosti ke konkrétnímu robotu. Vlastní mechanismus přidělování cílů probíhá v několika krocích. Nejprve je vybrán licitátor (dražebník). Tím je některý z robotů, ostatní roboty jsou označeny jako dražitelé. Dražebník má informace o všech cílech. Poté probíhá dražba. Dražebník vybere jeden z cílů. Každý dražitel vypočte cenu a předpokládanou užitečnost cíle. Poté každý dražitel podá nabídku tak, aby maximalizoval svůj zisk. Vítězem se stává robot, který má z tohoto cíle největší prospěch. Takto se přiřadí všechny cíle, přičemž jeden robot může mít i více cílů. Po přiřazení cílů se naleznou cesty robotů k cílům a také se určí příští dražebník. Ve chvíli, kdy roboty dosáhnou svých cílů, aktualizují své lokální mapy a ty zašlou licitátorovi. Poté se dražba opakuje dalším kolem. Simulacemi bylo ověřeno, že uvedený algoritmus může efektivně řešit rozdělení více cílů mezi více robotů. Experimenty na reálných robotech však nebyly v citovaných zdrojích uvedeny. Jedním publikovaných z výsledků je porovnání aukčního přístupu s kombinatorickými aukcemi, ve kterém přístup více-kolové jedno-položkové aukce vychází jako mnohem efektivnější. 3.3 Metody založené na rozdělení prostředí Další možností jak koordinaci robotů explicitně zohlednit je nalezení vhodného rozdělení prostředí na určité menší celky. Tato idea vychází z předpokladu, že ve většině případů je vhodné určitou část prostředí s několika blízkými cíli prohledat jedním robotem. Hlavní myšlenkou rozdělením prostředí na menší části a přiřazení těchto částí jednotlivým robotům je, že pak lze relativně snadno zajistit, aby jednu část, například místnost, prohledával jen jeden robot. 18

28 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM Rozdělení prostředí lze provést různými způsoby. V [?] byl představen způsob založený na využití Voroného diagramu. Popsaný přístup využívá frontier-based metody a mřížkové reprezentace prostředí. Ohodnocení hraničních oblastí kromě vzdálenosti navíc závisí i na struktuře prostředí. Ke tvorbě Voroného diagramu se využívá algoritmus DT - pro každou buňku se vypočte vzdálenost k nejbližší překážce. Z těchto vzdáleností se vytvoří nová mřížka, tzv. mapa DT, ve které jednotlivé buňky mají hodnotu vypočtené nejkratší vzdálenosti k překážce. Voroného graf je poté zkonstruován nalezením kostry mapy DT. Tento proces je zobrazen na obrázku 3.2. Po vytvoření Voroného diagramu jsou vrcholy grafu rozděleny do množin na základě tzv. kritických bodů. Každá množina pak tvoří segment, který je přiřazen některému robotu. Pro přiřazení jednotlivých segmentů robotům se používá mad arský algoritmus, který je detailně popsán v oddíle 3.4. Pro jeho použití je nutné vypočítat cenu dosažení každého segmentu každým robotem. Tato cena je vypočtena jako vzdálenost robotu k nejbližšímu cílovému bodu v daném segmentu. Od této ceny pak autoři odečítají zvolenou hodnotu (penalizaci), pokud se robot nachází v daném segmentu. (a) mapa prostředí (b) mapa DT (c) Voroného diagram Obrázek 3.2: Ukázka mapy prostředí s vytvořenými Voroného diagramy. Převzato z [?]. Z výsledků uvedených v [?] vyplývá, že jednoduché prostředí kancelářského typu lze takto rozdělit na jednotlivé místnosti a chodby. Nicméně pro dělení složitějších prostředí je zapotřebí sofistikovanějších přístupů. Z výsledků taktéž vyplývá, že průzkum uvedeným postupem dosahuje mnohem kratších časů, než při použití čistě hladového přístupu. V [?] je použit způsob shlukování cílů K-Means clustering, který však ve výsledku vede taktéž na Voroného graf. Tímto způsobem je neznámé prostředí rozděleno na tolik částí, kolik je robotů. Každému robotu je pak přiřazena nejbližší část reprezentovaná jejím středem. Dále je každému robotu přiřazen cíl s nejnižší cenou, která je složena ze tří částí: délka nejkratší cesty mezi robotem a cílem; penalizace vzdálenosti cíle a přiřazené oblasti, pokud cíl leží v jiné oblasti než té přiřazené robotu; penalizace pokud je cíl v dosahu senzoru od jiného cíle přiřazeného jinému robotu. Hlavním sledovaným kritériem je tzv. minimalizace odchylky času čekání, tj. že každá část rozděleného prostředí bude prohledána za podobný čas. Uvedený způsob průzkumu byl 19

29 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM porovnán s vybranými reprezentativními metodami, mezi kterými byl hladový přístup popsaný v [?]. Z výsledků uvedených v [?] vyplývá, že použitím této metody lze dosáhnout kratších časů průzkumu jednotlivých částí a tím i kratšího celkového času průzkumu. 3.4 Využití mad arského algoritmu Využití mad arského algoritmu pro rozdělení cílů v úloze multi-robotického průzkumu bylo představeno v [?]. V popsaném postupu je však algoritmus primárně určen pro přiřazení oblastí v segmentovaném prostředí, viz oddíl 3.3. V této práci je ověřena možnost využití mad arské metody pro přímé přidělování cílů (frontierů) jednotlivým robotům a je porovnána se základní hladovou metodou. Jako mad arská metoda nebo také mad arský algoritmus, se označuje metoda, která řeší problém rozdělení úloh. Problém rozdělení lze definovat následovně. Necht existuje n úloh a n agentů. Každý agent vykoná každou úlohu s určitou cenou, což lze zapsat ve formě matice, ve které jsou v jednotlivých buňkách uvedeny ceny agenta (řádek) a cíl (sloupec). Cílem je přiřadit jednotlivým agentům úlohy tak, aby celková cena byla co nejmenší a každý vykonával právě jednu úlohu. V [?] Kuhn představil algoritmus, který dokáže problém přidělení řešit v polynomiálním čase. Algoritmus je pojmenován podle mad arských matematiků Dénese Kőniga a Jenő Egerváryho, protože je do značné míry založen na jejich dřívější práci. Mad arský algoritmus předpokládá stejný počet agentů a úloh. Při multi-robotickém průzkumu však tento požadavek nemusí být splněn. Především proto, že se během průzkumu počet potencionálních cílů mění. V případě, že je počet cílů menší než počet robotů, lze vytvořit imaginární cíle, které mají pro všechny roboty stejnou cenu. Pak na přiřazení těchto imaginárních cílů nezáleží a optimalizuje se pouze přiřazení skutečných cílů. V případě, kdy je cílů více, se vytvoří imaginární roboty, pro které všechny cíle mají taktéž stejnou cenu. Skutečné roboty pak prozkoumávají nejvýhodnější cíle a zbylé cíle jsou přiřazeny až v další iteraci přidělování cílů. Z tohoto důvodu je toto rozšíření také částečně hladové, protože každému robotu je přiřazen jeden cíl podle aktuálně nejvýhodnějšího rozdělení a neuvažuje se přiřazení cílů v budoucnu. Oproti základní hladové metodě však lze předpokládat, že přidělení cílů mad arským algoritmem zamezí některým problémům, které jsou pro základní hladový přístup typické. Problémy hladového přístupu souvisí se způsobem zacházení přidělených cílů v seznamu aktuálních cílů. V případě, že přiřazené cíle nejsou mazány, mohou dva roboty prozkoumávat stejný cíl viz obr. 3.1(a). Pokud mazány jsou, má pořadí výběru velký vliv a rozdělení může být neoptimální, viz obr. 3.1(b). Oběma projevům může zabránit právě rozdělení cílů mad arskou metodou. 3.5 Využití genetických algoritmů Genetické algoritmy (GA) představují prohledávací metodu využívanou v řadě úloh umělé inteligence a je to jedna z metod, která dokáže řešit složité optimalizační problémy. Z tohoto důvodu o nich lze uvažovat jako o vhodném přístupu pro přidělování cílů robotům při multi-robotickém průzkumu neznámého prostředí. Využití GA pro multirobotický průzkum bylo popsáno například v [?]. 20

30 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM GA jsou založeny na principu přirozeného výběru, kde přežívá nejsilnější jedinec. Jsou to iterativní algoritmy, jejichž základem je počáteční generace, která se postupně vyvíjí. Každý jedinec z populace je reprezentován tzv. chromozomem, který představuje jedno z možných řešení dané úlohy. Kvalita tohoto řešení se označuje tzv. fitness funkcí. Pro tvorbu nové generace jsou vybráni nejlepší jedinci 1 a jejich křížením či mutací vzniká nová generace. Kvalitní jedinci přitom mají větší pravděpodobnost nalezení vhodného partnera pro křížení. Po určitém počtu opakování vzniká jedinec představující dostatečně kvalitní řešení. Kvalitu tohoto řešení je však složité předpovědět. Jedním z důvodů je fakt, že kvalitní jedinec pro tvorbu další generace je definován pouze v porovnání s kvalitou ostatních jedinců, takže i špatné řešení může být označeno za dobré, pokud existují ještě horší. Tento fakt je také jedním z důvodů časté kritiky GA. GA lze pro průzkum využít několika způsoby. V nejjednodušším případě je fitness funkce definována pouze cenou určenou celkovou vzdáleností, kterou roboty ujedou při průzkumu cílů. Složitější možností je podobně jako u aukčních metod využití užitkových funkcí pro ohodnocení užitku všech cílů. Tento postup je popsán v [?]. Na počátku je užitečnost všech cílů pro všechny roboty rovna 1. Užitečnost cíle pro ostatní roboty se snižuje v okamžiku, kdy je tento cíl přiřazen nějakému jinému robotu. Snižuje se také užitečnost všech ostatních cílů, které lze z tohoto cíle vidět. Z užitečnosti a ceny je pak vypočtena fitness funkce daného řešení podle (3.1). f itness = užitečnost β cena vzdálenosti (3.1) Délka každého chromozomu je rovna počtu frontierů. Chromozom se skládá z čísel robotů přiřazených jednotlivým frontierům. Počáteční populace je generována náhodně. Z výsledků uvedených v [?] je patrné, že algoritmus dokáže efektivně provést průzkum neznámého prostředí. 3.6 Využití formulace problému více obchodních cestujících V oddíle 2.5 je popsána metoda průzkumu založená na řešení problému obchodního cestujícího [?], která vede na výrazně kratší dobu potřebnou k průzkumu neznámého prostředí. Přirozeným rozšířením toho přístupu v úloze multi-robotického průzkumu je formulace úlohy jako problému více obchodních cestujících, v angličtině označovaném jako Multiple Traveling Salesman Problem (MTSP). V porovnání s výše uvedenými postupy je motivace přístupu založeného na řešení úlohy TSP nebo MTSP zohlednění navštívení budoucích cílů a ne pouze aktuálně nevýhodnějšího cíle. To znamená, že je plánováno s ohledem na delší horizont robotického průzkumu a nikoliv pouze hladové rozhodování v aktuálním kroku. Ověření možnosti řešení úlohy multi-robotického průzkumu jako úlohy MTSP je jedním z hlavních přínosů této diplomové práce. Z toho důvodu je problém více obchodních cestujících popsán v tomto oddíle podrobněji Problém více obchodních cestujících Jedná se o rozšíření základního problému jednoho cestujícího. V tomto případě se uvažuje m cestujících a n měst, přičemž se předpokládá m n. Úkolem je stejně jako v případě jednoho cestujícího navštívit všechna města (vrcholy grafu) tak, aby celková 1 Definice dobrého jedince pro výběr závisí na konkrétních požadavcích řešené úlohy. 21

31 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM vzdálenost byla co nejmenší. Postup tvorby grafu je v podstatě identický jako v případě úlohy TSP, jen vrcholů představujících výchozí pozici robotů je m. Existuje mnoho variant tohoto problému a také přístupů jejich řešení. Přehled variant a přístupu řešení lze nalézt například v [?]. V následujících odstavcích tohoto oddílu jsou uvedeny pouze ty varianty, které přímo souvisí s multi-robotickým průzkumem. V první řadě je možné úlohu MTSP definovat pro dvě základní optimalizační kritéria označované jako MinSum a MinMax. Cílem řešení úlohy MTSP-MinSum je nalezení takových cest, pro které je součet jejich délek minimální. V [?] je představen postup jak úlohu MTSP-MinSum převést na úlohu TSP, kterou pak lze řešit metodami TSP. V případě MTSP-MinMax je cílem nalézt takové řešení, ve kterém je minimalizována délka nejdelší cesty. Autoři [?] uvádějí, že tuto variantu úlohy MTSP není možné řešit převodem na TSP, nebot řešení takové úlohy TSP vede na degenerované řešení původní úlohy MTSP-MinMax, tj. například některé cesty jsou velmi krátké nebo obsahují pouze jediný vrchol. Varianta MTSP-MinMax lépe vystihuje zvolené kritérium efektivního robotického průzkumu, kterým je čas potřebný pro prozkoumání neznámého prostředí. Jednou z důležitých variant problému MTSP je zda všichni cestující začínají v tomtéž vrcholu či v rozdílných vrcholech. V případě multi-robotického průzkumu je zřejmé, že každý robot začíná na jiné výchozí pozici, tzn. v grafu této situaci odpovídají různé počáteční vrcholy pro každého cestujícího. Další důležitou vlastností rozlišující varianty MTSP je podmínka na poslední vrchol cesty každého cestujícího. Variant je několik a základní rozlišení je, že se každý cestující bud vrací do svého počáteční vrcholu, nebo se může vracet do libovolného vrcholu. Dále je možné zavést různá omezení počtu cestujících v jednom vrcholu apod. Pro robotický průzkum prostředí je však důležitá varianta, ve které se cestující do výchozích vrcholů nevrací a hledaná cesta je tzv. otevřená, podobně jako v případě jednoho obchodního cestujícího. Samotná úloha TSP je NP-těžká a nejinak je tomu také v případě úlohy MTSP, což je snadno dokazatelné zmíněným převodem MTSP na TSP. Z tohoto důvodu jsou z hlediska praktického řešení úlohy MTSP při multi-robotickém průzkumu preferovány přístupy aproximační, které sice negarantují optimální vyřešení úlohy, ale mají mnohem nižší výpočetní nároky. Mezi aproximační přístupy patří například algoritmy mravenčích kolonií [?,?] nebo genetických algoritmů, jejichž využití v multi-robotickém průzkumu je zmíněno v [?,?]. V této diplomové práci je zvolen přístup řešení úlohy MTSP-MinMax [?], který je založen na samo-organizujících se mapách (SOM). Ty nejen, že řeší přímo úlohu s MinMax kritériem, ale také poskytují dostatečnou flexibilitu [?] pro řešení varianty MTSP vyplývající z řešení multi-robotického průzkumu, tj. různé počáteční vrcholy jednotlivých cestujících a otevřených cest Řešení úlohy MTSP v multi-robotickém průzkumu Rozšíření úlohy TSP na MTSP v úloze multi-robotického průzkumu vede na variantu MTSP-MinMax, ve které cestující začínají v různých vrcholech a zároveň jsou hledané cesty otevřené. Zvolený přístup řešení této varianty MTSP a použitý v této diplomové práci je založen algoritmu samo-organizující se mapy (SOM) [?]. SOM je v tomto případě dvou-vrstvá kompetitivní neuronová sít, která obsahuje dvou dimenzionální vstupní vektor a pole výstupních jednotek. Geometrická reprezentace neuronové sítě je zobrazena 22

32 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM na obrázku 3.3. Vstupní vektor reprezentuje souřadnice (c i1, c i2 ) města c i a váhové koe- 1 city i c i 1 c i 2 [, ] 2 c i 1 j [, ν ] νj 1 j 2 ν j 1 j c i 2 ν j 2 M 1 M ring of connected nodes (a) (b) Obrázek 3.3: Geometrická interpretace SOM pro TSP. Obrázek převzat z [?]. ficienty sítě ν j1, ν j2 mohou být interpretovány jako souřadnice neuronu ν j. Neurony jsou spojeny do řetízku, který reprezentuje hledanou cestu a v případě úlohy MTSP je pro každého cestujícího vytvořen samostatný řetízek. Sít je inicializována malými náhodnými hodnotami váhových koeficientů a města jsou sekvenčně předkládána na vstup neuronové sítě v náhodném pořadí. Z výstupní jednotky je pak vybírán vítězný neuron pro předkládané město podle kompetitivního pravidla ( ν = argmin ν c, ν 1 + l ) ν l avg, (3.2) l avg kde c, ν je eukleidovská vzdálenost mezi městem c a neuronem ν, l ν je délka řetízku, do kterého patří neuron ν a l avg je průměrná délka řetízků. Toto pravidlo preferuje neurony, které jsou z kratších řetízků, což vede na minimalizaci nejdelší cesty a tím řešení úlohy MTSP-MinMax. Váhové koeficienty vítězného neuronu a jeho sousedních neuronů jsou upraveny tak, aby se přiblížili k předkládanému městu podle funkce f. Tato funkce vlastně posouvá neurony blíž k městu c i podle pravidla ν j = ν j + µf(g, d)(c i ν j ), (3.3) kde µ je rychlost učení. Funkce f je ve tvaru f(g, d) = exp( d 2 /G 2 ) pro d < 0.2m a f(g, d) = 0 jinak, kde G je parametr zesílení, d je vzdálenost (v počtu neuronů) neuronu od vítězného neuronu měřena podél příslušejícího řetízku a m je počet neuronů v řetízku, který je stanoven na m = 2.5n/k, kde n je počet měst a k je počet cestujících. Zesílení G je snižováno v každé iteraci, tj. po kompletním předložení všech měst neuronové síti, dle parametru rychlosti snižování zesílení α. Vhodné nastavení počáteční hodnoty G závisí na počtu měst n a autoři [?] experimentálně nalezli vztah G 0 = n. Autoři rovněž doporučují hodnoty parametrů µ = 0.6 a α = 0.1. Základní schema SOM algoritmu pro MTSP-MinMax je znázorněno v Algoritmu 1. Vlastní adaptační schema SOM je vlastně iterativní procedura, během které jsou neurony adaptovány k městům dokud každé město nemám vítězný neuron dostatečně blízko, tj. je blíže než zvolená hodnota δ. Vlastní řešení úlohy MTSP je reprezentováno právě vítěznými neurony, nebot inhibiční mechanismus zajišt uje, že na konci každé iterace má 23

33 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM Algoritmus 1: SOM pro MTSP-MinMax Vstup: C = {c 1,..., c n } - množina měst Vstup: c d, c d C počáteční město Vstup: k počet cestujících Vstup: (G, µ, α, d) - parametry SOM Vstup: δ maximální přípustná chyba R {r 1,..., r m r i = ring(c d )} // počáteční inicializace řetízků repeat error 0 I // množina inhibovaných neuronů foreach r R do ν vyber vítězný neuron z r k c d, ν / I error max{error, ν, c d } adaptuj(ν, c d ) I I {ν } // vítězný neuron je inhibován Π(C \ {c d }) náhodná permutace měst foreach c Π(C \ {c d }) do ν vyber vítězný neuron k c, ν / I error max{error, ν, c } adaptuj(ν, c) I I {ν } G (1 α)g until error δ // vítězný neuron je inhibován // snížení zesílení každé město asociován unikátní neuron. Inhibiční mechanismus znamená, že v rámci jedné iterace je vítězný neuron vyřazen z výběru dalšího vítězného neuronu pro jiné město. Proto lze na konci každé iterace získat řešení úlohy, tj. posloupnost navštívení měst pro jednotlivé cestující, jako posloupnost měst asociovaných k vítězným neuronům každého řetízku. Uvedený algoritmus řeší variantu MTSP, ve které cestující začínají ve společném městě a cestují po uzavřených cestách. Rozšíření tohoto algoritmu pro variantu s různými počátečními městy je velmi snadné, nebot v první for smyčce stačí uvažovat individuální město pro každého cestujícího. Také rozšíření o uvažování otevřených cest je podobně jednoduché. Funkce adaptuj pracuje v základní verzi s řetízkem, tj. poslední neuron má dva sousední neurony: předposlední a první. V případě hledání otevřené cesty stačí řetízek rozpojit a pro poslední neuron uvažovat pouze jediný sousední neuron (ten předposlední). Tato modifikace algoritmu byla představena v [?], kde lze také nalézt podrobnější popis těchto rozšíření. Přestože uvedený algoritmus hledá řešení úlohy MTSP-MinMax není jeho přímé použití pro nalezení cest v prostředí s překážkami úplně přímočaré, nebot základní varianta algoritmu uvedená v [?] předpokládá, že neurony se pohybují v rovině, tj. v prostředí bez překážek, kde je postačují uvažovat eukleidovské vzdálenosti mezi neurony a městy a mezi neurony navzájem (pro výpočet délky řetízku). V případě prostředí s překážkami je důležité zajistit, aby neurony (váhové koeficienty neuronové sítě) byly vždy ve volném prostoru, jelikož v opačném případě by řetízek mohl reprezentovat cestu, která není pro robot schůdná, nebot by jej navedla do překážky. V [?] jsou představena rozšíření uve- 24

34 KAPITOLA 3. MULTI-ROBOTICKÝ PRŮZKUM dené základní SOM metody pro MTSP, které umožňují použít tuto metodu také v prostředí s překážkami a tím i pro řešení úlohy multi-robotického průzkumu. Základní myšlenka těchto rozšíření se dá shrnout tak, že během adaptace není uvažována eukleidovská vzdálenost neuronu k městu, ale délka nejkratší cesty, která se vyhýbá překážkám, z neuronu k danému městu. Této vzdálenosti je využito při výběru vítězného neuronu. Nejkratší cesta neuron-město je pak využita při vlastní adaptaci, kterou si lze představit tak, že neuron je posunován po této cestě k městu o vzdálenost definovanou funkcí f. Bližší popis těchto rozšíření je možné nalézt v [?]. V průběhu adaptace neuronové sítě je nutné vyhodnotit velké množství dotazů na nejkratší cestu mezi dvěma body (neuron-města a neuron-neuron), což může být výpočetně náročné, nebot v případě robotického průzkumu je mapa prostředí postupně vytvářena, a proto není možné využít urychlujících struktur uvedených v [?]. Z tohoto důvodu je využito SOM adaptačních pravidel na grafu, která byla představena v [?]. Princip je velmi podobný jako v případě nejkratší cesty, jen je pohyb neuronů omezen na pohyb po hranách grafu a nejkratší cesty jsou hledány v grafu nějakým standardním algoritmem, např. Dijkstrovým algoritmem. Klíčem k použití SOM metody pro řešení MTSP v úloze multirobotického průzkumu tak je vytvoření vhodného grafu. Obrázek 3.4: Příklad grafu vytvořeného pro metodu SOM s vyznačenými třemi typy vrcholů: roboty zeleně, cíle modře a přidané vrcholy překážek červeně. Požadovaný graf je nalezen podobným způsobem jako v případě použití formulace úlohy TSP uvedené v oddíle 2.5. Hlavní rozdíl je však v počtu vrcholů grafu, nebot je nutné přidat třetí typ vrcholů představující vrcholy překážek, které tvoří nejkratší cesty (nalezené algoritmem DT). Výsledný graf tak obsahuje pouze hrany, pro které představují úsečky mezi body reprezentované vrcholy grafu, a které celé leží ve volném prostoru. Tím je zajištěno, že neuron ležící na libovolné hraně vždy reprezentuje bod ve volném prostoru a souřadnice toho bodu jsou dány váhovými koeficienty neuronu. Příklad uvedeného grafu je uveden na obrázku 3.4. To, zda-li lze uvedené rozšíření SOM algoritmu řešení úlohy MTSP použít při multi-robotickém průzkumu, bylo ověřeno v řadě konkrétních úloh průzkumu a dosažené výsledky jsou uvedeny v kapitole 4. 25

35 Kapitola 4 Porovnání strategií multi-robotického průzkumu Cílem této práce je porovnat vybrané metody multi-robotického průzkumu neznámého prostředí, konkrétně porovnat vliv strategie výběrů cílů na efektivitu průzkumné mise. Pro porovnání byly vybrány tři strategie přidělování cílů vycházející z tzv. frontierbased přístupu: Základní hladový přístup [?] popsaný v oddíle 3.1, který každému robotu přiřazuje nejbližší cíl. Metoda využívající mad arský algoritmus popsaná v oddíle 3.4, který slouží k optimálnímu výběru a rozdělení současných cílů mezi roboty. Přístup založený na rozdělení cílů řešením problému MTSP (viz oddíl 3.6) metodou popsánou v oddíle Pro účely porovnání byl vytvořen softwarový rámec pro multi-robotický průzkum založený na centralizovaném přístupu, do kterého jsou zahrnuty implementace dílčích metod výběru cílů. Součástí rámce je vyčítání senzorů, stavba mapy a též vlastní autonomní navigace. Rámec je založen na systému Player/Stage [?], který umožňuje jednoduchý přechod ze simulovaného prostředí k nasazení metod v reálném experimentu. S ohledem na očekávané množství testů byly metody zkoumány v simulátoru. Poznámky k implementacím jednotlivých metod jsou uvedeny v oddíle 4.2. Hlavním sledovaným kritériem průzkumné mise je celkový čas průzkumu T a dílčími kritérii jsou časy T 67%, T 90% a T 95% potřebné k prohledání 67 %, 90 % a 95 % prostředí z celkového prozkoumaného prostoru. Porovnání metod bylo provedeno pro různá prostředí, konkrétní nastavení metod a parametry průzkumné mise. Uvažované parametry jsou detailně popsány v následujícím oddíle a prostředí a použitá nastavení metod pak v oddíle 4.3. Prezentaci výsledků a jejich vyhodnocení jsou věnovány oddíly a V oddíle 4.4 je pak popsáno nasazení multi-robotického průzkumu na reálných robotech prostředí SyRoTek [?]. 26

36 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU 4.1 Uvažované parametry průzkumné mise Základními uvažovanými parametry průzkumné mise jsou: typ robotů a senzorické vybavení. počet robotů provádějících průzkum, velikost buňky v mřížkové mapě, podmínka pro provedení přeplánování, počet buněk seskupených do jednoho frontieru, uvažování neznámého prostředí jako obsazený/volný prostor. Diskuse jednotlivých parametrů je uvedena v následujících odstavcích. Typ robotu uvažovaný v testech metod průzkumu vychází z reálného robotu S1R jehož model pro systému Player/Stage [?] je součástí prostředí SyRoTek [?]. Jedná se o diferenciální robot s rozměry 17, ,0 cm a maximální rychlostí 0.35 m.s 1 [?]. Robot byl řízen lokálním navigačním algoritmem SND [?], přičemž byla využita implementace algoritmu v projektu Player [?]. V realizovaných testech v simulátoru byly použity následující nastavení algoritmu: poloměr robotu (0,1 m) a maximální rychlost robotu 0,75 m.s 1. Pro globální navigaci (plánování cesty) byl využit algoritmus DT. Senzorické vybavení robotu je tvořeno laserovým dálkoměrem Hokuyo URG-04LX, pro který je v simulátoru taktéž vytvořen model. V tomto modelu lze nastavit úhlový rozsah a maximální měřenou vzdálenost. V případě simulací byly zvolen úhlový rozsah 240, tedy maximální rozsah, který skutečný senzor poskytuje. Reálný robot S1R má v důsledku umístění senzoru do těla robotu tento rozsah mírně omezen. Měřená vzdálenost je omezena na maximálně 3,5 m. Pro zpracování senzorických dat je použit jednoduchý model laserového dálkoměru. Pokud je naměřena vzdálenost menší, než maximální povolená vzdálenost, je příslušný bod v mapě označen jako překážka s pravděpodobností p = 0, 9 a zbylé body ležící na úsečce spojující střed dálkoměru s posledním bodem jako volný prostor s pravděpodobností p = 0.1. Velikost buňky v mřížkové mapě je zvolena s ohledem na testována prostředí, která mají rozměry Testovaná prostředí mají rozměry 20 m 20 m až 22 m 54 m. Velikost jedné buňky v mapě je stanovena na hodnotu 0,05 m, která se v porovnání s uvažovanými prostředími jeví jako vhodný kompromis mezi přesností dělení prostředí a náročností výpočtů. Podmínek pro přeplánování je možné stanovit více. Je zřejmé, že k přeplánování by mělo dojít ve chvíli, kdy všechny roboty dojedou do určeného cíle, případě cíle dosáhne alespoň jeden z nich. Dojezd robotů do cílů však může trvat dlouho. V případě, že by toto bylo jediné kritérium pro přeplánování, mělo by to za následek pomalou reakci na nově nalezené frontiery. Z tohoto důvodu jsou také uvažovány další podmínky. První je možnost přeplánovat po určitém čase, takže plánovač má pevně stanovenou periodu plánování. Druhou možností je přeplánování ve chvíli, kdy některý z robotů ujede předem zadanou vzdálenost. Počet buněk seskupených do jednoho frontieru - ovlivňuje počet frontierů. Menší počet buněk znamená vyšší počet frontierů a tedy i potencionálních cílů. Počet buněk, 27

37 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU které leží na rozhraní mezi známým a neznámým prostorem, a které jsou získány jedním měřením dat z laseru, závisí na dosahu dálkoměru, jeho úhlovém rozsahu a samozřejmě na velikosti jedné buňky. Při nevhodném nastavení se může stát, že jsou všechny nalezené buňky seskupeny do jediného frontieru. V případě, že cíl je uvažován jako bodový (tj. střed zvolené buňky) reprezentant frontieru, může takový jediný frontier vést situaci, že se robot nebude pohybovat. Příklad takové situace je znázorněn na obrázku 4.1, ve kterém Obrázek 4.1: Ukázka případu kdy jsou všechny hraniční buňky sloučeny do jediného frontieru a jeho střed je téměř totožný s pozicí robotu (černý kruh uprostřed). je cíl určen jako střed frontieru. Tento střed však leží velmi blízko aktuální pozici robotu, proto by přiřazení tohoto cíle robotu způsobilo, že by se robot téměř nepohnul z místa. V provedených testech byl počet buněk tvořící frontier volem v rozsahu 30 až 100. Uvažování neznámého prostředí jako obsazeného nebo volného prostoru ovlivňuje způsob plánování cest k cílům. Ve známém prostředí, kde se prostor dělí na volný a obsazený překážkou, se cesty přirozeně plánují přes volný prostor. O neznámém prostředí lze uvažovat jako obsazeném prostoru případně jako o volném prostoru. Příklad způsobu plánování při rozdílném uvažování neznámého prostoru je znázorněna na obrázku 4.2. Ten ukazuje situaci, kde jsou dva roboty (znázorněné jako větší černé disky) a tři cíle (menší tmavé disky). Černě jsou značeny překážky a světlým odstínem šedi neznámý prostor. V neznámém prostoru se může nacházet překážka (tmavý odstín šedi). Pokud je uvažováno, že neznámý prostor je obsazený, a tedy nelze přes něj plánovat, robot zvolí delší cestu k dosažení cíle na druhé straně. V případě, že se tam překážka nevyskytuje je však tato cesta zbytečně dlouhá. Druhou možností je uvažovat, že neznámý prostor je volný a využít jej pro plánování cesty. Pokud by však v naplánované cestě ležela překážka, robot by cíle nedosáhl. V takovém případě by reaktivní algoritmus zabránil srážce a snažil by se robot navigovat tak, aby překážku objel. To však může být v konečném důsledku časově náročnější než v případě naplánované cesty ve skutečném aktuálně známém volném prostoru. Je zřejmě, že uvažování o neznámém prostoru je spekulativní. Pro získání přehledu, zda-li situace, ve kterých by rozdílná interpretace byla výhodná, vůbec při vlastním průzkumu nastává, bylo rozdílné uvažování volného prostoru testováno ve vybraných scénářích průzkumných misí. 4.2 Poznámky k implementaci Softwarový rámec pro multi-robotický průzkum byl implementován v jazyce C++. Součástí rámce jsou implementací dílčích úloh nezbytných pro autonomní navigaci robotu, 28

38 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU (a) není povoleno (b) je povoleno Obrázek 4.2: Porovnání Povolení/zakázání plánování cest přes neznámý prostor. zpracování senzorických dat a funkce pro aktualizaci a tvorbu mapy prostředí. Tyto implementace zahrnují algoritmus DT pro výpočet cest, metody pro nalezení frontierů a metody pro práci s mapou, které jsou zejména zanesení nového měření, implementace Minkowského sumy pro zvětšování překážek a Bresenhamův algoritmus pro rasterizaci úseček v mřížce. Pro přidělování cílů mad arskou metodou byla využitá dostupná knihovna libhungarian [?]. Implementaci algoritmu MTSP SOM pro řešení úlohy MTSP dodal vedoucí práce. K vykreslování stavu úlohy a ukládání záznamů byla využita knihovna SDL [?]. Dílčí implementační detaily k jednotlivým metodám přidělování cílů jsou uvedeny v následujících odstavcích. Hladová metoda Tato metoda vychází z postupu představeného v [?], kde je však uvažováno decentralizované řešení, ve kterém se každému robotu přiřazuje nejbližší cíl. To však může způsobit, že dva roboty budou prohledávat stejný cíl. V případě implementovaného centralizovaného přístupu je možný ještě další způsob výběru cílů založený na společném seznamu cílů, ve kterém se po přiřazení cíle některému robotu tento cíl odstraní. Oba přístupy rozdělení cílů byly implementovány a porovnání vlivu na čas průzkumu je součástí prezentovaných výsledků této kapitoly. Metoda s mad arským algoritmem Tato metoda je založena na rozdělení cílů robotům mad arským algoritmem, konkrétně implementací 1 [?]. Vstupem algoritmu je matice délek cest ke všem cílům pro všechny roboty, výstupem je matice definující přiřazení robotů k cílům. Použitá implementace dokáže problém řešit i pro matici, která není čtvercová, a pro kterou platí r c, kde r značí počet řádků a c počet sloupců. V případě, že je potřeba r > c, lze problém řešit na transponované matici a výslednou matici opět transponovat. Metoda MTSP V této metodě se využívá pro rozdělení cílů řešení problému více obchodních cestujících. Implementaci algoritmu řešení MTSP založené na samo-organizujících se mapách 1 Tato konkrétní implementace obsahuje chybu, jež může při hledání řešení způsobit uváznutí v nekonečné smyčce. Z tohoto důvodu bylo nutno program doplnit o detekci tohoto problému a ukončení hledání řešení. 29

39 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU dodal vedoucí práce. Tento algoritmu má řadu parametrů, které byly ponechány ve výchozím nastavení, nebot představují kompromis mezi kvalitou řešení výpočetní náročností a vycházejí z původní práce autorů [?]. Konkrétní použité hodnoty odpovídají hodnotám uvedeným v oddíle Jelikož algoritmus negarantuje nalezení optimálního řešení je pro účel nalezení kvalitnějšího řešení spuštěn vícekrát. Jako výsledné řešení je pak vybráno nejlepší z nalezených. Pozorováním bylo zjištěno, že přibližně po pěti spuštěních se nalezená řešení často opakují, proto po počátečním testování byla tato hodnota opakování označena jako dostačující. Ve všech prezentovaných výsledcích v této práci byl výběr proveden vždy jako nejlepší řešení z pěti nalezených řešení. Prvotními testy prováděnými na počítači s dvou-jádrovým procesorem 2 GHz bylo zjištěno, že nalezení jednoho řešení trvá maximálně 20 ms, což je vzhledem k průměrné době průzkumu zanedbatelná hodnota. 4.3 Výsledky porovnání nastavení a metod strategií průzkumu Pro porovnání metod bylo celkově provedeno přibližně 3000 simulací. Nejdříve byly testovány dílčí nastavení a následně pak pro zvolené parametry byly provedeny testy pro vzájemné porovnání studovaných strategií přidělování cílů v multi-robotickém průzkumu. Pro každé nastavení bylo 20 testů a prezentované hodnoty jsou tak průměrnou hodnotou z provedených běhů. Provedené testy byly realizovány s využitím více-procesorového systému s procesory Intel Xeon X GHz poskytující celkem 12 výpočetních jader, disponující 48 GB RAM a nainstalovaným 64-bitovým operačním systémem FreeBSD Testované scénáře robotických misí Výsledky pro posouzení vliv jednotlivých parametrů vybraných strategií přidělení cílů i vzájemné porovnání strategií byly získány pro tři různá testovací prostředí simulátoru systému Player/Stage. Prostředí jsou vizualizována na obrázku 4.3. První z nich je prostředí autolab obr. 4.3(a), kde byly simulace provedeny pro pět robotů a dvě různé výchozí pozice P1 a P2, v obrázku značeny čárkovaným obdélníkem, jednotlivé pozice robotů jsou vyznačeny černými disky. Rozměr prostředí je 20 m 20 m. Druhým testovaným prostředím jh obr. 4.3(b), které představuje mapu skutečné kancelářské budovy. V tomto prostředí byly vytvořeny scénáře pro průzkum se třemi a šesti roboty. V případě průzkumu třemi roboty je obsazena jen spodní řada robotů. Rozměr prostředí je 21 m 24 m. Konečně třetím testovaným prostředím je prostředí je mírně upravené prostředí hospital obr. 4.3(c), taktéž převzato z projektu Player. Úpravy spočívají v odstranění některých zdí tak, aby se některé překážky daly objet a došlo k vytvoření smyček v prostředí, které jsou z hlediska plánování zajímavější. V takových prostředích se totiž více úplatní vliv plánování, nebot existuje více způsobů jak cílů dosáhnout. Odstraněné zdi jsou vyznačeny na obrázku 2.4 černými elipsami. V tomto prostředí byly testy provedeny pro pět a šest robotů, výchozí pozice je opět značena čárkovaným obdélníkem. Roboty jsou číslovány zleva doprava, tzn. v případě průzkumu pěti roboty je pozice zcela vpravo neobsazena. Rozměr prostředí je 22 m 54 m. Výchozí pozice robotů byly voleny s ohledem na průzkum neznámého prostředí, proto roboty začínají na pozicích představující vstup do zkoumaného prostředí. 30

40 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU (a) autolab (b) jh (c) Upravené prostředí hospitalm Obrázek 4.3: Testovací prostředí pro průzkumné mise Testy chování jednotlivých testovaných metod Nejdříve byly zkoumáno dílčí chování jednotlivých metod ve vybraných scénářích. Na základě těchto prvotních testů byly ověřeny implementace metod, případně byly metody upraveny. Následující odstavce jsou věnovány dílčím závěrům z provedených testů. Hladová metoda Prvotními testy bylo zjištěno, že v případě hladové metody je vhodné cíl po přiřazení některému z robotů vymazat a zamezit tak jeho přiřazení dalšímu robotu. Byla provedena řada dalších testů pro různá nastavení parametrů, kdy se cíle bud mazaly, nebo zůstávaly dále v seznamu cílů. Ve většině situací vycházelo mnohem výhodněji cíle mazat, nebot v takovém případě dosahují časy průzkumu průměrně 85 % času potřebného pro průzkum pokud se cíle ze seznamu nemažou. Další testování proto bylo uvažováno jen s touto modifikovanou hladovou metodou, tj. s nastavením mazání cílů po jejich přiřazení. U této modifikace bylo pozorováno nevýhodné chování v případě, kdy zbýval k prohledání jediný cíl. Na konci úlohy, kdy je prostředí téměř prozkoumané, jsou roboty často daleko od sebe. V případě, ve kterém tento cíl získal jako první vzdálenější robot, musel tento robot ujet že zbýval poslední cíl v blízkosti jednoho robotu, a získal cíl jako první vzdálenější robot, dlouhou cestu, zatímco ostatní roboty zůstaly stát. Proto byla pro tento případ byla provedena drobná úprava spočívající v obrácení metodiky, tedy nikoli 31

41 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU přiřazení nejbližšího cíle některému robotu, ale přiřazení nejbližšího robotu ke konkrétnímu cíli. Metoda s mad arským algoritmem Hned z prvních testů této metody bylo zřejmé, že rozdělení cílů metodou s mad arským algoritmem dokáže ve srovnání s oběma variantami hladové metody zabránit nežádoucím projevům znázorněných na obrázcích 3.1(a) a 3.1(b). Na rozdíl od výše popsané hladové metody například nebylo nutné nějakým způsobem řešit situaci s posledním cílem, který v případě hladové metody mohl být nevhodně přidělen. Metoda MTSP V případě použití metody MTSP bylo zjištěno, že se v některých případech pro některé roboty nenaplánuje průzkum k žádným cílům. Analýzou těchto situací bylo zjištěno, že to nastává v případě, ve kterém je některý z robotů mnohem dále od cílů než ostatní roboty. V takovém případě je totiž průzkum vhodné naplánovat jen pro roboty blízké k cílům (z hlediska optimalizovaného kritéria MTSP). Důsledek ovšem je, že v dalším plánovacím cyklu se vzdálenost tohoto robotu ještě zvýší, a proto bude tento robot téměř jistě vynechán z přidělování cílů až do ukončení průzkumu. Z tohoto důvodu byla původně navržená metoda mírně upravena. Tato úprava spočívá v přiřazení nejbližšího frontieru jako cíle každému robotu, pro který není naplánován žádný jiný cíl. Uvedenou situaci znázorňuje obrázek 4.4, kde robot R3 je dále od všech cílů a průzkum se tak naplánuje pouze pro roboty R1 a R2. Obrázek 4.4: Robot R3 nemá žádný přiřazený cíl a zastaví se Porovnání strategií průzkumu V tomto oddíle jsou diskutovány výsledky provedených testů, porovnání strategií průzkumu a také vliv parametrů průzkumu. Hlavními sledovanými parametry jsou počet buněk seskupených do jednoho frontieru (dále v textu značeno mf ) a vzdálenost ujetá některým z robotů pro přeplánování (značeno td). Všechny metody a všechna prostředí pak byla testována se stejnými zvolenými hodnotami parametrů. Pro vybrané hodnoty parametrů pak byly provedeny simulace s povolením plánování průjezdu neznámým prostorem. Detailní výsledky jsou uvedeny v tabulkách v příloze A. Přehled výsledků je graficky prezentován v grafech pro prostředí autolab na obr. 4.5 a 4.6, pro prostředí jh na obr. 4.7 a 4.8 a pro prostředí hospital na obr. 4.9 a Další nastavení a metod na multi-robotický průzkum jsou diskutovány v následujících odstavcích. 32

42 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU Vliv na rychlost průzkumu Z prezentovaných grafů jsou patrné rozdíly potřebného času průzkumu mezi jednotlivými metodami. Jako nejrychlejší se jeví metoda, která k rozdělení využívá mad arského algoritmu, nebot ve většině případů vede na nejkratší dobu na úplné prohledání neznámého prostředí. V porovnání s modifikovanou hladovou metodou dosahuje ve většině případů rychlejších časů, v průměru asi o 5%. V malém množství případů je však o něco pomalejší. Naopak metoda MTSP vede na nejpomalejší průzkum. Z výsledků také vyplývá, že vliv parametrů td a mf na rychlost průzkumu tak významný, jak bylo původně předpokládáno. Ačkoli lze pro některé metody a některá prostředí nalézt vhodná nastavení, pro jiná prostředí jsou vhodnější nastavení jiná. Obrázek 4.5: Průměrné časy průzkumu: prostředí autolab, výchozí pozice P 1. Využití více robotů Vliv počtu robotů byl testován pro prostředí jh a hospital. V tabulce A.3 je uvedeno srovnání průzkumu s různým počtem robotů pro obě prostředí. Z dosažených výsledků je patrné, že n-násobné zvýšení počtu robotů nepřinese n-násobné zrychlení průzkumu. Například při zvýšení počtu robotů ze tří na šest, a možném očekávaném dvojnásobném zkrácení časů průzkumu, došlo ke zkrácení časů maximálně 1,5 krát. V případě prostředí hospital, kde byl testovaný počet robotů nejprve pět a poté šest, je teoretické zkrácení času průzkumu 1,2 krát. Nejenže takové časové úspory nebylo dosaženo, naopak v některých případech došlo ke zvýšení potřebného času průzkumu. Na základě těchto výsledků lze konstatovat, že pro toto konkrétní prostředí a nastavení metod nepřináší vyšší počet robotů než 5 očekávaný přínos. 33

43 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU Obrázek 4.6: Průměrné časy průzkumu: prostředí autolab, výchozí pozice P 2. Obrázek 4.7: Průměrné časy průzkumu: prostředí jh, počet robotů R = 3. 34

44 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU Obrázek 4.8: Průměrné časy průzkumu: prostředí jh, počet robotů R = 6. Obrázek 4.9: Průměrné časy průzkumu: prostředí hospital, počet robotů R = 5. 35

45 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU Obrázek 4.10: Průměrné časy průzkumu: prostředí hospital, počet robotů R = 6. Toto chování může být způsobeno řadou faktorů. Při vyšším počtu robotů se častěji stává, že roboty přejíždějí přes již zmapované části prostředí a nezískávají tak nové informace. Dalším pozorovaným faktem bylo, že při vyšším počtu robotů docházelo k častému setkání více robotů v úzkém průchodu (dveře) a roboty se zdržely vyhýbáním. Je také patrné, že ne vždy musí být dostatečný počet cílů pro všechny roboty, takže se některé roboty mohou zastavit. Například u metody MTSP bylo před provedením úprav často pozorováno, že pro některé roboty nebyly naplánovány žádné cíle. 4.4 Reálný experiment Ověření realizovaného rámce v reálném experimentu bylo provedeno v systému Sy- RoTek [?]. Systém je tvořen skupinou mobilních robotů S1R, které jsou vybaveny různými senzory, mimo jiné i laserovým dálkoměrem Hokuyo URG-04LX. Další částí systému je testovací aréna s množstvím překážek, z nichž některé je možné ovládat a měnit tak konfiguraci prostoru 2. Rozměry arény jsou 3.5m 3.8m. Z důvodů poměrně malých rozměrů arény a vzhledem k rozměrům prostředí testovaných v simulacích bylo nutné upravit nastavení některých parametrů zkoumaných metod. Především byl omezen dosah dálkoměru na 0, 5m. K laserovému dálkoměru je ještě nutné poznamenat, že jeho umístění na robotu S1R znemožňuje využití jeho plného úhlového rozsahu, který je omezen přibližně na 220. Toto omezení však nemá na průzkum velký vliv. Experimentální ověření bylo 2 Bohužel v době realizace diplomové práce nebylo rozhraní ovládání překážek veřejně přístupné, proto nebylo možné prostředí modifikovat. 36

46 KAPITOLA 4. POROVNÁNÍ STRATEGIÍ MULTI-ROBOTICKÉHO PRŮZKUMU provedenou se dvěma roboty, které byly v době testování k dispozici. Roboty jsou zobrazeny na obr a příklad mapy z reálného prostředí je zobrazen na obr Obrázek 4.11: Roboty S1R v úloze autonomního multi-robotického průzkumu. Obrázek 4.12: Ukázka modelu prostředí generovaného během reálného průzkumu. Experimentem bylo ověřeno, že s využitím simulátoru Player/Stage lze řešenou úlohu přenést do reálného světa. Na rozdíl od idealizovaného světa simulátoru se lze v reálných experimentech setkat s častějšími problémy. Prvním z nich je méně přesná lokalizace, která je v prostředí SyRoTek realizována kamerou sledující specifické vzory umístěné na vrchní straně těla robotu. Druhým problémem je šum senzorických dat, který v případě simulace je pouze aproximací reálného šumu. V tomto případě bylo nutné upravit původně použitý model senzoru, především pravděpodobnost správného měření. Zatímco pro model použitý v simulaci bylo možné měření důvěřovat s vysokou pravděpodobností a aktualizaci buňky provádět s hodnotami 0,92 pro překážku a 0,08 pro volný prostor, v případě reálného senzoru bylo nutné hodnoty změnit na 0,75 pro aktualicaci překážky a 0,12 pro aktualizaci volného prostoru. 37

WP6 - Komponenty robotického systému interakce člověk-stroj

WP6 - Komponenty robotického systému interakce člověk-stroj Centrum aplikované kybernetiky 3 WP6 - Komponenty robotického systému interakce člověk-stroj zodpovídá: Libor Přeučil Skupina inteligentní mobilní robotiky Katedra kybernetiky FEL, ČVUT v Praze Certicon

Více

Multirobotická kooperativní inspekce

Multirobotická kooperativní inspekce Multirobotická kooperativní inspekce prostředí Diplomová práce Multirobotická kooperativní inspekce prostředí Diplomová práce Intelligent and Mobile Robotics Group Laboratory for Intelligent Decision Making

Více

SLAM. Simultaneous localization and mapping. Ing. Aleš Jelínek 2015

SLAM. Simultaneous localization and mapping. Ing. Aleš Jelínek 2015 SLAM Simultaneous localization and mapping Ing. Aleš Jelínek 2015 Komplexní inovace studijních programů a zvyšování kvality výuky na FEKT VUT v Brně OP VK CZ.1.07/2.2.00/28.0193 Obsah Proč sebelokalizace,

Více

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová

Základy informatiky. Teorie grafů. Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová Základy informatiky Teorie grafů Zpracoval: Pavel Děrgel Úprava: Daniela Szturcová Obsah přednášky Barvení mapy Teorie grafů Definice Uzly a hrany Typy grafů Cesty, cykly, souvislost grafů Barvení mapy

Více

Úvod do mobilní robotiky AIL028

Úvod do mobilní robotiky AIL028 md at robotika.cz, zbynek.winkler at mff.cuni.cz http://robotika.cz/guide/umor07/cs 27. listopadu 2007 1 Mapa světa Exaktní plánování 2 3 Plánování s otáčením Mapa světa - příklad Obsah Mapa světa Exaktní

Více

Studie webů automobilek

Studie webů automobilek Studie webů automobilek červen 2006 [manažerské shrnutí] Obsah Obsah... 1 Manažerské shrnutí... 2 Kvalita obsahu a použitelnost webu... 3 Základní nedostatky negativně ovlivňují použitelnost většiny webů...

Více

Triangulace. Význam triangulace. trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy. příklad triangulace

Triangulace. Význam triangulace. trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy. příklad triangulace Význam triangulace trojúhelník je základní grafický element aproximace ploch předzpracování pro jiné algoritmy příklad triangulace Definice Triangulace nad množinou bodů v rovině představuje takové planární

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh Algoritmizace prostorových úloh Vektorová data Daniela Szturcová Prostorová data Geoobjekt entita definovaná v prostoru. Znalost jeho identifikace, lokalizace umístění v prostoru, vlastností vlastních

Více

Úvod do mobilní robotiky AIL028

Úvod do mobilní robotiky AIL028 Pravděpodobnostní plánování zbynek.winkler at mff.cuni.cz, md at robotika.cz http://robotika.cz/guide/umor05/cs 12. prosince 2005 1 Co už umíme a co ne? Jak řešit složitější případy? Definice konfiguračního

Více

SENZORY PRO ROBOTIKU

SENZORY PRO ROBOTIKU 1/13 SENZORY PRO ROBOTIKU Václav Hlaváč Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání hlavac@fel.cvut.cz http://cmp.felk.cvut.cz/ hlavac ROBOTICKÉ SENZORY - PŘEHLED

Více

Úloha - rozpoznávání číslic

Úloha - rozpoznávání číslic Úloha - rozpoznávání číslic Vojtěch Franc, Tomáš Pajdla a Tomáš Svoboda http://cmp.felk.cvut.cz 27. listopadu 26 Abstrakt Podpůrný text pro cvičení předmětu X33KUI. Vysvětluje tři způsoby rozpoznávání

Více

Algoritmizace prostorových úloh

Algoritmizace prostorových úloh INOVACE BAKALÁŘSKÝCH A MAGISTERSKÝCH STUDIJNÍCH OBORŮ NA HORNICKO-GEOLOGICKÉ FAKULTĚ VYSOKÉ ŠKOLY BÁŇSKÉ - TECHNICKÉ UNIVERZITY OSTRAVA Algoritmizace prostorových úloh Grafové úlohy Daniela Szturcová Tento

Více

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D.

Algoritmizace diskrétních. Ing. Michal Dorda, Ph.D. Algoritmizace diskrétních simulačních modelů Ing. Michal Dorda, Ph.D. 1 Úvodní poznámky Při programování simulačních modelů lze hlavní dílčí problémy shrnout do následujících bodů: 1) Zachycení statických

Více

Základy umělé inteligence

Základy umělé inteligence Základy umělé inteligence Automatické řešení úloh Základy umělé inteligence - prohledávání. Vlasta Radová, ZČU, katedra kybernetiky 1 Formalizace úlohy UI chápe řešení úloh jako proces hledání řešení v

Více

Dijkstrův algoritmus

Dijkstrův algoritmus Dijkstrův algoritmus Hledání nejkratší cesty v nezáporně hranově ohodnoceném grafu Necht je dán orientovaný graf G = (V, H) a funkce, která každé hraně h = (u, v) H přiřadí nezáporné reálné číslo označované

Více

11. Tabu prohledávání

11. Tabu prohledávání Jan Schmidt 2011 Katedra číslicového návrhu Fakulta informačních technologií České vysoké učení technické v Praze Zimní semestr 2011/12 MI-PAA EVROPSKÝ SOCIÁLNÍ FOND PRAHA & EU: INVESTUJENE DO VAŠÍ BUDOUCNOSTI

Více

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky

jednoduchá heuristika asymetrické okolí stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy Pokročilé heuristiky Pokročilé heuristiky jednoduchá heuristika asymetrické stavový prostor, kde nelze zabloudit připustit zhoršují cí tahy pokročilá heuristika symetrické stavový prostor, který vyžaduje řízení 1 2 Paměť pouze

Více

Rozvoj tepla v betonových konstrukcích

Rozvoj tepla v betonových konstrukcích Úvod do problematiky K novinkám v požární odolnosti nosných konstrukcí Praha, 11. září 2012 Ing. Radek Štefan prof. Ing. Jaroslav Procházka, CSc. Znalost rozložení teploty v betonové konstrukci nebo její

Více

Pracovní celky 3.2, 3.3 a 3.4 Sémantická harmonizace - Srovnání a přiřazení datových modelů

Pracovní celky 3.2, 3.3 a 3.4 Sémantická harmonizace - Srovnání a přiřazení datových modelů Pracovní celky 3.2, 3.3 a 3.4 Sémantická harmonizace - Srovnání a datových modelů Obsah Seznam tabulek... 1 Seznam obrázků... 1 1 Úvod... 2 2 Metody sémantické harmonizace... 2 3 Dvojjazyčné katalogy objektů

Více

Prohledávání do šířky = algoritmus vlny

Prohledávání do šířky = algoritmus vlny Prohledávání do šířky = algoritmus vlny - souběžně zkoušet všechny možné varianty pokračování výpočtu, dokud nenajdeme řešení úlohy průchod stromem všech možných cest výpočtu do šířky, po vrstvách (v každé

Více

Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant

Základy informatiky. 07 Teorie grafů. Kačmařík/Szturcová/Děrgel/Rapant Základy informatiky 07 Teorie grafů Kačmařík/Szturcová/Děrgel/Rapant Obsah přednášky barvení mapy teorie grafů definice uzly a hrany typy grafů cesty, cykly, souvislost grafů Barvení mapy Kolik barev je

Více

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest

Obsah prezentace. Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest Obsah prezentace Základní pojmy v teorii o grafech Úlohy a prohledávání grafů Hledání nejkratších cest 1 Základní pojmy Vrchol grafu: {množina V} Je to styčná vazba v grafu, nazývá se též uzlem, prvkem

Více

Emergence chování robotických agentů: neuroevoluce

Emergence chování robotických agentů: neuroevoluce Emergence chování robotických agentů: neuroevoluce Petra Vidnerová, Stanislav Slušný, Roman Neruda Ústav Informatiky, AV ČR Kognice a umělý život VIII Praha 28. 5. 2008 Evoluční robotika: EA & neuronové

Více

GIS Geografické informační systémy

GIS Geografické informační systémy GIS Geografické informační systémy Obsah přednášky Prostorové vektorové modely Špagetový model Topologický model Převody geometrií Vektorový model Reprezentuje reálný svět po jednotlivých složkách popisu

Více

Moderní systémy pro získávání znalostí z informací a dat

Moderní systémy pro získávání znalostí z informací a dat Moderní systémy pro získávání znalostí z informací a dat Jan Žižka IBA Institut biostatistiky a analýz PřF & LF, Masarykova universita Kamenice 126/3, 625 00 Brno Email: zizka@iba.muni.cz Bioinformatika:

Více

SEBELOKALIZACE MOBILNÍCH ROBOTŮ. Tomáš Jílek

SEBELOKALIZACE MOBILNÍCH ROBOTŮ. Tomáš Jílek SEBELOKALIZACE MOBILNÍCH ROBOTŮ Tomáš Jílek Sebelokalizace Autonomní určení pozice a orientace robotu ve zvoleném souřadnicovém systému Souřadnicové systémy Globální / lokální WGS-84, ETRS-89 globální

Více

Úvod do mobilní robotiky NAIL028

Úvod do mobilní robotiky NAIL028 md at robotika.cz http://robotika.cz/guide/umor08/cs 11. listopadu 2008 1 2 PID Sledování cesty Modely kolových vozidel (1/5) Diferenční řízení tank b Encoder Motor Centerpoint Motor Encoder Modely kolových

Více

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze Dobývání znalostí Pravděpodobnost a učení Doc. RNDr. Iveta Mrázová,

Více

Plánování pohybu mobilního robotu a skupiny mobilních robotů

Plánování pohybu mobilního robotu a skupiny mobilních robotů Plánování pohybu mobilního robotu a skupiny mobilních robotů Dr. rer. nat. Martin Saska (ČVUT v Praze) 4.března 2011 Tato prezentace je spolufinancována Evropským sociálním fondem a státním rozpočtem České

Více

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU. Projektová dekompozice

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU. Projektová dekompozice NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU Projektová dekompozice Úvod do vybraných nástrojů projektového managementu METODY A TECHNIKY PROJEKTOVÉHO MANAGEMENTU Tvoří jádro projektového managementu.

Více

VK CZ.1.07/2.2.00/

VK CZ.1.07/2.2.00/ Robotika Tvorba map v robotice - MRBT 3. března 2015 Ing. František Burian Komplexní inovace studijních programů a zvyšování kvality výuky na FEKT VUT v Brně OP VK CZ.1.07/2.2.00/28.0193 v pojetí mobilní

Více

Pokročilé operace s obrazem

Pokročilé operace s obrazem Získávání a analýza obrazové informace Pokročilé operace s obrazem Biofyzikální ústav Lékařské fakulty Masarykovy univerzity Brno prezentace je součástí projektu FRVŠ č.2487/2011 (BFÚ LF MU) Získávání

Více

U Úvod do modelování a simulace systémů

U Úvod do modelování a simulace systémů U Úvod do modelování a simulace systémů Vyšetřování rozsáhlých soustav mnohdy nelze provádět analytickým výpočtem.často je nutné zkoumat chování zařízení v mezních situacích, do kterých se skutečné zařízení

Více

S T R A T E G I C K Ý M A N A G E M E N T

S T R A T E G I C K Ý M A N A G E M E N T S T R A T E G I C K Ý M A N A G E M E N T 3 LS, akad.rok 2014/2015 Strategický management - VŽ 1 Proces strategického managementu LS, akad.rok 2014/2015 Strategický management - VŽ 2 Strategický management

Více

Cíle lokalizace. Zjištění: 1. polohy a postavení robota (robot pose) 2. vzhledem k mapě 3. v daném prostředí

Cíle lokalizace. Zjištění: 1. polohy a postavení robota (robot pose) 2. vzhledem k mapě 3. v daném prostředí Cíle lokalizace Zjištění: 1. polohy a postavení robota (robot pose) 2. vzhledem k mapě 3. v daném prostředí 2 Jiný pohled Je to problém transformace souřadnic Mapa je globální souřadnicový systém nezávislý

Více

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění Jan Klíma Obsah Motivace & cíle práce Evoluční algoritmy Náhradní modelování Stromové regresní metody Implementace a výsledky

Více

Úloha ve stavovém prostoru SP je <s 0, C>, kde s 0 je počáteční stav C je množina požadovaných cílových stavů

Úloha ve stavovém prostoru SP je <s 0, C>, kde s 0 je počáteční stav C je množina požadovaných cílových stavů Stavový prostor a jeho prohledávání SP = formalismus k obecnějšímu uchopení a vymezení problému, který spočívá v nalezení posloupnosti akcí vedoucích od počátečního stavu úlohy (zadání) k požadovanému

Více

Ctislav Fiala: Optimalizace a multikriteriální hodnocení funkční způsobilosti pozemních staveb

Ctislav Fiala: Optimalizace a multikriteriální hodnocení funkční způsobilosti pozemních staveb 16 Optimální hodnoty svázaných energií stropních konstrukcí (Graf. 6) zde je rozdíl materiálových konstant, tedy svázaných energií v 1 kg materiálu vložek nejmarkantnější, u polystyrénu je téměř 40krát

Více

UITS / ISY. Ústav inteligentních systémů Fakulta informačních technologií VUT v Brně. ISY: Výzkumná skupina inteligentních systémů 1 / 14

UITS / ISY. Ústav inteligentních systémů Fakulta informačních technologií VUT v Brně. ISY: Výzkumná skupina inteligentních systémů 1 / 14 UITS / ISY Výzkumná skupina inteligentních systémů Ústav inteligentních systémů Fakulta informačních technologií VUT v Brně ISY: Výzkumná skupina inteligentních systémů 1 / 14 Obsah Představení skupiny

Více

Algoritmy pro shlukování prostorových dat

Algoritmy pro shlukování prostorových dat Algoritmy pro shlukování prostorových dat Marta Žambochová Katedra matematiky a informatiky Fakulta sociálně ekonomická Univerzita J. E. Purkyně v Ústí nad Labem ROBUST 21. 26. leden 2018 Rybník - Hostouň

Více

Buněčné automaty a mřížkové buněčné automaty pro plyny. Larysa Ocheretna

Buněčné automaty a mřížkové buněčné automaty pro plyny. Larysa Ocheretna Buněčné automaty a mřížkové buněčné automaty pro plyny Larysa Ocheretna Obsah Buněčný automat: princip modelu, vymezení pojmů Mřížkový buněčný automat pro plyny Příklady aplikace principů mřížkových buněčných

Více

VYUŽITÍ SNÍMACÍCH SYSTÉMU V PRŮMYSLOVÉ AUTOMATIZACI SVOČ FST 2019

VYUŽITÍ SNÍMACÍCH SYSTÉMU V PRŮMYSLOVÉ AUTOMATIZACI SVOČ FST 2019 VYUŽITÍ SNÍMACÍCH SYSTÉMU V PRŮMYSLOVÉ AUTOMATIZACI SVOČ FST 2019 Bc. Michael Froněk Západočeská univerzita v Plzni Univerzitní 8, 306 14 Plzeň Česká republika ABSTRAKT Práce se zabývá řešením problému

Více

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být

Více

Numerické metody a programování. Lekce 8

Numerické metody a programování. Lekce 8 Numerické metody a programování Lekce 8 Optimalizace hledáme bod x, ve kterém funkce jedné nebo více proměnných f x má minimum (maximum) maximalizace f x je totéž jako minimalizace f x Minimum funkce lokální:

Více

GIS Geografické informační systémy

GIS Geografické informační systémy GIS Geografické informační systémy Obsah přednášky Prostorové vektorové modely Špagetový model Topologický model Převody geometrií Vektorový model Reprezentuje reálný svět po jednotlivých složkách popisu

Více

P R O J E K T O V É Ř Í Z E N Í A M A R K E T I N G 1. Akad. rok 2015/2016, LS Projektové řízení a marketing - VŽ 1

P R O J E K T O V É Ř Í Z E N Í A M A R K E T I N G 1. Akad. rok 2015/2016, LS Projektové řízení a marketing - VŽ 1 P R O J E K T O V É Ř Í Z E N Í A M A R K E T I N G 1 Akad. rok 2015/2016, LS Projektové řízení a marketing - VŽ 1 Vznik a historie projektového řízení Akad. rok 2015/2016, LS Projektové řízení a marketing

Více

Základní postupy a zásady při plnění smlouvy s ohledem na 3E při zadávání veřejných zakázek

Základní postupy a zásady při plnění smlouvy s ohledem na 3E při zadávání veřejných zakázek smlouvy s ohledem na 3E při zadávání Příloha č. D2 Dokumentu Jak zohledňovat principy 3E (hospodárnost, efektivnost a účelnost) v postupech zadávání Vydal: Ministerstvo pro místní rozvoj Odbor veřejného

Více

Úvod do mobilní robotiky NAIL028

Úvod do mobilní robotiky NAIL028 md at robotika.cz http://robotika.cz/guide/umor08/cs 13. ledna 2009 1 Zkoušky a zápočty Semor 2009 2 3 Motivace PolyBot Replicator Zkoušky a zápočty Semor 2009 Zkoušky a zápočty termíny každý Čt od 17:20

Více

Evoluční výpočetní techniky (EVT)

Evoluční výpočetní techniky (EVT) Evoluční výpočetní techniky (EVT) - Nacházejí svoji inspiraci v přírodních vývojových procesech - Stejně jako přírodní jevy mají silnou náhodnou složku, která nezanedbatelným způsobem ovlivňuje jejich

Více

Usuzování za neurčitosti

Usuzování za neurčitosti Usuzování za neurčitosti 25.11.2014 8-1 Usuzování za neurčitosti Hypotetické usuzování a zpětná indukce Míry postačitelnosti a nezbytnosti Kombinace důkazů Šíření pravděpodobnosti v inferenčních sítích

Více

Efektivní hledání nejkratších cest v sítích hromadné přepravy osob

Efektivní hledání nejkratších cest v sítích hromadné přepravy osob DIPLOMOVÁ PRÁCE Efektivní hledání nejkratších cest v sítích hromadné přepravy osob Autor: Vladislav Martínek Vedoucí: RNDr. Michal Žemlička, Ph.D. Motivace Jak se co nejrychleji dostat z bodu A do bodu

Více

Algoritmus pro hledání nejkratší cesty orientovaným grafem

Algoritmus pro hledání nejkratší cesty orientovaným grafem 1.1 Úvod Algoritmus pro hledání nejkratší cesty orientovaným grafem Naprogramoval jsem v Matlabu funkci, která dokáže určit nejkratší cestu v orientovaném grafu mezi libovolnými dvěma vrcholy. Nastudoval

Více

5 Orientované grafy, Toky v sítích

5 Orientované grafy, Toky v sítích Petr Hliněný, FI MU Brno, 205 / 9 FI: IB000: Toky v sítích 5 Orientované grafy, Toky v sítích Nyní se budeme zabývat typem sít ových úloh, ve kterých není podstatná délka hran a spojení, nýbž jejich propustnost

Více

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU

NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU NÁSTROJE A TECHNIKY PROJEKTOVÉHO MANAGEMENTU Projektová dekompozice Přednáška Teorie PM č. 2 Úvod do vybraných nástrojů projektového managementu Úvodní etapa projektu je nejdůležitější fáze projektu. Pokud

Více

Management projektu III. Fakulta sportovních studií přednáška do předmětu Projektový management ve sportu

Management projektu III. Fakulta sportovních studií přednáška do předmětu Projektový management ve sportu Management projektu III. Fakulta sportovních studií 2016 5. přednáška do předmětu Projektový management ve sportu doc. Ing. Petr Pirožek,Ph.D. Ekonomicko-správní fakulta Lipova 41a 602 00 Brno Email: pirozek@econ.muni.cz

Více

Lokalizační systém pro roje mobilních robotů

Lokalizační systém pro roje mobilních robotů ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Fakulta elektrotechnická Bakalářská práce Vojtěch Cajtler Lokalizační systém pro roje mobilních robotů Katedra řídicí techniky Vedoucí práce: Ing. Tomáš Krajník, Ph.D.

Více

Architektura počítačů

Architektura počítačů Architektura počítačů Studijní materiál pro předmět Architektury počítačů Ing. Petr Olivka katedra informatiky FEI VŠB-TU Ostrava email: petr.olivka@vsb.cz Ostrava, 2010 1 1 Architektura počítačů Pojem

Více

Datové struktury 2: Rozptylovací tabulky

Datové struktury 2: Rozptylovací tabulky Datové struktury 2: Rozptylovací tabulky prof. Ing. Pavel Tvrdík CSc. Katedra počítačových systémů Fakulta informačních technologií České vysoké učení technické v Praze c Pavel Tvrdík, 2010 Efektivní algoritmy

Více

Téma 8: Optimalizační techniky v metodě POPV

Téma 8: Optimalizační techniky v metodě POPV Téma 8: Optimalizační techniky v metodě POPV Přednáška z předmětu: Pravděpodobnostní posuzování konstrukcí 4. ročník bakalářského studia Katedra stavební mechaniky Fakulta stavební Vysoká škola báňská

Více

STROMY. v 7 v 8. v 5. v 2. v 3. Základní pojmy. Řešené příklady 1. příklad. Stromy

STROMY. v 7 v 8. v 5. v 2. v 3. Základní pojmy. Řešené příklady 1. příklad. Stromy STROMY Základní pojmy Strom T je souvislý graf, který neobsahuje jako podgraf kružnici. Strom dále budeme značit T = (V, X). Pro graf, který je stromem platí q = n -, kde q = X a n = V. Pro T mezi každou

Více

Metody síťové analýzy

Metody síťové analýzy Metody síťové analýzy Řeší problematiku složitých systémů, zejména pak vazby mezi jejich jednotlivými prvky. Vychází z teorie grafů. Základní metody síťové analýzy: CPM (Critical Path Method) deterministický

Více

Centrum pro rozvoj dopravních systémů

Centrum pro rozvoj dopravních systémů Centrum pro rozvoj dopravních systémů Martin Hájek VŠB - TU Ostrava Březen 2013 Témata 1. Představení centra RODOS 2. Řízení dopravy při modernizaci D1 výstupy centra Centrum pro rozvoj dopravních systémů

Více

Sítě SFN Systém pro analýzu a vizualizaci pokrytí a rušení vysílacích sítí

Sítě SFN Systém pro analýzu a vizualizaci pokrytí a rušení vysílacích sítí Sítě SFN Systém pro analýzu a vizualizaci pokrytí a rušení vysílacích sítí Sítě SFN ver. 7 je výpočetní systém pro analýzu pokrytí a rušení vysílacích sítí pro služby FM, TV, DVB- T a T-DAB a analýzu a

Více

1. DEFINICE KRITÉRIÍ PRO SROVNÁNÍ HODNOCENÝCH TRAS ROZVOJ ÚZEMÍ VLIV NA ŽIVOTNÍ PROSTŘEDÍ EKONOMICKÁ NÁROČNOST

1. DEFINICE KRITÉRIÍ PRO SROVNÁNÍ HODNOCENÝCH TRAS ROZVOJ ÚZEMÍ VLIV NA ŽIVOTNÍ PROSTŘEDÍ EKONOMICKÁ NÁROČNOST OBSAH Strana 1. DEFINICE KRITÉRIÍ PRO SROVNÁNÍ HODNOCENÝCH TRAS... 2 1.1. ROZVOJ ÚZEMÍ... 2 1.2. VLIV NA ŽIVOTNÍ PROSTŘEDÍ... 2 1.3. EKONOMICKÁ NÁROČNOST... 2 2. SHRNUTÍ KLADŮ A ZÁPORŮ HODNOCENÝCH TRAS...

Více

Optimalizace. Obsah přednášky. DÚ LP - Okružní problém. Lineární optimalizace. DÚ LP - Okružní problém. DÚ LP - Okružní problém

Optimalizace. Obsah přednášky. DÚ LP - Okružní problém. Lineární optimalizace. DÚ LP - Okružní problém. DÚ LP - Okružní problém Obsah přednášky Mgr. Květuše Sýkorová Optimalizace Lineární programování Distribuční úlohy Okružní problém KI Př UJEP Ústí nad Labem Nederivační metody Metody 1D optimalizace Derivační metody Optimalizace

Více

Jana Dannhoferová Ústav informatiky, PEF MZLU

Jana Dannhoferová Ústav informatiky, PEF MZLU Počítačová grafika 1. Definice oblasti souvisí: a) s definováním množiny všech bodů, které náleží do hranice a zároveň do jejího vnitřku b) s popisem její hranice c) s definováním množiny všech bodů, které

Více

Grafové algoritmy. Programovací techniky

Grafové algoritmy. Programovací techniky Grafové algoritmy Programovací techniky Grafy Úvod - Terminologie Graf je datová struktura, skládá se z množiny vrcholů V a množiny hran mezi vrcholy E Počet vrcholů a hran musí být konečný a nesmí být

Více

Vícerozměrné statistické metody

Vícerozměrné statistické metody Vícerozměrné statistické metody Shluková analýza Jiří Jarkovský, Simona Littnerová FSTA: Pokročilé statistické metody Typy shlukových analýz Shluková analýza: cíle a postupy Shluková analýza se snaží o

Více

OPTIMALIZACE. (přehled metod)

OPTIMALIZACE. (přehled metod) OPTIMALIZACE (přehled metod) Typy optimalizačních úloh Optimalizace bez omezení Nederivační metody Derivační metody Optimalizace s omezeními Lineární programování Nelineární programování Globální optimalizace

Více

Základní rozdělení aplikací

Základní rozdělení aplikací Dohledová aplikace Nature Inspired Technologies Group (NIT) - http://nit.felk.cvut.cz/ Katedra kybernetiky Fakulta elektrotechnická ČVUT v Praze http://cyber.felk.cvut.cz/ Základní rozdělení aplikací Dohledový

Více

Úvod do mobilní robotiky AIL028

Úvod do mobilní robotiky AIL028 md at robotika.cz http://robotika.cz/guide/umor07/cs 25. října 2007 1 2 Zadání úlohy Náhodná procházka Tchibot 3 SPA Subsumption architecture 3T architektura Robotika matematický přístup úloha hledání

Více

Simulace pohybu chodců pomocí celulárních modelů

Simulace pohybu chodců pomocí celulárních modelů Simulace pohybu chodců pomocí celulárních modelů Marek Bukáček výzkumná skupina GAMS při KM KIPL FJFI ČVUT v Praze 8. červen 2011 Obsah Úvod Celulární modely úprava Floor field modelu Proč modelovat Akademický

Více

1. Znalostní systémy a znalostní inženýrství - úvod. Znalostní systémy. úvodní úvahy a předpoklady. 26. září 2017

1. Znalostní systémy a znalostní inženýrství - úvod. Znalostní systémy. úvodní úvahy a předpoklady. 26. září 2017 Znalostní systémy úvodní úvahy a předpoklady 26. září 2017 1-1 Znalostní systém Definice ZS (Feigenbaum): Znalostní (původně expertní) systémy jsou počítačové programy simulující rozhodovací činnost experta

Více

Časová a prostorová složitost algoritmů

Časová a prostorová složitost algoritmů .. Časová a prostorová složitost algoritmů Programovací techniky doc. Ing. Jiří Rybička, Dr. ústav informatiky PEF MENDELU v Brně rybicka@mendelu.cz Hodnocení algoritmů Programovací techniky Časová a prostorová

Více

Voronoiův diagram. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta

Voronoiův diagram. RNDr. Petra Surynková, Ph.D. Univerzita Karlova v Praze Matematicko-fyzikální fakulta 12 RNDr., Ph.D. Katedra didaktiky matematiky Univerzita Karlova v Praze Matematicko-fyzikální fakulta petra.surynkova@mff.cuni.cz http://surynkova.info Definice V( P) nad množinou bodů P { p v rovině 1,

Více

Generování sítě konečných prvků

Generování sítě konečných prvků Generování sítě konečných prvků Jaroslav Beran Modelování a simulace Tvorba výpočtového modelu s využitím MKP zahrnuje: Tvorbu (import) geometrického modelu Generování sítě konečných prvků Definování vlastností

Více

Automatické rozpoznávání dopravních značek

Automatické rozpoznávání dopravních značek ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA DOPRAVNÍ Jiří Hofman Automatické rozpoznávání dopravních značek Semestrální práce z předmětu ITS 2012 Obsah 1. Automatické rozpoznávání dopravních značek (ATSR)...

Více

CA Business Service Insight

CA Business Service Insight SPECIFIKACE PRODUKTU: CA Business Service Insight CA Business Service Insight agility made possible Díky produktu CA Business Service Insight budete vědět, které služby jsou v rámci vaší společnosti využívány,

Více

Ing. Jiří Fejfar, Ph.D. Geo-informační systémy

Ing. Jiří Fejfar, Ph.D. Geo-informační systémy Ing. Jiří Fejfar, Ph.D. Geo-informační systémy Definice, budování a život GIS Kapitola 1: Vztahy strana 2 Data, informace, IS, GIS Kapitola 1: Vztahy strana 3 Rozhodnutí Znalosti Znalostní systémy. Informace

Více

Úvod do mobilní robotiky AIL028

Úvod do mobilní robotiky AIL028 SLAM - souběžná lokalizace a mapování {md zw} at robotika.cz http://robotika.cz/guide/umor07/cs 10. ledna 2008 1 2 3 SLAM intro Obsah SLAM = Simultaneous Localization And Mapping problém typu slepice-vejce

Více

Určeno studentům středního vzdělávání s maturitní zkouškou, předmět Marketing a management, okruh Plánování

Určeno studentům středního vzdělávání s maturitní zkouškou, předmět Marketing a management, okruh Plánování Určeno studentům středního vzdělávání s maturitní zkouškou, předmět Marketing a management, okruh Plánování Materiál vytvořil: Ing. Karel Průcha Období vytvoření VM: listopad 2013 Klíčová slova: plánování,

Více

Vypracovat přehled paralelních kinematických struktur. Vytvořit model a provést analýzu zvolené PKS

Vypracovat přehled paralelních kinematických struktur. Vytvořit model a provést analýzu zvolené PKS Autor BP: Vedoucí práce: Tomáš Kozák Ing. Jan Zavřel, Ph.D. Vypracovat přehled paralelních kinematických struktur Vytvořit model a provést analýzu zvolené PKS Provést simulaci zvolené PKS Provést optimalizaci

Více

Seminář z umělé inteligence. Otakar Trunda

Seminář z umělé inteligence. Otakar Trunda Seminář z umělé inteligence Otakar Trunda Plánování Vstup: Satisficing task: počáteční stav, cílové stavy, přípustné akce Optimization task: počáteční stav, cílové stavy, přípustné akce, ceny akcí Výstup:

Více

Neinformované metody prohledávání stavového prostoru. Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague

Neinformované metody prohledávání stavového prostoru. Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague Neinformované metody prohledávání stavového prostoru Michal Pěchouček Gerstner Laboratory Agent Technology Group, Czech Technical University in Prague http://labe.felk.cvut.cz/~ tkrajnik/kui2/data/k333/1.pdf

Více

Složitost Filip Hlásek

Složitost Filip Hlásek Složitost Filip Hlásek Abstrakt. Příspěvek popisuje dva základní koncepty teoretické informatiky, Turingovy stroje a složitost. Kromě definic důležitých pojmů uvádí také několik souvisejících tvrzení,

Více

Metodická pomůcka pro specifikaci dočasných opatření. doc. Ing. Pavel Šenovský, Ph.D. Ing. Pavlína Ježková

Metodická pomůcka pro specifikaci dočasných opatření. doc. Ing. Pavel Šenovský, Ph.D. Ing. Pavlína Ježková Metodická pomůcka pro specifikaci dočasných opatření doc. Ing. Pavel Šenovský, Ph.D. Ing. Pavlína Ježková Vysoká škola báňská Technická univerzita Ostrava, Fakulta bezpečnostního inženýrství Ostrava 2013

Více

EXTRAKT z české technické normy

EXTRAKT z české technické normy EXTRAKT z české technické normy Extrakt nenahrazuje samotnou technickou normu, je pouze informativním 35.240.60 materiálem o normě. Komunikační infrastruktura pro pozemní mobilní zařízení (CALM) Architektura

Více

Stanovení nejistot při výpočtu kontaminace zasaženého území

Stanovení nejistot při výpočtu kontaminace zasaženého území Stanovení nejistot při výpočtu kontaminace zasaženého území Michal Balatka Abstrakt Hodnocení ekologického rizika kontaminovaných území představuje komplexní úlohu, která vyžaduje celou řadu vstupních

Více

24.11.2009 Václav Jirchář, ZTGB

24.11.2009 Václav Jirchář, ZTGB 24.11.2009 Václav Jirchář, ZTGB Síťová analýza 50.let V souvislosti s potřebou urychlit vývoj a výrobu raket POLARIS v USA při závodech ve zbrojení za studené války se SSSR V roce 1958 se díky aplikaci

Více

9. přednáška z předmětu GIS1 Digitální model reliéfu a odvozené povrchy. Vyučující: Ing. Jan Pacina, Ph.D.

9. přednáška z předmětu GIS1 Digitální model reliéfu a odvozené povrchy. Vyučující: Ing. Jan Pacina, Ph.D. 9. přednáška z předmětu GIS1 Digitální model reliéfu a odvozené povrchy Vyučující: Ing. Jan Pacina, Ph.D. e-mail: jan.pacina@ujep.cz Lehký úvod Digitální modely terénu jsou dnes v geoinformačních systémech

Více

Algoritmizace. 1. Úvod. Algoritmus

Algoritmizace. 1. Úvod. Algoritmus 1. Úvod Algoritmizace V dnešní době již počítače pronikly snad do všech oblastí lidské činnosti, využívají se k řešení nejrůznějších úkolů. Postup, který je v počítači prováděn nějakým programem se nazývá

Více

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura Dílčí architektury Informační systémy - dílčí architektury - EIS MIS TPS strategické řízení taktické řízení operativní řízení a provozu 1 Globální Funkční Procesní Datová SW Technologická HW Aplikační

Více

Analytické metody v motorsportu

Analytické metody v motorsportu Analytické metody v motorsportu Bronislav Růžička Ústav konstruování Odbor konstruování strojů Fakulta strojního inženýrství Vysoké učení č technické v Brně ě 29. června 2011, FSI VUT v Brně, Česká republika

Více

VE 2D A 3D. Radek Výrut. Abstrakt Tento článek obsahuje postupy pro výpočet Minkowského sumy dvou množin v rovině a pro výpočet Minkowského sumy

VE 2D A 3D. Radek Výrut. Abstrakt Tento článek obsahuje postupy pro výpočet Minkowského sumy dvou množin v rovině a pro výpočet Minkowského sumy 25. KONFERENCE O GEOMETRII A POČÍTAČOVÉ GRAFICE Radek Výrut VÝPOČET MINKOWSKÉHO SUMY VE 2D A 3D Abstrakt Tento článek obsahuje postupy pro výpočet Minkowského sumy dvou množin v rovině a pro výpočet Minkowského

Více

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21.

Vyhledávání. doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava. Prezentace ke dni 21. Vyhledávání doc. Mgr. Jiří Dvorský, Ph.D. Katedra informatiky Fakulta elektrotechniky a informatiky VŠB TU Ostrava Prezentace ke dni 21. září 2018 Jiří Dvorský (VŠB TUO) Vyhledávání 242 / 433 Osnova přednášky

Více

PARAMETRICKÁ STUDIE VÝPOČTU KOMBINACE JEDNOKOMPONENTNÍCH ÚČINKŮ ZATÍŽENÍ

PARAMETRICKÁ STUDIE VÝPOČTU KOMBINACE JEDNOKOMPONENTNÍCH ÚČINKŮ ZATÍŽENÍ PARAMETRICKÁ STUDIE VÝPOČTU KOMBINACE JEDNOKOMPONENTNÍCH ÚČINKŮ ZATÍŽENÍ Ing. David KUDLÁČEK, Katedra stavební mechaniky, Fakulta stavební, VŠB TUO, Ludvíka Podéště 1875, 708 33 Ostrava Poruba, tel.: 59

Více

PROGRAMOVÁNÍ ROBOTŮ LEGO MINDSTORM S VYUŽITÍM MATLABU

PROGRAMOVÁNÍ ROBOTŮ LEGO MINDSTORM S VYUŽITÍM MATLABU PROGRAMOVÁNÍ ROBOTŮ LEGO MINDSTORM S VYUŽITÍM MATLABU J. Mareš*, A. Procházka*, P. Doležel** * Ústav počítačové a řídicí techniky, Fakulta chemicko-inženýrská, Vysoká škola chemicko-technologická, Technická

Více

INTELIGENTNÍ SYSTÉM ŘÍZENÍ DOPRAVY V MĚSTSKÉ OBLASTI

INTELIGENTNÍ SYSTÉM ŘÍZENÍ DOPRAVY V MĚSTSKÉ OBLASTI INTELIGENTNÍ SYSTÉM ŘÍZENÍ DOPRAVY V MĚSTSKÉ OBLASTI Architektura městského telematického systému Architektura městského telematického systému Řízení dopravy ve městech Pro řízení dopravy ve městech v

Více

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky

Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky Otázka 20 A7B36DBS Zadání... 1 Slovníček pojmů... 1 Relační DB struktury sloužící k optimalizaci dotazů - indexy, clustery, indexem organizované tabulky... 1 Zadání Relační DB struktury sloužící k optimalizaci

Více