Uczenie ze wzmocnieniem Literatura: Paweł Cichosz, Systemy uczące się, Wydawnictwa Naukowo-Techniczne, Warszawa 2000, str. 712-792. Richard Sutton, Andrew G. Barto, Reinforcement Learning: An Introduction, MIT Press, Cambridge, MA, 1998. http://www.cs.ualberta.ca/~sutton/book/the-book.html Stuart J.Russel, Peter Norvig, Artificial Intelligence, Prentice-Hall, London, 2003, str. 598-645.
Plan wykładu Wieloetapowe procesy decyzyjne - typy procesów i środowisk Programowanie dynamiczne a metoda Monte Carlo Uczenie ze wzmocnieniem – podstawowy algorytm Eksploatacja a eksploracja Metody przyśpieszania zbieżności - ślady aktywności Aproksymacja funkcji wartości stanów Metody kodowania stanów Agregacja stanów Przykłady zastosowań
Środowisko Cechy środowiska w sztucznych systemach uczących się: przydziela nagrody i wyznacza bieżący stan jest niezależne od ucznia, czyli oznacza wszystko to, na co uczeń nie ma wpływu Typy środowisk: stacjonarne / niestacjonarne (zmienne w czasie) deterministyczne / niedeterministyczne - taka sama akcja może spowodować przejście do różnych stanów, a przy przejściu do takiego samego stanu można uzyskać różne nagrody z tym, że wartości oczekiwane nagród i prawdopodobieństwa przejść są stałe niedeterministyczne o znanym / nieznanym modelu o parametrach ciągłych / dyskretnych o pełnej informacji o stanie (własność Markowa) / o niepełnej informacji o stanie
Wieloetapowe procesy decyzyjne Procesy polegające na wielokrotnej interakcji ucznia (agenta) ze środowiskiem. W wyniku podjęcia jednej z możliwych akcji at w danym stanie st, środowisko przechodzi do nowego stanu st+1 i zwraca nagrodę rt+1 st st+1 st+2 st+k ... at, rt+1 at+1, rt+2 at+k-1, rt+k Celem uczenia jest maksymalizacja nagród uzyskanych w ciągu całego procesu, niezależnie od stanu początkowego Wniosek: należy szukać optymalnej strategii (policy) zachowania ucznia (wyboru odpowiedniej akcji w każdym ze stanów)
Ogólny schemat uczenia się w interakcji ze środowiskiem st rt UCZEŃ akcja at rt+1 st+1 ŚRODOWISKO
Typy procesów Ze względu na środowisko: deterministyczne / niedeterministyczne, stacjonarne / niestacjonarne Ze względu na informacje o stanie: spełniające własność Markowa / niespełniające własności Markowa Ze względu na ogólną liczbę stanów środowiska: o skończonej liczbie stanów / o nieskończonej liczbie stanów Ze względu na typ przestrzeni stanów: ciągłe (nieprzeliczalne)/ dyskretne Ze względu na umiejscowienie nagród: tylko w stanach końcowych (terminalnych) / tylko w stanach pośrednich / w stanach końcowych oraz pośrednich Ze względu na liczbę etapów procesu: nieskończone / epizodyczne (kończące się po pewnej liczbie kroków)
Zadanie optymalizacji w procesach epizodycznych Cel maksymalizacji: gdzie rt - nagroda w kroku t, - współczynnik dyskontowania, 0 1, reguluje ważność krótko i długoterminowych nagród. Zastosowanie współczynnika dyskontowania wynika z pewnych praktycznych spostrzeżeń: nagrody warto zdobywać jak najszybciej (zadania do-sukcesu), kary jak najdłużej odwlekać (zadania do-porażki)
Dobór współczynnika dyskontowania w zależności od wartości nagród Niech r2 oznacza wartość nagrody za dojście do stanu końcowego, r1 - wartość nagrody dla pozostałych stanów Zadania do-sukcesu: r1 r2 r1 r2 stąd:
Przykład GRID-6 0.5 1
Przykład GRID-6 – przykładowe strategie 1 2 3 4
Funkcje wartości Funkcja wartości stanu st przy strategii : Funkcja wartości pary [stan,akcja]: (st , at) przy strategii : Przy danej strategii dla każdego stanu s zachodzi równanie:
Porównanie funkcji V oraz Q Użycie funkcji wartości stanu V(s) wymaga każdorazowej symulacji wykonania jednego kroku naprzód w celu znalezienia akcji optymalnej Użycie funkcji Q(s,a) wymaga stosowania większych tablic lub bardziej złożonych aproksymatorów funkcji
Proces decyzyjny Markowa Proces decyzyjny Markowa można zdefiniować jako czwórkę (S, A, , ): S - skończony zbiór stanów A - skończony zbiór akcji (s,a) - funkcja wzmocnienia - zmienna losowa o wartościach rzeczywistych oznaczająca nagrodę po wykonaniu akcji a w stanie s (s,a) - funkcja przejść stanów - zmienna losowa o wartościach ze zbioru S oznaczająca następny stan po wykonaniu akcji a w stanie s W ogólności w każdym kroku t nagroda rt+1 jest realizacją zmiennej losowej (st,at) a stan st+1 jest realizacją zmiennej losowej (st,at)
Przykład GRAF-5 S = {1,2,3,4,5}, A={0,1} Nagroda za akcję a w stanie s:
Przykład GRAF-5 Optymalne wartości stanów dla = 0.9 V(1) V(2) V(3) 4 5 Optymalne wartości stanów dla = 0.9 V(1) V(2) V(3) V(4) V(5) 0.299 0.527 0.768 0.945
Funkcja wartości a strategia Strategia ’ jest lepsza od strategii jeśli dla każdego s: oraz istnieje takie s, że zachodzi: Zachłanna metoda wyboru akcji: - prawdopodobieństwo przejścia od stanu s do s’ przy wykonaniu akcji a - średnia nagroda przy przejściu od s do s’ dzięki a
Strategia optymalna Strategia * jest optymalna jeśli dla każdej strategii oraz dla każdego stanu s: Zachłanna metoda wyboru akcji: Zachłanna metoda wyboru akcji względem optymalnej funkcji wartości lub funkcji wartości akcji jest realizacją strategii optymalnej - prawdopodobieństwo przejścia od stanu s do s’ przy wykonaniu akcji a - średnia nagroda przy przejściu od s do s’ dzięki a
Metody szukania optymalnej strategii Programowanie dynamiczne Metoda Monte Carlo Metoda różnic czasowych (TD)
Programowanie dynamiczne Prawdopodobieństwo przejścia ze stanu s do s’ po wykonaniu akcji a, oraz średnia wartość nagrody związanej z tym zdarzeniem: Model środowiska Równania równowagi Bellmana dla reprezentacji [stan] oraz [stan,akcja] i strategii , ( (s) - akcja w stanie s zgodna ze strategią ):
Programowanie dynamiczne Przykładowy graf przejść ze stanu s=s1 do s’ {s1 , s2 , s3 }, po wykonaniu akcji a: s2 s1 s3 stąd:
Programowanie dynamiczne Wyprowadzenie równania równowagi dla funkcji wartości stanu s:
Programowanie dynamiczne Równania optymalności Bellmana dla reprezentacji [stan] oraz [stan,akcja]: - wartości odpowiadające strategii optymalnej
Programowanie dynamiczne Metody wyznaczania wartości V lub Q dla danej strategii: Rozwiązanie układu równań o |S| (lub |SA| w przypadku reprezentacji [stan,akcja]) niewiadomych Iteracyjne na podstawie równań równowagi Bellmana (o udowodnionej zbieżności) Metody wyznaczania optymalnej strategii: Iteracja strategii - naprzemienne obliczanie przybliżonych wartości V (s) dla wszystkich stanów przy danej (początkowo losowej) strategii oraz wyznaczanie lepszej strategii ’ dla V (s) do momentu, gdy w kolejnych dwóch iteracjach strategia pozostanie niezmienna Iteracja wartości - obliczanie V(s) stosując zachłanną metodę wyboru akcji do momentu, gdy wartości V(s) przestaną się zmieniać
Iteracyjne obliczanie funkcji wartości stanów obliczanie funkcji wartości stanu dla strategii : mając dane: , P, R powtarzaj dla wszystkich s: aż nastąpi w kroku k
Iteracja strategii dla reprezentacji [stan] obliczanie funkcji wartości stanów dla strategii : iteracyjne obliczanie funkcji wartości stanu dla strategii lub metodą rozwiązywania układu równań wyznaczanie nowej strategii ’: dla wszystkich s:
Iteracja wartości dla reprezentacji [stan] mając dane: P, R powtarzaj dla wszystkich s: aż nastąpi w kroku k
Programowanie dynamiczne - wady i zalety konieczność znajomości modelu środowiska (prawdopodobieństw przejść pomiędzy stanami dla wszystkich możliwych akcji i oczekiwanych wartości nagród) Zalety: pewność znalezienia rozwiązania w przypadku metody dokładnej oraz zbieżność metod iteracyjnych mała złożoność obliczeniowa