Tylko czy komukolwiek takie maszyny do kopania piłki są potrzebne? Oczywiście nie. Jednak ta dyscyplina sportu jest tak złożona, że skonstruowanie piłkarskiego robota pozwoli przy okazji odpowiedzieć na wiele pytań dotyczących rozwoju sztucznej inteligencji. Podczas gry w piłkę nożną roboty muszą zarówno orientować się w dynamicznym otoczeniu, jak i zachowywać mądrze pod względem taktycznym. Jednym z największych wyzwań jest jednak ruch – właśnie dlatego mecz piłki nożnej stanowi idealne pole do eksperymentów w tej dziedzinie dla programistów z całego świata.
Orientacja: Tworzenie modelu świata dzięki kamerze i czujnikom radiowym
Każdy trener strzeże się, by nie zdradzić szczegółów taktyki swojej drużyny. Jednak na RoboCup jest trochę inaczej, ponieważ w istocie wszystkie drużyny walczą po tej samej stronie – o postęp techniczny. Aby można było porównać szczegóły taktyczne, maszyny grają przeciwko sobie, podzielone na różnego typu klasy. Przykładowo w Standard Platform League programistom wolno używać tylko standaryzowanych robotów typu Nao (na zdjęciu z prawej), francuskiego producenta Aldebaran Robotics, w którym udziały wykupił Intel. Hardware jest tu zatem z góry określony, a software musi być przez programistów dostosowywany. Najtrudniejsze jest zgranie poszczególnych części. Jedynie gdy zadziała cały system, można mówić o sukcesie.
Człowiek | Maszyna |
---|---|
W ten sposób koordynuje ruchy człowiek. 1. Ucho: 2. Mózg: 3. Oko: 4. Rdzeń kręgowy: 5. Mięśnie: |
W ten sposób robot koordynuje ruchy. 1. Analiza otoczenia: 2. Obliczanie lokalizacji: 3. WLAN/nadajnik podczerwony: 4. Model świata: 5. Sterowanie zachowaniem: 6. Moduły decyzyjne: 7. Biblioteka ruchów: 8. Równowaga: |
Zanim Nao zacznie samodzielnie biegać i brać udział w grze, musi wiedzieć, gdzie się znajduje i co ma robić. Programiści kalibrują swoich zawodników przed każdym meczem, ponieważ nawet najmniejsze odchylenia mogą doprowadzić do tego, że robot nie rozpozna swojego otoczenia. I to jest pierwsze pole, na którym niektórzy zawodnicy ponoszą klęskę. Wiele błędów wychodzi na jaw dopiero wtedy, gdy podopieczni programistów stoją na boisku. Dlatego nie jest niczym niezwykłym widok bramkarza, który strzela prosto w słupek ani napastnika biegnącego w stronę publiczności, zamiast do linii środkowej. Gdy gracz stoi, kamery bazujące na kolorze przeprowadzają skanowanie. Linie boiska, bramki, przeciwnicy – to wszystko robot musi widzieć, i to przez cały czas.
Jednak analiza kolorystyczna także jest metodą zawodną, ponieważ wystarczy zmiana koloru piłki, by robot już jej nie dostrzegał. Człowiek takich problemów nie miewa. Kody kolorystyczne są mu obojętne, jedynie pomagają w orientacji, a w razie wątpliwości pozyskuje on informacje na podstawie kontekstu. W ten sposób możliwe jest np. rozpoznawanie znanej osoby na pierwszy rzut oka.
Do dzielenia się swoją wiedzą z zawodnikami z drużyny Nao używa drogi radiowej, wtedy po określeniu pozycji graczy powstaje dokładny, aktualny obraz sytuacji. Tylko w ten sposób roboty mogą uzgadniać taktykę, decydując, że np. jeden Nao pobiegnie za piłką, a drugi na pole bramkowe.
Biec za piłką czy chronić własną bramkę? Człowiek w takich przypadkach często działa intuicyjnie, w ułamkach sekund rozważając możliwe drogi postępowania i rozpoznając niebezpieczeństwa. Tymczasem robot działa inaczej – w oparciu o taktyczne wskazówki swojego systemu sterowania zachowaniem. Gdy zaraz po wybiciu piłki Nao zostaje zablokowany przez przeciwników, zatrzymuje się na parę sekund, aby obliczyć położenie, następnie obraca się bokiem do piłki i podaje.
Taka akcja może trwać nawet do 20 sekund – dla gracza-człowieka to rzecz nie do pomyślenia. Sztuczni zawodnicy nie mogą jednak działać szybciej, bo zanim zastosują jakąś taktykę, muszą przeskanować swój bank danych. Czynnikiem limitującym jest oczywiście także wydajność obliczeniowa: kamera robi tylko 30 obrazów na sekundę, a Nao ma do dyspozycji procesor o taktowaniu 500 MHz.Żeby stosować taktykę także w ruchu, programiści używają zaprogramowanych modeli, którym maszyna musi się podporządkować, oraz nadbudowanych na nich opcji zależnych od sytuacji. Za to, że Nao na przykład przy rozpoczęciu gry ustawia się za piłką, odpowiadają założenia zapisane pierowtnie w programie. Jednak podanie piłki we właściwą stronę, do innego zawodnika, to już reakcja wynikająca z autonomicznej decyzji robota (oczywiście, na podstawie algorytmu przygotowanego uprzednio przez programistów).
W prostym otoczeniu taka taktyczna gra nie stanowi problemu, jednak mecz piłki nożnej to świat dużych szybkości. Przeciwnicy ciągle się poruszają, piłka toczy się z jednego końca boiska na drugi. Może się okazać, że zadanie “kopnij piłkę” przestało być aktualne, zanim robot w ogóle się ruszył. Jednak ten powolny czas reakcji Nao nie zawsze musi być uznawany za wadę. Ponieważ postrzeganie świata przez robota jest ograniczone, potrzebuje on pewnej bezwładności. W przeciwnym razie co chwilę od nowa podejmowałby decyzje i np. zaczynał szukać piłki natychmiast, gdy tylko zniknęłaby mu z oczu, zamiast dążyć do właściwego celu, jakim jest strzelenie bramki”.
Właściwe zachowanie: Zgodnie z taktyką i… nie przewracać się
Szybkość reakcji to niejedyny problem Nao. Nie ma on naturalnego zmysłu równowagi. Podczas gdy dla człowieka szybki bieg i wyrównanie nieuważnego kroku nie jest kłopotem, dla humanoidalnego robota wyzwaniem okazuje się zwykły chód. Aby się nie przewracać, Nao robi tylko małe kroczki
i w efekcie osiąga najwyżej 28 cm na sekundę. Problemem jest także strzelanie do bramki, ponieważ Nao nie może kopnąć piłki podczas biegu.
Aby w ogóle utrzymać równowagę, robot musi na podstawie zestawu czujników obliczyć i przesunąć punkt ciężkości. Wbudowane w robota czujniki mierzą między innymi kąt odchylenia oraz przyspieszenie. Trudności nastręczają jednak nieprzewidywalne wydarzenia, takie jak nagłe uderzenia i przeszkody, które mogą spowodować, że robot wyląduje na brzuchu. Człowiek ma zmysł dotyku, którego robotowi brakuje. Ale też nie każdą wywrotkę robota trzeba traktować jak upadek – to w końcu futbol i robot w żadnym razie nie może ryzykować, że straci piłkę”.
Podsumowanie
Celem wyznaczonym przez samych organizatorów RoboCup jest, aby do 2050 roku roboty były w stanie pokonać każdą drużynę mistrzów świata. Wprawdzie roboty nie potrafią jeszcze poruszać się jak istoty żywe, ale w ciągu ostatnich 15 lat w tej dziedzinie dokonał się przeogromny postęp. A do 2050 pozostało jeszcze 39 lat. Skądinąd ciekawe, czy roboty rzeczywiście będą stawać
w szranki z ludźmi. Ich “kości” są bowiem dużo bardziej wytrzymałe…
O ile zatem ewolucja robotów znajduje się dopiero na początku drogi, to już teraz mają one nad ludźmi dwie przewagi. Nie mają mięśni, które by się zużywały, a ich części zużywalne można całkiem łatwo wymienić.