ZASTOSOWANIE ALGORYTMÓW UCZENIA SIĘ ZE WZMOCNIENIEM WE WSPOMAGANIU PROCESÓW PODEJMOWANIA DECYZJI PODCZAS MANEWROWANIA STATKIEM

Podobne dokumenty
MODEL ŚRODOWISKA WIELOAGENTOWEGO W NEUROEWOLUCYJNYM STEROWANIU STATKIEM

PROGRAMOWANIE DYNAMICZNE W ROZMYTYM OTOCZENIU DO STEROWANIA STATKIEM

SPOTKANIE 11: Reinforcement learning

UNIKANIE NIEBEZPIECZNYCH SYTUACJI W ZŁYCH WARUNKACH POGODOWYCH W RUCHU STATKU NA FALI NADĄŻAJĄCEJ

Uczenie ze wzmocnieniem

Metoda określania pozycji wodnicy statków na podstawie pomiarów odległości statku od głowic laserowych

Dokąd on zmierza? Przemieszczenie i prędkość jako wektory

Laboratorium 5 Przybliżone metody rozwiązywania równań nieliniowych

Algorytm hybrydowy dla alokacji portfela inwestycyjnego przy ograniczonych zasobach

OKREŚLENIE WPŁYWU WYŁĄCZANIA CYLINDRÓW SILNIKA ZI NA ZMIANY SYGNAŁU WIBROAKUSTYCZNEGO SILNIKA

OpenAI Gym. Adam Szczepaniak, Kamil Walkowiak

WIELOKRYTERIALNE PORZĄDKOWANIE METODĄ PROMETHEE ODPORNE NA ZMIANY WAG KRYTERIÓW

Systemy agentowe. Uczenie ze wzmocnieniem. Jędrzej Potoniec

TRANSCOMP XIV INTERNATIONAL CONFERENCE COMPUTER SYSTEMS AIDED SCIENCE, INDUSTRY AND TRANSPORT

WYBRANE ZAGADNIENIA OPTYMALIZACJI PRZEGLĄDÓW OKRESOWYCH URZĄDZEŃ ELEKTRONICZNYCH

Systemy agentowe. Uwagi organizacyjne i wprowadzenie. Jędrzej Potoniec

MODEL STANOWISKA DO BADANIA OPTYCZNEJ GŁOWICY ŚLEDZĄCEJ

PRACA DYPLOMOWA MAGISTERSKA

Metody numeryczne Technika obliczeniowa i symulacyjna Sem. 2, EiT, 2014/2015

OPTYMALIZACJA ZBIORNIKA NA GAZ PŁYNNY LPG

Uczenie sieci typu MLP

Optymalizacja. Przeszukiwanie lokalne

MODELOWANIE ROZKŁADU TEMPERATUR W PRZEGRODACH ZEWNĘTRZNYCH WYKONANYCH Z UŻYCIEM LEKKICH KONSTRUKCJI SZKIELETOWYCH

SYMULACYJNE BADANIE SKUTECZNOŚCI AMUNICJI ODŁAMKOWEJ

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Modelowanie jako sposób opisu rzeczywistości. Katedra Mikroelektroniki i Technik Informatycznych Politechnika Łódzka

Algorytm Grovera. Kwantowe przeszukiwanie zbiorów. Robert Nowotniak

Marzec Politechnika Gdańska Wydział Oceanotechniki i Okrętownictwa St. inż. I stopnia, sem. IV, Oceanotechnika, ZiMwGM

O ALGORYTMACH I MASZYNACH TURINGA

XIII International PhD Workshop OWD 2011, October 2011 METODA REEINGINEERINGU ORGANIZACJI Z WYKORZYSTANIEM SYMULATORA PROCESÓW BIZNESOWYCH

SYMULACJA PROGRAMÓW KOMPUTEROWEGO WSPOMAGANIA BEZPIECZEŃSTWA TRANSPORTU MORSKIEGO

THE AUTOMATIZATION OF THE CALCULATION CONNECTED WITH PROJECTING LEADING LIGHTS

STATYKA Z UWZGLĘDNIENIEM DUŻYCH SIŁ OSIOWYCH

