• Nenhum resultado encontrado

Algoritmo Q-Learning

No documento mauricioarchanjonunescoelho (páginas 40-44)

3 Determina¸ c˜ ao de Caminhos

3.5 Algoritmo Q-Learning

A tarefa de aprendizado de um agente que interage com um ambiente pode ser definida como determinar uma pol´ıtica ´otima que maximize os valores das recompensas em longo prazo, e estabele¸ca uma estrat´egia de controle que determina uma sequˆencia de a¸c˜oes, ou seja, a partir de um conjunto de pol´ıticas:

π : S → A

Respons´aveis pelo mapeamento de um conjunto de estados S, em um conjunto de a¸c˜oes A, o agente deseja determinar uma pol´ıtica ´otima, definida como:

π∗ ≡ M axπ{Vπ(s), (∀s)}

A fun¸c˜ao valor ´e computada na forma acumulativa, para um determinado estado st, a partir da soma ponderada dos retornos estabelecidos em fun¸c˜ao de uma pol´ıtica,

considerando um fator de desconto e uma fun¸c˜ao de retorno r, para um determinado horizonte que pode ser finito ou infinito. Portanto:

(s

Esse problema, relacionado ao aprendizado de uma pol´ıtica, n˜ao pode ser tratado sob a ´otica do aprendizado supervisionado, j´a que os pares do conjunto de treinamento, definidos como (s, a) = π(s), n˜ao s˜ao previamente conhecidos. O que se tem ´e uma sequˆencia de retornos, proveniente da transi¸c˜ao de estados resultantes da execu¸c˜ao das a¸c˜oes por parte do agente, caracterizando um problema de atribui¸c˜ao de cr´edito temporal. Tradicionalmente, quando se tem um conhecimento pr´evio de todo espa¸co de estados do problema, envolvendo todos os poss´ıveis estados e suas respectivas transi¸c˜oes, e um conhecimento completo da fun¸c˜ao de recompensa ou de retorno para cada transi¸c˜ao, a defini¸c˜ao de uma pol´ıtica ´otima na forma estoc´astica se encontra fundamentada na teoria de Processos de Decis˜ao Markovianos e, nos casos determin´ısticos, na solu¸c˜ao de um problema de Programa¸c˜ao Dinˆamica, conforme descrito no Apˆendice A.

3.5.1

Solu¸c˜ao Aproximada e Fun¸c˜ao Q

Considerando-se a ausˆencia das informa¸c˜oes relacionadas `as fun¸c˜oes de transferˆencia, e tamb´em o problema definido como a maldi¸c˜ao da dimensionalidade que afeta a viabilidade computacional do algoritmo de Programa¸c˜ao Dinˆamica, explicado no Apˆendice A, podem- se adotar como estrat´egia de solu¸c˜ao uma abordagem sub-´otima para o tratamento do problema de aprendizado de um agente. Considerando o crit´erio proposto por (BELLMAN, 1957), a escolha de uma a¸c˜ao ´otima a∗ no estado s, est´a relacionada `a maximiza¸c˜ao de um valor equivalente `a soma do retorno imediato produzido pela a¸c˜ao escolhida com os valores das recompensas futuras a partir do estado sucessor, associada ao fator de desconto. Portanto:

π ∗ (s) = argM axa{r(s, a) + γ.V∗(δ(s, a))}

Para que esta formula¸c˜ao seja empregada, ´e necess´ario que o agente aprenda a fun¸c˜ao de valor V∗, o que exige o conhecimento pr´evio da fun¸c˜ao de transi¸c˜ao e da fun¸c˜ao de recompensa r, para todas as transi¸c˜oes poss´ıveis, o que, como foi visto, nem sempre ´e poss´ıvel. Para resolver este problema, (WATKINS; DAYAN, 1989) prop˜oe o aprendizado de uma fun¸c˜ao alternativa, conhecida como fun¸c˜ao Q, que consiste de uma fun¸c˜ao de avalia¸c˜ao definida na forma:

Q(s, a) ≡ r(s, a) + γ.V∗(δ(s, a))

Considerando:

V ∗ (s) = M axa0Q(s, a0)

Pode-se redefinir a fun¸c˜ao Q na forma recursiva como: Q(s, a) ≡ r(s, a) + γ.M axa0Q(δ(s, a), a0)

´

E importante observar que o aprendizado da fun¸c˜ao Q torna desnecess´ario o aprendi- zado da fun¸c˜ao valor V ∗ e, tamb´em, do conhecimento a priori das fun¸c˜oes de recompensa r e de transi¸c˜ao. Em uma forma de treinamento online os valores provenientes des- tas fun¸c˜oes s˜ao obtidos diretamente da resposta do ambiente. Para estimar a fun¸c˜ao Q (WATKINS; DAYAN, 1989) propˆos um algoritmo de treinamento baseado em corre¸c˜oes por sucessivas diferen¸cas temporais conhecido como Q-Learning. Neste sentido, define-se uma fun¸c˜ao de aproxima¸c˜ao Q que ´e atualizada de forma iterativa da seguinte forma:

Q(s, a) ← r(s, a) + γ.M axa0Q(s0, a0), sendo s0 = δ(s, a)

Ou seja, no estado s o agente escolhe uma a¸c˜ao a que maximiza a sua escolha, consi- derando os valores aproximados da fun¸c˜ao Q entre todas as alternativas poss´ıveis. Dessa forma, os valores mais recentes da fun¸c˜ao Q para o estado sucessor s0 s˜ao utilizados para a atualiza¸c˜ao do valor da fun¸c˜ao Q para o estado s. Este algoritmo pode ser estendido para situa¸c˜oes de n˜ao determinismo, onde as fun¸c˜oes de recompensa e de transi¸c˜ao possuem um car´ater randˆomico.

3.5.2

Q-Learning Incremental

A atualiza¸c˜ao dos valores da fun¸c˜ao Q, considerando somente o efeito da a¸c˜ao e a consequente recompensa associada, implementa um processo de aprendizado baseado na ado¸c˜ao de um crit´erio de corre¸c˜ao por retorno ou diferen¸ca imediata.

Entretanto, ´e poss´ıvel a atualiza¸c˜ao dos valores da fun¸c˜ao Q considerando o efeito de um conjunto de a¸c˜oes antecessoras associadas `as suas respectivas recompensas, com a utiliza¸c˜ao do fator de desconto λ no sentido de incrementar ou tornar mais influente as decis˜oes tomadas mais recentemente. Este processo, que tamb´em pode ser definido como um algoritmo de aprendizado de m´ultiplos passos, tem uma rela¸c˜ao direta com o m´etodo mais geral de diferen¸cas temporais, conhecido como T D(λ).

Na nova implementa¸c˜ao a ´unica diferen¸ca em rela¸c˜ao ao algoritmo cl´assico do Q- Learning, que atualiza um ´unico estado por vez baseado no retorno imediato, est´a na forma de atualiza¸c˜ao dos valores da fun¸c˜ao Q. Considerando o valor da taxa de aprendizagem igual a um , β = 1, e a corre¸c˜ao em dois passos:

Q(x, a) = r(x, y) + γ.(M axa0{Q(y, a0)}) + γ.(M axa00{Q(z, a00)})

Para duas transi¸c˜oes sucessivas, representadas pelas respectivas fun¸c˜oes de trans- ferˆencia:

z = δ(y, a0) e y = δ(x, a)

A exemplo do m´etodo T D(λ) considera-se a existˆencia de um n´umero vari´avel de pas- sos no processo de corre¸c˜ao da fun¸c˜ao. Neste caso, o valor de cada estado fica ponderado pela n-´esima potˆencia da taxa de desconto, ou seja multiplica-se por γn, considerando n

o n´umero de transi¸c˜oes observadas.

Uma alternativa para melhorar a eficiˆencia do algoritmo Q-Learning consiste na atu- aliza¸c˜ao simultˆanea de v´arios estados para a mesma a¸c˜ao escolhida, que possuam algum grau de similaridade com o estado atual. Neste caso, ´e necess´aria a implementa¸c˜ao de um processo de matching ou de reconhecimento por algum tipo de t´ecnica n˜ao supervisionada como, por exemplo, algoritmos de an´alise de cluster ou de mem´oria associativa.

As maiores deficiˆencias do algoritmo Q-Learning se referem a sua baixa taxa de con- vergˆencia e a necessidade de armazenamento expl´ıcito dos valores da fun¸c˜ao Q.

No documento mauricioarchanjonunescoelho (páginas 40-44)

Documentos relacionados