Wstęp do Robotyki c W. Szynkiewicz, 2009 1 Systemy wielorobotowe/wieloagentowe Robot to agent upostaciowiony(mający fizyczne ciało) działający w rzeczywistym, fizycznym środowisku. O systemie wielorobotowym możemy już mówić, jeśli mamy do czynienia z co najmniej dwoma robotami i występują interakcje między nimi wynikające zazwyczaj z działania we wspólnej przestrzeni roboczej. Często definiując system wielorobotowy przyjmuje się, że jest możliwa(potencjalnie) współpraca robotów. Roboty będą mogły wykonać wspólnie choćby najprostszą czynność, jeśli umożliwią to ich układy sterowania. System wielorobotowy to układ składający się z: dwóch lub więcej robotów(np. manipulatorów, robotów mobilnych, itp.), które mogą być wyposażone w różne narzędzia, różnorodnych czujników oraz, innych urządzeń współpracujących z robotami. Ogólnie system wielorobotowy jest terminem stosowanym do szerszej klasy układów: grupy robotów manipulacyjnych grupy składającej się z wielu robotów mobilnych grupy robotów pływających(ławice), latających(stada, klucze) różne kombinacje powyższych urządzeń Wstęp do Robotyki c W. Szynkiewicz, 2009 2 kamera CCD czujnik dotykowy czujnik si³ kamera CMOS czujnik opto
Wstęp do Robotyki c W. Szynkiewicz, 2009 3 Powody tworzenia systemów wielorobotowych: możliwość wykonania zadań zbyt trudnych(albo niewykonalnych) dla pojedynczego robota i/lub znaczący wzrost wydajności zbudowanie i wykorzystanie kilku prostych robotów może być łatwiejsze niż stosowanie jednego uniwersalnego, ale bardzo skomplikowanego robota do realizacji różnorodnych zadań zwiększenie odporności i niezawodności(roboty mogą nawzajem zastępować siebie, jeśli jeden lub więcej ulegnie awarii) konstruktywne badania poświęcone współpracy robotów mogą dostarczyć nowych spostrzeżeń istotnych dla nauk socjologicznych i biologicznych Wstęp do Robotyki c W. Szynkiewicz, 2009 4 Przykładowe sposoby współpracy robotów: Podziałzadaniawtakisposób,iżkażdyzrobotówwykonujeswojączęść,alejestteżzdolnydo wykonania części lub całości zadań innych robotów. Tego typu współpraca zwiększa niezawodność systemu. Obróbka elementu przez kilka robotów jednocześnie w celu skrócenia całkowitego czasu cyklu produkcyjnego. Korzystanie przez kilka robotów ze wspólnego magazynka narzędzi, jeśli w trakcie procesu produkcyjnego zachodzi konieczność wielokrotnej wymiany narzędzi. Umożliwia to zmniejszenie ogólnej liczby narzędzi, gdyż nie jest potrzebny oddzielny komplet narzędzi dla każdego robota. Wykorzystanie odmiennych własności różnych robotów przy realizacji wspólnego zadania, np. wspólna lokalizacja i budowanie mapy przez grupę robotów wyposażonych w różne czujniki, albo jeden z robotów ma duży udźwig, zaś drugi może wykonywać bardzo precyzyjne ruchy. Sterowanie ruchem. Wiele robotów(agentów) poruszających się we wspólnej środowisku i unikających wzajemnych kolizji. Planowanie ruchu robotów może być rozpatrywane jako problem konfliktu zasobu, który może być rozwiązywany przez ustalenie zasad ruchu(kodeks), priorytetów, struktur komunikacyjnych. Kooperatywna manipulacja( Pchanie pudełka ). Manipulowanie wielkimi obiektami jednocześnie przez kilka robotów. Pchanie pudła zazwyczaj odbywa się na płaszczyźnie, podczas gdy transport obiektów wymaga podnoszenia i przenoszenia przedmiotów zespołowo przez kilka robotów co istotnie
Wstęp do Robotyki c W. Szynkiewicz, 2009 5 zwiększa trudność zadania. Wspólne transportowanie przedmiotów jest przykładem zadania testowego dla takich zagadnień jak koordynacja ruchów oraz utrzymanie ścisłego szyku(formacji) robotów. Poszukiwanie eksploracja. Grupa robotów poszukuje w środowisku określonych obiektów. Można podać wiele przykładów tego typu zadań m.in. sprzątanie, poszukiwanie min, zbieranie owoców/warzyw. Mogą być wykonywane przez każdego robota niezależnie albo roboty współpracują przy jego wykonaniu (jest to sprawdzian, czy ewentualna współpraca robotów może przyspieszyć realizację zadania). Pokrycie obszaru. Pokrycie obszaru wymaga efektywnych sposobów sprawdzenia całego obszaru przez grupę robotów. Typowymi przykładami pokrycia są malowanie dużych powierzchni, koszenie trawników, odśnieżanie, rozminowanie terenu, itp. Wstęp do Robotyki c W. Szynkiewicz, 2009 6 Obserwacja wielu celów: Zadanie to wymaga działania grupy robotów w celu wykrycia i śledzenia wielu poruszających się obiektów(celów). Typowymi aplikacjami są tutaj systemy bezpieczeństwa, w których wymagany jest nadzór i śledzenie ruchomych obiektów. Poza grupą robotów mobilnych, w tego typu zastosowaniach wykorzystuje się sieci czujników. Zazwyczaj takie czujniki charakteryzują się małymi możliwościami obliczeniowymi i niewielkim zasięgiem i ich współdziałanie z ruchomymi robotami może istotnie poszerzać możliwości całego systemu. Piłka nożna robotów: Jest przykładem bardzo wymagającego zadania testowego dla drużyny robotów, gdzie jest wymagane planowanie i sterowanie ruchem robotów w czasie rzeczywistym, w środowisku zawierającym wiele ruchomych przeszkód(innych zawodników). Rozwiązania wymagają problemy podziału zadań i planowanie działań grupowych takich jak: strategia gry zespołu, możliwość pełnienia różnych ról przez tego samego zawodnika.
Wstęp do Robotyki c W. Szynkiewicz, 2009 7 Gra w piłkę jako przykład złożonego zadania wymagającego rozwiązania problemów: planowanie i sterowanie ruchem robotów w czasie rzeczywistym, w środowisku zawierającym wiele ruchomych przeszkód(np. innych zawodników); modelowanie świata rzeczywistego, a w szczególności dynamicznego, który charakteryzuje się wieloma zakłóceniami obserwacji, niepełnymi odbieranymi wiadomościami. Konieczne jest modelowanie i przewidywanie ruchu piłki oraz innych zawodników; systemy wieloagentowe, podział zadań i planowanie działań grupowych, takich jak strategia gry zespołu, możliwość pełnienia różnych ról przez tego samego zawodnika; występowanie zarówno współzawodnictwa(pomiędzy zespołami) jak i współpracy(pomiędzy zawodnikami tej samej drużyny); wykorzystanie statycznych i adaptacyjnych algorytmów sterowania- dostrajanie zawodników, trenowanie, adaptacja, uczenie maszynowe; problemy podziału zasobów(dostęp do piłki, miejsce na boisku), optymalizacja wykorzystania zasobów (energia zawodnika); komunikacja między agentami, charakteryzująca się ograniczoną przepustowością, zakłóceniami, kodowaniem i szyfrowaniem danych oraz rozproszona reprezentacja wiedzy; zagadnienia konstrukcji mechanicznych, układów wykonawczych, czujników, zasilania. Wstęp do Robotyki c W. Szynkiewicz, 2009 8
Wstęp do Robotyki c W. Szynkiewicz, 2009 9 KOLUMNA KLIN LINIA ROMB OKR G Rys. 1: Przykładowe formacje(szyki) robotów mobilnych Wstęp do Robotyki c W. Szynkiewicz, 2009 10 Rys. 2: Problemy z zachowaniem szyku
Wstęp do Robotyki c W. Szynkiewicz, 2009 11 Potencjalne możliwości i korzyści wynikające ze współpracy robotów(na przykładzie robotów przemysłowych): przenoszenie obiektów o ciężarze lub rozmiarach przekraczających możliwości pojedynczego robota, manipulowanie elastycznymi przedmiotami o dużych rozmiarach(arkusze blachy, giętkie rury, kable, itp.), montaż bez stosowania wysoce specjalizowanych narzędzi(np. montaż przednich szyb w samochodach). skomplikowana obróbka materiałów bez specjalnych uchwytów, gdy jeden robot służy jako uniwersalny uchwyt a pozostałe roboty wyposażone są w różne narzędzia obróbcze. Podstawowe cechy charakteryzujące system wielorobotowy: struktura organizacyjna struktura organizowania współpracy robotów, sposób komunikacji sposób wymiany informacji między robotami. System o globalnej strukturze, scentralizowanej układ, w którym zadania do wykonania oraz sposób współpracy jest narzucony robotom przez jednostkę nadrzędną(koordynatora). Jest to zazwyczaj układ o strukturze hierarchicznej. System o strukturze lokalnej, rozproszonej możliwości współpracy wynikają z reguł wbudowanych poszczególnym robotom i nie ma żadnej jednostki centralnej. Dwa podstawowe rodzaje komunikacji: jawna gdy poszczególne jednostki przesyłają do siebie informacje o swoim stanie, Wstęp do Robotyki c W. Szynkiewicz, 2009 12 niejawna nie ma żadnej wymiany bezpośredniej wymiany informacji, wiedza o innych robotach jest uzyskiwana na podstawie obserwacji otoczenia. Pojęcie stygmergii wpływ na zachowanie przez obserwację zmian w otoczeniu wywołanych poprzednim zachowaniem. Podstawowe rodzaje systemów wielorobotowych: hierarchiczne mają globalną strukturę koordynacji działań robotów i jawny sposób komunikacji (między robotami i jednostką nadrzędną) reaktywne mają strukturę lokalną, współpraca robotów jest wynikiem prostych reakcji(na zaistniałe zdarzenie), które są wbudowane w układ sterowania każdego robota, nie ma bezpośredniej komunikacji między robotami, behawioralne mają lokalną strukturę i nie ma jawnej komunikacji między robotami, sterowanie jest podzielone na zbiór celowych działań zwanych zachowaniami, które mogą wykonywać się równolegle. systemy autonomicznych robotów komunikujących się bezpośrednio między sobą(peer-to-peer)
Wstęp do Robotyki c W. Szynkiewicz, 2009 13 Problem przydziału zadań: Przydzielenie robotom zadań(akcji, ról), które mają wykonać. Dane: R={r 0,r 1,...,r n } zbiórnrobotów Z={z 0,z 1,...,z m } zbiórniezależnychpodzadań c ij kosztwykonaniazadaniaz j przezrobotar i NależyznaleźćzbiórzadańU i dlakażdegorobotar i,takiże: z k r i :z k U i dla każdego zadania k istnieje robot, któremu to zadanie przydzielono. Znaleźć minimum wskaźnika jakości min n c ik i=1z k U i Dwa podstawowe podejścia do problemu przydziału zadań(w systemach rozproszonych bez koordynatora): negocjacje(prawa rynkowe) roboty negocjują ze sobą i podejmują kontrakty na wykonanie określonych zadań( aukcja, giełda chętnych do wykonania zadań) modelowanie zdolności robotów roboty wykorzystują modele opisujące możliwości wykonania zadań przez inne roboty do określenia swoich motywacji do wykonania konkretnych zadań Wstęp do Robotyki c W. Szynkiewicz, 2009 14 Kryteria klasyfikacji systemów wielorobotowych Poziom interakcji jako kryterium określające stopień współpracy: 1. Współpraca luźna 2. Współpraca ścisła W zależności od stopnia współpracy robotów interakcje są zazwyczaj związane z: zapewnieniem synchronizacji czasowo-przestrzennej robotów we wspólnej przestrzeni roboczej w przypadku luźnej współpracy, bezpośrednimi oddziaływaniami kinematycznymi i dynamicznymi między robotami(np. przez wspólne obciążenie) w przypadku współpracy ścisłej. Podział względem stopnia zgodności celów stawianych poszczególnym robotom: Roboty mają całkowicie niezależne cele(w skrajnym przypadku mogą to być cele przeciwstawne (np. dwa zespoły robotów mobilnych grających w piłkę nożną). Współpraca w takim przypadku jest niemożliwa. Każdyrobotmaswójcel,aletecelemogąbyćczęściowozbieżne,możliwajestzatemwspółpraca robotów. Wszystkie roboty mają jeden wspólny cel, działają jako zespół.
Wstęp do Robotyki c W. Szynkiewicz, 2009 15 Wybrane kryteria podziału systemów wielorobotowych: Liczność grupy liczba autonomicznych robotów(jeden, dwa, kilka, bardzo dużo rój, stado). Zasięg komunikacji maksymalna odległość między dwoma robotami, przy której jest jeszcze możliwa komunikacja. Zasięg zależy od środka komunikacji i rozmieszczenia robotów i środowiska. Możliwe są przypadki: roboty nie mogą komunikować się bezpośrednio(mogą komunikować pośrednio przez obserwacje obecności lub nieobecności innych robotów, ich zachowań) mogą komunikować się tylko w bliskim sąsiedztwie(komunikacja z najbliższymi sąsiadami, np. ze względu na rodzaj komunikacji, moc sygnału, itp.) roboty mogą komunikować się każdy z każdym(jeśli wszystkie roboty są w zasięgu komunikacji) Topologia(struktura) komunikacji które roboty, będące w zasięgu, mogą się ze sobą komunikować (każdy z każdym, tylko sąsiedzi, itp.) rozgłaszanie wysyła(nadaje) komunikat to wszystkich robotów(nie może wybierać do kogo wysyła komunikat) robot komunikuje się z dowolnym, innym robotem identyfikując go np. przez nazwę lub adres roboty są zorganizowane w strukturze drzewa(struktura hierarchiczna) i komunikują się w tej strukturze roboty są zorganizowane w strukturze grafu nie będącego drzewem(może być kilka ścieżek komunikacji). Wstęp do Robotyki c W. Szynkiewicz, 2009 16 NiechRbędziezbioremwszystkichnrobotów,aL=R Rzbioremwszystkichmożliwych łuków skierowanych, pomiędzy potencjalnym nadawcą i odbiorcą. W chwili t tylko niektóre roboty mogą się komunikować, a zatem tylko niektóre łuki ze zbioru L będą istnieć. Zbiór faktycznie istniejącychpołączeńwchwilitokreślimyjakol t r L.Grafopisującyaktualnąsiećpołączeń można zdefiniować jako: G i =<R,L t r> (1) Przepustowość pasmo, koszt komunikacji: Pasmo nieskończone kanał komunikacyjny o bardzo dużej przepustowości, koszty komunikacji pomijalnie małe(zerowe). Jest to częste założenie w teoretycznych modelach obliczeniowych, to prowadzi do przyjęcia założenia, że grupa robotów może zachowywać się jak system z centralną inteligencją(skupioną w jednym miejscu). Koszt komunikacji porównywalny z kosztem wykonania ruchu. Pasmo bardzo małe bardzo wysoki koszt komunikacji, znacznie wyższy niż koszt ruchu. Roboty powinny być niezależne. Pasmo zerowe roboty nie mogą komunikować się między sobą. Rekonfigurowalność grupy szybkość zmiany organizacji grupy robotów(statyczna organizacja, koordynowana rekonfiguracja, dynamiczna organizacja). Zdolność przetwarzania możliwości obliczeniowe poszczególnych jednostek. Skład grupy jednostki homogeniczne(jednakowe), heterogeniczne(różne) pod względem budowy, możliwości, zachowań, itp.