Uczenie ze wzmocnieniem Maria Ganzha Wydział Matematyki i Nauk Informatycznych 2018-2019
O projekcie nr 2 roboty (samochody, odkurzacze, drony,...) gry planszowe, sterowanie (optymalizacja; windy,..) optymalizacja kombinatoryczna i szeregowanie (zagadnienie harmonogramowania,..) problemy marszrutyzacji finanse... Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 2 / 14
Aproksymacja funkcji Funkcja wartości stanu lub stanu-akcji nie zawsze to się da przedstawić jako tabela (macierz) (np. szachy lub tryktrak 10 20 ) Metody uogólniania (generalizacji) aproksymacja funkcja wartości jest parametryzowana wektorem wag w R d : ˆv(x, w) V π (x), gdzie w wektor wag supervised learning (przykład) x u, gdzie u jest wyrażenie liczbowe (aproksymacja funkcji) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 3 / 14
Aproksymacja funkcji Funkcja wartości stanu lub stanu-akcji nie zawsze to się da przedstawić jako tabela (macierz) (np. szachy lub tryktrak 10 20 ) Metody uogólniania (generalizacji) aproksymacja funkcja wartości jest parametryzowana wektorem wag w R d : ˆv(x, w) V π (x), gdzie w wektor wag supervised learning (przykład) x u, gdzie u jest wyrażenie liczbowe (aproksymacja funkcji) MC : X t G t TD(0) : X y R t+1 + γˆv(x t, w) n-krokowy TD(0) : X t G t:t+n DP : x E [R t+1 + γˆv(x t+1, w t) X t = x] dowolna metoda uczenia z nadzorem na podstawie przykładów (training set) Uczenie z nadzorem na powiększającym się zbiorze danych RL Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 3 / 14
Cel przewidywania VE Stany ważone: x : µ(x) 0 i x µ(x) = 1 często µ ułamek czasu, spędzonego w stanie x aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 4 / 14
Cel przewidywania VE Stany ważone: x : µ(x) 0 i x µ(x) = 1 często µ ułamek czasu, spędzonego w stanie x Błąd średniej wartości kwadratowej (mean squared value error): VE = x X µ(x) [V π (x) ˆv(x, w)] 2 (1) aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 4 / 14
Cel przewidywania VE Stany ważone: x : µ(x) 0 i x µ(x) = 1 często µ ułamek czasu, spędzonego w stanie x Błąd średniej wartości kwadratowej (mean squared value error): VE = x X µ(x) [V π (x) ˆv(x, w)] 2 (1) Pytanie: czy VE jest odpowiednim celem RL? globalny vs lokalny optimum aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 4 / 14
Cel przewidywania VE Stany ważone: x : µ(x) 0 i x µ(x) = 1 często µ ułamek czasu, spędzonego w stanie x Błąd średniej wartości kwadratowej (mean squared value error): VE = x X µ(x) [V π (x) ˆv(x, w)] 2 (1) Pytanie: czy VE jest odpowiednim celem RL? globalny vs lokalny optimum Zasady zachłanności metody gradientowe Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 4 / 14
Stochastyczna metoda gradientowa/semi-gradientowa w = (w 1, w 2,..., w d ) T ˆv(s, w) różniczkowalna funkcja przez w t będziemy oznaczać wektor wag na kroku t zakładamy, że stany pojawiają się w przykładach z takim samym rozkładem µ po którym minimizujemy VE: w t+1 =w t 1 2 α [V π (X t ) ˆv(X t, w t )] 2 = =w t + α [V π (X t ) ˆv(X t, w t )] ˆv(X t, w t ) (2) balans błędów w różnych stanach α: jeżeli n=1 α n =, ale n=1 α 2 n < zbieżność metody SGD do optimum lokalnego Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 5 / 14
SGD dla predykcji funkcji wartości stanu X t U t i U t jest aproksymacją V π (X t ) zaszumiona V π (X t ) aproksymowana za pomocą metody wsadowej zamiast V π (X t ) użyjemy U t : w t+1 = w t + α [U t ˆv(X t, w t )] ˆv(X t, w t ) (3) jeżeli U t : E [U t X t = x] = V π (X t ) (unbiased estimate) t, wtedy w t zbiega się do lokalnego optimum (dla α jak wyżej) Przykład: MC, cel U t = G t przyszły dochód spełnia wymagania bycia niezaszumioną funkcją t, wersja MC metody gradientowego spadku gwarantuje lokalnie optymalne rozwiązanie (patrz następny slajd) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 6 / 14
Algorithm Input: the policy π to be evaluated Input: differentialbe function ˆv : X R d R; initialize: w = 0; repeat Generate an episode X 0, A 0, R 1,...,R T, X T using π; for t = 0, 1,..., T 1 do w w + α [G t ˆv(X t, w)] ˆv(X t, w) end until forever; Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 7 / 14
Algorithm Input: π for evaluation, differential function ˆv : X + R R: ˆv(terminal, ) = 0; Initialize: w = 0; repeat initialize: X; repeat Choose A π( X); Take action A, observe R, X ; w w + α [R + γˆv(x, w) ˆv(X, w)] ˆv(X, w); X X until for each step of episode until X is terminal; until for each episode; Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 8 / 14
Losowy spacer z agregacją stanów. 1000 stanowy losowy spacer (numeracja od 1 z lewej). Wszystkie epizody zaczynają się w stanie 500. Krok do 100 stanów w lewo lub prawo (p = 0, 5). Jeżeli jesteśmy za blisko stanu terminalnego zmienia się prawdopodobieństwo trafienia do stanu terminalnego ( sumowanie brakujących prawdopodobieństw). Np. p(t 1 1, a) = 0.5 a p(t +1 950, a) = 0.25. Rysunek: α = 2 10 5. Agregacja stanów po 100; 100 000 epizodów Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 9 / 14
Metody liniowe ˆv(, w) liniowa funkcja wektora w, czyli dla każdego stanu istnieje wektor z(x) = (z 1 (x), z 2 (x),..., z d (x)) T d ˆv(x, w) = w T z(x) = w i z i (x) (4) i=1 z(x) wektor cech (np. robot prędkość, poziom naładowania,...) zastosowanie SGD do liniowej aproksymacji ˆv(x, w) = z(x): w t+1 = w t + α [U t ˆv(X t, w t )] z(x t ) zbieżność metody do (blisko) globalnego optimum (tylko jeden) pseudo-gradientowy TD(0) również jest zbieżna (w przypadku liniowej aproksymacji) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 10 / 14
Metody liniowe c.d. ] w t+1 =w t + α [R t+1 + γw T t z t+1 w T t z t z t = ] =w t + α [R t+1 z t z t (z t γz t+1 ) T w t aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 11 / 14
Metody liniowe c.d. ] w t+1 =w t + α [R t+1 + γw T t z t+1 w T t z t z t = ] =w t + α [R t+1 z t z t (z t γz t+1 ) T w t Po osiągnięciu stanu stabilnego E [w t+1 w t ] = w t + α(b A w t ) (5) [ ] gdzie b = E [R t+1 z t ] R d i A = E z t (z t γz t+1 ) T R d R d aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 11 / 14
Metody liniowe c.d. ] w t+1 =w t + α [R t+1 + γw T t z t+1 w T t z t z t = ] =w t + α [R t+1 z t z t (z t γz t+1 ) T w t Po osiągnięciu stanu stabilnego E [w t+1 w t ] = w t + α(b A w t ) (5) [ ] gdzie b = E [R t+1 z t ] R d i A = E z t (z t γz t+1 ) T R d R d Jeżeli system jest zbieżny, to zbiega się do w TD TD nieruchomy punkt (TD fixed point) w TD = A 1 b (6) aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 11 / 14
Metody liniowe c.d. ] w t+1 =w t + α [R t+1 + γw T t z t+1 w T t z t z t = ] =w t + α [R t+1 z t z t (z t γz t+1 ) T w t Po osiągnięciu stanu stabilnego E [w t+1 w t ] = w t + α(b A w t ) (5) [ ] gdzie b = E [R t+1 z t ] R d i A = E z t (z t γz t+1 ) T R d R d Jeżeli system jest zbieżny, to zbiega się do w TD = A 1 b (6) w TD TD nieruchomy punkt (TD fixed point) Można udowodnić, że: VE(w TD ) 1 1 γ min VE(w) (7) w aria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 11 / 14
Metoda wsadowa dla 1000-stanowego losowego spaceru Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 12 / 14
Przybliżenia Fourier, coarse, tile Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 13 / 14
Sterowanie on-policy problem sterowanie funkcja wartości stan-akcja (parametryczna aproksymacja): ˆq(x, a, w) Q (x, a) (8) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 14 / 14
Sterowanie on-policy problem sterowanie funkcja wartości stan-akcja (parametryczna aproksymacja): ˆq(x, a, w) Q (x, a) (8) epizodyczne sterowanie semi-gradientową metodą TD(0): X t, A t U t (U t dla MC jest całkowity dochód, dla G t dla 1-krokowej SARSA) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 14 / 14
Sterowanie on-policy problem sterowanie funkcja wartości stan-akcja (parametryczna aproksymacja): ˆq(x, a, w) Q (x, a) (8) epizodyczne sterowanie semi-gradientową metodą TD(0): X t, A t U t (U t dla MC jest całkowity dochód, dla G t dla 1-krokowej SARSA) ogólna aktualizacja wektora w dla akcja-stan predykcji jest: w t+1 = w t + α [U t ˆq(X t, A t, w t )] ˆq(X t, A t, w t ) (9) 1-krokowa SARSA U t = T t+1 + γˆq(x t+1, A t+1, w t ) Maria Ganzha (Wydział Matematyki i Nauk Informatycznych) Uczenie ze wzmocnieniem 2018-2019 14 / 14