Tematem niniejszego skryptu są mechanizmy adaptacji aplikowane w systemach tworzonych przez człowieka. Ogólnym celem adaptacji tego rodzaju jest poprawa działania systemu w trakcie jego działania. Często nie jest możliwe zaprojektowanie systemu funkcjonującego w sposób optymalny natychmiast po uruchomieniu. W tej sytuacji optymalizacja funkcji systemu w trakcie jego działania może być pożyteczna.
Ogólny schemat sytuacji, w której pojawia się problem adaptacji (uczenia się) dyskutowany w niniejszym skrypcie przedstawia rysunek 1. Punktem wyjścia jest pewien system dynamiczny: może być to urządzenie wraz ze środowiskiem, w którym działa lub „światek”, na który oddziałuje pewien program komputerowy. Przez decydenta należy rozumieć sterownik urządzenia lub (pod)program komputerowy. Na podstawie stanu systemu generuje on decyzje, którymi na ten system oddziałuje, np. powoduje podejmowanie przez urządzenie pewnych działań. Problem polega na tym, że nie można z góry zdefiniować dobrych reguł decyzyjnych dla decydenta z jednego lub kilku spośród następujących powodów:
-
Dynamika systemu jest nieznana czyli nie wiadomo w jaki sposób na jego stan wypływają aplikowane decyzje,
-
Dynamika systemu jest znana w sposób niepełny/niedokładny,
-
Dynamika systemu jest na tyle skomplikowana, że projektowanie decydenta staje się bardzo kosztowne.
Narzucającym się w takiej sytuacji rozwiązaniem jest wyposażenie decydenta w możliwość adaptacji lub uczenia się na podstawie interakcji z systemem dynamicznym.
Ostatnim elementem powyższego schematu jest arbiter. Spełnia on dwie funkcje. Po pierwsze stanowi interfejs między parą decydent – system dynamiczny a człowiekiem, który jest użytkownikiem tej pary. Po drugie, arbiter ocenia skutki działania decydenta. Zwykłe zadanie decydenta, polega na tym, aby w sekwencji decyzji osiągnąć pewne cele. Arbiter nie musi wiedzieć jakie decyzje prowadzą do tego celu ale musi umieć rozpoznawać moment, w którym cel zostaje osiągnięty.
Spis treści
-
Wprowadzenie
-
Przykłady zagadnień, w których pojawia się potrzeba adaptacji i uczenia się
-
Cel skryptu i poruszane zagadnienia
-
Trzy dziedziny składające się na zawartość skryptu
-
Adaptacja i uczenie się jako droga do inteligentnego zachowania się maszyn i programów
Aproksymacja funkcji i podstawowe mechanizmy adaptacji
-
Liniowa aproksymacja funkcji
-
Aproksymatory i zagadnienie aproksymacji
-
Aproksymacja liniowa i rekurencyjne najmniejsze kwadraty
-
Własności statystyczne rekurencyjnych najmniejszych kwadratów
-
Nieliniowa aproksymacja funkcji i sieci neuronowe
-
Perceptron wielowarstwowy
-
Iteracyjna optymalizacja i aproksymacja stochastycznej
-
Uczenie się przy użyciu aproksymacji stochastycznej
-
Zagadnienie dostrajania parametru kroku
-
Zagadnienia praktyczne związane z używaniem sieci neuronowych w systemach uczących się
Uczenie się przez wzmacnianie
-
Podstawy
-
Proces Decyzyjny Markowa
-
Algorytmy Q-Learning i SARSA
-
Rozszerzenie algorytmów Q-Learning i sarsa do ciągłych przestrzeni stanów i decyzji
-
Optymalizacja stochastycznego wyboru
-
Parametryzowane rozkłady prawdopodobieństwa
-
Algorytm REINFORCE punktowy
-
Stacjonarna polityka decyzyjna
-
Algorytm REINFORCE statyczny
-
Algorytm REINFORCE epizodyczny
-
Algorytm Aktor – Krytyk
-
Aktor i Krytyk
-
TD (λ)
-
Aktor – Krytyk z kompatybilną aproksymacją
-
Optymalizacja średniej nagrody
-
Gradient polityki
-
Aktor – Krytyk z kompatybilną aproksymacją
-
Naturalny Aktor – Krytyk
-
Dyskonto: ograniczenie wariancji estymatora gradientu
-
Wielokrotne przetwarzanie obserwacji
-
Algorytm Q-Learning z powtarzaniem doświadczenia
-
Próbkowanie ważnościowe
-
Algorytm Aktor – Krytyk z powtarzaniem doświadczenia
-
Optymalizacja estymatora wskaźnika jakości
Sterowanie adaptacyjne
-
Obiekty dynamiczne
-
Wstęp
-
Liniowe obiekty SISO
-
Dyskretna aproksymacja obiektów o ciągłej dynamice
-
Stabilność i funkcja Lapunowa
-
Ogólna postać typowego schematu adaptacji
-
Stabilność
-
Funkcja Lagunowa
-
Stabilność w kontekście funkcji Lagunowa
-
Schematy adaptacji dla obiektów liniowych z obserwowalnym stanem
-
Liniowy obiekt SISO pierwszego rzędu
-
Uogólnienie
-
Obiekty liniowe wyższych rzędów
-
Zaawansowane schematy adaptacji
-
Obiekty o nieliniowej dynamice
-
Obiekty z nieobserowalnymi pochodnymi stanu
-
Samostrojące się regulatory
-
Dynamika liniowo parametryzowana
-
Liniowe najmniejsze kwadraty w czasie ciągłym
-
Najmniejsze kwadraty z wykładniczym zapominaniem
-
Adaptacyjny dobór współczynnika zapominania
Synteza
-
Pozostałe podejścia
-
Stochastyczne sterowanie adaptacyjne
-
Aproksymowane programowanie dynamiczne
-
Podsumowanie
-
Uczenie się przez wzmacnianie
-
Sterownie adaptacyjne
Dodatek
A Probabilistyka
B Dowody