WYZNACZANIE NIEPEWNOŚCI POMIARU METODAMI SYMULACYJNYMI

Uczenie ze wzmocnieniem

POZIOM UFNOŚCI PRZY PROJEKTOWANIU DRÓG WODNYCH TERMINALI LNG

BADANIA SYMULACYJNE PROCESU HAMOWANIA SAMOCHODU OSOBOWEGO W PROGRAMIE PC-CRASH

Schemat programowania dynamicznego (ang. dynamic programming)

Mechanika Robotów. Wojciech Lisowski. 5 Planowanie trajektorii ruchu efektora w przestrzeni roboczej

WIELOKRYTERIALNY DOBÓR ROZTRZĄSACZY OBORNIKA

PODEJMOWANIE DECYZJI W WARUNKACH NIEPEŁNEJ INFORMACJI

ZASTOSOWANIE GRAFU WIDOCZNOŚCI W PLANOWANIU TRASY PRZEJŚCIA STATKU APPLICATION OF A VISIBILITY GRAPH IN SHIP S PATH PLANNING

Optymalizacja systemów

AUTO-STROJENIE REGULATORA TYPU PID Z WYKORZYSTANIEM LOGIKI ROZMYTEJ

Klasyfikatory: k-nn oraz naiwny Bayesa. Agnieszka Nowak Brzezińska Wykład IV

Politechnika Gdańska Wydział Oceanotechniki i Okrętownictwa St. inż. I stopnia, sem. IV, Transport. Luty Automatyzacja statku 1.

Zasada indukcji matematycznej

Algorytmy mrówkowe. P. Oleksyk. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

MODELOWANIE RZECZYWISTOŚCI

Problemy Decyzyjne Markowa

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

KADD Minimalizacja funkcji

Podstawy Automatyzacji Okrętu

Aby mówić o procesie decyzyjnym Markowa musimy zdefiniować następujący zestaw (krotkę): gdzie:

ANALIZA OBCIĄŻEŃ JEDNOSTEK NAPĘDOWYCH DLA PRZESTRZENNYCH RUCHÓW AGROROBOTA

Uczenie ze wzmocnieniem

CHARAKTERYSTYKA I ZASTOSOWANIA ALGORYTMÓW OPTYMALIZACJI ROZMYTEJ. E. ZIÓŁKOWSKI 1 Wydział Odlewnictwa AGH, ul. Reymonta 23, Kraków

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

Metody tworzenia efektywnych komitetów klasyfikatorów jednoklasowych Bartosz Krawczyk Katedra Systemów i Sieci Komputerowych Politechnika Wrocławska

Numeryczna symulacja rozpływu płynu w węźle

MANEWR OSTATNIEJ CHWILI OCENA I ANALIZA DLA MASOWCA W ZALEŻNOŚCI OD ODLEGŁOŚCI ROZPOCZĘCIA MANEWRU I KĄTA KURSOWEGO

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

WYKORZYSTANIE METOD OPTYMALIZACJI DO ESTYMACJI ZASTĘPCZYCH WŁASNOŚCI MATERIAŁOWYCH UZWOJENIA MASZYNY ELEKTRYCZNEJ

Skalowalność obliczeń równoległych. Krzysztof Banaś Obliczenia Wysokiej Wydajności 1

Rys 1 Schemat modelu masa- sprężyna- tłumik

Uczenie ze wzmocnieniem

Modelowanie niezawodności prostych struktur sprzętowych

Ćwiczenie nr 1 Odpowiedzi czasowe układów dynamicznych

Cyfrowe algorytmy sterowania AR S1 semestr 4 Projekt 4

2. Wyznaczenie parametrów dynamicznych obiektu na podstawie odpowiedzi na skok jednostkowy, przy wykorzystaniu metody Küpfmüllera.

Zagadnienia brzegowe dla równań eliptycznych

INSTRUKCJA DO ĆWICZENIA NR 7

INTERPOLACJA I APROKSYMACJA FUNKCJI

Modelowanie matematyczne a eksperyment

ZASTOSOWANIE METOD OPTYMALIZACJI W DOBORZE CECH GEOMETRYCZNYCH KARBU ODCIĄŻAJĄCEGO

ROZWIĄZANIA DO ZADAŃ

