Master ICAF, 2017 Sem. 2. Lucian Buşoniu

Σχετικά έγγραφα
Metode iterative pentru probleme neliniare - contractii

Curs 10 Funcţii reale de mai multe variabile reale. Limite şi continuitate.

Sisteme diferenţiale liniare de ordinul 1

Curs 14 Funcţii implicite. Facultatea de Hidrotehnică Universitatea Tehnică "Gh. Asachi"

(a) se numeşte derivata parţială a funcţiei f în raport cu variabila x i în punctul a.

Curs 2 DIODE. CIRCUITE DR

Metode de interpolare bazate pe diferenţe divizate

V.7. Condiţii necesare de optimalitate cazul funcţiilor diferenţiabile

Integrala nedefinită (primitive)

Definiţia generală Cazul 1. Elipsa şi hiperbola Cercul Cazul 2. Parabola Reprezentari parametrice ale conicelor Tangente la conice

5. FUNCŢII IMPLICITE. EXTREME CONDIŢIONATE.

Esalonul Redus pe Linii (ERL). Subspatii.

Asupra unei inegalităţi date la barajul OBMJ 2006

R R, f ( x) = x 7x+ 6. Determinați distanța dintre punctele de. B=, unde x și y sunt numere reale.

Algoritmica grafurilor XI. Cuplaje in grafuri. Masuri de calitate. Numere Ramsey

Planul determinat de normală şi un punct Ecuaţia generală Plane paralele Unghi diedru Planul determinat de 3 puncte necoliniare

Aplicaţii ale principiului I al termodinamicii la gazul ideal

Laborator 11. Mulţimi Julia. Temă

Conice. Lect. dr. Constantin-Cosmin Todea. U.T. Cluj-Napoca

Curs 4 Serii de numere reale

Seminariile Capitolul X. Integrale Curbilinii: Serii Laurent şi Teorema Reziduurilor

Valori limită privind SO2, NOx şi emisiile de praf rezultate din operarea LPC în funcţie de diferite tipuri de combustibili

Laborator 1: INTRODUCERE ÎN ALGORITMI. Întocmit de: Claudia Pârloagă. Îndrumător: Asist. Drd. Gabriel Danciu

Rezolvarea ecuaţiilor şi sistemelor de ecuaţii diferenţiale ordinare. Cuprins. Prof.dr.ing. Gabriela Ciuprina

5.5. REZOLVAREA CIRCUITELOR CU TRANZISTOARE BIPOLARE

riptografie şi Securitate

Criptosisteme cu cheie publică III

SEMINAR 14. Funcţii de mai multe variabile (continuare) ( = 1 z(x,y) x = 0. x = f. x + f. y = f. = x. = 1 y. y = x ( y = = 0

Erori si incertitudini de măsurare. Modele matematice Instrument: proiectare, fabricaţie, Interacţiune măsurand instrument:

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor X) functia f 1

Examen AG. Student:... Grupa:... ianuarie 2011

V O. = v I v stabilizator

Analiza în curent continuu a schemelor electronice Eugenie Posdărăscu - DCE SEM 1 electronica.geniu.ro

a n (ζ z 0 ) n. n=1 se numeste partea principala iar seria a n (z z 0 ) n se numeste partea

Proiectarea Algoritmilor 2. Scheme de algoritmi Divide & Impera

Functii definitie, proprietati, grafic, functii elementare A. Definitii, proprietatile functiilor

III. Serii absolut convergente. Serii semiconvergente. ii) semiconvergentă dacă este convergentă iar seria modulelor divergentă.

INTERPOLARE. y i L i (x). L(x) = i=0

a. 11 % b. 12 % c. 13 % d. 14 %

Sisteme liniare - metode directe

Metode Runge-Kutta. 18 ianuarie Probleme scalare, pas constant. Dorim să aproximăm soluţia problemei Cauchy

Ecuatii exponentiale. Ecuatia ce contine variabila necunoscuta la exponentul puterii se numeste ecuatie exponentiala. a x = b, (1)

