Problemy Decyzyjne Markowa

Podobne dokumenty
Problemy Decyzyjne Markowa

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

Uczenie ze wzmocnieniem

SPOTKANIE 11: Reinforcement learning

Uczenie ze wzmocnieniem aplikacje

Uczenie ze wzmocnieniem aplikacje

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

Optymalizacja ciągła

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

Metody iteracyjne rozwiązywania układów równań liniowych (5.3) Normy wektorów i macierzy (5.3.1) Niech. x i. i =1

Sekwencyjne problemy decyzyjne

Uczenie ze wzmocnieniem

Sekwencyjne problemy decyzyjne

Elementy inteligencji obliczeniowej

Metody numeryczne w przykładach

Spacery losowe generowanie realizacji procesu losowego

Algorytmy estymacji stanu (filtry)

Wykład z Podstaw Informatyki dla I roku BO. Piotr Mika

Wprowadzenie Metoda bisekcji Metoda regula falsi Metoda siecznych Metoda stycznych RÓWNANIA NIELINIOWE

Optymalizacja ciągła

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

Metody Optymalizacji: Przeszukiwanie z listą tabu

Wprowadzenie do algorytmiki

Modele i narzędzia optymalizacji w systemach informatycznych zarządzania

1 Równania nieliniowe

ROZWIĄZYWANIE RÓWNAŃ NIELINIOWYCH

Systemy agentowe. Uczenie ze wzmocnieniem. Jędrzej Potoniec

Ćwiczenie 1 Planowanie trasy robota mobilnego w siatce kwadratów pól - Algorytm A

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Programowanie celowe #1

5. Rozwiązywanie układów równań liniowych

Fuzja sygnałów i filtry bayesowskie

Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Metody numeryczne. Instytut Sterowania i Systemów Informatycznych Wydział Elektrotechniki, Informatyki i Telekomunikacji Uniwersytet Zielonogórski

Modele DSGE. Jerzy Mycielski. Maj Jerzy Mycielski () Modele DSGE Maj / 11

Wstęp do Metod Systemowych i Decyzyjnych Opracowanie: Jakub Tomczak

Metody rozwiązywania równań nieliniowych

Wybrane metody przybliżonego. wyznaczania rozwiązań (pierwiastków) równań nieliniowych

Biostatystyka, # 3 /Weterynaria I/

Statystyka i opracowanie danych Podstawy wnioskowania statystycznego. Prawo wielkich liczb. Centralne twierdzenie graniczne. Estymacja i estymatory

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

SIMR 2016/2017, Analiza 2, wykład 1, Przestrzeń wektorowa

Przestrzenie wektorowe

Technologie cyfrowe. Artur Kalinowski. Zakład Cząstek i Oddziaływań Fundamentalnych Pasteura 5, pokój 4.15

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Elementy modelowania matematycznego

Teoretyczne podstawy informatyki

ALGORYTMY Algorytm poprawny jednoznaczny szczegółowy uniwersalny skończoność efektywność (sprawność) zmiennych liniowy warunkowy iteracyjny

Rozwiązywanie układów równań liniowych metody przybliżone Materiały pomocnicze do ćwiczeń z metod numerycznych

Przegląd metod optymalizacji wielowymiarowej. Funkcja testowa. Funkcja testowa. Notes. Notes. Notes. Notes. Tomasz M. Gwizdałła

Wstęp do programowania

Wnioskowanie bayesowskie

UKŁADY ALGEBRAICZNYCH RÓWNAŃ LINIOWYCH

Informatyka 1. Złożoność obliczeniowa

Obliczenia inspirowane Naturą

Metody numeryczne. materiały do wykładu dla studentów

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

Optymalizacja. Przeszukiwanie lokalne

Metody probabilistyczne

Uczenie ze wzmocnieniem

Iteracyjne rozwiązywanie równań

Optymalizacja ciągła

Funkcje wymierne. Funkcja homograficzna. Równania i nierówności wymierne.

Procesy stochastyczne

Matematyka stosowana i metody numeryczne

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

Modelowanie rynków finansowych z wykorzystaniem pakietu R

TEORIA GIER W EKONOMII WYKŁAD 5: GRY DWUOSOBOWE KOOPERACYJNE O SUMIE NIESTAŁEJ

Metoda tabel semantycznych. Dedukcja drogi Watsonie, dedukcja... Definicja logicznej konsekwencji. Logika obliczeniowa.

Weryfikacja hipotez statystycznych

Złożoność obliczeniowa zadania, zestaw 2

Aproksymacja funkcji a regresja symboliczna

Zasada indukcji matematycznej

Metody numeryczne Wykład 4

Stochastyczne zagadnienie rozdziału z dyskretnym rozkładem popytu

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

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

REPREZENTACJA LICZBY, BŁĘDY, ALGORYTMY W OBLICZENIACH

Metody numeryczne I Równania nieliniowe

Procesy stochastyczne WYKŁAD 2-3. Łańcuchy Markowa. Łańcuchy Markowa to procesy "bez pamięci" w których czas i stany są zbiorami dyskretnymi.

Algorytmy mrówkowe (optymalizacja kolonii mrówek, Ant Colony optimisation)

Inteligentne Agenty. Na podstawie: AIMA ch2 i slajdów S. Russel a. Wojciech Jaśkowski. 14 marca

Schemat programowania dynamicznego (ang. dynamic programming)

Kompresja Kodowanie arytmetyczne. Dariusz Sobczuk

Funkcja kwadratowa. f(x) = ax 2 + bx + c = a

Wstęp do metod numerycznych Rozwiazywanie równań algebraicznych. P. F. Góra

Funkcja kwadratowa. f(x) = ax 2 + bx + c,

ROZKŁAD MATERIAŁU DO II KLASY LICEUM (ZAKRES ROZSZERZONY) A WYMAGANIA PODSTAWY PROGRAMOWEJ.

Optymalizacja ciągła

Układy stochastyczne

Uczenie ze wzmocnieniem

Prawdopodobieństwo i statystyka

Lab 10. Funkcje w argumentach funkcji metoda Newtona. Synonimy nazw typów danych. Struktury. Tablice struktur.

Wprowadzenie do teorii ekonometrii. Wykład 1 Warunkowa wartość oczekiwana i odwzorowanie liniowe

Metody Rozmyte i Algorytmy Ewolucyjne

Systemy Agentowe główne cechy. Mariusz.Matuszek WETI PG

W. Guzicki Próbna matura, grudzień 2014 r. poziom rozszerzony 1

Elementy modelowania matematycznego

jest rozwiązaniem równania jednorodnego oraz dla pewnego to jest toŝsamościowo równe zeru.

Transkrypt:

Problemy Decyzyjne Markowa na podstawie AIMA ch17 i slajdów S. Russel a Wojciech Jaśkowski Instytut Informatyki, Politechnika Poznańska 18 kwietnia 2013

Sekwencyjne problemy decyzyjne Cechy sekwencyjnego problemu decyzyjnego: ocena (użyteczność) agenta zależy od sekwencji decyzji, a nie od pojedynczej decyzji. niepewność, pomiary z sensorów Problemy planowania i przeszukiwania szczególny przypadek sekwencyjnych problemów decyzyjnych

Środowisko 3 + 1 2 1 0.8 1 START 0.1 0.1 1 2 3 4 Agent rozpoczyna na polu Start. W każdym kroku wykonuje akcję Góra, Dół, Lewo, Prawo. Interakcja ze środowiskiem kończy się, gdy agent dotrze do pól +1 lub -1. Nagroda za odwiedzenie pola wynosi +1,-1 lub -0.04 Agent zawsze wie gdzie jest.

Cechy środowiska 3 2 1 START 1 2 3 0.1 0.8 0.1 + 1 1 4 Środowisko jest: [zadanie 1] 1 Całkowicie vs. częściowo obserwowalne? 2 Deterministyczne vs. stochastyczne? 3 Epizodyczne vs. sekwencyjne? 4 Statyczne vs. dynamiczne vs. semidynamiczne? 5 Dyskretne vs. ciągłe? 6 Znane vs. nieznane? Środowisko deterministyczne = proste rozwiązanie GGPPP. Ile wynosi prawd. dotarcia do +1?[zadanie 2]

Proces decyzyjny Markowa (MDP) 3 + 1 2 1 0.8 1 START 0.1 0.1 1 2 3 4 MDP sekwencyjny proces decyzyjny dla środowiska: 1 całkowicie obserwowalnego 2 stochastycznego 3 z markowskim modelem przejść 4 z addytywną funkcja nagrody

Proces decyzyjny Markowa (MDP) definicja Elementy MDP: Stany s S, stan początkowy s 0 S i stany terminalne Akcje a A Model (przejść) T (s, a, s ) P(s s, a) prawd., że akcja a w stanie s prowadzi do stanu s. własność Markowa Funkcja nagrody (ang. reward) R(s) { 0, 04 (kara) dla stanów nieterminalnych R(s) = ±1 dla stanów terminalnych Można też uogólnić nagrodę do R(s, a) lub R(s, a, s ), ale nie zmienia to podstawowych cech problemu. Użyteczność agenta jest określona przez funkcję nagrody (np. suma nagród w czasie życia).

Proces decyzyjny Markowa (MDP) definicja Elementy MDP: Stany s S, stan początkowy s 0 S i stany terminalne Akcje a A Model (przejść) T (s, a, s ) P(s s, a) prawd., że akcja a w stanie s prowadzi do stanu s. własność Markowa Funkcja nagrody (ang. reward) R(s) { 0, 04 (kara) dla stanów nieterminalnych R(s) = ±1 dla stanów terminalnych Można też uogólnić nagrodę do R(s, a) lub R(s, a, s ), ale nie zmienia to podstawowych cech problemu. Użyteczność agenta jest określona przez funkcję nagrody (np. suma nagród w czasie życia).

Proces decyzyjny Markowa (MDP) definicja Elementy MDP: Stany s S, stan początkowy s 0 S i stany terminalne Akcje a A Model (przejść) T (s, a, s ) P(s s, a) prawd., że akcja a w stanie s prowadzi do stanu s. własność Markowa Funkcja nagrody (ang. reward) R(s) { 0, 04 (kara) dla stanów nieterminalnych R(s) = ±1 dla stanów terminalnych Można też uogólnić nagrodę do R(s, a) lub R(s, a, s ), ale nie zmienia to podstawowych cech problemu. Użyteczność agenta jest określona przez funkcję nagrody (np. suma nagród w czasie życia).

Proces decyzyjny Markowa (MDP) definicja Elementy MDP: Stany s S, stan początkowy s 0 S i stany terminalne Akcje a A Model (przejść) T (s, a, s ) P(s s, a) prawd., że akcja a w stanie s prowadzi do stanu s. własność Markowa Funkcja nagrody (ang. reward) R(s) { 0, 04 (kara) dla stanów nieterminalnych R(s) = ±1 dla stanów terminalnych Można też uogólnić nagrodę do R(s, a) lub R(s, a, s ), ale nie zmienia to podstawowych cech problemu. Użyteczność agenta jest określona przez funkcję nagrody (np. suma nagród w czasie życia).

MDP Przykład

Rozwiązywanie MDP Cel w problemach przeszukiwania: znalezienie optymalnej sekwencji akcji. Cel w MDP: znalezienie optymalnej polityki (ang. optimal policy) π(s) polityka: π : S A (wybrana akcja dla każdego stanu s) powód: nie wiadomo, które stany zostaną odwiedzone (środowisko jest niedeterministyczne) 3 + 1 2 1 1 1 2 3 4 optymalna polityka π to polityka, która daje maksymalną oczekiwaną wartość funkcji użyteczności.

Ryzyko kary vs. nagroda + 1 + 1 1 1 r = [ 8 : 1.6284] r = [ 0.4278 : 0.0850] + 1 + 1 1 1 r = [ 0.0480 : 0.0274] r = [ 0.0218 : 0.0000] r - kara dla stanów nieterminalnych

Ryzyko kary vs. nagroda c.d. Jak wygląda optymalna polityka dla r > 0 [zadanie 3] Kompromis pomiędzy ryzykiem (kara) a nagrodą jest cechą charakterystyczną MDP. Nie występuje w problemach deterministycznych Dlatego: MDP rozważane są w wielu dziedzinach, np.: AI badania operacyjne ekonomia teoria sterowania

Ryzyko kary vs. nagroda c.d. Jak wygląda optymalna polityka dla r > 0 [zadanie 3] Kompromis pomiędzy ryzykiem (kara) a nagrodą jest cechą charakterystyczną MDP. Nie występuje w problemach deterministycznych Dlatego: MDP rozważane są w wielu dziedzinach, np.: AI badania operacyjne ekonomia teoria sterowania

Użyteczność sekwencji stanów W MDP ocenie podlega sekwencja stanów musimy zrozumieć preferencje pomiędzy sekwencjami stanów (nagród). Naturalne założenie: preferencje względem sekwencji stanów są stacjonarne, czyli: [s 1, s 2,... ] [s 1, s 2,... ] = [s 0, s 1, s 2,... ] [s 0, s 1, s 2,... ]

Użyteczność sekwencji stanów Twierdzenie Przy założeniu stacjonarności sekwencji stanów istnieją tylko dwie możliwości, aby przyporządkować użyteczności do sekwencji (historii obserwacji) stanów: Addytywna funkcja użyteczności: U h ([s 0, s 1, s 2,... ]) = R(s 0 ) + R(s 1 ) + R(s 2 ) +... Zdyskontowana funkcja użyteczności (ang. discounted utility function): U h ([s 0, s 1, s 2,... ]) = R(s 0 ) + γr(s 1 ) + γ 2 R(s 2 ) +... gdzie γ (0, 1) jest współczynnikiem dyskontowym (ang. discount factor)

Użyteczność sekwencji stanów Twierdzenie Przy założeniu stacjonarności sekwencji stanów istnieją tylko dwie możliwości, aby przyporządkować użyteczności do sekwencji (historii obserwacji) stanów: Addytywna funkcja użyteczności: U h ([s 0, s 1, s 2,... ]) = R(s 0 ) + R(s 1 ) + R(s 2 ) +... Zdyskontowana funkcja użyteczności (ang. discounted utility function): U h ([s 0, s 1, s 2,... ]) = R(s 0 ) + γr(s 1 ) + γ 2 R(s 2 ) +... gdzie γ (0, 1) jest współczynnikiem dyskontowym (ang. discount factor)

Użyteczności problem nieskończoności Problem: nieskończona przyszłość = addytywna użyteczność może być nieskończona = trudno porównywać dwie sekwencje stanów, gdy użyteczności obu wynoszą +

Użyteczności problem nieskończoności Możliwe rozwiązania: 1 Skończony horyzont: koniec po liczbie kroków T = polityka π(s) jest niestacjonarna: tzn. zależy od pozostałego do końca czasu. Przykład: pole [3,1] i T=3 vs. T=100. 2 Używanie współczynnika dyskontowego γ < 1 Jeśli s S R(s) R max, to U([s 0,... s ]) = t=0 γt R(s t ) R max /(1 γ) Mniejsze γ = krótszy horyzont 3 Stan(y) absorbujące = z prawd. 1 agent w końcu zakończy działanie dla każdej polityki π polityka, która zawsze prowadzi do stanu terminalnego, to właściwa polityka możemy używać γ = 1 4 Średnia nagroda maksym. średniej wypłaty na krok Zwykle wybiera się opcję ze współczynnikiem dyskontowym.

Użyteczności problem nieskończoności Możliwe rozwiązania: 1 Skończony horyzont: koniec po liczbie kroków T = polityka π(s) jest niestacjonarna: tzn. zależy od pozostałego do końca czasu. Przykład: pole [3,1] i T=3 vs. T=100. 2 Używanie współczynnika dyskontowego γ < 1 Jeśli s S R(s) R max, to U([s 0,... s ]) = t=0 γt R(s t ) R max /(1 γ) Mniejsze γ = krótszy horyzont 3 Stan(y) absorbujące = z prawd. 1 agent w końcu zakończy działanie dla każdej polityki π polityka, która zawsze prowadzi do stanu terminalnego, to właściwa polityka możemy używać γ = 1 4 Średnia nagroda maksym. średniej wypłaty na krok Zwykle wybiera się opcję ze współczynnikiem dyskontowym.

Użyteczności problem nieskończoności Możliwe rozwiązania: 1 Skończony horyzont: koniec po liczbie kroków T = polityka π(s) jest niestacjonarna: tzn. zależy od pozostałego do końca czasu. Przykład: pole [3,1] i T=3 vs. T=100. 2 Używanie współczynnika dyskontowego γ < 1 Jeśli s S R(s) R max, to U([s 0,... s ]) = t=0 γt R(s t ) R max /(1 γ) Mniejsze γ = krótszy horyzont 3 Stan(y) absorbujące = z prawd. 1 agent w końcu zakończy działanie dla każdej polityki π polityka, która zawsze prowadzi do stanu terminalnego, to właściwa polityka możemy używać γ = 1 4 Średnia nagroda maksym. średniej wypłaty na krok Zwykle wybiera się opcję ze współczynnikiem dyskontowym.

Użyteczności problem nieskończoności Możliwe rozwiązania: 1 Skończony horyzont: koniec po liczbie kroków T = polityka π(s) jest niestacjonarna: tzn. zależy od pozostałego do końca czasu. Przykład: pole [3,1] i T=3 vs. T=100. 2 Używanie współczynnika dyskontowego γ < 1 Jeśli s S R(s) R max, to U([s 0,... s ]) = t=0 γt R(s t ) R max /(1 γ) Mniejsze γ = krótszy horyzont 3 Stan(y) absorbujące = z prawd. 1 agent w końcu zakończy działanie dla każdej polityki π polityka, która zawsze prowadzi do stanu terminalnego, to właściwa polityka możemy używać γ = 1 4 Średnia nagroda maksym. średniej wypłaty na krok Zwykle wybiera się opcję ze współczynnikiem dyskontowym.

Optymalna polityka i użyteczność stanów Porównywanie polityk porównywanie oczekiwanych wartości użyteczności sekwencji stanów. Niech agent realizuje politykę π zaczynając od stanu s. Wtedy: S t zmienna losowa, oznaczająca stan osiągnięty w momencie t (czyli S 0 = s) Oczekiwana użyteczność polityki π rozpoczynając od stanu s: [ ] U π (s) = E γ t R(S t ) t=0 Optymalna polityka π s optymalizuje użyteczność (rozpoczynając od stanu s, czyli: π s = argmax π U π (s) Zadanie: mamy dwa stany a b. Czy πa = πb?[zadanie 4]

Optymalna polityka i użyteczność stanów Porównywanie polityk porównywanie oczekiwanych wartości użyteczności sekwencji stanów. Niech agent realizuje politykę π zaczynając od stanu s. Wtedy: S t zmienna losowa, oznaczająca stan osiągnięty w momencie t (czyli S 0 = s) Oczekiwana użyteczność polityki π rozpoczynając od stanu s: [ ] U π (s) = E γ t R(S t ) t=0 Optymalna polityka π s optymalizuje użyteczność (rozpoczynając od stanu s, czyli: π s = argmax π U π (s) Zadanie: mamy dwa stany a b. Czy πa = πb?[zadanie 4]

Optymalna polityka i użyteczność stanów Porównywanie polityk porównywanie oczekiwanych wartości użyteczności sekwencji stanów. Niech agent realizuje politykę π zaczynając od stanu s. Wtedy: S t zmienna losowa, oznaczająca stan osiągnięty w momencie t (czyli S 0 = s) Oczekiwana użyteczność polityki π rozpoczynając od stanu s: [ ] U π (s) = E γ t R(S t ) t=0 Optymalna polityka π s optymalizuje użyteczność (rozpoczynając od stanu s, czyli: π s = argmax π U π (s) Zadanie: mamy dwa stany a b. Czy πa = πb?[zadanie 4]

Optymalna polityka i użyteczność stanów Porównywanie polityk porównywanie oczekiwanych wartości użyteczności sekwencji stanów. Niech agent realizuje politykę π zaczynając od stanu s. Wtedy: S t zmienna losowa, oznaczająca stan osiągnięty w momencie t (czyli S 0 = s) Oczekiwana użyteczność polityki π rozpoczynając od stanu s: [ ] U π (s) = E γ t R(S t ) t=0 Optymalna polityka π s optymalizuje użyteczność (rozpoczynając od stanu s, czyli: π s = argmax π U π (s) Zadanie: mamy dwa stany a b. Czy πa = πb?[zadanie 4]

Użyteczność stanów c.d. U π (s) jest użytecznością optymalnej polityki zaczynając od stanu s. Będziemy ją oznaczać U(s). Czyli możemy ją interpretować jako użyteczność stanu s. Porównanie R i U: R(s) nagroda krótkoterminowa U(s) nagroda długoterminowa Użyteczność stanu interpretacja U(s) jest oczekiwaną (zdyskontowaną) sumą nagród uzyskanych przez akcje zaczynające się w stanie s przy założeniu realizowania optymalnej polityki.

Użyteczność stanów (c.d) Użyteczności stanów jednoznacznie definiują politykę: wystarczy znaleźć akcję, która ma maksymalną oczekiwaną użyteczność π (s) = argmax a A(s) s P(s s, a)u(s ) 3 0.812 0.868 0.912 + 1 3 + 1 2 0.762 0.660 1 2 1 1 0.705 0.655 0.611 0.388 1 1 2 3 4 1 2 3 4

Optymalna akcja 3 0.812 0.868 0.912 + 1 3 + 1 2 0.762 0.660 1 2 1 1 0.705 0.655 0.611 0.388 1 1 2 3 4 1 2 3 4 π (s) = argmax a A(s) P(s s, a)u(s ) s Dlaczego z s 3,1 idziemy w lewo a nie w górę? z s 3,1 w górę = 0.8, 0.1, 0.1 0.660, 0.655, 0.388 = 0.6323 z s 3,1 w lewo = 0.8, 0.1, 0.1 0.655, 0.611, 0.660 = 0.6511

Programowanie dynamiczne: równanie Bellmana Równanie Bellman a (1957) oczekiwana suma wypłat = aktualna wypłata + γ oczekiwana suma wypłat po wybraniu najlepszej akcji: Przykład: U(s) = R(s) + γ max U(s )P(s s, a) a A s U(1, 1) = 0.04 + γ max{ 0.8 U(1, 2) + 0.1 U(2, 1) + 0.1 U(1, 1), 0.9 U(1, 1) + 0.1 U(1, 2) 0.9 U(1, 1) + 0.1 U(2, 1), 0.8 U(2, 1) + 0.1 U(1, 2) + 0.1 U(1, 1)}

Programowanie dynamiczne: równanie Bellmana Równanie Bellman a (1957) oczekiwana suma wypłat = aktualna wypłata + γ oczekiwana suma wypłat po wybraniu najlepszej akcji: Przykład: U(s) = R(s) + γ max U(s )P(s s, a) a A s U(1, 1) = 0.04 + γ max{ 0.8 U(1, 2) + 0.1 U(2, 1) + 0.1 U(1, 1), 0.9 U(1, 1) + 0.1 U(1, 2) 0.9 U(1, 1) + 0.1 U(2, 1), 0.8 U(2, 1) + 0.1 U(1, 2) + 0.1 U(1, 1)}

Układ równań Bellmana U(s 0 ) = R(s 0 ) + γ max a A s U(s )P(s s 0, a) U(s 1 ) = R(s 1 ) + γ max a A s U(s )P(s s 1, a).. 1 równanie na stan + n stanów = n równań z n niewiadomymi. Równania są liniowe czy nieliniowe? [zadanie 5]

Algorytm iteracji wartości (Value Iteration) Algorytm iteracji wartości: 1 Rozpocznij z dowolnymi wartościami użyteczności (np. losowymi) 2 Uaktualnij użyteczności zgodne z układem równań Bellmana (dla wszystkich s): U i+1 (s) = R(s) + γ max U i (s )P(s s, a) a s Uwaga: uaktualnienia wykonujemy synchronicznie (kopia tablicy U). 3 Jeśli osiągnęliśmy równowagę (brak zmian), to mamy globalne optimum

Algorytm iteracji wartości (Value Iteration) Algorytm iteracji wartości: 1 Rozpocznij z dowolnymi wartościami użyteczności (np. losowymi) 2 Uaktualnij użyteczności zgodne z układem równań Bellmana (dla wszystkich s): U i+1 (s) = R(s) + γ max U i (s )P(s s, a) a s Uwaga: uaktualnienia wykonujemy synchronicznie (kopia tablicy U). 3 Jeśli osiągnęliśmy równowagę (brak zmian), to mamy globalne optimum

Algorytm iteracji wartości (Value Iteration) Algorytm iteracji wartości: 1 Rozpocznij z dowolnymi wartościami użyteczności (np. losowymi) 2 Uaktualnij użyteczności zgodne z układem równań Bellmana (dla wszystkich s): U i+1 (s) = R(s) + γ max U i (s )P(s s, a) a s Uwaga: uaktualnienia wykonujemy synchronicznie (kopia tablicy U). 3 Jeśli osiągnęliśmy równowagę (brak zmian), to mamy globalne optimum

Algorytm iteracji wartości wykresy Utility estimates 1 0.5 0 (4,3) (3,3) (2,3) (1,1) (3,1) (4,1) -0.5-1 (4,2) 0 5 10 15 20 25 30 Number of iterations

Algorytm iteracji wartości zbieżność Algorytm jest zbieżny do (globalnego) optimum Liczba wymaganych iteracji wynosi: N = log(2r max /ɛ(1 γ))/ log(1/γ), gdzie: ɛ jest maksymalnym błędem pomiędzy obliczoną użytecznością stanu a użytecznością rzeczywistą R max jest maksymalną wartością nagrody Stosowane kryterium stopu: U i+1 U i < ɛ(1 γ)/γ Optymalna polityka jest dostępna zanim wartości użyteczności zbiegną do idealnych. Powyższe działa, gdy γ < 1. Jeśli γ = 1, trzeba innego kryterium stopu.

Algorytm iteracji polityki (ang. Policy Iteration) Obserwacja: można otrzymać optymalną politykę nawet gdy wartości funkcji użyteczności są niedokładne. Pomysł: Szukaj optymalnej polityki oraz wartości funkcji użyteczności równocześnie. Algorytm (Howard, 1960): 1 π dowolna polityka 2 powtarzaj dopóki π się zmienia: 1 (Ocena polityki) Oblicz użyteczność U π (s) dla wszystkich stanów s S. 2 (Ulepszenie polityki) Oblicz nową politykę π zakładając, że U π (s) = U(s) (użyteczności π są poprawne): π(s) = argmax a A(s) s P(s s, a)u(s )

Algorytm iteracji polityki (ang. Policy Iteration) Obserwacja: można otrzymać optymalną politykę nawet gdy wartości funkcji użyteczności są niedokładne. Pomysł: Szukaj optymalnej polityki oraz wartości funkcji użyteczności równocześnie. Algorytm (Howard, 1960): 1 π dowolna polityka 2 powtarzaj dopóki π się zmienia: 1 (Ocena polityki) Oblicz użyteczność U π (s) dla wszystkich stanów s S. 2 (Ulepszenie polityki) Oblicz nową politykę π zakładając, że U π (s) = U(s) (użyteczności π są poprawne): π(s) = argmax a A(s) s P(s s, a)u(s )

Algorytm iteracji polityki (ang. Policy Iteration) Obserwacja: można otrzymać optymalną politykę nawet gdy wartości funkcji użyteczności są niedokładne. Pomysł: Szukaj optymalnej polityki oraz wartości funkcji użyteczności równocześnie. Algorytm (Howard, 1960): 1 π dowolna polityka 2 powtarzaj dopóki π się zmienia: 1 (Ocena polityki) Oblicz użyteczność U π (s) dla wszystkich stanów s S. 2 (Ulepszenie polityki) Oblicz nową politykę π zakładając, że U π (s) = U(s) (użyteczności π są poprawne): π(s) = argmax a A(s) s P(s s, a)u(s )

Algorytm iteracji polityki (ang. Policy Iteration) Obserwacja: można otrzymać optymalną politykę nawet gdy wartości funkcji użyteczności są niedokładne. Pomysł: Szukaj optymalnej polityki oraz wartości funkcji użyteczności równocześnie. Algorytm (Howard, 1960): 1 π dowolna polityka 2 powtarzaj dopóki π się zmienia: 1 (Ocena polityki) Oblicz użyteczność U π (s) dla wszystkich stanów s S. 2 (Ulepszenie polityki) Oblicz nową politykę π zakładając, że U π (s) = U(s) (użyteczności π są poprawne): π(s) = argmax a A(s) s P(s s, a)u(s )

Algorytm iteracji polityki (ang. Policy Iteration) Obserwacja: można otrzymać optymalną politykę nawet gdy wartości funkcji użyteczności są niedokładne. Pomysł: Szukaj optymalnej polityki oraz wartości funkcji użyteczności równocześnie. Algorytm (Howard, 1960): 1 π dowolna polityka 2 powtarzaj dopóki π się zmienia: 1 (Ocena polityki) Oblicz użyteczność U π (s) dla wszystkich stanów s S. 2 (Ulepszenie polityki) Oblicz nową politykę π zakładając, że U π (s) = U(s) (użyteczności π są poprawne): π(s) = argmax a A(s) s P(s s, a)u(s )

Algorytm iteracji polityki ocena polityki Aby obliczyć użyteczności polityki π wystarczy dla wszystkich stanów policzyć: U π (s) = R(s) + γ s U π (s )P(s s, π(s)) Tzn, mamy układ n liniowych równań i n niewiadomych. Można go rozwiązać w czasie: [zadanie 6] O(n)? O(n 2 )? O(n 3 )?

Algorytm iteracji polityki ocena polityki Aby obliczyć użyteczności polityki π wystarczy dla wszystkich stanów policzyć: U π (s) = R(s) + γ s U π (s )P(s s, π(s)) Tzn, mamy układ n liniowych równań i n niewiadomych. Można go rozwiązać w czasie: [zadanie 6] O(n)? O(n 2 )? O(n 3 )?

Zmodyfikowany algorytm iteracji polityki Algorytm iteracji polityki: bardzo szybko zbiega do optimum, ale każdy jego krok jest kosztowny obliczeniowo, gdy stanów jest dużo: O(n 3 ) zaczyna być bolesne Pomysł: Obliczmy więc iteracyjnie przybliżoną wartość U(s) (Przybliżoną) użyteczność U(s) obliczamy wykonując k kroków algorytmu iteracji wartości (ze stałą polityką π) rozpoczynając od ostatnio znanego U(s), czyli: U i+1 (s) R(s) + γ s P(s s, π i (s))u i (s ) Zwykle szybciej zbiega znacznie szybciej niż czysty algorytm iteracji wartości lub iteracji polityki.

Zmodyfikowany algorytm iteracji polityki Algorytm iteracji polityki: bardzo szybko zbiega do optimum, ale każdy jego krok jest kosztowny obliczeniowo, gdy stanów jest dużo: O(n 3 ) zaczyna być bolesne Pomysł: Obliczmy więc iteracyjnie przybliżoną wartość U(s) (Przybliżoną) użyteczność U(s) obliczamy wykonując k kroków algorytmu iteracji wartości (ze stałą polityką π) rozpoczynając od ostatnio znanego U(s), czyli: U i+1 (s) R(s) + γ s P(s s, π i (s))u i (s ) Zwykle szybciej zbiega znacznie szybciej niż czysty algorytm iteracji wartości lub iteracji polityki.

Zmodyfikowany algorytm iteracji polityki Algorytm iteracji polityki: bardzo szybko zbiega do optimum, ale każdy jego krok jest kosztowny obliczeniowo, gdy stanów jest dużo: O(n 3 ) zaczyna być bolesne Pomysł: Obliczmy więc iteracyjnie przybliżoną wartość U(s) (Przybliżoną) użyteczność U(s) obliczamy wykonując k kroków algorytmu iteracji wartości (ze stałą polityką π) rozpoczynając od ostatnio znanego U(s), czyli: U i+1 (s) R(s) + γ s P(s s, π i (s))u i (s ) Zwykle szybciej zbiega znacznie szybciej niż czysty algorytm iteracji wartości lub iteracji polityki.

Rozszerzenia Do tej pory algorytmy równocześnie (synchronicznie) aktualizowały użyteczności poszczególnych stanów. Nie jest to konieczne. Można: wybrać jakikolwiek podzbiór stanów i zaaplikować do niego którąkolwiek aktualizację (ulepszenie polityki lub iteracje wartości) = algorytm Asynchronicznej Iteracji Polityki Pod pewnymi warunkami dot. początkowych użyteczności i początkowej polityki jest zbieżny Umożliwia dobranie heurystyki wyboru stanów do aktualizacji, np. algorytm, który koncentruje się na ocenie użyteczności stanów, które z dużym prawd. mają szansę być odwiedzone.

Co zrobić, gdy agent nie wie gdzie jest? 3 + 1 2 1 0.8 1 START 0.1 0.1 1 2 3 4

Rzecz o częściowej obserwowalności Agent nie zna aktualnego stanu środowiska ( nie wie gdzie jest ) = nie ma sensu mówić o polityce π(s)! Musi zbierać informacje i wnioskować na temat możliwych stanów środowiska (stan przekonań, ang. belief state = czyli rozkład prawd. nad stanami) = filtrowanie.

POMDP POMDP: zbiór stanów S (w tym stanów terminalnych) zbiór akcji A model przejść P(s s, a) funkcja nagrody R(s) model sensoryczny P(e s) czyli prawd., że agent notuje obserwację e będąc w stanie s. W ogólności może przybrać formę P(e s, a, s ) początkowy stan przekonań b 0 (nieznany jest jest stan początkowy s 0 )

Stany przekonań Aktualizacja stanu przekonań problem filtrowania (estymacji stanu systemu). Aktualizacja stanów przekonań: b (s ) = αp(e s ) s P(s s, a)b(s), gdzie: b(s) oznacza prawd., że agent jest w stanie s wg stanu przekonań b, α jest współczynnikiem normalizującym ( s S b(s) = 1), e jest poczynioną obserwacją.

Stany przekonań Twierdzenie (Astrom, 1965) Optymalna polityka w POMDP jest funkcją π : B A, gdzie B jest zbiorem stanów przekonań). Optymalna polityka nie zależy od aktualnego stanu, w którym jest agent. Jak zachowuje się agent realizujący politykę π? Powtarza: 1 Wykonaj akcję a = π(b), gdzie b jest aktualnym stanem przekonań agenta 2 Otrzymaj obserwację środowiska e 3 Zaktualizuj swój stan przekonań obliczając b (filtrowanie)

Stany przekonań Twierdzenie (Astrom, 1965) Optymalna polityka w POMDP jest funkcją π : B A, gdzie B jest zbiorem stanów przekonań). Optymalna polityka nie zależy od aktualnego stanu, w którym jest agent. Jak zachowuje się agent realizujący politykę π? Powtarza: 1 Wykonaj akcję a = π(b), gdzie b jest aktualnym stanem przekonań agenta 2 Otrzymaj obserwację środowiska e 3 Zaktualizuj swój stan przekonań obliczając b (filtrowanie)

POMDP MDP Wniosek Można przekształcić POMDP w MDP operujący w przestrzeni stanów przekonań, gdzie P(b a, b) jest prawd., że nowym stanem przekonań będzie b pod warunkiem, że aktualny stan przekonań to b i agent wykonuje akcję a. P(b a, b) można łatwo wyprowadzić.

POMDP MDP Ale, zauważmy, że przestrzeń stanów przekonań B: jest przestrzenią ciągłą (rozkłady prawd.), ma bardzo wiele wymiarów. Jeśli mamy n stanów = b jest n-wymiarowym wektorem liczb rzeczywistych Istnieje algorytm iteracji wartości dla POMDP (1970), ale jest zbyt wolny nawet dla 4 3 rozwiązywanie POMDP jest bardzo trudne obliczeniowo (PSPACE-trudne). Istnieją algorytmy przybliżone oparte na dynamicznych sieciach baysowskich.

POMDP MDP Ale, zauważmy, że przestrzeń stanów przekonań B: jest przestrzenią ciągłą (rozkłady prawd.), ma bardzo wiele wymiarów. Jeśli mamy n stanów = b jest n-wymiarowym wektorem liczb rzeczywistych Istnieje algorytm iteracji wartości dla POMDP (1970), ale jest zbyt wolny nawet dla 4 3 rozwiązywanie POMDP jest bardzo trudne obliczeniowo (PSPACE-trudne). Istnieją algorytmy przybliżone oparte na dynamicznych sieciach baysowskich.

Zadanie Oblicz użyteczności stanów dla poniższego świata za pomocą wybranego algorytmu (value iteration, policy iteration, modified policy iteration). 3 + 1 2 1 1 START 1 2 3 4 Zasady takie same jak w przykładzie. Przy czym P(przód) = 0.5, P(lewo) = P(prawo) = 0.2. P(ty l) = 0.1. r = 0.04 (kary) γ = 0.8