METODY NUMERYCZNE. wykład. konsultacje: wtorek 10:00-11:30 środa 10:00-11:30. dr inż. Grażyna Kałuża pokój

Inżynieria Ruchu Morskiego wykład 01. Dr inż. Maciej Gucma Pok. 343 Tel //wykłady tu//

Ćwiczenie 4 - Badanie charakterystyk skokowych regulatora PID.

RÓWNANIE DYNAMICZNE RUCHU KULISTEGO CIAŁA SZTYWNEGO W UKŁADZIE PARASOLA

KOMPUTEROWY MODEL UKŁADU STEROWANIA MIKROKLIMATEM W PRZECHOWALNI JABŁEK

INSTRUKCJA DO ĆWICZENIA NR 2

Wstęp do metod numerycznych Zadania numeryczne 2016/17 1

Układy równań nieliniowych (wielowymiarowa metoda Newtona-Raphsona) f(x) = 0, gdzie. dla n=2 np.

1. Podstawowe pojęcia

Teoria systemów uczacych się i wymiar Vapnika-Chervonenkisa

Mgr inż. Wojciech Chajec Pracownia Kompozytów, CNT Mgr inż. Adam Dziubiński Pracownia Aerodynamiki Numerycznej i Mechaniki Lotu, CNT SMIL

PROBLEMY NIEKONWENCJONALNYCH UKŁADÓW ŁOŻYSKOWYCH Łódź maja 1995 roku

Aparaty słuchowe Hi-Fi z Multiphysics Modeling

Warsztat nauczyciela: Badanie rzutu ukośnego

ZASTOSOWANIE PROBABILISTYCZNEJ SIECI NEURONOWEJ DO IDENTYFIKACJI OBIEKTÓW NA PODSTAWIE WSKAZAŃ CZUJNIKÓW PODCZERWIENI ROBOTA KHEPERA 2

Ekonomika Transportu Morskiego wykład 08ns

Metoda wizualizacji danych z AIS na potrzeby nawigatora

ZESZYTY NAUKOWE POLITECHNIKI ŚLĄSKIEJ 2014 Seria: TRANSPORT z. 82 Nr kol. 1903

Spis treści. Przedmowa... 11

Definicja pochodnej cząstkowej

PRÓBNY EGZAMIN MATURALNY

POPRAWA EFEKTYWNOŚCI ENERGETYCZNEJ UKŁADU NAPĘDOWEGO Z SILNIKIEM INDUKCYJNYM ŚREDNIEGO NAPIĘCIA POPRZEZ JEGO ZASILANIE Z PRZEMIENNIKA CZĘSTOTLIWOŚCI

Agnieszka Nowak Brzezińska Wykład III

Transkrypt:

PRACE WYDZIAŁU NAWIGACYJNEGO nr 22 AKADEMII MORSKIEJ W GDYNI 2008 MIROSŁAW ŁĄCKI Akademia Morska w Gdyni Katedra Nawigacji ZASTOSOWANIE ALGORYTMÓW UCZENIA SIĘ ZE WZMOCNIENIEM WE WSPOMAGANIU PROCESÓW PODEJMOWANIA DECYZJI PODCZAS MANEWROWANIA STATKIEM W prezentowanym artykule przedstawiono koncepcję zastosowania algorytmów uczenia się ze wzmocnieniem we wspomaganiu procesów podejmowania decyzji podczas manewrowania statkiem. Celem badań było wykonanie aplikacji i przeprowadzenie symulacji komputerowej dla różnych modeli środowiska. W zastosowanej metodzie uczenia się ze wzmocnieniem, symulowany w aplikacji model statku traktowany jest jako agent, który przez interakcję ze środowiskiem uczy się sterowania statkiem na ograniczonym obszarze, starając się znaleźć optymalną trasę przejścia. Proces uczenia polega na obserwowaniu aktualnego stanu i otrzymanej nagrody po wybraniu jednej z dostępnych akcji. Agent otrzymuje nagrodę za dotarcie do celu, bądź karę za wpłynięcie na przeszkodę. 1. OPIS IDEI UCZENIA SIĘ ZE WZMOCNIENIEM Główna idea uczenia się ze wzmocnieniem bazuje na interakcji agenta ze środowiskiem (rys. 1). Środowisko stan nagroda Agent akcja Rys. 1. Ogólny model uczenia się ze wzmocnieniem [3] 62

Agent stanowi autonomiczną jednostkę zdolną do podejmowania decyzji w oparciu o zdobytą w trakcie nauki wiedzę. Środowiskiem jest obiekt zewnętrzny z którym ów agent współdziała. W przypadku zastosowania algorytmów uczenia się ze wzmocnieniem we wspomaganiu procesów podejmowania decyzji podczas manewrowania statkiem, środowiskiem jest nie tylko akwen wodny lecz także wybrane parametry statku (tj. prędkość kątowa bądź wychylenie steru). W dowolnym momencie środowisko informuje agenta w jakim stanie się znajduje. Agent ten, po wybraniu jednej z dostępnych akcji, otrzymuje sygnał wzmocnienia nazywany nagrodą. Z otrzymanych nagród cząstkowych agent potrafi obliczyć wartości stanów oraz wartości poszczególnych akcji w tych stanach. Głównym celem agenta jest maksymalizacja końcowej wartości sumy nagród cząstkowych: R T = rt + 1 + rt + 2 +... + rt (1) gdzie: R T suma nagród, r i nagrody cząstkowe w momencie i. W przypadku modelu procesu ciągłego, do wzoru wprowadza się współczynnik dyskontowy γ dla kolejnych nagród cząstkowych [2]: R = r t k t + 1 + rt + 2 + γ rt + 3 +... = γ k = 0 γ r (2) t + k + 1 W uczeniu się ze wzmocnieniem, model środowiska zbudowany jest na podstawie procesu decyzyjnego Markowa [5], definiowanego jako: S zbiór stanów środowiska, A(s) zbiór akcji a możliwych do podjęcia w stanie s S, P(s,s',a) prawdopodobieństwo podjęcia akcji a A(s) i przejścia z s do s', R(s,s',a) oczekiwana nagroda przy przejściu z s to s',γ współczynnik dyskontowy dla kolejnych nagród.... S r t + 1 t S r t + 2 t + 1 S t + 2 r t + 3 S t + 3... a t a t + 1 a t + 2 a t + 3 Rys. 2. Schemat stanów, akcji i nagród cząstkowych [5] Najprostszy algorytm uczenia się ze wzmocnieniem, zwany 1-krokowy Q-Learning, polega na przeliczeniu wartości pary stan akcja Q(s,a) na podstawie sygnałów otrzymanych przez agenta z poprzedniego stanu do aktualnego. 63

Algorytm Q-Learning [1]: Wyzeruj wartości Q(s,a). Dla każdego epizodu powtarzaj: Określ stan s. W każdym kroku epizodu powtarzaj: wybierz a z s stosując politykę π wyznaczoną z Q (np., ε-zachłanna), wybierz akcję a, obserwuj r, s. δ r + γ maxq( s', a') Q( s, a) Q ( s, a) Q( s, a) +α δ s s dopóki s jest stanem końcowym. Wartości α i γ dobierane są doświadczalnie lub według przyjętej kontroli polityki π procesu uczenia się. 2. ŚLEDZENIE WYBIERALNOŚCI W procesie uczenia się występuje problem przeniesienia wartości aktualnie otrzymanej nagrody cząstkowej na poprzednie wartości par stan akcja, które doprowadziły agenta do aktualnego stanu. Problem ten można rozwiązać poprzez zastosowanie śladów wybieralności (ang. Eligibility Traces) danej akcji w danym stanie. Im częściej dana akcja zostanie wybrana, tym większy wpływ na wartości ostatnio zaistniałych par stan akcja ma nagroda cząstkowa otrzymana po tej akcji. Wystąpienie pary s, a Akumulacja śladów Zamiana śladów Rys. 3. Wartości śladów akumulowanych i zamienianych [2] 64

W zależności od wybranego algorytmu i symulowanego modelu można zastosować wartość akumulowaną śladów lub wartość zamienianą śladów. Szybkość zmniejszania się wartości śladu wybieralności zależy od współczynnika uczenia się α. 3. KONTROLA POLITYKI Główną różnicą uczenia się ze wzmocnieniem i uczenia nadzorowanego jest poszukiwanie przez agenta nowych akcji w określonym stanie. Zjawisko to jest nazywane eksploracją i musi być zrównoważone z wykorzystaniem zdobytej już wiedzy na temat wartości akcji w poszczególnych stanach, czyli eksploatacją. Dobór odpowiednich wartości współczynników bilansu eksploracja eksploatacja tworzy kontrolę polityki π procesu podejmowania decyzji przez agenta [1]. W algorytmach uczenia się ze wzmocnieniem, problemem jest również przestrzeń stanów im większy akwen wodny, tym dłuższy proces uczenia się wynikający z większej liczby iteracji. Do zapisania wartości par stan akcja potrzeba także więcej zasobów pamięci. Dynamiczne środowisko również znacznie utrudnia zoptymalizowanie współczynników równań obliczających wartości stanów i akcji. Możliwość pojawienia się nowego stanu utrudnia zamodelowanie środowiska i znacznie komplikuje strukturę algorytmu. Ciągła przestrzeń stanów musi być skwantyfikowana, dlatego też dla celów symulacji środowisko w którym znajduje się agent sternik zostało podzielone na regularne elementy. Od siły kwantyfikacji zależała wierność modelu im więcej stanów, tym dokładniejszy model, lecz dłuższy czas uczenia się. Cel Rys. 4. Wierność modelu zależna od wielkości wektora stanów [3] 65

4. PARAMETRY SYMULACJI W modelu zastosowanym w aplikacji użyto następujących parametrów: zbiór akcji: kąt wychylenia steru δ: -30 30 co 5 wektor stanów: prędkość kątowa r: -13..13 1/s kurs statku ψ: 0 360 co 12 pozycja statku X,Y: Siatka stref o różnej gęstości 10x10, 20x20, 100x100 wzmocnienia (nagrody i kary): a) -1 za każdą jednostkę czasu, b) -100 za wpłynięcie na niedozwolony obszar (mielizny, przeszkody, wypłynięcie poza strefę w miejscu innym niż wyznaczone), c) 100 za dopłynięcie do celu. N δ ψ Cel r Rys. 5. Model zastosowanych sygnałów w wektorze stanów [3] W celu uproszczenia symulowanego modelu założono, że prędkość statku jest stała. 66

