Algorytmy Nawigacji Robotów Mobilnych: Wprowadzenie do nawigacji robotów mobilnych
Realizacja zadania ruchu przez robota mobilnego wymaga pozyskiwania informacji o otaczającym środowisku - stąd duże znaczenie ma układ sensoryczny, który pozwala na obserwację otoczenia i jego percepcję. W tym celu stosuje się zarówno proste układy dalmierzy i czujniki kontaktowe, które odpowiadają za wykrywanie kolizji i są elementem systemu bezpieczeństwa robota, jak również złożone układy lokalizacji, które w dalszym etapie pozwalają na umiejscowienia robota. Warto zauważyć, że choć część czujników, tzw. czujniki wewnętrzne, dokonują pomiaru stanu samego robota, dane przez nie dostarczane mogą być istotne z punktu widzenia poruszania się robota - przykładem są czujniki impulsowo obrotowe, które pozwalają estymować lokalnie przemieszczenie pojazdu.
Należy podkreślić, że pobranie informacji przesyłanych przez układ sensoryczny stanowi zwykle dopiero pierwszy etap percepcji. Właściwe przetworzenie informacji oraz fuzja danych z wielu czujników pozwala na zaawansowaną percepcję i w pewnym sensie umożliwia rozumienie przez robota elementów środowiska (np. znajdowanie jego charakterystycznych cech). Na tym etapie powstaje mapa lokalna, czyli numeryczna interpretacja najbliższego otoczenia robota. Ma ona duże znaczenie w sensie krótkoterminowym i umożliwia wykrywanie przeszkód, których występowanie może naruszać warunek bezpiecznego ruchu robota.
Lokalna mapa świata, która często jest budowana na podstawie elementarnych informacji sensorycznych może być również wykorzystana do wzbogacenia wiedzy robota o środowisku w sensie globalnym. W ten sposób można dokonać lokalizacji robota w oparciu o dostępną informację, na którą składa się wiedza a’priori (np. plany budynków) oraz wiedza uzyskiwana na etapie wcześniejszej eksploracji środowiska. Mapa globalna może zawierać dane dotyczące niepewności pozyskiwanej informacji, które stanowią miarę jej jakości. W oparciu o mapę globalną (niezależnie od stopnia jej złożoności - w najprostszym przypadku mapą globalną mogą stanowić informacje o położeniu punktów nawigacyjnych) zachodzi proces umiejscowienia robota w środowisku.
Lokalizacja robota (choćby zgrubna względem elementów środowiska) jest warunkiem koniecznym wykonania zadania ruchu zmierzającego do uzyskania zdefiniowanego celu. Jest to też punkt wyjścia do zaplanowania ruchu na postawie dostępnych informacji o środowisku. Planowanie zadania wymaga uwzględnienia wielu, często antagonistycznych aspektów. Należą do nich m. in.:
• uzyskanie zadanej pozycji i orientacji robota w środowisku
• poruszanie się robota z określonym profilem prędkości
• unikanie kolizji z przeszkodami statycznymi (np. ściany budynków, elementy wyposażenia pomieszczenia) i dynamicznymi (np. ludzie, inne roboty, pojazdy transportowe w fabryce, itd.)
• występowanie niebezpiecznych obszarów środowiska o dużym stopniu niepewności (tj. ruch jest możliwy, ale pod pewnymi warunkami wynikającymi z zapewnienia bezpieczeństwa)
• ograniczona mobilność robotów, wynikająca z ograniczeń prędkości (tj. ograniczeń nieholono-micznych)
• optymalizacja zużycia energii, itd.
Część z tych aspektów można bezpośrednio wziąć pod uwagę podczas planowania ruchu. W tym celu wykorzystuje się różne metody oparte na podejściu formalnym i deterministycznym (ściśle matematycznym), probabilistycznym (uwzględniającym np. niepewność pozyskiwanej informacji o środowisku), heurystycznym i rozmytym (tj. pewnym regułom, opracowanym dla szczególnych przypadków). Mnogość algorytmów wynika przede wszystkim z dużej złożoności problemu, który może być rozwiązany alternatywnymi technikami. Wynikiem planowania ruchu jest wyznaczenie zbioru punktów przez które ma przejechać robot, określenie ścieżki ruchu i zdefiniowanie profilu prędkości (trajektorii). Nie wszystkie z wymienionych elementów muszą być zdefiniowane precyzyjnie - zależy to konkretnego przypadku
Autor: D. Pazderski, v. 1.0, 9/2012