Food

Aprendizado por Reforço

Description
Aprendizado por Reforço SCC5865-Robótica Roseli A F Romero Introdução O modelo padrão de aprendizado por reforço Aprendizado por Reforço Formalmente, o modelo consiste de: Um conjunto discreto de estados
Categories
Published
of 40
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
Aprendizado por Reforço SCC5865-Robótica Roseli A F Romero Introdução O modelo padrão de aprendizado por reforço Aprendizado por Reforço Formalmente, o modelo consiste de: Um conjunto discreto de estados do ambiente, S; Um conjunto discreto de ações do agente, A; Um conjunto de sinais de reforço, normalmente {0,1}, ou um número real. Aprendizado por Reforço AMBIENTE NON DETERMINISTICO Exemplo: Ambiente: Você está no estado 65. Você possui 4 possíveis ações. Agente: Eu realizo a ação 2. Ambiente: Você recebeu um reforço de 7 unidades. Você agora está no estado 15. Você possui 2 possíveis ações. Agente: Eu realizo a ação 1. Ambiente: Você recebeu um reforço de -4 unidades. Você agora está no estado 65. Você possui 4 possíveis ações. Agente: Eu realizo a ação 2. Ambiente: Você recebeu um reforço de 5 unidades. Você agora está no estado 44. Você possui 5 possíveis ações.... Modelos de Comportamento Ótimo 1- Finite-horizon model E h t= 0 em que, r t : recompensa escalar recebida no passo t 2 Infinite-horizont discounted model r t Otimizar sua recompensa esperada para os prox. h passos E t= 0 t γ r t em que, γ: fator de desconto (0 = γ 1) - taxa de interesse, probabilidade de vida ou limitador da soma infinita. Modelos de Comportamento Ótimo 3) Average-reward model lim h E 1 h h t= 0 r t Otimizar a recompensa média de longo termo Tal política é conhecida como política de ganho ótima. Pode ser vista como caso limite do 2o. Modelo quando o fator de desconto se aproxima de 1 (Bertsekas, 1995). Modelos de Comportamento Ótimo Comparando modelos H=5, as três ações produzirão recompensas: a. Ação é escolhida Medidas de Desempenho do Aprendizado Convergência para o ótimo; Velocidade de convergência para o ótimo; Regret; Aprendizado por reforço e controle adaptativo. Programação Dinâmica Exemplo 1 Considere o problema de programação linear: max sujeito a f = 8x + 10x 1 2 4x + 2x x, x Resolvendo o problema acima (método simplex), obtém-se: x = 0; x = 6; f = Programação Dinâmica Uma proposta alternativa é determinar a variável gradativamente, através de decomposição do problema em uma série de estágios. A decomposição do problema (1) é ilustrada na Figura 1 abaixo. Figura 1 Diagrama de Fluxo Programação Dinâmica maxx 1 f = 10x 1 2 sujeito a 2x 12 4x x 2 * Solução: x = 6 2 x ; f = 60 20x * * Programação Dinâmica maxx 1 f = 8x + f = 60 12x sujeito a 4x 12 x x Solução: = 0; f = x = 6 2 Programação Dinâmica O estágio de entrada do estágio no. n,y n-1, é transformado em um estado de saída y n através da mudança provocada pela variável de decisão x n. As mudanças sucessivas do estado do sistema pode ser formalmente descrita pelas equações de tranformação da forma y t ( y, x ) = n= 1, 2,..., n n n 1 n N No exemplo elas tem a forma y = y 4x y = y 2x 2 1 2 Programação Dinâmica Juntas com as restrições de não negatividade x 1,x 2,y 1,y 2 0, elas são equivalentes as restrições do problema original (1), y 0 sendo igual a 12 e y 2 representando a variável de folga (slack variable). O retorno de cada estágio será dependente, em geral, do estado de entrada e das variáveis de decisão: r r ( y, x ) = n= 1, 2,..., N n n n 1 n No exemplo em questão as funções de retorno são da forma simples r = 10x 1 = 8x1 2 2 r Programação Dinâmica Introduzindo estes símbolos na Figura 1, o diagrama de fluxo do problema de dois estágios é ilustrado segundo a Figura 2. Figura 2 Diagrama de Fluxo Programação Dinâmica maxx 2 sujeito a f = r ( x ) = 10x 2x y x Solução: x ( y ) = 0.5y F( y ) = 5y em que, F 1 denota o valor máximo da função de decisão do estágio, F = max x f Programação Dinâmica max x f = r( x ) + F( y ) = 8x + 5y = = 8x + 5( y 4 x ) = 5y 12x em que, sujeito a F = 4x x max x 1 y f 2 2 Solução: x ( y ) = F ( y ) = 5y 2 0 0 Programação Dinâmica F y 1( 1) = maxx 10x x 2 2 y x (0 0.5 ) F ( y ) = max (8 x + F( y )) = max [8 x + F( y 4 x )] x1 y0 x ( ) em que, f = F 2 (y 0 ) max f = max [ r( y, x ) + r ( y, x )] x, x Programação Dinâmica F( y ) = max [ r ( y, x )] 1 1 x F ( y ) = max [ r( y, x ) + F( t ( y, x ))] 2 0 x O diagrama de fluxo para um sistema de N-estágios é apresentado na Figura 3 (próximo slide). Programação Dinâmica Figura 3 Diagrama de Fluxo Programação Dinâmica As funções de decisão dos estágios são respectivamente f = r ( y, x ) 1 N N 1 N N, N 1,...,2,1 f = r ( y, x ) + F( y ); y = t ( y, x )... 2 N 1 N 2 N 1 1 N 1 N 1 N 1 N 2 N 1 f = r ( y, x ) + F ( y ); y = t ( y, x )... i N ( i 1) N i N ( i 1) i 1 N ( i 1) N ( i 1) N ( i 1) N i N ( i 1) f = r( y, x ) + F ( y ) N N 1 1 em que, y 1 = t 1 (y 0,x 1 ) e F j é o máximo de f j, j= 1,2,...,N. Programação Dinâmica Maximizando a função de decisão de cada estágio em relação a sua variável de decisão e tratando o estado de entrada como um parâmetro, obtêm-se as soluções de estágio paramétricas xn xn( yn 1) = n= N, N 1,..., 2,1 Programação Dinâmica Caso de Otimização Discreta Suponha um exemplo no qual r 1 e r 2 são definidas apenas para os intervalos x 1 3 e x 2 6: Programação Dinâmica Caso de Otimização Discreta Programação Dinâmica Caso de Otimização Discreta Programação Dinâmica Referência ROMERO, R. A. F. ; GOMIDE, F A C. A Neural Network to Solve Discrete Dynamic Programming Problems. Campinas-SP: Relatório Técnico no 16/92, DCA/FEE/UNICAMP, 1992 (Relatório Técnico) Técnicas Justificadas Formalmente Programação dinâmica * V ( n1, w1,..., nk, wk) maxi E = Future payoff if agent takes action i, then acts optimally for remaining pulls ρ V ( n, w,..., n + 1, w + 1,..., n, w ) + (,,...,, ) = max (1 ) (,,..., 1,,...,, ) * * i 1 i i i k k V n1 w1 nk wk i * ρi V n1 wi ni + wi nk wk Recompensa Atrasada Processos de Decisão de Markov (MDP) Um MDP consiste de: Um conjunto de estados S; Um conjunto de ações A; Uma função de recompensa R: SxA R; Recompensa Atrasada Processos de Decisão de Markov (MDP) T : SxA ( S) Uma função de transferência de estado, em que um membro de ( S) é uma distribuição de probabilidade sobre o conjunto S. Dessa maneira, T(s,a,s ) éa probabilidade de realizar a transição do estado s para o estado s através da ação a. Recompensa Atrasada Definindo uma política de um modelo = * t V () s maxe γ rt π t= 0 = + * * V () s max (, ) (,, ') ('), a R s a γ T s a s V s s S s' S (1) Recompensa Atrasada Definindo uma política de um modelo * * π () s = arg max Rsa (, ) γ TsasV (,, ') ( s') a + s' S Algoritmo Value Iteration Definindo uma política de um modelo initialize V(s) arbitrarily loop until policy good enough loop for s S loop for a A Qsa (, ): = Rsa (, ) + γ Tsas (,, ') Vs (') V(): s = max Q(, s a) end loop end loop a s' S Complexidade: quadratica no no. de estados e linear no no. de ações Recompensa Atrasada Definindo uma política de um modelo baseada na eq. 1 ( γ ) Qsa (, ): = Qsa (, ) + α r+ max Qs (', a') Qsa (, ) a' r é uma amostra com média R(S,a) e variancia limitada e s é amostrado da distr. T(s,a,s ) Algoritmo de Policy Iteration Definindo uma política de um modelo choose an arbitrary policy π loop until π : = π ' compute the value function of policy π: solve the linear equations V () s R(, s π ()) s γ T(, s π (), s s') V (') s π = + s' S improve the policy at each state: ( ) π π '( s) : = arg max R( s, a) + γ T( s, a, s') V ( s') π = π ' a s ' S π Métodos Livres de Modelos Q-Learning * * Q s a R s a γ T s a s Q s a a' s' S (, ) = (, ) + (,, ')max ( ', ') ( γ ) Qsa (, ): = Qsa (, ) + α r+ max Qs (', a') Qsa (, ) a' Q-Learning [Watkins, 1989] No tempo t, o agente: observa estado s t e reforço R t, seleciona ação a t ; No tempo t+1, o agente: observa estado s t+1 ; atualiza o valor de ação Q t (s t,a t ) de acordo com Q t (s t,a t )=α t [R t + γ max a Q t (s t+1,a) - Q t (s t,a t )] Características do Q-Learning Convergência garantida Ações de treino podem ser escolhidas livremente Convergência extremamente lenta Q-Learning Exploração X Exploitação O algoritmo pode ser tendioso se a escolha for sempre para a melhor ação (exploração). Então deve-se colocar uma taxa de exploitação (ainda que pequena) para que uma ação seja escolhida de forma aleatória. R-learning [Schwartz, 1993] Semelhante ao Q-learning, mas: Maximiza a recompensa média para cada passo. Não utiliza descontos (γ). Atualiza o valor de ação R t (s t,a t ) de acordo com R t (s t,a t )=α t [r t - ρ + max a R t (s t +1,a) - R t (s t,a t )] ρ só é atualizado quando a não for aleatório: ρ t = ρ t + β [r t + max a R t (s t +1,a) - max a R t (s t,a) ρ t ] Referências Kaelbling, L. P.; Littman, M. L. ; Moore, A. W. (1996). Reinforcement Learning: A Survey. Journal of Artificial Intelligence Research, vol. 4, pg
Search
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks