.. Μελέτη και Υλοποίηση Ελεγκτών Ρομποτικών Συστημάτων με χρήση Αλγορίθμων Ενισχυτικής Μάθησης Πολυτεχνείο Κρήτης 22 Ιουλίου, 2009
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Εισαγωγή Ρομπότ στην αρχαιότητα = εργασία, ψυχαγωγία
Εισαγωγή Σήμερα υπάρχει πληθώρα ρομπότ = οχήματα, ιπτάμενα, υποβρύχια, βιομηχανικά...
Εισαγωγή Τελικός στόχος = Πραγματικά αυτόνομα ρομπότ Αυτονομία = Προσαρμοστικότητα = Μάθηση Ενισχυτική Μάθηση
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Υπόθεση Μάρκοβ (π.χ. αυτοκίνητο) αν x t είναι η τρέχουσα κατάσταση αν u t τρέχουσα ενέργεια που εφαρμόζεται Pr{x t+1 = x x t, u t, x t 1, u t 1,..., x 0, u 0 } = Pr{x t+1 = x x t, u t }
Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Στοχαστική διεργασία διακριτού χρόνου Περιγράφεται από το διάνυσμα (X, U, T, R, γ, D) X Ο χώρος καταστάσεων του προβλήματος U Ο χώρος των ενεργειών ή αποφάσεων της διεργασίας T Το Μοντέλο Μετάβασης (Transition Model) της διεργασίας T(x, u, x ) = T(x x, u)
Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Στοχαστική διεργασία διακριτού χρόνου Περιγράφεται από το διάνυσμα (X, U, T, R, γ, D) R Η συνάρτηση Ανταμοιβής (Reward Function) ή Συνάρτηση Κόστους (Cost Function) R : X U X R. Συνηθέστερες μορφές: r t = R(x, u, x ),r t = R(x, u), r t = R(x) γ (0, 1] Ο παράγοντας έκπτωσης (discount factor) της διεργασίας D Καθορίζει την αρχική κατάσταση της διεργασίας.
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Ενισχυτική Μάθηση Πολιτική (Policy) ή ελεγκτής (controller) = π(x) : X U από καταστάσεις σε ενέργειες Μαρκοβιανό Σύστημα x 0 p(x 0 ), (1) x t+1 p(x t+1 x t, u t, t), (2) r t+1 = R(x t, u t, x t+1, t + 1), (3) u t π θ (u t x t, t) = p(u t x t, t, θ), (4) Τροχιές u 0 u x 0 1 u x 1 2 u x 2 3 u x 3 4 u H 1 x 4... x H 1 x H (5) r 0 r 1 r 2 r 3 r 4 r H 1
Ενισχυτική Μάθηση Στόχος = Εύρεση πολιτικής πθ, βέλτιστη προς: { H } J(θ) = E γ t r t ; θ t=0 (6)
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Συναρτήσεις Αξιολόγησης: { H } V π (x) = E π γ t r t x 0 = x t=0 (7) και { H } Q π (x, u) = E π γ t r t x 0 = x, u 0 = u t=0 (8) Άπληστη Πολιτική π (x) = arg max Q π (x, u) (9) u U με x X, Q π (x, π (x) Q π (x, π(x)) (10)
Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Γραμμική Εξίσωση Bellman Q π (x, u) = r(x, u) + γ x X T(x, u, x )Q π (x, π(x )) (11) Bellman Optimality Equation Q (x, u) = r(x, u) + γ T(x, u, x ) max Q (x, u ) (12) x u U X Value Iteration = Bellman Optimality Equation Policy Iteration = Γραμμική Εξίσωση Bellman
Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Προβλήματα: Γνώση του Μοντέλου Διακριτές Ενέργειες Λύσεις: Συναρτήσεις Βάσης Q π (x, u) = φ(x, u) T w (13) Neural Networks Βέλτιστες - Δυναμικές Διακριτοποιήσεις
Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αστάθεια Μάθησης Διακριτές Ενέργειες
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Πρόβλημα Διδιάστατο Συνθετικό Πρόβλημα x 1 =θέση, x 2 =ταχύτητα, u=επιτάχυνση Δυναμικό Μοντέλο σ κ = 0.003 x 2 (t + 1) = x 2 (t) u(t) + κ, (14) x 1 (t + 1) = x 1 (t) 0.1x 2 (t + 1) + κ, (15) u t = 1/[1 + exp( (θ + ε t ) T x)] 0.5 x 0 = [1, 0] + noise, x goal = [0, 0] r(t) = exp( 0.5 x(t) 2 /(0.03) 2 )
Πρόβλημα Η συνάρτηση προς βελτιστοποίηση 0 Value of Policy 1 2 3 4 θ 2 5 6 7 8 9 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Αλγόριθμοι Πολιτικής Κλίσης Απ' ευθείας στο χώρο τον πολιτικών Μέθοδος Διακριτών Διαφορών θ k+1 = θ k + α k θ J(θ) θ=θk (16) ΔĴ J(θ k + Δθ) J ref 1 (17) και στην συνέχεια g FD = (Δθ T Δθ) 1 Δθ T ΔĴ (18) 1 Ως J ref χρησιμοποιείται συνήθως το J(θ k ) ή το J(θ k Δθ)
Πρόβλημα Η μέθοδος διακριτών διαφορών 0 1 Value of policy 2 3 4 (θ+d θ) 4 θ 2 5 (θ+d θ) 2 6 7 (θ+d θ) 1 8 θ 9 (θ+d θ) 3 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Αλγόριθμοι Πολιτικής Κλίσης Actor - Critic
Αλγόριθμοι Πολιτικής Κλίσης Θετικά: Συνεχείς καταστάσεις - ενέργειες Ελεγκτές Φυσική σημασία για το σύστημα Αρνητικά: Ρύθμιση των ρυθμών μάθησης Τοπικά ελάχιστα
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Ο αλγόριθμος EM Έστω παρατηρήσιμες μεταβλητές X, κρυφές μεταβλητές Z, παράμετροι θ Σκοπός: Ορίζουμε q(z) max p(x θ) = max p(x, Z θ) (19) Z
Ο αλγόριθμος EM q(z) ισχύει: ln p(x θ) = L(q, θ) + KL(q p), (20) όπου L(q, θ) = Z q(z) ln { } p(x, Z θ) q(z) (21) και KL(q p) = Z q(z) ln { } p(z X, θ) q(z) (22) KL(q p) = 0 q(z) = p(z X, θ)
Ο αλγόριθμος EM ln p(x θ) = L(q, θ) + KL(q p), (23) KL(q p) L(q, θ) ln p(x θ)
Ο αλγόριθμος EM E - step: Παράμετροι θ old Μεγιστοποίηση L(q, θ old ) ως προς q(z), θ old σταθερό max L(q, θ old ) KL(q p) = 0 q(z) = p(z X, θ old ) M - step: q(z) σταθερή max L(q, θ) ως προς θ θ new KL(q p) lnp(x θ) L(q, θ) ln p(x θ) L (q, θ) θ old θ new
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Monte Carlo Expectation - Maximization για Ενισχυτική Μάθηση Ο ορίζοντας της ΜΔΑ είναι τυχαία μεταβλητή T Οι ανταμοιβές θεωρούνται πιθανότητες φανταστικών γεγονότων R Χρησιμοποιούμε όλες τις υποτροχιές μήκους t της κάθε τροχιάς Οι λανθάνουσες μεταβλητές είναι T, t, ξ
Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Για το E-step αποδεικνύεται πως: q (ξ, T, t) = p(ξ, T, t R; θ old ) (24) Μοντέλο μη διαθέσιμο δειγματοληψία α(t)b(t)p(ξ t; θ old )p(r ξ, T) (25) α(t) = (1 δ)δ t, γ < δ < 1
Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Στο M-step μεγιστοποιούμε και προκύπτει: θ k+1 = θ k + m i=1 m i=1 1 ξi ξ i +1 1 ξ i +1 t=0 Q itε it ξi t=0 Q it (26) Q it = ξ i τ=t b(τ)r iτ b(t) = (1 γ/δ)(γ/δ) t Ελεγκτής: u t = (θ + ε t )φ(x t ), ε t N (ε t ; 0, σ 2 I d )
Πρόβλημα MCEM 0 1 Value of policy 2 3 4 θ 2 5 6 θ+ε 1 7 θ+ε 3 θ+ε 2 8 θ 9 θ+ε 4 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Ο αλγόριθμος PoWER Σταθερό μήκος H Θέτουμε b(t) = 1/(1 + H)
Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Χρήση των p% καλύτερων τροχιών Αναζήτηση επί γραμμής Κλασική θεώρηση: αναζήτηση στην κατεύθυνση του διανύσματος κλίσης θ k+1 = θ k + µα k g Θεωρούμε: µα k g = θk+1 MCEM θmcem k n m τροχιές σταθερού μήκους H 0 1 2 3 4 D 5 C 6 7 B 8 9 A 10 0 5 10 15 20 25 30 35 40 45 50
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Πειράματα Διδιάστατο Συνθετικό Πρόβλημα x 1 =θέση, x 2 =ταχύτητα, u=επιτάχυνση Δυναμικό Μοντέλο σ κ = 0.003 x 2 (t + 1) = x 2 (t) u(t) + κ, (27) x 1 (t + 1) = x 1 (t) 0.1x 2 (t + 1) + κ, (28) u t = 1/[1 + exp( (θ + ε t ) T x)] 0.5
Πειράματα x 0 = [1, 0] + noise, x goal = [0, 0] r(t) = exp( 0.5 x(t) 2 /(0.03) 2 ) MCEM γ = 0.95, δ = 0.99, Tmax = 100 PoWER H = 100 Αναζήτηση επί γραμμής 10 τροχιές Χρήση καλύτερων τροχιών 2 τροχιές
Πειράματα MCEM vs PoWER 0.8 0.7 0.6 0.5 Value of Policy 0.4 0.3 0.2 0.1 0 MCEM PoWER 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα Με και χωρίς αναζήτηση επί γραμμής 0.8 0.8 0.7 0.7 0.6 0.6 0.5 0.5 Value of Policy 0.4 0.3 Value of Policy 0.4 0.3 0.2 0.2 0.1 0.1 0 MCEM MCEM with line search 0 PoWER PoWER with line search 0.1 0 5 10 15 20 25 30 35 Iterations 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα Με και χωρίς τη χρήση των καλύτερων τροχιών 0.8 0.8 0.7 0.7 0.6 0.6 0.5 0.5 Value of Policy 0.4 0.3 Value of Policy 0.4 0.3 0.2 0.2 0.1 0.1 0 MCEM MCEM with 2 best trajectories 0 PoWER PoWER with 2 best trajectories 0.1 0 5 10 15 20 25 30 35 Iterations 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.01 MCEM vs PoWER 0.6 0.6 0.5 0.5 0.4 0.4 Value of Policy 0.3 0.2 Value of Policy 0.3 0.2 0.1 0.1 0 0 MCEM PoWER MCEM, γ=0.85, δ=0.99 PoWER 0.1 0 5 10 15 20 25 30 35 Iterations 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.01 Με και χωρίς αναζήτηση επί γραμμής 0.6 0.6 0.5 0.5 0.4 0.4 Value of Policy 0.3 0.2 Value of Policy 0.3 0.2 0.1 0.1 0 0 MCEM MCEM with line search PoWER PoWER with line search 0.1 0 5 10 15 20 25 30 35 Iterations 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.01 Με και χωρίς τη χρήση των καλύτερων τροχιών 0.6 0.6 0.5 0.5 0.4 0.4 Value of Policy 0.3 0.2 Value of Policy 0.3 0.2 0.1 0.1 0 0 MCEM MCEM with 2 best trajectories PoWER PoWER with 2 best trajectories 0.1 0 5 10 15 20 25 30 35 Iterations 0.1 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.03 MCEM vs PoWER 0.3 0.3 0.25 0.25 0.2 0.2 Value of Policy 0.15 0.1 Value of Policy 0.15 0.1 0.05 0.05 0 PoWER MCEM 0.05 0 5 10 15 20 25 30 35 Iterations 0 PoWER MCEM, γ=0.85, δ=0.99 0.05 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.03 Με και χωρίς αναζήτηση επί γραμμής 0.3 0.3 0.25 0.25 0.2 0.2 Value of Policy 0.15 0.1 Value of Policy 0.15 0.1 0.05 0.05 0 0 MCEM MCEM with line search PoWER PoWER with line search 0.05 0 5 10 15 20 25 30 35 Iterations 0.05 0 5 10 15 20 25 30 35 Iterations
Πειράματα σ κ = 0.02 Συνάρτηση Ανταμοιβής { 1, αν x 2 < 0.1 r(t) = 0, αλλού (29) 0 Value of Policy 1 2 3 4 θ 2 5 6 7 8 9 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Πειράματα 300 επαναλήψεις με και χωρίς τη χρήση των 2 καλύτερων τροχιών x 0 = [15, 8] 0 1 Value of Policy MCEM 0 1 Value of Policy MCEM with 2 best trajectories 2 2 3 3 4 4 θ 2 5 θ 2 5 6 6 7 7 8 8 9 9 10 0 5 10 15 20 25 30 35 40 45 50 θ 1 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Πειράματα 300 επαναλήψεις με και χωρίς τη χρήση των 2 καλύτερων τροχιών x 0 = [5, 7] 0 1 Value of Policy MCEM 0 1 Value of Policy MCEM with 2 best trajectories 2 2 3 3 4 4 θ 2 5 θ 2 5 6 6 7 7 8 8 9 9 10 0 5 10 15 20 25 30 35 40 45 50 θ 1 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Πειράματα 300 επαναλήψεις με και χωρίς τη χρήση των 2 καλύτερων τροχιών x 0 = [10, 0, 5] 0 1 Value of Policy MCEM 0 1 Value of Policy MCEM with 2 best trajectories 2 2 3 3 4 4 θ 2 5 θ 2 5 6 6 7 7 8 8 9 9 10 0 5 10 15 20 25 30 35 40 45 50 θ 1 10 0 5 10 15 20 25 30 35 40 45 50 θ 1
Πειράματα Εξομοίωση αιώρησης ελικοπτέρου Μη γραμμικό, υψηλής διάστασης, στοχαστικό Χώρος καταστάσεων H θέση του ελικοπτέρου (x, y, z) H διεύθυνσή του (roll φ, pitch θ, yaw ω) Η ταχύτητά του σε κάθε διεύθυνση (ẋ, ẏ, ż) Χώρος ενεργειών u 1 : Έλεγχος μπρος - πίσω κυκλικής κλίσης u 2 : Έλεγχος αριστερά - δεξιά κυκλικής κλίσης u 3 : Έλεγχο κλίσης ρότορα της κύριας έλικας u 4 : Έλεγχος κλίσης ρότορα της ουραίας έλικας
Πειράματα Διάνυσμα λάθους 9 διαστάσεων Ο ελεγκτής u 1 = w 1 x error w 2 ẋ error w 3 θ error + w 4 (30) u 2 = w 5 y error w 6 ẏ error w 7 φ error + w 8 (31) u 3 = w 9 z error w 10 ż error + w 11 (32) u 4 = w 12 ω error (33) Η ανταμοιβή r 1 (t) = exp( x 2 error) + exp( ẋ 2 error) + exp( θerror) 2 (34) r 2 (t) = exp( y 2 error) + exp( ẏ 2 error) + exp( φ 2 error) (35) r 3 (t) = exp( z 2 error) + exp( ż 2 error) (36) r 4 (t) = exp( ωerror) 2 (37)
Πειράματα 6000 βήματα 10 λεπτά πραγματικού χρόνου πτήσης 100 επεισόδια σε κάθε επανάληψη Αναζήτηση επί γραμμής 10 επεισόδια Χρήση καλύτερων τροχιών 5 καλύτερες PoWER H = 50 MCEM γ = 0.95 δ = 0.99 Tmax = 600
Πειράματα Ευαισθησία του PoWER στο μήκος επεισοδίου 0.94 0.92 0.9 0.89 H=50 H=150 0.9 0.88 0.87 Value of Policy 0.88 0.86 Value of Policy 0.86 0.85 0.84 0.84 0.83 0.82 MCEM PoWER 0.82 0.8 0 2 4 6 8 10 12 Iterations 0.81 0 2 4 6 8 10 12 Iterations
Πειράματα Δύο 12 Vdc, 152 RpM spur geared κινητήρες Έναν oopic microcontroller Δύο 64 παλμών ανά περιστροφή οδόμετρα Ένα επιταχυνσιόμετρο 2 αξόνων και ένα γυροσκόπιο ενός άξονα Δύο πηγές ρεύματος
Πειράματα Xώρος καταστάσεων: x = [x 1, x 2, x 3, x 4 ] Ελεγκτής: u t = θ T x Ανταμοιβή: r(t) = exp( x 2 1 (t)) + exp( x2 3 (t)) 0.9 0.8 0.7 Value of Policy 0.6 0.5 0.4 0.3 0.2 0.1 0 1 2 3 4 5 5.5 Iterations
Διάρθρωση Εισαγωγή Μαρκοβιανές Διεργασίες Απόφασης (ΜΔΑ) Ενισχυτική Μάθηση Ενισχυτική Μάθηση με Συναρτήσεις Αξιολόγησης Αλγόριθμοι Πολιτικής Κλίσης Ο αλγόριθμος EM Ενισχυτική Μάθηση μέσω Πιθανοτικού Συμπερασμού Πειράματα Συμπεράσματα
Συμπεράσματα MCEM (+) Απλή υλοποίηση (+) Ελάχιστη χειροκίνητη παραμετροποίηση (+) Εύρωστη συμπεριφορά σε στοχαστικά περιβάλλοντα (+) Χαμηλή υπολογιστική πολυπλοκότητα O(mT) (-) Τοπικά βέλτιστα (-) "Τεθλασμένη" πορεία στο χώρο παραμέτρων (-) Μεγάλες απαιτήσεις σε μνήμη Εμπειρικοί κανόνες χρήσης των μεθόδων επιτάχυνσης Χρήση πάντα των p% καλύτερων τροχιών Μικρή στοχαστικότητα Αναζήτηση επί γραμμής
Συμπεράσματα..1 Nikos Vlassis, Kontes Georgios and Savas Piperidis, Reinforcement Learning of Robot Control via Probabilistic Inference, 1st Hellenic Robotics Conference (HEROC), February 23-24, Athens, 2009..2 Nikos Vlassis, Marc Toussaint, Georgios Kontes and Savas Piperidis, "Learning Model - free Robot Control by a Monte Carlo EM Algorithm", Autonomous Robots, Special issue on robot learning (accepted)
Ερωτήσεις Ερωτήσεις???