RĂSPUNS Modulul de rezistenţă este o caracteristică geometrică a secţiunii transversale, scrisă faţă de una dintre axele de inerţie principale:,

COLEGIUL NATIONAL CONSTANTIN CARABELLA TARGOVISTE. CONCURSUL JUDETEAN DE MATEMATICA CEZAR IVANESCU Editia a VI-a 26 februarie 2005.

6 n=1. cos 2n. 6 n=1. n=1. este CONV (fiind seria armonică pentru α = 6 > 1), rezultă

Curs 2 Şiruri de numere reale


Subiecte Clasa a VII-a

Componente şi Circuite Electronice Pasive. Laborator 3. Divizorul de tensiune. Divizorul de curent

DISTANŢA DINTRE DOUĂ DREPTE NECOPLANARE

Tehnici de Optimizare

BARAJ DE JUNIORI,,Euclid Cipru, 28 mai 2012 (barajul 3)

Analiza bivariata a datelor

1. PROPRIETĂȚILE FLUIDELOR

5.4. MULTIPLEXOARE A 0 A 1 A 2

Curs 1 Şiruri de numere reale

MARCAREA REZISTOARELOR

a) (3p) Sa se calculeze XY A. b) (4p) Sa se calculeze determinantul si rangul matricei A. c) (3p) Sa se calculeze A.

prin egalizarea histogramei

CURS 11. Rădăcină unei ecuatii: Cum se defineste o rădăcină aproximativă?

Algoritmi genetici. 1.1 Generalităţi

Curs 4. RPA (2017) Curs 4 1 / 45

Ecuatii trigonometrice

Capitolul 4. Integrale improprii Integrale cu limite de integrare infinite

Ecuaţia generală Probleme de tangenţă Sfera prin 4 puncte necoplanare. Elipsoidul Hiperboloizi Paraboloizi Conul Cilindrul. 1 Sfera.

Noţiuni introductive

Seminar 5 Analiza stabilității sistemelor liniare

Εμπορική αλληλογραφία Ηλεκτρονική Αλληλογραφία

1.7 Mişcarea Browniană

VII.2. PROBLEME REZOLVATE

Modelare fuzzy. Problematica modelarii Sisteme fuzzy in modelare Procedura de modelare ANFIS Clasificare substractiva. Modelare fuzzy. G.

( ) () t = intrarea, uout. Seminar 5: Sisteme Analogice Liniare şi Invariante (SALI)

METODE NUMERICE: Laborator #5 Metode iterative pentru rezolvarea sistemelor: Jacobi, Gauss-Siedel, Suprarelaxare

7 Distribuţia normală

Metode iterative pentru rezolvarea sistemelor de ecuatii liniare

* K. toate K. circuitului. portile. Considerând această sumă pentru toate rezistoarele 2. = sl I K I K. toate rez. Pentru o bobină: U * toate I K K 1

Olimpiada Naţională de Matematică Etapa locală Clasa a IX-a M 1

Interpolarea funcţiilor.

Proiectarea algoritmilor: Programare dinamică


SERII NUMERICE. Definiţia 3.1. Fie (a n ) n n0 (n 0 IN) un şir de numere reale şi (s n ) n n0

Concurs MATE-INFO UBB, 1 aprilie 2017 Proba scrisă la MATEMATICĂ

Capitolul 2 - HIDROCARBURI 2.3.ALCHINE

riptografie şi Securitate

5.1. Noţiuni introductive

Limbaje de Programare Curs 3 Iteraţia. Reprezentare internă. Operatori pe biţi

Περίληψη των χαρακτηριστικών του προϊόντος για βιοκτόνο

4. Măsurarea tensiunilor şi a curenţilor electrici. Voltmetre electronice analogice

Capitolul ASAMBLAREA LAGĂRELOR LECŢIA 25

CURS 8: METODE DE OPTIMIZARE PARAMETRICĂ

Identificarea sistemelor

