zastosowanie algorytmów uczenia przez wzmacnianie w układzie
Transkrypt
zastosowanie algorytmów uczenia przez wzmacnianie w układzie
Andrzej Rak Akademia Morska w Gdyni ZASTOSOWANIE ALGORYTMÓW UCZENIA PRZEZ WZMACNIANIE W UKŁADZIE WYZNACZANIA TRAJEKTORII ZADANEJ MANEWRUJĄCEGO STATKU Artykuł przedstawia koncepcję autonomicznego generowania trajektorii zadanej w elektronawigacyjnym układzie sterowania ruchem statku. Trajektoria ta wyznaczana jest na podstawie informacji o docelowej pozycji statku, dostarczonej przez operatora oraz sytuacji nawigacyjnej, określanej poprzez zestaw urządzeń elektronawigacyjnych. Działanie układu opiera się na wykorzystaniu algorytmów uczenia przez wzmacnianie. W artykule przedstawiono zasady działania tych algorytmów zarówno w wersji dyskretnej, jak i ciągłej – z aproksymacją przestrzeni stanu. Wyznaczana trajektoria może być realizowana w autopilocie okrętowym wyposażonym w wielowymiarowy, nieliniowy regulator kursu i położenia. Słowa kluczowe: autopilot okrętowy, generowanie trajektorii, LSPI: least-squares policy iteration, regulator wielowymiarowy, sterowanie ruchem statku, uczenie przez wzmacnianie. WSTĘP Nowoczesne układy elektronawigacyjne statku zawierają coraz więcej elementów, które zwiększają ich autonomię względem operatora. Początkowo autopilot okrętowy zastąpił sternika, a radar zmniejszył liczbę niezbędnych marynarzy wachtowych. Później autopiloty wykorzystujące paradygmaty sterowania adaptacyjnego, optymalnego czy odpornego wyeliminowały potrzebę nastrajania nastaw regulatora autopilota przez oficera wachtowego. Kolejnym krokiem było zastosowanie układów oceny sytuacji nawigacyjnej za pomocą systemów antykolizyjnych. Współcześnie wszystkie te elementy wraz z satelitarnymi układami określania pozycji, systemem identyfikacji AIS, mapą elektroniczną, nowoczesnymi urządzeniami elektronawigacyjnymi łączy się w system mostka zintegrowanego – IBS (ang. Integrated Bridge System) [3]. System ten w dużym stopniu przejmuje z zakresu czynności nawigatora wiele rutynowych procedur, sytuując go w roli nadzorującego i podejmującego kluczowe decyzje [8]. Jednym z elementów IBS, dla którego wciąż poszukuje się nowych, skutecznych rozwiązań, jest wyznaczanie trajektorii zadanej (sekwencji manewrów) statku podczas manewrowania z niewielkimi prędkościami w porcie i podczas cumowania. Błędy operatora podczas tej fazy sterowania ruchem statku są częstą przyczyną A. Rak, Zastosowanie algorytmów uczenia przez wzmacnianie w układzie wyznaczania trajektorii... 87 wypadków morskich. Coraz większe zainteresowanie budzi również możliwość eksploatacji w pełni autonomicznych jednostek pływających – ASF (ang. Autonomous Surface Vehicle), dla których taki układ jest niezbędny. Niniejszy artykuł przedstawia próbę zastosowania paradygmatu uczenia przez wzmacnianie RL (ang. Reinforcement Learning) do rozwiązania przedstawionego wyżej zagadnienia1. Dotychczasowe nieliczne próby aplikacji tychże algorytmów do sterowania ruchem statku dotyczyły sterowania poza obszarami portowymi [7, 14]. W dalszej części omówiono formalne podstawy matematyczne algorytmów RL oraz ich najbardziej popularne odmiany. Przedyskutowano wady i zalety wybranych algorytmów i przedstawiono wyniki badań symulacyjnych wyznaczania sekwencji manewrów modelu statku o trzech stopniach swobody za pomocą algorytmów RL. 1. UCZENIE PRZEZ WZMACNIANIE I PROCESY DECYZYJNE MARKOWA Algorytm uczenia przez wzmacnianie jest w dużym uogólnieniu rekurencyjną procedurą zdobywania wiedzy metodą prób i błędów [11]. W kontekście terminologii stosowanej w teorii sterowania można powiedzieć, iż regulator (agent) wchodzi w interakcję z obiektem (procesem, środowiskiem) sterowania za pomocą trzech sygnałów: stanu x, sterowania (akcji) u oraz nagrody (kosztu sterowania) r. W każdym kroku algorytmu regulator obserwuje stan xk obiektu, a następnie wykonuje akcję uk, przeprowadzającą obiekt do następnego stanu xk+1. Jednocześnie regulator otrzymuje sygnał wartościujący wykonaną akcję w postaci nagrody r. Po otrzymaniu nagrody regulator wykonuje kolejny krok algorytmu. Interakcje te przedstawia schematycznie rysunek 1. Funkcja nagrody nagroda r stan x Regulator Proces akcja u Rys. 1. Interakcje w procesie uczenia przez wzmacnianie Fig. 1. Interactions in the reinforcement learning process 1 W polskiej literaturze przedmiotu częściej spotykanym tłumaczeniem terminu angielskiego reinforcement learning jest „uczenie ze wzmocnieniem”. Autor skłania się jednak do formy „uczenie przez wzmacnianie”, używanej w nielicznych publikacjach [13], gdyż, jego zdaniem, znacznie lepiej oddaje sens oryginału. 88 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 78, marzec 2013 Zasadniczym celem procesu uczenia jest wypracowanie takiej strategii wyboru akcji przez regulator, która będzie maksymalizować sumę nagród (minimalizować koszt sterowania) dla trajektorii prowadzącej do określonego wcześniej stanu docelowego, realizującego cel sterowania. Łatwo zauważyć, że kluczowym elementem tego algorytmu jest określenie funkcji generowania nagród oraz wyboru akcji. Formalny opis algorytmu opiera się na teorii procesów decyzyjnych Markowa (ang. Markov Decision Process – MDP) [2]. Aby dostosować się do tego wymogu, trzeba wprowadzić czwórkę: ( X,U, f,ρ) (1) gdzie: X = {x1 , x2 ,… , xn } – skończony zbiór stanów, U = {u1 ,u2 ,… ,un } – skończony zbiór akcji. Regulator wybiera akcję zgodnie ze swoją strategią h : X → U określoną jako: u k = h( xk ) (2) Zależność f : X × U → X jest funkcją przejść stanów określającą stan w następnym kroku algorytmu: xk +1 = f (xk ,u k ) (3) W tym samym momencie regulator uzyskuje rzeczywistoliczbową nagrodę, określoną przez wartość funkcji ρ : X ×U → R : rk +1 = ρ(xk ,u k ) (4) dla której zakłada się ρ ∞ = sup x,u | ρ(x,u )|. Mając na uwadze powyższe definicje, łatwo zauważyć, że znajomość funkcji f i h oraz bieżącego stanu xk i akcji uk jest wystarczająca do określenia następnego stanu xk+1, jak i nagrody rk. Proces uczenia za pomocą wzmocnienia spełnia zatem warunki wymagane dla procesu decyzyjnego Markowa. 2. UCZENIE W DYSKRETNEJ I CIĄGŁEJ PRZESTRZENI STANÓW Powyżej zdefiniowane pojęcia pozwalają na wyjaśnienie wybranych algorytmów uczenia przez wzmacnianie w klasycznej, dyskretnej wersji oraz w wersji rozszerzonej, dla ciągłej przestrzeni stanów. A. Rak, Zastosowanie algorytmów uczenia przez wzmacnianie w układzie wyznaczania trajektorii... 89 2.1. Algorytm uczenia przez wzmacnianie dla dyskretnej przestrzeni stanów Jak już wspomniano wyżej, podstawą działania wszystkich algorytmów RL jest określenie strategii, która będzie maksymalizować długoterminową sumę nagród otrzymanych podczas pokonywania trajektorii z dowolnego stanu początkowego x0. Sumę taką często nazywa się zwrotem (ang. return) i definiuje w postaci: ∞ Rh ( x0 ) = ∑ γk ρ ( xk ,h ( xk ) ) (5) k= 0 gdzie γ oznacza współczynnik dyskontowania odpowiedzialny za równowagę pomiędzy zbieżnością algorytmu a jego dokładnością. W praktycznym przypadku powyższa nieskończona suma jest ograniczona do liczby kroków algorytmu dla danej trajektorii. Formalną reprezentacją strategii w algorytmach uczenia przez wzmacnianie jest funkcja wartości określana dla stanu lub pary stan-akcja. W niniejszych rozważaniach używana będzie ta druga forma, nazywana Q-funkcją, zdefiniowana jako odwzorowanie Q h : X ×U → R, określające nagrodę za wybranie akcji u w stanie x zgodnie ze strategią h, zsumowaną z wartością zwrotu Rh dla następnego stanu [11]: (6) Q h (x,u ) = ρ(x,u )+ γR h ( f (x,u )) Optymalną funkcją wartości Q* nazywa się najlepszą funkcję (osiągającą największą wartość) dla dowolnej strategii. Natomiast strategię wybierającą dla każdego stanu akcję, przynoszącą największą wartość Q, nazywa się strategią zachłanną dla Q: h ( x ) ∈ arg max Q ( x,u ) h (7) Poszukiwanie optymalnej strategii przeprowadza się zatem, znajdując najpierw funkcję Q* maksymalizującą (6), a następnie strategię zachłanną dla tej funkcji według zależności (7). Jeżeli sterowany proces (rys. 1) jest znany, tzn. jego model jest poprawny i dokładnie określony, można powyższe zagadnienie rozwiązać metodami programowania dynamicznego [2]. W sytuacji odnajdowania trajektorii informacje o procesie (rozległości akwenu, przeszkodach nawigacyjnych, dostępnych torach wodnych) zbierane są w trakcie interakcji układu ze środowiskiem (patrz pkt 3) [9]. W tej sytuacji optymalna funkcja wartości może być estymowana algorytmem Q-Learning, który jest najpopularniejszą procedurą uczenia przez wzmacnianie. Można go określić jako rekurencyjne równanie w formie: Qk+1 ( xk ,uk ) = Qk ( xk ,uk ) + αk ⎡ rk+1 + γ max Qk ( xk+1 ,u' ) − Qk ( xk ,uk ) ⎤ u′ ⎣ ⎦ (8) 90 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 78, marzec 2013 gdzie αk ∈ (0,1] oznacza stałą uczenia. Wyrażenie pomiędzy nawiasami kwadratowymi oznacza różnicę czasową, tzn. różnice pomiędzy nową estymatą rk+1 + γ max Qk ( xk+1 ,u' ) optymalnej Q-funkcji dla (xk ,u k ) i bieżącą estymatą Qk (xk ,uk )u.′ Wraz ze zbliżaniem się liczby kroków algorytmu (8) do nieskończoności wartość Q-funkcji zbliża się do Q* pod łatwymi do spełnienia warunkami określonymi w [12]. 2.2. Uczenie przez wzmacnianie dla ciągłej przestrzeni stanów Opisany w poprzednim punkcie algorytm dla dyskretnej przestrzeni stanów posiada kilka ograniczeń. Przede wszystkim poszukiwana funkcja wartości akcji musi być zapisana explicite w tablicy. Dla dużych lub wielowymiarowych przestrzeni stanu i akcji skonstruowanie takiej tablicy może być bardzo kosztowne lub wręcz niemożliwe. Niektóre procesy wymagają ciągłego sygnału sterującego lub sygnału o bardzo dużej gęstości próbkowania, wówczas zapis tablicowy funkcji staje się całkowicie nieprzydatny. Aby pokonać te niedogodności, wprowadza się zapis funkcji wartości w postaci ciągłej przestrzeni aproksymowanej parametrycznie. Algorytm nie przechowuje wówczas olbrzymiego zbioru wartości funkcji, lecz dużo mniejszy zbiór parametrów, na podstawie których wartości te są aproksymowane [1, 10]. Rozważmy aproksymator Q-funkcji parametryzowany n-wymiarowym wektorem θ. Aproksymator realizuje odwzorowanie F : R n → ℑ, gdzie R n jest przestrzenią parametrów, a ℑ – przestrzenią Q-funkcji. Każdy wektor parametrów θ stanowi zwięzłą reprezentację odpowiadającej mu aproksymowanej Q-funkcji [5]: Q(x,u ) = [F (θ )](x,u ), (9) dla której ⎡⎣ F ( θ ) ⎤⎦ ( x,u ) oznacza wartość Q-funkcji wyznaczaną dla pary stan-akcja (x,u ) . Zamiast przechowywania poszczególnych wartości funkcji Q dla każdej pary (x,u ) wystarczy zatem teraz zapisywać n parametrów. Jednakże należy pamiętać, że zbiór Q-funkcji, reprezentowany przez F, jest tylko podzbiorem ℑ, dlatego też obciąża on reprezentację każdej funkcji błędem aproksymacji. Odwzorowanie F (θ ) ma zazwyczaj charakter nieliniowy, chociaż w praktycznych zastosowaniach spotyka się częściej formę liniową, ze względu na ułatwienia w analizie algorytmów RL. W niniejszych rozważaniach zastosowano aproksymator złożony z n Gaussowskich, znormalizowanych funkcji bazowych (BF) φ1, … φn : X × U → R i n-wymiarowy wektor parametrów θ. Zatem aproksymowane wartości funkcji mogą być obliczane jako: n ⎡⎣ F ( θ ) ⎤⎦ ( x,u ) = ∑ ϕl ( x,u ) θl = ϕ T ( x,u ) θ l=1 (10) A. Rak, Zastosowanie algorytmów uczenia przez wzmacnianie w układzie wyznaczania trajektorii... 91 Niech: ⎡ ϕ (x1 ,u1 )T ⎤ ⎡ ϕ1 (x1 ,u1 ) L ϕk (x1 ,u1 ) ⎤ ⎥=⎢ ⎥ Φ = ⎢⎢ M M O M ⎥ ⎢ ⎥ ⎢⎣ϕ (x|X | ,u|U| )T ⎥⎦ ⎢⎣ϕ1 (x|X | ,u|U| ) L ϕk (x|X | ,u|U| ) ⎥⎦ (11) Mamy wówczas Q̂h = Φθ h (12) Odnosząc powyższe do definicji funkcji wartości (6) i pamiętając, że Q̂ h jest rzutem Q h na przestrzeń Φ, otrzymujemy zależność: ΦT (Φ − γPΦ )θ h = ΦT R (13) gdzie P jest diagonalną macierzą wag. Jeżeli podstawimy: A= ΦT (Φ − γPΦ ) oraz b = Φ T R, to wyznaczenie wektora parametrów aproksymatora będzie równoznaczne z rozwiązaniem równania Aθ h = b, czyli: θ h = A−1b (14) Mając do dyspozycji dane o procesie, zebrane podczas interakcji w postaci L D = {(xi ,ui ,ri ,x'i )}i=1 , przybliżenie macierzy A i b można wyznaczyć z równań: L T Â= 1 ∑ ⎡ϕ (xi ,ui ) (ϕ (xi ,ui ) − γϕ (xi' ,h(xi' )) ) ⎤ ⎦ L i=1 ⎣ L b̂ = 1 ∑ ϕ (xi ,ui )ri L i=1 (15) (16) Funkcja wart. Qh Aktualizacja strategii Aktualizacja wartości Dane z interakcji Strategia h Rys. 2. Algorytm iteracji strategii Fig. 2. Policy iteration algorithm Jeżeli dane z procesu dostarczane są „krok po kroku”, zależności (15) i (16) można stosować również w wersji rekurencyjnej [6]. 92 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 78, marzec 2013 Ostatecznie, biorąc pod uwagę powyższe rozważania, można określić algorytm uczenia przez wzmacnianie w wersji ciągłej jako rekurencyjną procedurę, w której naprzemiennie wykonuje się dwie operacje (rys. 2): • na podstawie danych z procesu i zależności (14–16) wyznacza się przybliżenie ˆ −1bˆ ; wektora parametrów θ h = A • mając do dyspozycji aproksymację funkcji wartości dla aktualnego wektora parametrów, poszukuje się dla niej strategii zachłannej według reguły analogicznej do (7): h' (x) = arg max ϕ (x,u )T θ (17) u Algorytm kończy pracę, gdy θ − θ' < ε, przy czym określenie dopuszczalnego uchybu ε należy do projektanta systemu. Algorytm ten jest jednym z najpopularniejszych dla uczenia przez wzmacnianie dla ciągłej przestrzeni stanów i akcji. Istnieje kilka jego modyfikacji [6]. Jest powszechnie nazywany od angielskiego akronimu LSPI (Least-Squares Policy Iteration). 3. KONCEPCJA AUTONOMICZNEGO OKREŚLANIA TRAJEKTORII ZADANEJ MANEWRUJĄCEGO STATKU Jak już wspomniano we wstępie, algorytmy uczenia przez wzmacnianie mogą być wykorzystane do określania trajektorii statku manewrującego na podejściu do portu lub w porcie. Zagadnienie to jest z natury procesem sterowania wielowymiarowego, gdyż statek porusza się wówczas z niewielkimi prędkościami i efektywne staje się wykorzystanie aktywnych pędników, takich jak np. stery strumieniowe w przeciwieństwie do pasywnej płetwy sterowej. Sygnałami sterowanymi są zazwyczaj kurs i pozycja statku na akwenie [4]. Koncepcję rozszerzenia systemu sterowania ruchem statku o proponowany blok generatora trajektorii przedstawia rysunek 3. Sygnałem wejściowym do tego modułu byłaby informacja o bieżącej i zadanej (końcowej) pozycji manewrującego statku oraz informacja o bieżącej sytuacji nawigacyjnej. Pozycję docelową statku zadawałby operator, natomiast pozostałe sygnały mogą być uzyskane za pośrednictwem urządzeń elektronawigacyjnych, takich jak GPS, AIS, mapa elektroniczna czy radar. Wypracowaną trajektorię w postaci sekwencji manewrów dla poszczególnych etapów zadania należałoby podawać na wejście regulatora trajektorii, współpracującego z wielowymiarowym regulatorem wyznaczającym sygnały sterujące bezpośrednio do urządzeń wykonawczych (pędników) statku. A. Rak, Zastosowanie algorytmów uczenia przez wzmacnianie w układzie wyznaczania trajektorii... Trajektoria zadana (sekwencja) {x1 , y1, ψ 1} {x2 , y2, ψ 2} : : {xn , yn, ψ n} Generator trajektorii 93 Zadana pozycja końcowa (xz, yz, ψz ) Sytuacja nawigacyjna (mapa ) Pozycja mierzona + Regulator trajektorii x, y, ψ Regulator wielowymiarowy + - (x, y, ψ ) Urządzenia wykonawcze u, v, r Filtracja Odtwarzanie zmiennych Urządzenia pomiarowe Rys. 3. Schemat blokowy rozszerzonego układu sterowania ruchem statku Fig. 3. Block diagram of the augmented ship motion control system 4. WYNIKI BADAŃ ALGORYTMÓW Algorytmy przedstawione w drugiej części niniejszego artykułu zostały zaimplementowane w języku MATLAB2. Rysunek 4 przedstawia wyniki obliczeń dla przypadku przestrzeni dyskretnej. Zastosowany algorytm uczył się trajektorii przejścia pomiędzy dwoma punktami on-line. Uzyskana funkcja wartości, oznaczona kolorem od ciemnoczerwonego do niebieskiego, dość dobrze oddaje charakter zadania polegającego na dotarciu do punktu docelowego. Jednakże, mimo znacznej liczby epizodów uczenia (25 000), uzyskana strategia prowadzi do poprawnego rozwiązania tylko w okolicach pokazanej trajektorii minimalizującej koszt przejścia, choć w zadaniu zastosowano 10% współczynnik wymuszania eksploracji przestrzeni stanu [11]. Szczególnie jest to widoczne po lewej stronie płaszczyzny – dla stanów, które algorytm odwiedzał najrzadziej. Jest to naturalna cecha użytej wersji algorytmu, co umniejsza jednak poziom ogólności rozwiązania. Główną wadą prezentowanego rozwiązania jest znaczny wzrost kosztów obliczeń pojawiający się wraz ze wzrostem przestrzeni stanu. 2 W pracy wykorzystano wybrane pliki biblioteczne z dołączonych do pozycji [1] oraz do [11] dostępnych na stronie: http://waxworksmath.com/ce_solutionmanuals.asp. 94 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 78, marzec 2013 14 12 10 8 6 4 2 2 4 6 8 10 12 14 Rys. 4. Płaszczyzna funkcji wartości dla dyskretnej przestrzeni stanu (15x15) i uzyskana trajektoria. Zadany punkt początkowy (9,14), końcowy (14,2). Wektory ilustrują uzyskaną strategię. Kolorem granatowym oznaczono przeszkody Fig. 4. Value function for the discrete state space (15x15) and the resulting trajectory. Starting point (9,14), goal (14,2). Vectors illustrates obtained policy. Obstacles are coloured dark blue Rysunek 5 przedstawia natomiast wyniki obliczeń dla przypadku ciągłej (aproksymowanej) przestrzeni stanu. Proces uczenia odbywał się off-line dla wielu próbek procesu jednocześnie. Algorytm wykonał tylko 6 iteracji dla zestawu 8000 próbek. Jest to podejście wskazane ze względu na wydajniejsze działanie algorytmu aproksymacji. Jak łatwo zauważyć, rozwiązanie podaje poprawną strategię niemal dla dowolnego punktu początkowego na płaszczyźnie. Zastosowanie przyjętego aproksymatora w postaci sieci 25 funkcji RBF spowodowało „wygładzenie” funkcji wartości wokół przeszkody. Prowadzi to do sytuacji, w której trajektorie omijające przeszkodę nie będą wystarczająco minimalizowały kosztów przejścia. Należy zauważyć, że algorytm ten nie jest tak wrażliwy jak wersja dyskretna na zwiększanie przestrzeni stanu. A. Rak, Zastosowanie algorytmów uczenia przez wzmacnianie w układzie wyznaczania trajektorii... 95 Rys. 5. Płaszczyzna funkcji wartości dla ciągłej przestrzeni stanu 50x50 i zadanego punktu końcowego (40,15). Wektory ilustrują wyznaczoną strategię. Kolorem czarnym oznaczono przeszkodę Fig. 5. Value function for the continuous state space (50x50) and the goal point (40,15). Vectors illustrates obtained policy. Obstacle is coloured black WNIOSKI Przeprowadzone badania wskazują, że wybrane algorytmy uczenia przez wzmacnianie mogą służyć do wyznaczania trajektorii zadanej manewrującego statku. Algorytm dla dyskretnej, zapisanej w tablicy przestrzeni stanu jest szczególnie wrażliwy na jej wielkość. Dość szybko znajduje rozwiązanie, lecz w wersji uczenia on-line, dla sekwencji przejścia między dwoma punktami, jest ono bardzo niedokładne dla stanów oddalonych od znalezionej trajektorii. Jeśli ruch manewrującego statku ma się odbywać na większym obszarze, to wówczas konieczne wydaje się stosowanie algorytmów dla ciągłej przestrzeni stanów. Poprawność rozwiązania, w tym przypadku, w głównej mierze zależy od jakości aproksymatora. Oba algorytmy wymagają udoskonalenia, pozwalającego na wprowadzenie do przestrzeni stanów kąta kursowego manewrującego statku. 96 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 78, marzec 2013 LITERATURA 1. Busoniu L., Babuska R., De Schutter B., Ernst D., Reinforcement Learning and Dynamic Programming Using Function Approximators, CRC Press, 2010. 2. Cichosz P., Systemy uczące się, Wydawnictwo Naukowo-Techniczne, Warszawa 2000. 3. Gierusz W., Synteza wielowymiarowych układów sterowania precyzyjnego ruchem statku z wykorzystaniem wybranych metod projektowania układów odpornych, Wydawnictwo Akademii Morskiej w Gdyni, Gdynia 2005. 4. Gierusz W., Nguyen Cong V., Rak A., Maneuvering Control and Trajectory Tracking of Very Large Crude Carrier, Ocean Engineering, Vol. 34, 2007, No. 7. 5. Kudrewicz J., Analiza funkcjonalna dla automatyków i elektroników, Państwowe Wydawnictwo Naukowe, Warszawa 1976. 6. Lagoudakis M.G., Parr R., Least-Squares Policy Iteration, Journal of Machine Learning Research, Vol. 4, 2003. 7. Mitsubori K., Kamio T., Tanaka T., On a Course Determination Based on the Reinforcement Learning in Maneuvering Motion of a Ship with the Tidal Current Effect, International Symposium on Nonlinear Theory and its Applications, Xi’an 2002. 8. Morawski L., Nguyen Cong V., Rak A., Full-Mission Marine Autopilot Based on Fuzzy Logic Techniques, Wydawnictwo Akademii Morskiej w Gdyni, Gdynia 2008. 9. Rak A., Zastosowanie uczenia ze wzmocnieniem w układach sterowania ruchem statku, Zeszyty Naukowe Akademii Morskiej w Gdyni, Gdynia 2009, nr 62. 10. Rak A., Gierusz W., Reinforcement Learning in Discrete and Continuous Domains Applied to Ship Trajectory Generation, Polish Maritime Research, Vol. 19, 2012, No. 74 (S1). 11. Sutton R.S., Barto A.G., Reinforcement Learning: An Introduction, MIT Press, Cambridge, MA 1998. 12. Watkins C.J.C.H., Dayan P., Q-learning, Machine Learning, Vol. 8, 1992, No. 3–4. 13. Wawrzyński P., Systemy adaptacyjne i uczące się, Oficyna Wydawnicza Politechniki Warszawskiej, Warszawa 2009 (Preskrypt na prawach rękopisu). 14. Zhipeng S., Chen G., Jianbo S., Reinforcement learning control for ship steering based on general fuzzified CMAC, Proceedings of the 5-th Asian Control Conference, Vol. 3, Melbourne 2005. APPLICATION OF REINFORCEMENT LEARNING ALGORITHMS IN THE SYSTEM OF REFERENCE TRAJECTORY DETERMINATION OF THE MANEUVERING SHIP Summary The paper presents the concept of autonomous reference trajectory generation unit for the vessel motion control system. Reference trajectory is determined based on the information about the target position of the vessel, provided by the operator and navigational situation determined by the navigational equipment fitted on the vessel. The key data processing concept of the system relies on a reinforcement learning algorithms. The paper presents the principles of selected RL algorithms in both discrete and continuous domains. Trajectory determined in the proposed module can be realized in marine autopilot equipped with a multidimensional, nonlinear controller of the course and position. Keywords: marine autopilot, reference trajectory generation, LSPI: least-squares policy iteration, multidimensional controller, vessel motion control, reinforcement learning.