5. WYNIKI SYMULACJI 1. Gęstość siatki 10x10, kurs początkowy z przedziału 60 120. Aktualny epizod Liczba wypadków Liczba dopłynięć do celu Wykres czasowy wydajności agenta (ostatnie 800 epizodów) Moment znalezienia celu (ep. ~750) Rys. 6. Okno symulacji 1 Przy wymienionych założeniach przebadano ogólną zdolność agenta do znajdowania celu w obszarze z jedną przeszkodą na drodze do celu przy różnych wartościach początkowych kursu statku (od 60 do 120 ). Na początku symulacji agent nie wiedział, gdzie jest cel rejsu, a jego pierwszym zadaniem było nauczenie się omijania przeszkody na drodze do celu. Po znalezieniu celu rejsu, co zajęło mu około 300 epizodów na siatce o małej gęstości stref (10x10) okazało się, że agent bardzo szybko potrafił poprawić trasę rejsu eksperymentując z nowymi ustawieniami steru. Ogólna charakterystyka wydajności algorytmu w tym momencie czasowym była następująca: na całkowitą liczbę 366 ukończonych epizodów 227 (62%) zakończyło się wpłynięciem na przeszkodę, a 139 (38%) dopłynięciem do celu. Dzięki zdolności agenta do szybkiego uczenia się skuteczność algorytmu po znalezieniu celu w ciągu kilkunastu epizodów wzrosła do poziomu około 95%. 67