Sortare. 29 martie Utilizarea şi programarea calculatoarelor. Curs 16

Circuite cu diode în conducţie permanentă

Cursul Măsuri reale. D.Rusu, Teoria măsurii şi integrala Lebesgue 15

Orice izometrie f : (X, d 1 ) (Y, d 2 ) este un homeomorfism. (Y = f(x)).

Integrale cu parametru

Universitatea din Bucureşti Facultatea de Matematică şi Informatică. Algebră (1)

Functii Breviar teoretic 8 ianuarie ianuarie 2011

2 Transformări liniare între spaţii finit dimensionale

Zgomotul se poate suprapune informaţiei utile în două moduri: g(x, y) = f(x, y) n(x, y) (6.2)

Transcript:

Control prin învăţare Master ICAF, 2017 Sem. 2 Lucian Buşoniu

Partea III Învăţarea prin recompensă

Recap: Soluţie Obiectiv Maximizează returnul din orice x 0 : R h (x 0 ) = γ k r k+1 = γ k ρ(x k, h(x k )) k=0 k=0 Funcţia Q: Q h (x, u) = ρ(x, u) + γr h (x ) Funcţia Q optimală: Q = max h Q h Legea de control optimală: h (x) = arg max Q (x, u) u

Recap: Programarea dinamică 1 Iteraţia pe valoare: calculează Q, h greedy în Q 2 Iteraţia pe legea de control: calculează Q h l, h l+1 greedy în Q h l, repetă la l + 1

Partea III în plan Problema de învăţare prin recompensă Soluţia optimală Programarea dinamică (variabile discrete) Învăţarea prin recompensă (variabile discrete) Tehnici de aproximare Programarea dinamică cu aproximare (var. continue) Învăţarea prin recompensă cu aproximare (var. continue) Planificarea online (var. continue şi discrete)

Conţinut partea III 1 Monte Carlo, MC 2 Diferenţe temporale, TD 3 Metode pentru accelerarea TD

1 Monte Carlo, MC 2 Diferenţe temporale, TD 3 Metode pentru accelerarea TD

Reamintim: Iteraţia pe legea de control Iteraţia pe legea de control iniţializează legea de control h 0 repeat la fiecare iteraţie l 1: evaluarea legii de control: găseşte Q h l 2: îmbunătăţirea legii de control: h l+1 (x) arg max u Q h l(x, u) until convergenţă

Evaluarea legii de control Pentru a găsi Q h : Până acum: metode bazate pe model Învăţare prin recompensă: modelul nu este disponibil Învaţă Q h din date sau prin interacţiune online cu sistemul

Evaluarea Monte Carlo a legii de control Reamintim: Q h (x 0, u 0 ) = ρ(x 0, u 0 ) + γr h (x 1 ) Traiectorie din (x 0, u 0 ) până în x K (terminală) folosind u 1 = h(x 1 ), u 2 = h(x 2 ) etc. Q h (x 0, u 0 ) = returnul pe traiectorie: La fiecare pas: Q h (x 0, u 0 ) = K 1 Q h (x k, u k ) = K 1 j=0 γj r j+1 j=k γj k r j+1

Cazul stohastic N traiectorii (diferă datorită naturii stohastice) Valoarea Q estimată = media returnurilor, ex. Q h (x 0, u 0 ) = 1 N N i=1 K i 1 j=0 γ j r i,j+1

