Uczenie si
e ze wzmocnieniem
֒ W wielu dziedzinach trudno jest sformu lowa´c precyzyjne funkcje oceny, pozwalajace agentowi oceni´c skuteczno´s´c, lub poprawno´s´c jego akcji,֒
z wyj
atkiem gdy osi֒
agnie on stan docelowy. Zak ladamy, ˙ze w stanie docelowym֒
agent z za lo˙zenia zawsze otrzymuje obiektywn a֒ocen
e֒swoich dzia la´n, zwan a֒
nagrod
a֒lub wzmocnieniem. Wygodnie jest sformu lowa´c zadanie agenta w taki spos´ob, aby musia l on sam nauczy´c si
e֒tak dzia la´c, aby maksymalizowa´c te֒nagrod
e֒(wzmocnienie). Nazywamy to zagadnieniem uczenia si e ze֒
wzmocnieniem(reinforcement learning, RL).
Jest to zadanie trudne. W og´olnym przypadku agent mo˙ze nie mie´c pe lnej informacji o swoim ´srodowisku, jak r´ownie˙z precyzyjnego (albo ˙zadnego) opisu swoich dzia la´n i ich skutk´ow. Jego sytuacj
e֒mo˙zna rozumie´c jako jedno ze sformu lowa´n pe lnego zadania sztucznej inteligencji. Agent zostaje umieszczony w ´srodowisku, kt´orego nie zna, i musi si
e֒nauczy´c skutecznie w nim dzia la´c, aby maksymalizowa´c pewne kryterium, dost
epne mu w postaci wzmocnie´n.֒
Bedziemy rozwa˙zali probabilistyczny model skutk´ow akcji agenta. M´owi֒
ac֒
dok ladniej, b
edziemy zak ladali, ˙ze podstawowe zagadnienie jest dyskretnym֒
procesem Markowa (MDP), jednak agent nie zna jego parametr´ow.
Uczenie si
֒e ze wzmocnieniem — wst
֒ep 1 Uczenie si
֒e ze wzmocnieniem — wst
֒ep 2
Pasywne uczenie si
e ze wzmocnieniem
֒ Na poczatek rozwa˙zymy uczenie si֒
e pasywne, gdzie zak ladamy, ˙ze polityka֒
agenta π(s) jest z g´ory ustalona. Agent nie podejmuje ˙zadnych decyzji, musi robi´c to co dyktuje mu polityka, a wyniki jego akcji s
a֒probabilistyczne. Jednak mo˙ze obserwowa´c co si
e֒dzieje, czyli wie do jakich stan´ow dociera i jakie otrzymuje w nich nagrody. Pami
etajmy jednak, ˙ze nagrody otrzymywane֒
w stanach nieterminalnych nie s
a֒dla agenta istotnym kryterium — liczy si e֒
tylko suma nagr´od otrzymanych na drodze do stanu terminalnego, zwana wzmocnieniem.
Zadaniem agenta jest nauczenie si
e֒warto´sci u˙zyteczno´sci stan´ow Uπ(s), obliczanych zgodnie z r´ownaniem:
Uπ(s) = E
"∞ X
t=0
γtR(st)
#
W rozpatrywanym tu przyk ladowym zagadnieniu 4x3 b
edziemy przyjmowa´c֒
γ = 1.
Uczenie si֒e ze wzmocnieniem — pasywne 3
Przebiegi ucz ace
֒Przypomnijmy rozwa˙zany wcze´sniej przyk lad agenta w ´swiecie 4 × 3:
1 2 3 4
+ 1
2 − 1
1 3
1 2 3
1 2 3
–1 + 1
4 0.611 0.812
0.655 0.762
0.918
0.705
0.660 0.868
0.388
Agent wykonuje przebiegi ucz
ace֒ (ang. trials) w kt´orych wykonuje akcje zgodne z posiadan
a֒polityk
a, a˙z do osi֒
agni֒
ecia stanu terminalnego. W ka˙zdym֒
kroku otrzymuje percept wskazuj
acy zar´owno bie˙z֒
acy stan, jak i nagrod֒
e.֒
Przyk ladowe przebiegi:
(1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (3, 2)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (2, 1)−0.04 ❀ (3, 1)−0.04 ❀ (3, 2)−0.04 ❀ (4, 2)−1
Uczenie si֒e ze wzmocnieniem — pasywne 4
Obliczanie u˙zyteczno´ sci metod
a bezpo´
֒sredni a
֒ Celem dzia lania agenta jest obliczenie u˙zyteczno´sci stan´ow Uπ(s) zwiazanych֒
z posiadan a֒polityk
a֒π(s). U˙zyteczno´sci stan´ow zdefiniowane s
a֒jako warto´sci oczekiwane sumy nagr´od (dyskontowanych) otrzymanych przez agenta startuj
acego z danego stanu, i poruszaj֒
acego si֒
e֒zgodnie ze swoj a֒polityk
a:֒
Uπ(s) = E
"∞
X
t=0
γtR(st)
#
Agent mo˙ze nauczy´c si
e֒u˙zyteczno´sci obliczaj
ac tzw. nagrod֒
e pozosta l֒
a֒
(reward-to-go) w ka˙zdym stanie. Na koniec przebiegu agent oblicza nagrod e֒
pozosta l
a֒w stanie ko´ncowym jako nagrod
e֒otrzyman
a֒w tym stanie. Nast epnie,֒
cofaj ac si֒
e֒wzd lu˙z swojej drogi, oblicza nagrody pozosta le dla wcze´sniejszych stan´ow jako sumy nagr´od otrzymanych na ko´ncowym odcinku przebiegu.
Na przyk lad, dla przebiegu:
(1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1
otrzymujemy Rtg(4, 3) = 1, Rtg(3, 3) = 0.96, Rtg(2, 3) = 0.92, Rtg(1, 3) = 0.88, Rtg(1, 2) = 0.84, Rtg(1, 3) = 0.80, Rtg(1, 2) = 0.76, Rtg(1, 1) = 0.72
Uczenie si֒e ze wzmocnieniem — pasywne 5
Posiadaj
ac wiele pr´obek (przebieg´ow) agent mo˙ze przez proste u´srednianie֒
okre´sli´c kolejne przybli˙zenia warto´sci oczekiwanej u˙zyteczno´sci stan´ow, kt´ore w niesko´nczono´sci zbiegaj
a֒si
e֒do w la´sciwych warto´sci oczekiwanych.
To podej´scie jest poprawne, lecz niezbyt efektywne — wymaga du˙zej liczby przebieg´ow. Przedstawiona metoda okre´slania u˙zyteczno´sci, stosuj
ac proste֒
u´srednianie u˙zyteczno´sci stan´ow, pomija wa˙zn
a֒w lasno´s´c proces´ow Markowa, tzn., ˙ze u˙zyteczno´sci stan´ow s
a֒zwi
azane z u˙zyteczno´sciami stan´ow s֒
asiednich.֒ (1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (3, 2)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (2, 1)−0.04 ❀ (3, 1)−0.04 ❀ (3, 2)−0.04 ❀ (4, 2)−1
Na przyk lad, w drugim przebiegu z powy˙zszego przyk ladu algorytm okre´sla u˙zyteczno´s´c stanu (3,2) jako pozosta l
a֒nagrod
e֒z tego przebiegu, ignoruj ac֒
fakt, ˙ze kolejnym stanem w tym przebiegu jest stan (3,3), kt´ory ma wysok a֒
(i ju˙z znan
a) u˙zyteczno´s´c. R´ownanie Bellmana pozwala zwi֒
aza´c u˙zyteczno´sci֒
nastepuj֒
acych po sobie stan´ow, lecz to podej´scie nie potrafi ich wykorzysta´c.֒
Uczenie si֒e ze wzmocnieniem — pasywne 6
Adaptacyjne programowanie dynamiczne
Adaptacyjnym programowaniem dynamicznym(ADP) nazywamy proces podobny do programowania dynamicznego w po l
aczeniu z uczeniem si֒
e֒modelu
´srodowiska, czyli funkcji przej´s´c stan´ow, i funkcji nagrody. Polega ono na zliczaniu przej´s´c od pary stan-akcja do nast
epnej akcji. Przebiegi ucz֒
ace֒
dostarczaj
a֒nam serii ucz
acej takich przej´s´c. Agent mo˙ze okre´sla´c ich֒
prawdopodobie´nstwa jako ich cz
estotliwo´sci wyst֒
epuj֒
ace w przebiegach.֒
Na przyk lad, w podanych wcze´sniej przebiegach, w stanie (1,3) trzy razy wykonana zosta la akcja → (Right), po czym dwa razy wynikowym stanem by l (2,3). Zatem agent powinien okre´sli´c P ((2, 3)|(1, 3), Right) =23.
(1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (1, 2)−0.04 ❀ (1, 3)−0.04 ❀ (2, 3)−0.04 ❀ (3, 3)−0.04 ❀ (3, 2)−0.04 ❀ (3, 3)−0.04 ❀ (4, 3)+1 (1, 1)−0.04 ❀ (2, 1)−0.04 ❀ (3, 1)−0.04 ❀ (3, 2)−0.04 ❀ (4, 2)−1
Po wykonaniu ka˙zdego kroku agent aktualizuje u˙zyteczno´sci stan´ow rozwi azuj֒
ac֒
r´ownanie Bellmana (uproszczone) jednym z w la´sciwych algorytm´ow. R´ownanie jest uproszczone, poniewa˙z znamy tylko rozk lady skutk´ow akcji nale˙z
acych do֒
polityki, i nie mo˙zemy oblicza´c najlepszej akcji w ka˙zdym stanie. Poniewa˙z chcemy obliczy´c Uπto bierzemy w la´snie te akcje.
Uczenie si
֒e ze wzmocnieniem — metoda ADP 7
Adaptacyjne programowanie dynamiczne — algorytm
Uczenie si
֒e ze wzmocnieniem — metoda ADP 8
Adaptacyjne programowanie dynamiczne — efektywno´ s´ c
Algorytm ADP aktualizuje warto´sci u˙zyteczno´sci najlepiej jak to jest mo˙zliwe, i stanowi w tym wzgledzie standard do por´owna´n dla innych algorytm´ow.֒
Jednak procedura obliczania u˙zyteczno´sci przez rozwi
azywanie uk ladu r´owna´n֒
(liniowych) mo˙ze by´c niewykonalna dla wielu zmiennych (np. 1050r´owna´n z 1050niewiadomymi dla gry backgammon).
0 0.2 0.4 0.6 0.8 1
0 20 40 60 80 100
Utility estimates
Number of trials (1,1) (1,3) (3,2) (3,3) (4,3)
0 0.1 0.2 0.3 0.4 0.5 0.6
0 20 40 60 80 100
RMS error in utility
Number of trials
Powy˙zsze wykresy ilustruj
a֒zbie˙zno´s´c dla przyk ladowego uczenia w ´srodowisku 4 × 3. Nale˙zy doda´c, ˙ze w tym przyk ladzie przebieg ko´ncz
acy si֒
e֒w
”z lym”
stanie terminalnym pojawia si
e֒po raz pierwszy w przebiegu 78-ym, co skutkuje skokow
a֒aktualizacj
a֒niekt´orych u˙zyteczno´sci.
Uczenie si֒e ze wzmocnieniem — metoda ADP 9 Uczenie si֒e ze wzmocnieniem — metoda ADP 10
Metoda r´ o˙znic czasowych
Zamiast ka˙zdorazowo rozwiazywa´c pe len uk lad r´owna´n ze wzgl֒
edu na warto´sci֒
u˙zyteczno´sci, mo˙zna aktualizowa´c te warto´sci aktualnie obserwowanymi warto´sciami wzmocnie´n. Tak funkcjonuj
acy algorytm nazywa si֒
e֒metod a r´֒ o˙znic czasowych TD(temporal difference learning):
Uπ(s) ← Uπ(s) + α(R(s) + γUπ(s′) − Uπ(s))
W tym przypadku aktualizujemy u˙zyteczno´s´c poprawk a֒obliczan
a֒na podstawie jednego zaobserwowanego przej´scia stan´ow, a nie warto´sci oczekiwanej wszystkich przej´s´c. Dlatego te˙z poprawk
e֒— r´o˙znic e֒pomi
edzy u˙zyteczno´sci֒
a֒
ruchu a u˙zyteczno´sci
a֒stanu — bierzemy zredukowan
a֒wsp´o lczynnikiem α < 1.
Powoduje to wprowadzanie ma lych poprawek po ka˙zdym ruchu. Jednocze´snie poprawka zmierza do zera gdy u˙zyteczno´s´c stanu zr´ownuje si
e֒z dyskontowan a֒
u˙zyteczno´sci a֒ruchu.
Zauwa˙zmy, ˙ze ta metoda nie wymaga posiadania modelu ´srodowiska P (s′|s, a), ani sama go nie oblicza.
Uczenie si֒e ze wzmocnieniem — metoda TD 11
Metoda r´ o˙znic czasowych — algorytm
Uczenie si֒e ze wzmocnieniem — metoda TD 12
Zbie˙zno´ s´ c metody r´ o˙znic czasowych
Istnieje zwiazek i podobie´nstwo pomi֒
edzy algorytmami ADP i TD. O ile ten֒
drugi dokonuje tylko lokalnych zmian w warto´sciach u˙zyteczno´sci, to ich ´srednie warto´sci zbiegaj
a֒si
e֒do tych samych warto´sci co dla algorytmu ADP.
W przypadku uczenia wieloma przyk ladami przej´s´c, cz
estotliwo´sci wyst֒
epowania֒
stan´ow zgadzaj a֒si
e֒z rozk ladem prawdopodobie´nstw ich wyst
epowania i mo˙zna֒
wykaza´c, ˙ze warto´sci u˙zyteczno´sci b ed֒
a֒si
e֒zbiega´c do poprawnych wynik´ow.
W tym celu parametr uczenia si
e֒α powinien zmniejsza´c si e֒wraz ze zwiekszaniem si֒
e֒liczby przetworzonych przebieg´ow. Dok ladniej, warto´sci tego parametru powinny spe lnia´c zale˙zno´s´c:
∞
X
n=1
α(n) = ∞
oraz jednocze´snie:
∞
X
n=1
α2(n) < ∞
Uczenie si
֒e ze wzmocnieniem — metoda TD 13
Zbie˙zno´s´c przyk ladowego procesu uczenia dla ´srodowiska 4 × 3:
0 0.2 0.4 0.6 0.8 1
0 100 200 300 400 500
Utility estimates
Number of trials (1,1) (1,3) (2,1) (3,3) (4,3)
0 0.1 0.2 0.3 0.4 0.5 0.6
0 20 40 60 80 100
RMS error in utility
Number of trials
Uczenie si
֒e ze wzmocnieniem — metoda TD 14
Aktywne uczenie si
e ze wzmocnieniem
֒ Co powinien zrobi´c agent, kt´ory nie posiada ustalonej polityki, albo kt´ory chcia lby okre´sli´c polityke֒optymaln a?֒
Najpierw powinien wyznaczy´c kompletny model przej´s´c dla wszystkich akcji.
Przedstawiony wy˙zej algorytm ADP daje t
e֒mo˙zliwo´s´c. Nast
epnie nale˙zy֒
wyznaczy´c polityk
e֒optymaln a, spe lniaj֒
ac֒
a֒poni˙zsze r´ownanie Bellmana, jak w zwyk lym problemie decyzyjnym Markowa:
U (s) = R(s) + γ max
a
X
s′
P (s′|s, a)U (s′)
Agent mo˙ze to zrobi´c algorytmem iteracji warto´sci lub iteracji polityki.
Nastepnie, maj֒
ac wyznaczon֒
a֒optymaln a֒polityk
e֒dla danego ´srodowiska, mo˙ze spokojnie przej´s´c do jej realizacji.
Ale czy powinien tak zrobi´c?
Uczenie si֒e ze wzmocnieniem — aktywne 15
0 0.5 1 1.5 2
0 50 100 150 200 250 300 350 400 450 500
RMS error, policy loss
Number of trials RMS error Policy loss
1 2 3
1 2 3
–1 +1
4
Wykres po lewej pokazuje wynik uczenia si
e֒w pewnym eksperymencie. Agent znalaz l bezpo´sredni
a֒drog e֒do rozwi
azania [+1] w przebiegu nr 39, lecz by la to֒
droga gorsza, wzd lu˙z stan´ow: (2,1), (3,1), (3,2), (3,3). Zdeterminowa la jednak przyj
et֒
a֒przez agenta polityk
e֒optymaln
a֒po prawej. Okazuje si
e, ˙ze jest to֒
sytuacja typowa, agent z rzadka tylko znajduje optymaln a֒polityk
e֒preferuj ac֒
a֒
droga֒g´orn
a: (1,2), (1,3), (2,3), (3,3).֒
Uczenie si֒e ze wzmocnieniem — aktywne 16
Eksploracja
Niestety, je´sli agent nie nauczy sie֒poprawnego modelu ´srodowiska w swoich poczatkowych przebiegach, to b֒
edzie nast֒
epnie generowa l przebiegi zgodnie֒
z polityk
a֒optymaln
a֒dla pewnego modelu, kt´ora mo˙ze nie by´c globalnie optymalna dla danego ´srodowiska.
Pojawia si
e֒tu kompromis pomi
edzy eksploatacj֒
a֒posiadanej wiedzy a eksploracj
a֒´srodowiska. Agent nie mo˙ze zbyt szybko zadowoli´c si e֒
wyuczonym modelem ´srodowiska, i obliczon
a֒dla niego optymaln a֒strategi
a.֒
Powinien pr´obowa´c r´o˙znych mo˙zliwo´sci.
Co wi
ecej, musi wielokrotnie pr´obowa´c wszystkich akcji we wszystkich stanach,֒
je´sli chce unikn
a´c֒ mo˙zliwo´sci, ˙ze przypadkowa pechowa seria uniemo˙zliwi mu odkrycie jakiego´s szczeg´olnie dobrego ruchu. Jednak w ko´ncu musi r´ownie˙z zacza´c֒ porusza´c si
e֒zgodnie z polityk
a֒optymaln
a, aby dostroi´c j֒
a֒do specyficznych dla niej ´scie˙zek.
Uczenie si֒e ze wzmocnieniem — eksploracja 17
Polityka eksploracji
Aby po laczy´c skuteczn֒
a֒eksploracj
e ´swiata z eksploatacj֒
a֒posiadanej wiedzy agent powinien posiada´c polityk
e eksploracji. Ma ona zagwarantowa´c, ˙ze֒
agent b
edzie on w stanie pozna´c wszystkie swoje mo˙zliwe akcje w stopniu֒
wystarczaj
acym do obliczenia swojej globalnie optymalnej polityki dla danego֒
´srodowiska.
Prost a֒polityk
a֒eksploracji mog loby by´c wykonywanie przypadkowych akcji we wszystkich stanach, z pewnym ustalonym prawdopodobie´nstwem,
a w pozosta lych przypadkach wykonywanie akcji uwa˙zanych za optymalne.
Jest to podej´scie poprawne, lecz wolno zbie˙zne. Lepiej by loby preferowa´c eksploracj
e֒niezbyt dobrze jeszcze poznanych par stan-akcja, jednocze´snie unikaj
ac eksploracji par znanych ju˙z jako niezbyt korzystne.֒
Uczenie si֒e ze wzmocnieniem — eksploracja 18
Funkcja eksploracji
Sensowna֒polityk
e֒eksploracji mo˙zna zbudowa´c wprowadzaj
ac optymistyczne֒
oszacowania u˙zyteczno´sci U+(s):
U+(s) ← R(s) + γ max
a f X
s′
P (s′|s, a)U+(s′), N (a, s)
!
gdzie N (a, s) jest liczb
a֒wcze´sniej dokonanych wybor´ow akcji a w stanie s, natomiast f (u, n) jest funkcj
a eksploracji, wywa˙zaj֒
ac֒
a֒preferencje dla zysku (du˙zych warto´sci u) i ciekawo´sci (ma lych warto´sci n).
Oczywi´scie funkcja eksploracji f powinna by´c rosn
aca ze wzgl֒
edu na u֒
i malej
aca ze wzgl֒
edu na n. Prostym przyk ladem funkcji f mo˙ze by´c:֒
f (u, n) =
R+ je´sli n < Ne
u w przeciwnym wypadku
gdzie R+oznacza optymistyczne oszacowanie najlepszej nagrody mo˙zliwej do otrzymania w kt´orymkolwiek ze stan´ow, a Nejest minimaln
a֒liczb
a֒pr´ob ka˙zdej pary stan-akcja, jak
a֒agent b edzie si֒
e֒stara l wykona´c.
Uczenie si
֒e ze wzmocnieniem — eksploracja 19
Fakt, ˙ze we wzorze na aktualizacj
e֒U+po prawej stronie wyst
epuje r´ownie˙z U֒ +
jest istotny. Poniewa˙z stany i akcje wok´o l stanu pocz
atkowego b֒
ed֒
a֒
wykonywane wiele razy, gdyby agent zastosowa l nieoptymistyczne obliczanie u˙zyteczno´sci, m´og lby zacz
a´c֒ unika´c tych stan´ow, i w konsekwencji zniech eci´c si֒
e֒
do wypuszczania si e֒
”dalej”. U˙zycie warto´sci U+oznacza, ˙ze optymistyczne warto´sci generowane dla nowo eksplorowanych region´ow b
ed֒
a֒propagowane wstecz, dzi
eki czemu akcje prowadz֒
ace do nieznanych jeszcze region´ow b֒
ed֒
a֒
szacowane wysoko, i tym samym preferowane.
Uczenie si
֒e ze wzmocnieniem — eksploracja 20
0.6 0.8 1 1.2 1.4 1.6 1.8 2 2.2
0 20 40 60 80 100
Utility estimates
Number of trials (1,1) (1,2) (1,3) (2,3) (3,2) (3,3) (4,3)
0 0.2 0.4 0.6 0.8 1 1.2 1.4
0 20 40 60 80 100
RMS error, policy loss
Number of trials RMS error Policy loss
Na lewym wykresie wida´c przebieg uczenia si
e֒agenta z eksploracj
a. Polityka֒
bliska optymalnej zosta la osi agni֒
eta po 18 przebiegach. Zauwa˙zmy, ˙ze warto´sci֒
u˙zyteczno´sci zbiegaj a֒si
e֒wolniej (RMS error) ni˙z zostaje wyznaczona optymalna polityka (policy loss).
Uczenie si֒e ze wzmocnieniem — eksploracja 21
Aktywne uczenie si
e r´
֒o˙znic czasowych
Metode֒r´o˙znic czasowych mo˙zna r´ownie˙z zastosowa´c do uczenia si
e֒aktywnego.
Agent mo˙ze nie posiada´c ustalonej polityki, i nadal oblicza´c u˙zyteczno´sci stan´ow wykorzystuj
ac ten sam wz´or co w przypadku pasywnym:֒
Uπ(s) ← Uπ(s) + α(R(s) + γUπ(s′) − Uπ(s))
Dzieki obliczanym u˙zyteczno´sciom agent mo˙ze wyznacza´c w la´sciwe akcje֒
w ka˙zdym stanie korzystaj
ac z u˙zyteczno´sci stan´ow s֒
asiednich. Mo˙zna wykaza´c,֒
˙ze aktywny agent TD osi
agnie te same wynikowe warto´sci u˙zyteczno´sci co֒
aktywny agent ADP.
Uczenie si֒e ze wzmocnieniem — TD-learning 22
Metoda Q-learning
Alternatywna֒do poprzedniego wzoru metod
a֒uczenia si
e֒r´o˙znic czasowych jest metoda Q-learning, kt´ora zamiast u˙zyteczno´sci uczy si
e֒reprezentacji akcja-warto´s´c w postaci funkcji Q(s, a). Ta funkcja wyra˙za warto´s´c wykonania akcji a w stanie s, i jest zwi
azana z u˙zyteczno´sciami stan´ow wzorem:֒
U (s) = max
a Q(s, a) Docelowe warto´sci Q spe lniaj
a֒r´ownanie:
Q(s, a) = R(s) + γX
s′
P (s′|s, a) max
a′ Q(s′, a′)
Powy˙zszy wz´or m´og lby by´c wykorzystywany w procesie iteracyjnym jako wz´or do aktualizacji warto´sci Q. Wymaga loby to jednak jednoczesnego uczenia si
e֒
warto´sci Q i modelu w postaci funkcji P , kt´ora wyst
epuje we wzorze.֒
Uczenie si֒e ze wzmocnieniem — Q-learning 23
Q-learning — aktualizacja metod
a r´
֒o˙znic czasowych
Mo˙zliwa jest r´ownie˙z aktualizacja lokalna funkcji Q bed֒
aca wariantem metody֒
r´o˙znic czasowych i wyra˙zona poni˙zszym wzorem aktualizacyjnym, obliczanym ilekro´c akcja a jest wykonywana w stanie s prowadz
ac do stanu wynikowego s֒ ′: Q(s, a) ← Q(s, a) + α(R(s) + γ max
a′ Q(s′, a′) − Q(s, a)) Algorytm Q-learning z metod
a֒r´o˙znic czasowych zbiega si e֒do rozwi
azania֒
znacznie wolniej ni˙z algorytm ADP, poniewa˙z nie wymusza obliczenia pe lnej sp´ojno´sci modelu (kt´orego nie tworzy).
Uczenie si֒e ze wzmocnieniem — Q-learning 24
Pe lny algorytm Q-learning z eksploracj a
֒W og´olno´sci aktywny agent ucz acy si֒
e֒metod
a֒Q-learning wymaga zastosowania eksploracji tak samo jak w przypadku metody ADP. St
ad w algorytmie֒
wystepuje funkcja eksploracji f i tablica cz֒
esto´sci wyst֒
epowania akcji N . Przy֒
zastosowaniu prostszej polityki eksploracji (np. wykonywanie okre´slonej proporcji ruch´ow losowych) tablica N mo˙ze nie by´c potrzebna.
Uczenie si
֒e ze wzmocnieniem — Q-learning 25
SARSA — State-Action-Reward-State-Action
Istnieje pewien wariant algorytmu Q-learning z aktualizacja֒metod a֒r´o˙znic czasowych zwany SARSA (State-Action-Reward-State-Action):
Q(s, a) ← Q(s, a) + α(R(s) + γQ(s′, a′) − Q(s, a))
W SARSA aktualizacja bierze pod uwag e֒pi
e´c֒ czynnik´ow: s, a, r, s′, a′. O ile algorytm Q-learning aktualizuje na podstawie najlepszej akcji wybranej dla stanu osiagni֒
etego przez akcj֒
e֒a, SARSA bierze pod uwag
e֒to jaka akcja zosta la w rzeczywisto´sci wybrana. Zatem np. dla zach lannego agenta realizuj
acego֒
wy lacznie eksploatacj֒
e֒te dwie metody by lyby identyczne.
Jednak w przypadku uczenia si
e֒z eksploracj
a֒r´o˙znica jest istotna. Metoda Q-learning jest metod
a֒uczenia si
e poza polityk֒
a֒(off-policy), obliczaj ac֒
a֒
najlepsze mo˙zliwe warto´sci Q, niezale˙znie od tego gdzie prowadzi nas realizowana polityka. Natomiast SARSA jest metod
a w polityce֒ (on-policy), odpowiedni
a֒dla agenta poruszaj acego si֒
e֒zgodnie z posiadan a֒polityk
a.֒
Uczenie si
֒e ze wzmocnieniem — SARSA 26
Q-learning jest bardziej elastycznym algorytmem, poniewa˙z pozwala agentowi uczy´c si
e֒w la´sciwego zachowania si
e֒nawet je´sli wykonuje on aktualnie polityk e֒
niezgodn
a֒z wyuczanymi wzorcami. Natomiast SARSA jest bardziej realistyczna, poniewa˙z na przyk lad, gdyby agent nie m´og l w 100% kontrolowa´c swojej polityki, to lepiej mu uczy´c si
e֒wzorc´ow zgodnych z tym co rzeczywi´scie b edzie֒
sie֒z nim dzia lo, zamiast uczy´c si
e֒zgodnie z najlepszymi dla agenta wzorcami.
Zar´owno Q-learning jak i SARSA s
a֒w stanie nauczy´c si
e֒optymalnej polityki dla przyk ladowego ´srodowiska 4x3, jednak wolniej ni˙z ADP (w sensie liczby iteracji).
Wynika to z faktu, ˙ze lokalne poprawki nie wymuszaj
a֒sp´ojno´sci ca lej funkcji Q.
Por´ownuj
ac te metody mo˙zna spojrze´c szerzej i zada´c sobie pytanie, czy֒
lepszym podej´sciem jest uczenie si
e֒modelu ´srodowiska i funkcji u˙zyteczno´sci, czy bezpo´srednie wyznaczanie odwzorowania stan´ow do akcji bez ogl
adania si֒
e֒
na model ´srodowiska.
Jest to w rzeczywisto´sci jedno z fundamentalnych pyta´n jak budowa´c sztuczn a֒
inteligencj
e. Przez wiele lat pocz֒
atkowego rozwoju tej dziedziny wiedzy֒
dominowa l paradygmat system´ow opartych na wiedzy(knowledge-based), postuluj
acych konieczno´s´c budowy modeli deklaratywnych. Fakt, ˙ze powstaj֒
a֒
metody bezmodelowe takie jak Q-learning sugeruje, ˙ze by´c mo˙ze by lo to niepotrzebne. Jednak dla niekt´orych bardziej z lo˙zonych zagadnie´n podej´scie z modelem sprawdza si
e֒lepiej, zatem kwestia pozostaje nierozstrzygni eta.֒
Uczenie si֒e ze wzmocnieniem — SARSA 27 Uczenie si֒e ze wzmocnieniem — SARSA 28
Uog´ olnianie w uczeniu si
e ze wzmocnieniem
֒ Om´owione powy˙zej algorytmy uczenia sie֒ze wzmocnieniem zak ladaj a֒jawn
a֒
reprezentacj
e֒funkcji U (s) lub Q(s) tak
a֒jak np. reprezentacja tablicowa. Mo˙ze to by´c praktyczne tylko do pewnej wielko´sci zagadnienia.
Na przyk lad, dla zagadnie´n o bardzo du˙zej liczbie stan´ow (np. ≫ 1020dla gier takich jak szachy lub backgammon), trudno wyobrazi´c sobie wykonanie wystarczaj
acej liczby przebieg´ow ucz֒
acych aby odwiedzi´c ka˙zdy stan wiele razy.֒
Konieczne jest zastosowanie jakiej´s metody generalizacji (uog´olniania), kt´ora pozwoli laby generowa´c skuteczn
a֒polityk
e֒na podstawie ma lej cz e´sci֒
przebadanej przestrzeni stan´ow.
Uczenie si֒e ze wzmocnieniem — uog´olnianie 29 Uczenie si֒e ze wzmocnieniem — uog´olnianie 30
Aproksymacja funkcji
Jedna֒z takich metod jest aproksymacja funkcji, polegajaca na zapisie֒
badanej funkcji (np. U ) w postaci nietablicowej, np. wyra˙zeniu jej jak a´s֒ formu l
a֒
sko´nczon
a. Podobnie jak w konstrukcji funkcji heurystycznych, mo˙zna֒
zastosowa´c liniow
a֒kombinacj
e֒jakich´s cech stanu (zwanych r´ownie˙z atrybutami stanu):
Uˆθ(s) = θ1f1(s) + θ2f2(s) + ... + θnfn(s)
Algorytm uczenia si
e֒ze wzmocnieniem uczy lby si
e֒wektora wsp´o lczynnik´ow θ =< θ1, θ2, ..., θn> tak by funkcja oceny ˆUθprzybli˙za la mo˙zliwie dobrze rzeczywist
a֒funkcj
e֒u˙zyteczno´sci stan´ow.
Podej´scie to nazywa si
e֒aproksymacj
a֒funkcji, poniewa˙z nie ma pewno´sci, ˙ze rzeczywist
a֒funkcj
e֒oceny da si
e֒wyrazi´c tego typu formu l
a. Jakkolwiek wydaje֒
sie֒w
atpliwe by np. optymaln֒
a֒polityk
e֒dla gry w szachy da lo si
e֒wyrazi´c funkcj a֒
z kilkunastoma wsp´o lczynnikami, to jest zupe lnie mo˙zliwe by osi agn֒
a´c֒ w ten spos´ob dobry poziom gry.
Uczenie si
֒e ze wzmocnieniem — aproksymacja funkcji 31
Istot
a֒podej´scia jest jednak nie przybli˙zenie mniejsz a֒liczb
a֒wsp´o lczynnik´ow funkcji, kt´ora w rzeczywisto´sci by´c mo˙ze wymaga ich wielokrotnie wi
ecej, ale֒
uog´olnianie, czyli generowanie polityki dla wszystkich stan´ow na podstawie analizy ma lej ich cz
e´sci.֒
Np. w eksperymentach przeprowadzonych z gr
a֒backgammon, uda lo si e֒nauczy´c gracza poziomu gry por´ownywalnego z ludzkimi na podstawie pr´ob
analizuj
acych jeden na 10֒ 12stan´ow.
Oczywi´scie, sukces uczenia si
e֒ze wzmocnieniem w takich przypadkach zale˙zy od trafnego wybrania funkcji aproksymuj
acej. Je´sli ˙zadna kombinacja wybranych֒
cech nie mo˙ze da´c dobrej strategii gry, to ˙zadna metoda uczenia jej nie wygeneruje. Z kolei, wybranie bardzo rozbudowanej funkcji z du˙z
a֒liczb a֒cech i wsp´o lczynnik´ow zwi
eksza szanse na sukces, ale kosztem wolniejszej zbie˙zno´sci֒
i zarazem wolniejszego procesu uczenia.
Uczenie si
֒e ze wzmocnieniem — aproksymacja funkcji 32
Korekta parametr´ ow funkcji
Aby umo˙zliwi´c uczenie sie֒na bie˙z
aco (on-line learning) niezb֒
edna jest jaka´s֒
metoda korekty parametr´ow na podstawie warto´sci wzmocnie´n otrzymywanych po ka˙zdym przebiegu (albo po ka˙zdym kroku).
Na przyk lad, je´sli uj(s) jest warto´sci
a֒pozosta lej nagrody dla stanu s w j-tym przebiegu ucz
acym, to b l֒
ad aproksymacji funkcji u˙zyteczno´sci mo˙zna oblicza´c֒
jako:
Ej=( ˆUθ(s) − uj(s))2 2 Dynamika zmiany tego b l
edu ze wzgl֒
edu na parametr θ֒ ijest okre´slona jako
∂Ej/∂θi, zatem aby skorygowa´c ten parametr w kierunku zmniejszenia b l edu,֒
w la´sciw a֒formu l
a֒na poprawk e֒jest:
θi← θi− α∂Ej(s)
∂θi
= θi+ α(uj(s) − ˆUθ(s))∂ ˆUθ(s)
∂θi
Powy˙zszy wz´or zwany jest regu l
a Widrow’a-Hoff’a֒ albo regu l a delta.֒
Uczenie si֒e ze wzmocnieniem — aproksymacja funkcji 33
Przyk lad
Na przyk lad, dla ´srodowiska 4x3 funkcja u˙zyteczno´sci stan´ow mog laby by´c aproksymowana liniow
a֒kombinacj a֒wsp´o lrz
ednych:֒
Uˆθ(x, y) = θ0+ θ1x + θ2y
Poprawki zgodne z regu l a֒delta b
ed֒
a֒teraz dane przez:
θ0 ← θ0+ α(uj(s) − ˆUθ(s)) θ1 ← θ1+ α(uj(s) − ˆUθ(s))x θ2 ← θ2+ α(uj(s) − ˆUθ(s))y
Przyjmuj
ac przyk ladowo θ =< θ֒ 0, θ1, θ2>=< 0.5, 0.2, 0.1 > otrzymujemy poczatkowe przybli˙zenie ˆ֒ Uθ(1, 1) = 0.8. Je´sli po wykonaniu przebiegu ucz
acego֒
obliczyliby´smy np. uj(1, 1) = 0.72 to wszystkie wsp´o lczynniki θ0, θ1, θ2 zosta lyby obni˙zone o 0.08α, co zmniejszy loby b l
ad dla stanu (1,1). Oczywi´scie,֒
w ten spos´ob zmieni laby si
e֒ca la funkcja ˆUθ(s), co jest istot
a֒uog´olniania.
Uczenie si֒e ze wzmocnieniem — aproksymacja funkcji 34
Zastosowanie r´ o˙znic czasowych
Mo˙zna r´ownie˙z realizowa´c poprawki metoda֒r´o˙znic czasowych.
θi← θi+ α[R(s) + γ ˆUθ(s′) − ˆUθ(s)]∂ ˆUθ(s)
∂θi
θi← θi+ α[R(s) + γ max
a′
Qˆθ(s′, a′) − ˆQθ(s, a)]∂ ˆQθ(s, a)
∂θi
Uczenie si֒e ze wzmocnieniem — aproksymacja funkcji 35