2. Gęstość siatki 10x10, kurs początkowy 120 Moment znalezienia celu (ep. ~16200) Rys. 7. Okno symulacji 2 W założonej sytuacji przebadano zdolność agenta do przepływania przez wąskie przesmyki. Na początku symulacji położenie celu rejsu dla agenta nie było znane. Dopłynięcie do celu było dodatkowo utrudnione, gdyż agent starał się omijać niebezpiecznie wąski przesmyk. Pierwsze dopłynięcie do celu rejsu nastąpiło po około 10 000 epizodów na siatce o małej gęstości stref (10x10). W badanej sytuacji agent nie miał zbyt wiele miejsca na eksperymentalne poszukiwanie lepszego ustawienia steru, stąd tak słaba ogólna charakterystyka wydajności algorytmu w zaprezentowanym momencie czasowym: pierwsze dopłynięcie do celu pojawiło się dopiero po około 16 200 epizodach, przy współczynniku eksploracji ε = 0,001 (nowe akcje pojawiały się w każdym momencie podejmowania decyzji przez agenta z prawdopodobieństwem równym 0,001). Skuteczność algorytmu utrzymywała się na poziomie około 80%. 68

3. Gęstość siatki 20x20, kurs początkowy 0 Rys. 8. Okno symulacji 3 Przy wymienionych założeniach przebadano ogólną zdolność agenta do znajdowania celu w obszarze ograniczonym z jedną przeszkodą, przy większej gęstości siatki (20x20). Na początku symulacji agent nie wiedział, gdzie jest cel rejsu i jego pierwszym zadaniem było nauczenie się omijania przeszkód na drodze do celu. Po około 1000 epizodów agent znalazł trasę do celu, chociaż trasa ta nie była jeszcze trasą optymalną. Na rysunku można zobaczyć kilka ostatnich tras eksperymentalnych, które dawały bardzo duży rozrzut tras, przy współczynniku eksploracji ε = 0,001 i współczynniku uczenia się równym α = 0,026, co oznacza, że nauczona wartość tej akcji w danym stanie musi być dodana do funkcji wartości z wagą α. W przedstawionym momencie czasowym, na ogólną liczbę 1079 skończonych epizodów, statek dopłynął do celu 71 razy (6,6%). Po znalezieniu celu rejsu, skuteczność algorytmu szybko wzrosła do poziomu ponad 95%. 69

6. WNIOSKI Skuteczność algorytmów uczenia się ze wzmocnieniem jest w dużym stopniu zależna od przyjętego modelu środowiska. Dokładność odwzorowania ograniczonego obszaru wodnego oraz wielkość wektora akcji ma istotny wpływ na złożoność obliczeń. Zmniejszenie czasu obliczeń można uzyskać poprzez skwantyfikowanie ciągłej przestrzeni stanów jaka występuje w przypadku manewrowania statkiem na ograniczonym obszarze. Ponadto w badanych sytuacjach nie była rozpatrywana obecność innych jednostek pływających, co należy uwzględnić w dalszych badaniach. Ogólny algorytm wymaga również optymalizacji pod względem wyboru tras głównych, które mogą być obliczane za pomocą algorytmów innych niż uczenie ze wzmocnieniem w celu przyspieszenia i zwiększenia dokładności obliczeń. LITERATURA 1. Eden T., Knittel A., Uffelen R., Reinforcement Learning: Tutorial, University of New South Wales, Sydney 2002. 2. Kaelbling L.P., Littman & Moore, Reinforcement Learning: A Survey, Journal of Artificial Intelligence Research, Vol. 4, 1996. 3. Łącki M., Machine learning algorithms in decision making support in ship handling, Transport Systems Telematics TST, Politechnika Śląska, Polska Akademia Nauk, Komitet Transportu, Katowice Ustroń 2007. 4. Łącki M., Reinforcement learning in ship handling, VII International Symposium of Navigation TransNav, WN AM w Gdyni, The Nautical Institute, Gdynia 2007. 5. Sutton R., Barto A., Reinforcement Learning: An Introduction, MIT Press, 1998. REINFORCEMENT LEARNING ALGORITHMS IN DECISION MAKING SUPPORT IN SHIP HANDLING (Summary) In this paper, the author presents the idea of using machine learning algorithms to aid action decision making in ship manoeuvring. Main goal of presented approach was to create an application, simulate and present results of simulation in different layouts of restricted waters. Reinforcement learning is based on agent interactions with environment. The agent learns through exploration of the environment and tries to find the best solution which is determined by positive or negative rewards received after each action taken. 70