Cazul stohastic (cont.) Reamintim definiţia valorii Q h : } Q h (x 0, u 0 ) = E x1 { ρ(x 0, u 0, x 1 ) + γr h (x 1 ) = E traj. x1,x 2,... { ρ(x 0, u 0, x 1 ) + γ } j=1 γj ρ(x j, h(x j ), x j+1 ) { K 1 } x0 = E traj. x1,x 2,... j=0 γj r j+1, u 0 (cu presupunerea că traiectoriile se termină după un #finit de paşi K ) Convergenţă la valoarea Q când N 1 N N i=1 K i 1 j=0 γ j r i,j+1 Q h (x 0, u 0 )

Iteraţia Monte Carlo pe legea de control Iteraţia Monte Carlo pe legea de control for fiecare iteraţie l do efectuează N traiectorii aplicând h l resetează la 0 acumulator A(x, u), counter C(x, u) for fiecare pas k din fiecare traiectorie i do A(x k, u k ) A(x k, u k ) + K i 1 j=k C(x k, u k ) C(x k, u k ) + 1 end for Q h l(x, u) A(x, u)/c(x, u) h l+1 (x) arg max u Q h l(x, u) end for γj k r i,j+1 (return) De notat: atingerea stării terminale trebuie garantată!

Robot menajer: Monte Carlo, demo

Nevoia de explorare Q h (x, u) A(x, u)/c(x, u) Cum asigurăm C(x, u) > 0 informaţie despre fiecare (x, u)? 1 Stări iniţiale x 0 selectate reprezentativ 2 Acţiuni: u 0 reprezentative, câteodată diferite de h(x 0 ) şi în plus, posibil: u k reprezentative, câteodată diferite de h(x k )

Explorare-exploatare Explorarea necesară: acţiuni diferite de legea curentă de control Exploatarea cunoştinţelor curente necesară: legea de control trebuie aplicată Dilema explorare-exploatare esenţială în toţi algoritmii de RL (nu doar în MC)

Explorare-exploatare: strategia ε-greedy O soluţie simplă: ε-greedy { h(x k )= arg max u k = u Q(x k, u) cu probabilitatea (1 ε k ) o acţiune aleatoare cu probabilitatea ε k Probabilitatea de explorare ε k (0, 1) scade de obicei în timp

Îmbunătăţirea optimistă a legii de control Legea de control neschimbată pentru N traiectorii Algoritmul învaţă încet Îmbunătăţirea legii de control după fiecare traiectorie = optimist

Metoda Monte Carlo optimistă Metoda Monte Carlo optimistă iniţializează la 0 acumulator A(x, u), counter C(x, u) for fiecare traiectorie do efectuează { traiectoria, ex. aplicând ε-greedy: arg max u k = u Q(x k, u) cu prob. (1 ε k ) aleatoare cu prob. ε k for fiecare pas k do A(x k, u k ) A(x k, u k ) + K 1 j=k γj k r j+1 C(x k, u k ) C(x k, u k ) + 1 end for Q(x, u) A(x, u)/c(x, u) end for h implicit, greedy în Q actualizarea Q implicit îmbunătăţirea h

Robot menajer: Monte Carlo optimist, demo

1 Monte Carlo, MC 2 Diferenţe temporale, TD Introducere SARSA Învăţarea Q 3 Metode pentru accelerarea TD

Reamintim: Evaluarea legii de control Transformă ecuaţia Bellman pentru Q h : Q h (x, u) = ρ(x, u) + γq h (f (x, u), h(f (x, u))) într-o procedură iterativă: repeat la fiecare iteraţie τ for all x, u do Q τ+1 (x, u) ρ(x, u) + γq τ (f (x, u), h(f (x, u))) end for until convergenţă la Q h

Perspectiva DP 1 Pornim de la evaluarea legii de control: Q τ+1 (x, u) ρ(x, u) + γq τ (f (x, u), h(f (x, u))) 2 În loc de model, folosim la fiecare pas k tranziţia (x k, u k, x k+1, r k+1, u k+1 ): Q(x k, u k ) r k+1 + γq(x k+1, u k+1 ) De notat: x k+1 = f (x k, u k ), r k+1 = ρ(x k, u k ), u k+1 h(x k+1 ) 3 Transformăm într-o actualizare incrementală: Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] α k (0, 1] rata de învăţare

Algoritm intermediar Diferenţe temporale pentru evaluarea h for fiecare traiectorie do iniţializează x 0, alege acţiunea iniţială u 0 repeat la fiecare pas k aplică u k, măsoară x k+1, primeşte r k+1 alege acţiunea următoare u k+1 h(x k+1 ) Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] until traiectoria terminată end for

Perspectiva MC Diferenţe temporale pentru evaluarea h for fiecare traiectorie do... repeat la fiecare pas k aplică u k, măsoară x k+1, primeşte r k+1 Q(x k, u k )...Q... until traiectoria terminată end for Monte Carlo for fiecare traiectorie do efectuează traiectoria... Q(x, u) A(x, u)/c(x, u) end for

Perspective MC şi DP Învaţă din interacţiune online: ca şi MC, diferit de DP Actualizează după fiecare tranziţie, folosind valorile Q precedente: ca şi DP, diferit de MC

Explorare-exploatare alege acţiunea următoare u k+1 h(x k+1 ) Informaţii despre (x, u) (x, h(x)) necesare explorare h trebuie urmărită exploatare Ex. ε-greedy: u k+1 = { h(x k+1 ) cu prob. (1 ε k+1 ) aleatoare cu prob. ε k+1

1 Monte Carlo, MC 2 Diferenţe temporale, TD Introducere SARSA Învăţarea Q 3 Metode pentru accelerarea TD

Îmbunătăţirea legii de control Algoritm precedent: h fixată Îmbunătăţirea h: cel mai simplu, după fiecare tranziţie interpretare: iteraţie pe legea de control optimistă la nivel de tranziţie h implicit, greedy în Q (actualizarea Q implicit îmbunătăţirea h)

SARSA SARSA cu ε-greedy for fiecare traiectorie do iniţializează { x 0 arg max u 0 = u Q(x 0, u) cu prob. (1 ε 0 ) aleatoare cu prob. ε 0 repeat la fiecare pas k aplică u{ k, măsoară x k+1, primeşte r k+1 arg max u k+1 = u Q(x k+1, u) cu prob. (1 ε k+1 ) aleatoare cu prob. ε k+1 Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] until traiectoria terminată end for

Numele SARSA (x k, u k, r k+1, x k+1, u k+1 ) = (Stare, Acţiune, Recompensă, Stare, Acţiune) = SARSA

Robot menajer: SARSA, demo Parametri: α = 0.2, ε = 0.3 (constanţi) x 0 = 2 sau 3 (aleator)

Înlocuirea unei maşini: SARSA, demo Parametri: α = 0.1, ε = 0.3 (constanţi), 20 paşi pe traiectorie x 0 = 1

1 Monte Carlo, MC 2 Diferenţe temporale, TD Introducere SARSA Învăţarea Q 3 Metode pentru accelerarea TD

Reamintim: Iteraţia Q Transformă ecuaţia de optimalitate Bellman: Q (x, u) = ρ(x, u) + γ max u Q (f (x, u), u ) într-o procedură iterativă: repeat la fiecare iteraţie l for all x, u do Q l+1 (x, u) ρ(x, u) + γ max u Q l (f (x, u), u ) end for until convergenţă la Q

Învăţarea Q 1 Similar cu SARSA, pornim de la iteraţia Q: Q l+1 (x, u) ρ(x, u) + γ max u Q l (f (x, u), u ) 2 În loc de model, folosim la fiecare pas k tranziţia (x k, u k, x k+1, r k+1 ): Q(x k, u k ) r k+1 + γ max u Q(x k+1, u ) De notat: x k+1 = f (x k, u k ), r k+1 = ρ(x k, u k ) 3 Transformăm într-o actualizare incrementală: Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γ max u Q(x k+1, u ) Q(x k, u k )]

Învăţarea Q Învăţarea Q cu ε-greedy for fiecare traiectorie do iniţializează x 0 repeat la{ fiecare pas k arg max u k = u Q(x k, u) cu prob. (1 ε k ) aleatoare cu prob. ε k aplică u k, măsoară x k+1, primeşte r k+1 Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γ max u Q(x k+1, u ) Q(x k, u k )] until traiectoria terminată end for

Robot menajer: învăţarea Q, demo Parameteri ca şi SARSA: α = 0.2, ε = 0.3 (constanţi) x 0 = 2 sau 3 (aleator)

Înlocuirea unei maşini: învăţarea Q, demo Parametri: α = 0.1, ε = 0.3 (constanţi), 20 paşi pe traiectorie x 0 = 1

Convergenţă Condiţii de convergenţă la Q : 1 Toate perechile (x, u) continuă să fie actualizate: asigurat de explorare, ex. ε-greedy 2 Condiţii tehnice pentru α k (scade spre 0, dar nu prea repede, k=0 α k ) k=0 α2 k = finit, În plus, pentru SARSA: 3 Legea de control trebuie să devină greedy la infinit ex. lim k ε k = 0

On-policy / off-policy SARSA: on-policy Estimează permanent funcţia Q a legii de control curente Învăţarea Q: off-policy Indiferent de legea de control curentă, estimează funcţia Q optimală

Diferenţe temporale: Discuţie Avantaje Simplu de înţeles, implementat Complexitate scăzută execuţie rapidă SARSA vs. învăţarea Q SARSA mai puţin complex decât învăţarea Q (fără max în actualizarea funcţiei Q) Secvenţele α k, ε k influenţează semnificativ performanţa Dezavantaj principal Necesită multe date

1 Monte Carlo, MC 2 Diferenţe temporale, TD 3 Metode pentru accelerarea TD Motivare Urme de eligibilitate Reluarea experienţei

De ce să accelerăm TD? Dezavantaj principal: învaţă încet necesită multe date În practică, datele costă: timp profit (performanţă scăzută datorită explorării) uzură a sistemului Accelerarea RL = eficientizarea folosirii datelor

Exemplu: Navigare 2D Navigare într-o lume 2D discretă de la Start la Goal Singura recompensă = 10 la atingerea G (stare terminală)

Exemplu: TD Alegem SARSA, α = 1; iniţializăm Q = 0 Actualizări de-a lungul traiectoriei din stânga:... Q(x 4, u 4 ) = 0 + γ Q(x 5, u 5 ) = 0 Q(x 5, u 5 ) = 10 + γ 0 = 10 O nouă tranziţie de la x 4 la x 5 necesară pentru a propaga informaţia la x 4!

Accelerarea TD: 2 idei 1 Lasă urme de eligibilitate de-a lungul traiectoriilor 2 Stochează şi reia experienţa

1 Monte Carlo, MC 2 Diferenţe temporale, TD 3 Metode pentru accelerarea TD Motivare Urme de eligibilitate Reluarea experienţei

Urme de eligibilitate Idee: Lasă o urmă de-a lungul traiectoriei: λ [0, 1] rată de scădere Urme de eligibilitate cu înlocuire e(x, u) 0 pentru toate x, u for fiecare pas k do e(x, u) λγe(x, u) pentru toate x, u e(x k, u k ) 1 end for

SARSA(λ) Reamintim SARSA original actualizează doar Q(x k, u k ): Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] SARSA(λ) actualizează toate perechile eligible: Q(x, u) Q(x, u) + α k e(x, u) [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] x, u

Algoritmul SARSA(λ) SARSA(λ) for fiecare traiectorie do e(x, u) 0 x, u iniţializează x 0, alege acţiunea iniţială u 0 repeat la fiecare pas k aplică u k, măsoară x k+1, primeşte r k+1 alege acţiunea următoare u k+1 e(x, u) λγe(x, u) x, u e(x k, u k ) 1 Q(x, u) Q(x, u) + α k e(x, u) [r k+1 + γq(x k+1, u k+1 ) Q(x k, u k )] for all x, u until traiectoria terminată end for

Exemplu: Efectul urmei de eligibilitate λ = 0.7 Actualizări până la x 4 : Q rămâne 0 La x 5, toată traiectoria actualizată imediat: Q(x 5, u 5 ) = 10 + γ0 = 10 Q(x 4, u 4 ) = (γλ)[10 + γ0] = 3.5 Q(x 3, u 3 ) = (γλ) 2 [10 + γ0] = 1.225...

TD versus MC λ = 0 algoritmii originali regăsiţi λ = 1 TD devine similar cu MC De obicei, λ [0.5, 0.8] funcţionează rezonabil

Robot menajer: SARSA(λ), demo Parametri: α = 0.2, ε = 0.3 (ca SARSA original), λ = 0.5 x 0 = 2 or 3 (aleator)

Învăţarea Q(λ) Similar cu SARSA, actualizarea originală: Q(x k, u k ) Q(x k, u k ) + α k Se transformă în: Q(x, u) Q(x, u) + α k e(x, u) [r k+1 + γ max u Q(x k+1, u ) Q(x k, u k )] [r k+1 + γ max Q(x k+1, u ) Q(x k, u k )] x, u u De notat: acţiunile de explorare întrerup cauzalitatea urma poate fi resetată la 0

Algoritmul Q(λ) Q(λ) for fiecare traiectorie do e(x, u) 0 x, u initialize x 0 repeat la fiecare pas k aplică u k, măsoară x k+1, primeşte r k+1 if u k exploratoare then e(x, u) 0 x, u else e(x, u) λγe(x, u) x, u end if e(x k, u k ) 1 Q(x, u) Q(x, u) + α k e(x, u) [r k+1 + γ max Q(x k+1, u ) Q(x k, u k )] x, u until traiectorie terminată end for u

Robot menajer: Q(λ), demo Parametri: α = 0.2, ε = 0.3, λ = 0.5 x 0 = 2 or 3 (aleator)

1 Monte Carlo, MC 2 Diferenţe temporale, TD 3 Metode pentru accelerarea TD Motivare Urme de eligibilitate Reluarea experienţei

Reluarea experienţei Stochează fiecare tranziţie (x k, u k, x k+1, r k+1 ) într-o bază de date La fiecare pas, reia n tranziţii din baza de date (pe lângă actualizările normale)

Învăţarea Q cu reluarea experienţei Învăţarea Q cu reluarea experienţei for fiecare traiectorie do iniţializează x 0 repeat la fiecare pas k aplică u k, măsoară x k+1, primeşte r k+1 Q(x k, u k ) Q(x k, u k ) + α k [r k+1 + γ max u Q(x k+1, u ) Q(x k, u k )] adaugă (x k, u k, x k+1, r k+1 ) la baza de date ReiaExperienţa until traiectoria terminată end for

Procedura ReiaExperienţa ReiaExperienţa loop de N ori preia o tranziţie (x, u, x, r) din baza de date Q(x, u) Q(x, u) + α end loop [r + γ max Q(x, u ) Q(x, u)] u

Direcţia de reluare Ordinea de reluare a tranziţiilor: 1 Înainte 2 Înapoi 3 Arbitrar

Exemplu: Influenţa direcţiei de reluare Verde: actualizările normale, mov: reluarea experienţei Stânga: reluare înainte; dreapta: reluare înapoi Reluarea înapoi în general preferabilă

Exemplu: Agregarea informaţiei Reluarea experienţei agregă informaţie din mai multe traiectorii Căsuţa indicată profită de informaţii de-a lungul ambelor traiectorii

Robot menajer: Q cu reluarea experienţei, demo Parametri: α = 0.2, ε = 0.3, N = 5, direcţia înapoi x 0 = 2 or 3 (aleator)

Recapitulare: Metode în Partea III Metode Monte Carlo, MC: Iteraţia Monte Carlo pe legea de control Varianta optimistă Diferenţe temporale, TD: SARSA Învăţarea Q Metode pentru accelerarea TD: Urme de eligibilitate Reluarea experienţei

Terminologie engleză metode Monte Carlo = Monte Carlo methods explorare-exploatare = exploration-exploitation diferenţe temporale = temporal differences, TD învăţarea Q = Q-learning SARSA = SARSA urme de eligibilitate = eligibility traces reluarea experienţei = experience replay