134
Davi Carnaúba de Lima Vieira MODELO DE REDE NEURAL CRESCENTE DE APRENDIZAGEM POR REFORÇO Tese de Doutorado Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE 2016

Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Davi Carnaúba de Lima Vieira

MODELO DE REDE NEURAL CRESCENTE DE APRENDIZAGEM

POR REFORÇO

Tese de Doutorado

Universidade Federal de [email protected]

www.cin.ufpe.br/~posgraduacao

RECIFE2016

Page 2: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Davi Carnaúba de Lima Vieira

MODELO DE REDE NEURAL CRESCENTE DE APRENDIZAGEMPOR REFORÇO

Trabalho apresentado ao Programa de Pós-graduação em

Ciência da Computação do Centro de Informática da Univer-

sidade Federal de Pernambuco como requisito parcial para

obtenção do grau de Doutor em Ciência da Computação.

Orientador: Paulo Jorge Leitão Adeodato

RECIFE2016

Page 3: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Catalogação na fonte

Bibliotecária Monick Raquel Silvestre da S. Portes, CRB4-1217

V658m Vieira, Davi Carnaúba de LimaModelo de rede neural crescente de aprendizagem por reforço / Davi

Carnaúba de Lima Vieira. – 2016. 133 f.: il., fig., tab.

Orientador: Paulo Jorge Leitão Adeodato. Tese (Doutorado) – Universidade Federal de Pernambuco. CIn, Ciência da

Computação, Recife, 2016. Inclui referências e apêndices.

1. Inteligência artificial. 2. Redes neurais. 3. Diferença temporal. I.Adeodato, Paulo Jorge Leitão (orientador). II. Título.

006.31 CDD (23. ed.) UFPE- MEI 2016-151

Page 4: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Davi Carnaúba de Lima Vieira

Modelo de Rede Neural Crescente de Aprendizagem por Reforço

Tese de Doutorado apresentada ao Programade Pós-Graduação em Ciência daComputação da Universidade Federal dePernambuco, como requisito parcial para aobtenção do título de Doutor em Ciência daComputação

Aprovado em: 03/03/2016.

_____________________________________________Orientador: Prof. Dr. Paulo Jorge Leitão Adeodato

BANCA EXAMINADORA

_____________________________________________Profa. Dra. Patricia Cabral de Azevedo Restelli Tedesco

Centro de Informática / UFPE

________________________________________________Prof. Dr. Ulisses Martins Dias

Faculdade de Tecnologia / UNICAMP

_____________________________________________Prof. Dr. Carlos Henrique Costa Ribeiro

Departamento de Teoria da Computação / ITA

______________________________________________Prof. Dr. Orivaldo Vieira de Santana JuniorEscola de Ciências e Tecnologia / UFRN

_____________________________________________ Prof. Dr. Arthur Plínio de Souza Braga

Departamento de Engenharia Elétrica / UFC

Page 5: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Eu dedico esta tese para meus pais que me deram todo o

apoio necessário para concluir este trabalho.

Page 6: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Agradecimentos

Agradeço primeiramente a Deus por me conceder sabedoria suficiente para concluir estatese.

Ao meu orientador, Paulo Adeodato, pela orientação.Aos professores Patrícia Tedesco, Carlos Ribeiro e Ulisses Dias pelas sugestões que

contribuíram em muito para o aprimoramento deste trabalho. Novamente aos professores CarlosRibeiro e Ulisses Dias por toda ajuda oferecida. Novamente ao meu orientador pela humildade,amizade, ensinamentos e correções que foram realizadas no presente trabalho.

Aos professores, Aluízio Ribeiro, Flávia Barros, Francisco Assis, Marcílio de Souto, Pa-trícia Tedesco, Paulo Adeodato, Ricardo Prudêncio e Teresa Ludermir, por todo o conhecimentoque me foi passado. À secretária da pós-graduação, Maria do Socorro, por prestar um excelenteatendimento. Ao Centro de Informática pela oportunidade.

À minha esposa, Márcia Carine, pela paciência e apoio. Aos meus filhos que implicita-mente me deram forças para concluir esta tese. Aos meus amigos, Nelson Rocha, Kleiton Jatobá,Jaziel Lobo e Antônio Aliberte, pelas palavras de apoio. Ao meu irmão, Daniel Carnaúba, porsempre me desejar o melhor. Aos meus pais por tudo.

Aos meus tios, Manoel Santos e Joana d’Arc, pela ajuda com minha redistribuição. Aoreitor do IFAL, Sérgio Teixeira, por tornar isto possível.

Não poderia esquecer todos os meus amigos que fiz durante minha passagem pelo Centrode Informática e pelos Institutos Federais de Pernambuco e Sergipe. Aos meus amigos do campusRio Largo - IFAL.

À CAPES pela ajuda financeira.

Page 7: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Não se afogue nos dados. Monte um tabelão, gere os resultados e interprete.

—PAULO J. L. ADEODATO

Page 8: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Resumo

Os algoritmos da Aprendizagem por Reforço (AR) têm sido amplamente utilizados paraa construção de agentes autônomos. Inspirada no comportamento da aprendizagem animal, a ARé um paradigma que serve como base para algoritmos que aprendem por tentativa e erro. Apesarda sua popularidade e sua sólida base matemática e garantia teórica de convergência para umasolução ótima, a AR apresenta restrições de aplicação em tarefas em que o espaço de estados émuito grande.

Por meio do agrupamento de estados similares é possível reduzir o tamanho do espaço deestados. Uma vez reduzido, o problema pode ser resolvido utilizando os algoritmos tradicionaisda AR. A principal questão que se coloca aqui é como efetuar a agregação, de tal modo que,por um lado, se possa obter uma “boa” representação do espaço de estados, e pelo outro lado, odesempenho do modelo não degrade. Este é um dos grandes desafios da AR.

Esta tese propõe agrupar estados similares, por meio do uso do mapa auto-organizável deFritzke, como forma de reduzir o espaço de estados. A maior parte das pesquisas que envolvemo uso de algoritmos que discretizam o espaço de estados busca aprimorar o momento certo paraa partição do espaço de estados, onde particionar e quando parar, enquanto os algoritmos ARpermanecem inalterados. Esses trabalhos em geral resultam em algoritmos que não convergemem determinados problemas ou que possuem uma capacidade de aprendizagem “fraca”. Opresente trabalho contribui mostrando a fragilidade destes algoritmos ao mesmo tempo em queapresenta uma solução eficaz para o problema.

Esta tese compara o algoritmo proposto com quatro algoritmos AR chamados: Tile

Coding (TC), Temporal Difference Adaptive Vector Quantification (TD-AVQ), Q(λ) com Dis-cretização Uniforme (Q(λ)-DU) e Interpolating Growing Neural Gas Q-learning (IGNG-Q).Os experimentos mostram que o algoritmo proposto foi capaz de encontrar a solução dos cincoambientes de teste envolvidos. Em comparação com o algoritmo TC, o algoritmo proposto foicapaz de proporcionar uma redução no uso da memória de 88%, 87%, 98% e 97% nos ambientesContinuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. No teste, oalgoritmo proposto foi o único capaz de produzir uma política utilizável nos ambientes Conti-

nuous Maze e Slow Puddle World. O presente trabalho também mostra que o algoritmo n-step

Temporal Difference with Elegibility Traces (TD(nλ)) é mais indicado para o uso em ambientesdiscretizados que o Q(λ). O uso do algoritmo proposto com Discretização Uniforme (DU) foicapaz de mostrar convergência em problemas onde o Q(λ) não conseguiu. O produto final destatese é um algoritmo robusto capaz de encontrar em tempo hábil uma solução para todos osambientes de teste envolvidos.

Palavras-chave: Diferença Temporal. Modelo Adaptativo. Discretização do Espaço de

Page 9: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Estados.

Page 10: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Abstract

Reinforcement Learning (RL) algorithms has been widely used for the construction ofautonomous agents. Inspired by the behavior of animal learning, RL is a paradigm that servesas basis for algorithms that learn by trial and error. Despite its popularity, solid mathematicalfoundation and theoretical guarantee of convergence to an optimal solution, RL have applicabilityconstraints on tasks where the state space is too large.

By aggregating similar states one can reduce the state space size. Once reduced, theproblem can be solved using traditional RL algorithms. The main question that arises here ishow to realize the aggregation, so on the one hand, you can get a “good” representation of thestate space, and on the other hand, the model performance does not degrade. This is one of thechallenges of RL.

This thesis proposes aggregation of similar states, through the use of Fritzke’s self-organizing map, in order to reduce the state space. Most research involving the use of algorithmsthat discretize the state space seek to improve the right time for the partition of the state space,where to partition and when to stop, while the RL algorithms remains unchanged. These worksoften result in algorithms that do not converge on certain problems or have a “weak” learningcapacity. This work contributes showing the fragility of these algorithms while presents aneffective solution to the problem.

This thesis compares the proposed algorithm with four RL algorithms namely: TileCoding (TC), Temporal Difference Adaptive Vector Quantization (TD-AVQ), Uniform Discre-tization (DU) and Interpolating Growing Neural Gas Q-learning (IGNG-Q). The experimentsshow that the proposed algorithm was able to find the solution on five testbed environments.Compared with TC, the proposed algorithm was able to provide a reduction in memory usage of88%, 87%, 98% and 97% in the environments Continuous Maze, Slow Puddle World, Mountain

Car and Acrobot respectively. In the test, the proposed algorithm was the only capable to foundan solution for the environments Continuous Maze and Slow Puddle World. This thesis alsoshows that the RL algorithm proposed is more suitable for the use in discretized environmentsthan Q(λ). The application of TD(nλ) with DU was able to show convergence in problemswhere Q(λ) failed. The final product of this thesis is a robust algorithm able to find in time asolution for all specified test environments.

Keywords: Temporal Difference. Adaptive Model. Discretization of the State Space.

Page 11: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Lista de Figuras

2.1 Interação agente-ambiente. Adaptado de Sutton; Barto (1998). . . . . . . . . . 282.2 Tarefa com três estados e um estado meta que mostra o atraso na atualização da

função valor pelo algoritmo Q-learning. . . . . . . . . . . . . . . . . . . . . . 302.3 Atualização da função valor realizada pelos algoritmos Q-learning e Q(λ) no

ambiente Gridworld após alcançar o estado meta. . . . . . . . . . . . . . . . . 33

3.1 Ambiente Mountain Car. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.2 Ambiente Puddle World. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383.3 Ambiente Acrobot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.4 Ambiente Continuous Maze. . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.5 Carro com quatro rodas construído utilizando o kit Lego Mindstorms EV3. . . 423.6 Visão do topo do ambiente Steering Car observado pela webcam. . . . . . . . 423.7 Visão técnica do ambiente Steering Car. . . . . . . . . . . . . . . . . . . . . . 433.8 Representação da função valor em um espaço de estados bidimensional particio-

nado em nove regiões disjuntas. . . . . . . . . . . . . . . . . . . . . . . . . . 453.9 Espiral apresentada como entrada para a rede Growing Neural Gas (GNG). . . 483.10 Particionamento do ambiente Mountain Car realizado pelo algoritmo GNG. . . 493.11 Discretização uniforme do ambiente Gridworld. . . . . . . . . . . . . . . . . . 503.12 Exemplo da dependência do caminho no ambiente Maze 4×4. . . . . . . . . . 513.13 Fenômeno Chattering observado no ambiente Gridworld quando particionado

uniformemente em quatro regiões. . . . . . . . . . . . . . . . . . . . . . . . . 523.14 Grafo de transição entre os estados da região 4 do ambiente Gridworld particio-

nado uniformemente em quatro regiões. . . . . . . . . . . . . . . . . . . . . . 523.15 Fenômeno Chattering observado do espaço de políticas. . . . . . . . . . . . . . 543.16 Redução dos efeitos do fenômeno Chattering observado no ambiente Gridworld

após tornar a política fixa durante os episódios. . . . . . . . . . . . . . . . . . 54

4.1 Ativação de dois tiles em dois tilings pelo algoritmo TC . . . . . . . . . . . . . 574.2 Estrutura da rede Multilayer Perceptron (MLP) utilizada pelo algoritmo Neural

Fitted Q-iteration (NFQ). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 594.3 Discretização uniforme e as estimativas do retorno das 4 ações (esquerda, cima,

baixo e direita) após convergência da função valor pelo algoritmo Q-learning. . 614.4 Oscilação da política devido a dependência do caminho. . . . . . . . . . . . . 624.5 Processo de refinamento do algoritmo Adaptive Tile Coding (ATC) em um

ambiente que requer duas ações diferentes em duas regiões distintas a e b. . . . 63

Page 12: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.6 Decaimento de ∆V em um problema com apenas um estado no qual o agenterecebe recompensa −1 a cada passo de tempo. Os parâmetros utilizados foram:α = 0.1 e γ = 0.95. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.7 Saturação da função valor e a política derivada dela. . . . . . . . . . . . . . . . 664.8 Custo dos caminhos P1 e P2 calculados pelo algoritmo TD-AVQ. . . . . . . . . 68

5.1 Ambiente Mountain Car. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.2 Ambiente Puddle World. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745.3 Ambiente Acrobot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.4 Ambiente Continuous Maze. . . . . . . . . . . . . . . . . . . . . . . . . . . . 765.5 Carro com quatro rodas construído utilizando o kit Lego Mindstorms EV3. . . 775.6 Visão do topo do ambiente Steering Car observado pela webcam. . . . . . . . 785.7 Visão técnica do ambiente Steering Car. . . . . . . . . . . . . . . . . . . . . . 79

6.1 Partição do espaço de estados realizado pelo algoritmo n-step Temporal Diffe-

rence Growing Neural Gas with Elegibility Traces (TD(nλ)-GNG) no ambienteMoutain Car após 10, 250, 500 e 1000 episódios. . . . . . . . . . . . . . . . . 83

6.2 Estados visitados pelo agente no espaço de estados do ambiente Mountain Car.A política encontrada pelo algoritmo proposto percorreu 116 estados. . . . . . 84

6.3 Particionamento realizado pelo algoritmo proposto no ambiente Puddle World eContinuous Maze após 1000. . . . . . . . . . . . . . . . . . . . . . . . . . . . 85

6.4 Efeito dos parâmetros c e γ no crescimento e desempenho do algoritmo proposto. 886.5 Aumento da função valor para diferentes valores de γ até sua saturação. . . . . 896.6 Crescimento do algoritmo proposto nos ambientes Mountain Car, Steering Car,

Puddle World e Acrobot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 906.7 Esquema do processo de aprendizagem do algoritmo proposto. . . . . . . . . . 976.8 Desempenho do algoritmo proposto no treinamento do agente nos ambientes

Mountain Car, Steering Car, Acrobot, Continuous Maze e Puddle World (recom-pensa acumulada). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98

6.9 Custos (maxaQ(s,a)) e (∑aQ(s,a)) estimado pelo algoritmo proposto após

1000 episódios nos ambientes Puddle World e Mountain Car, respectivamente. 996.10 Sequência de cinco ações desempenhadas pelo algoritmo proposto para guiar o

carro até a região meta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

7.1 Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU, TD-AVQ,IGNG-Q, TC e Q(λ)-DU no ambiente Mountain Car. . . . . . . . . . . . . . . 103

7.2 Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU, TD-AVQ,IGNG-Q, TC e Q(λ)-DU no ambiente Puddle World. . . . . . . . . . . . . . . 104

7.3 Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU, TC e TD-AVQno ambiente Slow Puddle World. . . . . . . . . . . . . . . . . . . . . . . . . . 104

Page 13: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.4 Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU, TD-AVQ,TC e Q(λ)-DU no ambiente Acrobot. . . . . . . . . . . . . . . . . . . . . . . . 104

7.5 Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU e TC noambiente Continuous Maze. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

7.6 Particionamento do ambiente Puddle World realizado pelo algoritmo TD-AVQ. 1057.7 Particionamento do ambiente Mountain Car realizado pelo algoritmo IGNG-Q. 1067.8 Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ, TD(nλ)-GNG,

TC, DU e IGNG-Q no ambiente Mountain Car com intervalo de confiança de95%. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

7.9 Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ, TD(nλ)-GNG,TC, DU e IGNG-Q no ambiente Puddle World com intervalo de confiança de 95%.108

7.10 Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ, TD(nλ)-GNG,TC e Temporal Differente de n-passos (TD(n))-DU no ambiente Slow Puddle

World com intervalo de confiança de 95%. . . . . . . . . . . . . . . . . . . . . 1087.11 Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ, TD(nλ)-GNG,

TC e DU no ambiente Acrobot com intervalo de confiança de 95%. . . . . . . . 1087.12 Área abaixo da curva de aprendizagem dos algoritmos TD(nλ)-GNG, TC e

TD(nλ)-DU no ambiente Continuous Maze com intervalo de confiança de 95%. 1097.13 Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU no

ambiente Mountain Car. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117.14 Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU no

ambiente Puddle World. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127.15 Desempenho no teste do algoritmo TD(nλ)-GNG nos ambientes Continuous

Maze e Slow Puddle World. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1127.16 Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU no

ambiente Acrobot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

A.1 Algoritmo para encontrar o nó mais próximo do sinal de entrada. . . . . . . . . 127A.2 Algoritmo de busca pelos tiles ativos. . . . . . . . . . . . . . . . . . . . . . . 127A.3 Algoritmo de busca pela região ativa. . . . . . . . . . . . . . . . . . . . . . . . 127A.4 Função atualização responsável pela atualização da função valor. . . . . . . . . 128

Page 14: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Lista de Tabelas

4.1 Principais características dos algoritmos TC, NFQ, ATC, IGNG-Q, TD-AVQ,Sarsa Learning Vector Quantization (SLVQ) e Montazeri-GNG. . . . . . . . . 71

7.1 Tempo de aprendizagem em média dos algoritmos TC, IGNG-Q, TD-AVQ,TD(nλ)-GNG, TD(nλ)-DU e Q(λ)-DU nos ambientes Mountain Car (MC), Pud-dle World (PW), Slow Puddle World (Slow PW), Acrobot e Maze. Os melhoresresultados em cada ambiente estão destacados em negrito. . . . . . . . . . . . 109

7.2 Média de 10 execuções da memória gasta pelos algoritmos TD(nλ)-GNG, TD-AVQ,TC, IGNG-Q e DU nos ambientes Mountain Car, Acrobot, Continuous Maze,Puddle World e Slow Puddle World. . . . . . . . . . . . . . . . . . . . . . . . 110

7.3 Qualidade da política em média dos algoritmos TC, IGNG-Q, TD-AVQ, TD(nλ)-GNG,TD(nλ)-DU e Q(λ)-DU nos ambientes Mountain Car (MC), Puddle World (PW),Slow Puddle World (Slow PW), Acrobot e Maze. Os melhores resultados emcada ambiente estão destacados em negrito. . . . . . . . . . . . . . . . . . . . 113

7.4 Tempo de execução dos algoritmos TD(nλ)-GNG, TD-AVQ, TC, IGNG-Q eDU nas etapas de busca pela partição ativa e atualização da função valor. . . . . 113

8.1 Melhores algoritmos nos quesitos tempo de aprendizagem, memória utilizada equalidade da política. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

8.2 Os tipos de Arduínos, seus respectivos processores e, tipo e quantidade dememória disponível. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

B.1 Configuração dos parâmetros iniciais dos algoritmos TD(nλ)-GNG, TD-AVQ,TC, IGNG-Q e DU para os ambientes Mountain Car, Acrobot, Puddle World,Slow Puddle World e Continuous Maze. . . . . . . . . . . . . . . . . . . . . . 130

B.2 Espaço de busca dos parâmetros dos algoritmos TD(nλ)-GNG, TD-AVQ, TC,IGNG-Q e DU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

B.3 Melhores parâmetros para os algoritmos TD(nλ)-GNG, TD-AVQ, TC, IGNG-Qe DU para os ambientes Mountain Car, Acrobot e Puddle World. . . . . . . . . 133

Page 15: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Lista de Definições

2.1 Propriedade de Markov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.2 Processo de Decisão de Markov . . . . . . . . . . . . . . . . . . . . . . . . . 272.3 Política Ótima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.4 Q-learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.5 Política ε-greedy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292.6 Retorno-λ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

3.1 Processo de Discretização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.2 Dependência do Caminho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.3 Saturação da função valor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Page 16: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Lista de Acrônimos

AM Aprendizagem de Máquina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

AR Aprendizagem por Reforço . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

ATC Adaptive Tile Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .62

CHL Competitive Hebbian Learning – CHL

DU Discretização Uniforme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Q(λ)-DU Q(λ) com Discretização Uniforme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

TD(nλ)-DU TD(nλ) com Discretização Uniforme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

GNG Growing Neural Gas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

IGNG-Q Interpolating Growing Neural Gas Q-learning . . . . . . . . . . . . . . . . . . . . . . . . . . 64

IA Inteligência Artificial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

LVQ Learning Vector Quantization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

MLP Multilayer Perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

NFQ Neural Fitted Q-iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

PDM Processo de Decisão de Markov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

PG Progressão Geométrica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

RPROP Resilient Propagation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

SLVQ Sarsa Learning Vector Quantization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

SOM Self-Organized Map - Mapas Auto-Organizáveis . . . . . . . . . . . . . . . . . . . . . . . . 22

TC Tile Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

TD Temporal Difference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

TD(n) Temporal Differente de n-passos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

TD(nλ) n-step Temporal Difference with Elegibility Traces . . . . . . . . . . . . . . . . . . . . . . 24

TD(nλ)-GNG n-step Temporal Difference Growing Neural Gas with Elegibility Traces . . 24

TD-AVQ Temporal Difference Adaptive Vector Quantification . . . . . . . . . . . . . . . . . . . . .66

Page 17: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Lista de Símbolos

α Taxa de aprendizado

ε Parâmetro de exploração

γ Taxa de desconto

λ Taxa de decaimento do Elegibility Traces

A Conjunto de ações

G Função das recompensas imediatas

P Probabilidade de transição entre os estados

S Conjunto de estados

π Política de decisão

a∗ Ação greedy derivada de Q

at Ação no instante de tempo t

et(s,a) Elegibility Traces do par estado-ação no instante de tempo t

n Número de passos

Q Função valor que mapeia os retornos

Rt Retorno após o instante de tempo t

rt Recompensa no instante de tempo t

Rλt λ-retorno

R(n)t Retorno após n-passos

st Estado no instante de tempo t

T Último instante de tempo em um episódio

t Instante de tempo discreto

Page 18: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Sumário

1 Introdução 191.1 Contextualização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201.2 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211.3 Objetivos e Benefícios Esperados . . . . . . . . . . . . . . . . . . . . . . . . . 231.4 Organização da Tese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2 Aprendizagem por Reforço 262.1 Propriedade de Markov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262.2 Aprendizagem por Reforço . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.2.1 Algoritmo Q-learning . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3 Descrição do Problema 353.1 Tarefas Direcionadas à Meta . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

3.1.1 Mountain Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363.1.2 Puddle World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.1.3 Acrobot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 393.1.4 Continuous Maze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.1.5 Steering Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

3.2 Discretização do Ambiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.2.1 Particionamento Automático . . . . . . . . . . . . . . . . . . . . . . . 45

3.3 Dependência do Caminho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

4 Trabalhos Relacionados 564.1 Representação Fixa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564.2 Representação Adaptativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

4.2.1 Adaptação pela Política . . . . . . . . . . . . . . . . . . . . . . . . . . 604.2.2 Adaptação pela Função de Recompensa . . . . . . . . . . . . . . . . . 654.2.3 Adaptação pela Função Valor . . . . . . . . . . . . . . . . . . . . . . 68

4.3 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

5 Ambientes de Teste 725.1 Mountain Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725.2 Puddle World . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 735.3 Acrobot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 745.4 Continuous Maze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755.5 Steering Car . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

Page 19: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2

6 Algoritmo Proposto 806.1 Algoritmo TD(nλ)-GNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

6.1.1 Adaptação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 816.1.2 Refinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846.1.3 Comportamento e Aprendizagem . . . . . . . . . . . . . . . . . . . . 91

7 Estudo Comparativo 1027.1 Tempo de Aprendizagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1037.2 Memória Utilizada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107.3 Qualidade da Política . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1107.4 Complexidade dos Algoritmos . . . . . . . . . . . . . . . . . . . . . . . . . . 111

8 Conclusões e Trabalhos Futuros 1148.1 Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

8.1.1 Algoritmo TD(nλ) - Particionamento Adaptativo . . . . . . . . . . . . 1158.1.2 Algoritmo TD(nλ)-GNG . . . . . . . . . . . . . . . . . . . . . . . . . 116

8.2 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1168.3 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1188.4 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Referências 120

Apêndice 125

A Complexidade dos Algoritmos 126

B Parâmetros Utilizados 129B.1 Parâmetros Finais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

Page 20: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

191919

1Introdução

The last thing that we find in making a book is to know what we must put first.

—BLAISE PASCAL

À medida que a tecnologia evolui, o ser humano se torna cada vez mais dependentedos computadores. Tarefas consideradas complexas serão comumente realizadas por sistemasdotados de “inteligência”. Carros serão capazes de navegar sozinhos e de escolher a melhor rotaem função do nível de congestionamento das ruas. Robôs navegarão em ambientes complexos,explorando áreas consideradas de alto risco para os seres humanos. Sistemas inteligentes irãorealizar diagnósticos e oferecer o melhor tratamento para determinadas doenças. Em todos estesexemplos, os agentes autônomos podem estar presentes realizando estas tarefas com apenas omonitoramento humano. A área da Inteligência Artificial define um agente como uma entidadeque funciona de forma contínua e autônoma, capaz de sentir e atuar no ambiente em que se situapor meio de atuadores e sensores (Russell; Norvig, 2003). Em um robô pode-se, por exemplo,considerar como atuador um motor de passo que permite realizar o movimento de um braçomecânico e, como sensor, uma câmera de vídeo que permite a visualização do ambiente.

Situações imprevistas e de incertezas que caracterizam os problemas do mundo realexigem do agente a capacidade de adaptar seu conhecimento automaticamente. Desta forma,ações poderão ser tomadas em situações que nunca foram vistas anteriormente. Ao tentarcodificar este tipo de comportamento à mão, o desenvolvedor esbarra em um grande obstáculo: adificuldade de formalizar o conhecimento humano em forma de algoritmo.

A Aprendizagem de Máquina (AM) é um campo da Inteligência Artificial (IA) que buscadesenvolver algoritmos que possam aprender pela experiência. Esta característica oferece umasolução para problemas que exigem o conhecimento humano.

Após a modelagem do problema como uma tarefa de aprendizagem, os algoritmos AMpossibilitam a elaboração de agentes que podem aprender pela interação com o ambiente oupor intermédio de exemplos (Russell; Norvig, 2003). O surgimento da área da IA permitiu aospesquisadores direcionarem seus esforços para a construção de algoritmos de aprendizagem mais

Page 21: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.1. CONTEXTUALIZAÇÃO 20

eficientes ao invés de focar na solução de problemas específicos.Esta tese trabalha com um paradigma de aprendizagem conhecido como Aprendizagem

por Reforço (AR). A AR oferece meios para desenvolver agentes que podem aprender pelainteração com o ambiente. A procura por algoritmos que podem aprender a desempenhardeterminadas tarefas com eficiência tem sido o foco dos pesquisadores da área.

1.1 Contextualização

A AR busca desenvolver agentes autônomos que aprendem com o efeito de suas ações.Imersos em um ambiente inicialmente desconhecido, estes agentes são capazes de aprender umasequência de ações (política) que possibilite resolver uma determinada tarefa (Crites; Barto,1996; Singh; Bertsekas, 1997; Tesauro, 1994; Braga; Araújo, 2003). O objetivo do agente éencontrar uma política que maximize a soma das recompensas ao longo do tempo. A política éconsiderada ótima se a sequência de ações realizada for a melhor possível para se concluir umatarefa.

A possibilidade de aprender através da interação com o ambiente torna a AR atrativaem tarefas onde o comportamento esperado não é conhecido. Este tipo de aprendizagem édiferente de outros paradigmas, tais como o não-supervisionado. Neste último, o processoconsiste em encontrar semelhanças entre os dados separando-os em grupos para posteriormenteserem rotulados. Este é um importante tipo de aprendizagem, mas sozinho não é adequado paraaprender pela interação com o ambiente. Na maioria dos casos é impraticável obter exemplos detodos os comportamentos desejados que sejam ao mesmo tempo corretos e representativos paratodas as situações em que o agente deve agir (Sutton; Barto, 1998).

A AR descreve meios para o desenvolvimento de novos algoritmos que aprendem portentativa e erro. Explicitamente neste tipo de aprendizagem não existe um professor (Ribeiro,2002), mas há um crítico que avalia os estados1 visitados. Widrow; Gupta; Maitra (1973)usaram o termo “learning with a critic” (aprendendo com um crítico) para diferenciar a ARda aprendizagem supervisionada onde, no lugar do crítico, existe um professor que instrui oagente.

É dever do crítico associar um sinal numérico de recompensa aos estados do ambiente deforma a guiar o agente para que possa concluir o seu objetivo (Ribeiro, 2002). Por sua vez, oagente deve aprender, pela sua interação com o ambiente, uma sequência de ações que o levepara estados onde a soma das recompensas seja maior. Há uma série de problemas cujas soluçõesenvolvem ações elementares que são comuns a episódios de sucesso e de insucesso. A sequênciaé que fará a diferença para o sucesso.

Um episódio refere-se a uma sequência finita de estados e ações que inicia em umestado inicial e termina ao alcançar um estado final. A cada novo episódio, uma nova tentativaé realizada. Através deste processo interativo de tentativa e erro, o agente deve aprender aselecionar as ações que maximizem o retorno, i.e., a soma das recompensas que recebe ao longo

1Informações sobre a situação do ambiente em um determinado instante de tempo.

Page 22: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.2. MOTIVAÇÃO 21

do tempo (Kaelbling; Littman; Moore, 1996). Esta é uma das principais características que osalgoritmos AR devem possuir. Caso contrário, ao realizar ações que resultam em estados quedão a maior recompensa em um dado momento, o agente pode ser levado a outros que não dão.Para evitar estes estados, os algoritmos AR constroem uma função valor que estima o retorno aser recebido entre um dado estado e o estado final. Contudo, em um ambiente que possui muitosestados, torna-se impraticável estimar o retorno para todos eles (Otterlo; Wiering, 2012).

A maldição da dimensionalidade (Bellman, 1952) é um dos principais problemas queafetam os algoritmos AR. O número de possíveis soluções cresce exponencialmente à medidaque o número de estados e ações cresce. Consequentemente, o tempo de aprendizagem tambémcrescerá. Esta característica pode se tornar uma restrição para o uso da AR em problemas onde onúmero de estados é muito grande. Nestes ambientes, é importante que o espaço de estados sejageneralizado.

A generalização permite reduzir o tempo de aprendizagem com o compartilhamento daexperiência ganha em um estado com outros que nunca foram vistos (Sutton; Barto, 1998). Destaforma, o agente não precisa visitar todos os estados do ambiente para aprender uma política quepossibilite maximizar a soma das recompensas recebidas ao longo do tempo. A generalizaçãodo espaço de estados pode ser alcançada com a agregação de estados similares2 (Bertsekas;Tsitsiklis, 1996). Os estados que se enquadram em uma mesma região, de acordo com algumamétrica de distância, são considerados similares e são agrupados. O resultado deste processo é adiscretização do espaço de estados. Uma vez que o espaço de estados é reduzido, o problemapode ser resolvido utilizando os algoritmos AR.

Outra abordagem amplamente utilizada são os aproximadores de funções. O objetivodestes algoritmos é construir uma representação da função valor por meio do ajuste de umconjunto de parâmetros livres (Bertsekas; Tsitsiklis, 1996). Independente da abordagem utilizada,a principal questão que se coloca aqui é como obter a generalização, de tal modo que, por um lado,possa se obter uma “boa” representação do espaço de estados, e por outro lado, o desempenhodo modelo não degrade. Este é um dos grandes desafios da AR.

1.2 Motivação

Grande parte das pesquisas que envolvem AR buscam meios de utilizá-la em ambientescom variáveis de estado contínuas. Isto se deve ao fato dos problemas do mundo real possuíremesta característica. Nestes ambientes, a quantidade de estados é infinita para uma aplicação diretados algoritmos AR.

Outra dificuldade deve-se à condição exigida para convergência destes algoritmos. Paraque alcancem uma solução, os estados precisam ser revisitados. Isto significa que o agentedeve passar pelo mesmo estado mais de uma vez (Sutton, 1988). Contudo, em grande parte dos

2São considerados similares, os estados onde as ações produzem resultados semelhantes.

Page 23: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.2. MOTIVAÇÃO 22

problemas do mundo real, alguns estados nunca serão vivenciados exatamente como antes. Estesproblemas incluem sensores complexos, como os de uma imagem visual. Duas fotos tiradasem instantes de tempo diferentes podem apresentar variações nas tonalidades da cor dos pontosque formam a imagem (Bradski; Kaehler, 2008). Em problemas deste tipo, a generalização doespaço de estados torna-se necessária para a convergência de qualquer solução.

Modelos que aproximam funções ou que realizam algum tipo de agregação dos estadospodem ser combinados com os algoritmos AR para reduzir os efeitos da maldição da dimensiona-lidade. Enquanto os algoritmos AR estimam a função valor dos estados ou dos pares estado-ação,modelos como as redes neurais Multilayer Perceptron (MLP) (Rumelhart; Hinton; Williams,1988) ou os Self-Organized Map - Mapas Auto-Organizáveis (SOM) (Kohonen; Schroeder;Huang, 2001) generalizam o espaço de entrada e realizam o mapeamento das estimativas doretorno nestes estados (Bertsekas; Tsitsiklis, 1996). A ideia por trás deste processo é que as açõespossuem um comportamento semelhante quando realizadas em estados similares, assim, o tempode aprendizagem pode ser reduzido se a experiência é compartilhada entre eles. O desempenhodo agente dependerá da qualidade com que estes modelos generalizam o espaço de estados.

A rede Growing Neural Gas (GNG) de Fritzke (1995) é um algoritmo não-supervisionadoda classe dos SOM que tem sido estudado no âmbito da AR (Baumann; Kleine büning, 2014;Montazeri; Moradi; Safabakhsh, 2011; Whiteson; Taylor; Stone, 2007; Handa, 2004; Vieira;Adeodato; Gonçalves, 2013; Braga; Araújo, 2003). O objetivo destes estudos consistiu nodesenvolvimento de algoritmos adaptativos que dispensam a necessidade de um designer humanopara o seu ajuste estrutural. Esta é uma importante característica, pois na maioria dos problemaspouco se sabe a respeito da dinâmica do ambiente. Uma representação fraca pode reduzirdrasticamente o desempenho do algoritmo ou, no pior caso, impossibilitar a convergência deuma solução (Bertsekas; Tsitsiklis, 1996). A segunda vantagem deve-se à sua capacidade dereadaptação a pequenas mudanças do ambiente (Montazeri; Moradi; Safabakhsh, 2011). Estasvariações incluem ruídos nos sensores que podem mudar a forma como o agente percebe oambiente.

Uma desvantagem quando se utiliza a rede GNG é a necessidade de se determinar ocritério de parada para o crescimento da rede. Enquanto uma quantidade muito grande de nóspode tornar a aprendizagem lenta, uma quantidade muito pequena pode ser insuficiente paraencontrar uma solução (Lampton; Niksch; Vakasek, 2010). O ideal é ter novos nós sendoadicionados no curso da aprendizagem até que uma solução seja encontrada. Este problema estápresente em qualquer algoritmo que inicie com uma representação mais geral e passe, no decorrerda aprendizagem, para uma representação mais específica do espaço de estados (Sherstov; Stone,2005). As dificuldades enfrentadas ao tornar este processo automático consistem em determinaro momento para a adição de novos nós, o local onde eles devem ser posicionados e quando ocrescimento da rede deve parar.

Page 24: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.3. OBJETIVOS E BENEFÍCIOS ESPERADOS 23

1.3 Objetivos e Benefícios Esperados

O principal objetivo deste trabalho é o desenvolvimento de um algoritmo adaptativo comoalternativa para a discretização automática do espaço de estados contínuo em tarefas que sãodirecionadas à meta. É importante citar que nestas tarefas, o agente é “míope” com capacidadede “enxergar” apenas o estado atual. Além disto, o agente não possui nenhum conhecimentoprévio sobre o ambiente.

O presente trabalho apresenta uma nova estratégia para a discretização do espaço deestados contínuo que busca evitar o agrupamento de estados não-similares, contribuindo com aredução dos efeitos da maldição da dimensionalidade e da perda da Propriedade de Markov narepresentação do espaço de estados gerada pela discretização proposta.

Para alcançar o objetivo principal e consolidar o algoritmo proposto como uma aborda-gem viável e eficiente, seu comportamento é avaliado nos ambientes direcionados a meta Puddle

World, Slow Puddle World, Acrobot, Continuous Maze e Mountain Car. Estes ambientes sãocomumentes utilizados como benchmarking para a validação de novos algoritmos, tais como osencontrados em (Handa, 2004; Abramson; Pachowicz; Wechsler, 2003; Sutton, 1996; Konidaris;Osentoski; Thomas, 2011; Baumann; Kleine büning, 2014; Sherstov; Stone, 2005; Whiteson;Taylor; Stone, 2007; Braga; Araújo, 2003) e muitos outros. As principais características destesambientes que motivaram o seu uso foram as seguintes:

� Puddle World - Distribuição não-uniforme das recompensas entre os estados.

� Acrobot - Multidimensionalidade.

� Continuous Maze e Slow Puddle World - Sequência longa de ações necessária paraconcluir um episódio.

� Mountain Car - Necessidade de se visitar estados distantes do meta antes de ir paraestados mais próximos.

Ambientes simulados são interessantes para o teste de novos algoritmos AR, pois elimi-nam a complexidade de implementação do hardware e mantém muitas das características dosproblemas do mundo real. Por exemplo. O ambiente Continuous Maze poderia representar aplanta baixa de uma casa onde o objetivo do robô seria mover-se entre os obstáculos (paredes)até alcançar o cômodo desejado (estado meta). O ruído aplicado na movimentação do agentesimularia as imperfeições das rodas, atrito ou imprecisão dos atuadores de um robô do mundoreal. Outro exemplo seria o ambiente Mountain Car. Neste ambiente, o carro poderia representaruma válvula, onde os movimentos esquerda e direta regulariam a passagem de algum compostoquímico.

O algoritmo proposto possui dois componentes apresentados no presente trabalho: 1)uma variante da rede GNG para a divisão automática do espaço de estados e 2) uma variante do

Page 25: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.4. ORGANIZAÇÃO DA TESE 24

algoritmo Q-learning (Watkins, 1989), chamado de n-step Temporal Difference with Elegibility

Traces (TD(nλ)), para estimar a função valor. Ambos os algoritmos são, respectivamente, apri-moramentos dos processos de discretização e aprendizagem em ambientes AR. A combinaçãodestes algoritmos resultou em um novo algoritmo chamado n-step Temporal Difference Growing

Neural Gas with Elegibility Traces (TD(nλ)-GNG).As principais características do algoritmo TD(nλ)-GNG que contribuem para o processo

de aprendizagem em ambientes que possuem o espaço de estados contínuo são:

1. Modelo adaptativo que dispensa o uso de um especialista para particionar o espaçode estados.

2. Refinamento incremental do espaço de estados que dispensa a necessidade de sedeterminar a priori o número de partições.

3. Capacidade de generalização em ambientes AR que possuem espaço de estadoscontínuo.

4. Aprendizagem realizada de forma on-line, ou seja, o algoritmo aprende ao mesmotempo em que interage com o ambiente.

5. Não requer um modelo que descreva a dinâmica do ambiente. Esta é uma importantecaracterística, uma vez que raramente é possível obter um modelo computacional doambiente.

No presente trabalho, pretende-se analisar e comparar o desempenho do algoritmoTD(nλ)-GNG com outros algoritmos em termos de tempo de aprendizagem, memória utilizada,qualidade da solução encontrada e complexidade algorítmica. É esperado que o algoritmoproposto seja capaz de generalizar e encontrar uma solução próxima à ótima em ambientes deaprendizagem AR direcionados à meta. Outro benefício esperado é o uso de uma quantidademenor de partições quando comparado com outros algoritmos adaptativos que discretizam oespaço de estados. Esta característica proporciona em alguns casos uma redução no tempo deaprendizagem e no uso da memória.

1.4 Organização da Tese

Esta tese está organizada em oito capítulos, incluindo esta introdução. As descrições dospróximos capítulos são apresentadas a seguir.

O Capítulo 2 fornece o embasamento teórico necessário para os próximos capítulos.Neste capítulo serão abordados conceitos sobre a propriedade de Markov, o processo de decisão,o algoritmo Q-learning e a técnica Elegibility Traces.

O Capítulo 3 descreve o problema do uso da AR em ambientes que possuem o espaço deestados contínuo, formaliza o processo de discretização de tais ambientes e descreve o tipo de

Page 26: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

1.4. ORGANIZAÇÃO DA TESE 25

tarefa que se pretende resolver. Serão descritos cinco ambientes de teste que serão utilizadospara validar e comparar o algoritmo TD(nλ)-GNG com outras abordagens. Estes ambientes debenchmarking serão utilizados na validação de novos algoritmos. Além disto, dois problemasque ocorrem com a discretização do ambiente serão discutidos, são eles: a dependência docaminho e o fenômeno Chattering.

O Capítulo 4 apresenta os trabalhos relacionados exemplificando potenciais problemasque podem ocorrer com o seu uso.

O Capítulo 6 apresenta o algoritmo TD(nλ)-GNG e os resultados preliminares de suaaplicação nos ambientes de teste descritos no Capítulo 3. O algoritmo TD(nλ)-GNG é divididoe apresentado em três subseções chamadas Adaptação (Subseção 6.1.1), Refinamento (Subseção6.1.2), e Comportamento e Aprendizagem (Subseção 6.1.3).

O Capítulo 7 avalia e compara estatisticamente o desempenho do algoritmo TD(nλ)-GNGcom outros algoritmos de aprendizagem. Neste capítulo serão utilizados como medida de desem-penho: o tempo de aprendizagem, memória utilizada, qualidade da política e a complexidadedos algoritmos.

O Capítulo 8 apresenta um resumo dos resultados, as principais contribuições, suaslimitações e levanta perspectivas de trabalhos futuros.

Page 27: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

262626

2Aprendizagem por Reforço

Processo de Decisão de Markov (PDM) trata-se de um framework intuitivo e fundamentalpara o uso da AR (Bertsekas; Tsitsiklis, 1996; Sutton; Barto, 1998; Kaelbling; Littman; Moore,1996). Neste framework, um ambiente é representado por um conjunto de estados e controladopor um conjunto de ações. O objetivo do agente é realizar ações que maximizem algum critériode desempenho previamente estabelecido. A AR descreve meios de como alcançar este objetivopela interação agente-ambiente. Modelando a tarefa como PDM, os algoritmos AR são capazesde encontrar uma política que proporcione uma maior quantidade de recompensas ao longo dotempo. Para isto, os algoritmos AR estimam uma função valor que realiza o mapeamento doretorno nos estados do ambiente. Por sua vez, o agente deve realizar ações que o conduza paraestados que possuem uma maior estimativa de retorno.

O propósito deste capítulo é fornecer embasamento teórico para os capítulos seguintes.Para isto, o presente capítulo foi dividido em duas seções. A primeira descreve a propriedade deMarkov e o formalismo PDM. A segunda seção, Seção 2.2, introduz conceitos importantes daAR e apresenta um algoritmo capaz de estimar a função valor por intermédio de um processoincremental. Ainda neste capítulo, serão descritas duas técnicas que podem ser utilizadas paraacelerar o processo de aprendizagem dos algoritmos AR.

2.1 Propriedade de Markov

Definição 2.1 (Propriedade de Markov). Um ambiente é dito ser Markoviano, ou de possuira propriedade de Markov, se todas as informações relevantes do ambiente que descrevem oseu estado atual são suficientes para determinar o seu próximo estado e recompensa (Otterlo;Wiering, 2012).

A propriedade de Markov é uma característica fundamental para garantir que os algorit-mos AR encontrem uma solução (Sutton, 1988; Otterlo; Wiering, 2012). Nestes ambientes, os

Page 28: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 27

próximos estados podem ser colocados em termos probabilísticos:

p(st+1 = s′ | st,at

),

� �2.1

ou seja, dado apenas o estado atual st e ação at, ambientes que possuem a propriedade deMarkov possibilitam a predição do próximo estado s′. Assim, a decisão sobre qual ação tomarnão depende da sequência de estados anteriores.

Processo de Decisão de Markov

Definição 2.2 (Processo de Decisão de Markov). O PDM é um framework utilizado para amodelagem de ambientes Makovianos em problemas de decisão sequencial (Puterman, 1994).

Neste framework, o ambiente é representado por um conjunto de estados S = {s1, s2, . . . ,

sN} e controlado por um conjunto de ações A= {a1,a2, . . . ,aK}, onde N e K são respectiva-mente a quantidade de estados e ações. A probabilidade de transição entre os estados é definidapor Pass′ = p(st+1 = s′ | st = s,at = a), ou seja, a probabilidade de ir para um estado s′ apósrealizar uma ação a em um estado s. Como consequência desta transição, um sinal numérico ré recebido de uma função de recompensa imediata G(s′). O objetivo é realizar uma sequênciade ações que maximize a soma das recompensas recebidas ao longo do tempo. Estes quatroelementos descritos formam a quádrupla (S,A,P ,G) que define um PDM (Otterlo; Wiering,2012).

2.2 Aprendizagem por Reforço

A AR especifica elementos importantes que os algoritmos devem possuir para solucionarPDMs pela interação do agente com o ambiente (Otterlo; Wiering, 2012), são eles (Szepesvári,2010):

� Uma política de decisão π que mapeia os estados em ações (π : S 7→ A).

� Uma função de recompensa G que mapeia os estados em um sinal numérico derecompensa (G : S 7→ r).

� Uma função valor ou função de custo Q que mapeia os pares estado-ação em umnúmero que representa a estimativa do valor de retorno (Q : S ×A 7→ R). Em outraspalavras, representa o retorno esperado ao realizar uma ação a ∈ A em um estados ∈ S e seguir uma política π logo após (Ribeiro, 2002).

� Opcionalmente, um modelo do ambiente que forneça a probabilidade P de transiçãoentre os estados.

Page 29: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 28

Sutton; Barto (1998) define como sendo parte do ambiente tudo o que o agente nãopode controlar. Por exemplo, ainda que os motores de um robô possam ser considerados comoparte do agente, o funcionamento exato deles está além do seu controle. O agente pode realizarcomandos para movimentá-los, mas o resultado pode ser influenciado por fatores externos. AFigura 2.1 ilustra a interação agente-ambiente. A cada passo de tempo o agente deve realizaruma ação at, e observar o próximo estado st+1 e recompensa rt+1. Esta interação ocorre emuma sequência finita de tempo discreto, t= 0,1,2,3, . . . ,T . No inicio de um episódio, o agentese encontra em um estado st=0 e termina, após uma sequência de estados st=1, st=2, . . ., em umestado final st=T . Este processo se repete até que o episódio termine.

Conforme descrito no Capítulo 1, um episódio refere-se a uma sequência finita de estadose ações que termina ao alcançar um estado final. Por exemplo, em uma partida de xadrez as peçasbrancas e pretas iniciam posicionadas nas extremidades do tabuleiro. Este é o estado inicial dojogo. A sequência de movimentos e posições das peças até o fim do jogo (estado final), quandoocorre empate, desistência ou xeque-mate, compõem um episódio.

Agente

Ambiente

açãoat

reforçort

estadost

rt+1st+1

Figura 2.1: Interação agente-ambiente. Adaptado de Sutton; Barto (1998).

A tarefa do agente é encontrar, na fase de aprendizagem, uma política π que permitareceber um maior retorno (Sutton; Barto, 1998). A busca por políticas que aumentem o retornopermite que o agente visite estados que o levem para uma maior quantidade de recompensas alongo prazo e não para a maior em um dado momento (Otterlo; Wiering, 2012).

Definição 2.3 (Política Ótima). A política que possibilita ao agente receber a maior quantidadede recompensas acumuladas em uma tarefa é chamada de política ótima.

Em suma, o agente deve ser orientado a maximizar o retorno denotado por Rt:

Rt = rt+1 +γrt+2 +γ2rt+3 + . . .=T−t−1∑n=0

γnrt+n+1� �2.2

onde γ é a taxa de desconto, um valor compreendido no intervalo entre 0 e 1. A taxa de descontopermite determinar a importância das recompensas futuras sobre as passadas (Sutton; Barto,1998). Se γ = 0, o agente é imediatista ao realizar ações que maximizam apenas as recompensasimediatas. À medida que γ aproxima 1, o agente leva mais em conta as recompensas futuras.Além disto, γ < 1 garante que o retorno terá um limite bem definido para que os algoritmos AR

Page 30: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 29

possam convergir. As subseções seguintes apresentam o algoritmo Q-learning utilizado paraestimar incrementalmente o retorno dos estados do ambiente e duas estratégias para acelerar oseu processo de aprendizagem.

2.2.1 Algoritmo Q-learning

Definição 2.4 (Q-learning). Q-learning (Watkins, 1989) é um algoritmo AR utilizado paraestimar incrementalmente o retorno de cada par estado-ação (Sutton; Barto, 1998).

Desta forma, não é preciso esperar até o fim do episódio para que a aprendizageminicie (Otterlo; Wiering, 2012). Esta é uma grande vantagem em relação a outros algoritmosque esperam obter Rt para iniciar a aprendizagem (Sutton; Barto, 1998). Caso contrário, se oepisódio for muito longo, a aprendizagem será lenta. O algoritmo Q-learning estima o retorno deum par estado-ação da seguinte forma. A cada passo de tempo t, o algoritmo aproxima Q(st,at)uma fração α da recompensa imediata rt+1, e da estimativa de retorno do par, estado sucessorst+1 e ação onde o retorno é maior:

Qt+1(st,at) =Qt(st,at) +

∆Qt(st,at)︷ ︸︸ ︷α[rt+1 +γmax

bQt(st+1, b)−Qt(st,at)

] � �2.3

onde b ∈ A, ∆Qt(st,at) é o incremento aplicado ao par (st,at) e α é a taxa de aprendizagem.A expressão rt+1 +γmaxbQt(st+1, b)−Qt(st,at) é chamado de erro de Diferença Temporal(Temporal Difference error - TD error) (Ribeiro, 2002), pois representa em um instante detempo t, a diferença entre o retorno estimado (Qt(st,at)) e o previsto (rt+1 +γmaxbQt(st+1, b))(Ribeiro, 2002).

Este algoritmo utiliza uma política flexível para garantir a exploração do espaço deestados e ações. Sendo assim,

Definição 2.5 (Política ε-greedy). a ação com a maior estimativa de retorno é selecionadacom probabilidade 1− ε ou, com uma pequena probabilidade ε, uma ação aleatória. Estemétodo de exploração, chamado ε-greedy (Watkins, 1989), garante que o agente explore oespaço de estados a procura de políticas melhores.

O algoritmo Q-learning converge para a política ótima independente da política deexploração utilizada, desde que os estados continuem a ser revisitados por uma quantidadeinfinita de vezes, e a taxa de aprendizagem α decresça no tempo (Otterlo; Wiering, 2012;Watkins, 1989; Bertsekas; Tsitsiklis, 1996). Os passos do algoritmo Q-learning são enumeradosa seguir:

1. Observe o estado atual s.

2. Faça a← argmaxbQ(s,b) ou, com probabilidade ε, a← ação aleatória.

Page 31: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 30

3. Realize a ação a e observe o próximo estado s′ e recompensa r.

4. Atualize Q para o par (s,a):

Q(s,a) =Q(s,a) +α[r+γmax

bQ(s′, b)−Q(s,a)

]

5. Faça s← s′ e repita a partir do segundo passo até o fim do episódio.

Retorno-n

Conforme visto anteriormente, o algoritmo Q-learning atualiza a estimativa do retornode um dado estado utilizando a recompensa imediata e a estimativa do retorno do estado sucessor.Contudo, a recompensa recebida após n-passos demorará n episódios para alcançar um estadohá n passos atrás. Considere a tarefa da Figura 2.2. Nesta tarefa, o agente pode realizar apenas aação direita que o conduz para o próximo estado imediatamente à direita. O agente recebe umsinal de recompensa 0 na transição de A para B e de B para C e 1 na transição de C para D.Note que a estimativa do retorno no estado A (Q(A,→)) será atualizado somente no terceiroepisódio.

Ainicio B C D0 0 1

0Episódio #1 0 1 00 0 1

0Episódio #2 1 1 00 0 1

1Episódio #3 1 1 00 0 1

Figura 2.2: Tarefa com três estados representados pelos círculos A, B e C e, um estadofinal representado pelo círculo D. As setas indicam o próximo estado após a ação direita

ser realizada no estado corrente. Os valores observados acima das setas são asrecompensas a serem recebidas ao se realizar a ação direita. Os valores numéricos

apresentados dentro dos círculos representam o valor Q(s,→) quando γ = 1 e α= 1. AFigura apresenta o atraso na atualização de Q(s,→) nos estados anteriores à C.

A Equação 2.3, usada para estimar a função valor, pode ser modificada para acelerar oprocesso de aprendizagem na tarefa apresentada pela Figura 2.2. Ao invés de atualizar Q(st,→)imediatamente após um passo, a atualização pode ser realizada após n-passos (Sutton; Barto,1998),

∆Qnt (st,at) = α[R

(n)t −Qt(st,at)

] � �2.4

Page 32: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 31

onde o termo R(n)t é expandido de acordo com a quantidade n de passos para rt+1 +γrt+2 +

. . .+γn−1rt+n+γnmaxbQt(st+n, b), em outros termos,

R(n)t =

n−1∑k=0

γkrt+k+1 +γnmaxbQt(st+n, b).

� �2.5

Desta forma, quando n= 2, o valor de Q(B,→) converge no primeiro episódio enquantoQ(A,→) no segundo episódio. Em vez disto, se n= 3, ambas estimativas Q(A,→) e Q(B,→)convergiriam no primeiro episódio ao mesmo tempo que Q(C,→). Se n é maior que a sequênciade passos até o estado final, então R(n)

t = Rt. A notação R(n)t , retorno-n, será utilizada para

indicar a quantidade n de passos antes que a sequência de recompensas restantes sejam truncadaspelo termo γnmaxbQ(st+n, b).

Elegibility Traces

É possível combinar dois ou mais retornos R(n)t com a ponderação de seus valores e

ainda manter a garantia de convergência, desde que a soma de seus pesos seja 1 (Sutton; Barto,1998). Por exemplo.

Definição 2.6 (Retorno-λ). Em um tipo de retorno chamado retorno-λ, todos os R(n)t de

um episódio são combinados ponderando seus valores por λn−1 e um fator de normalização(1−λ) para assegurar que os pesos somem 1 (Sutton; Barto, 1998).

Desta forma, R(1)t recebe o maior peso (1−λ)λ0, R(2)

t o segundo maior peso (1−λ)λ1

e assim sucessivamente (Sutton; Barto, 1998). Em outras palavras, o peso diminui em λ apóscada passo adicional,

Rλt = (1−λ)T−t−1∑n=1

λn−1R(n)t +λT−t−1Rt.

� �2.6

onde o termo λT−t−1Rt refere-se ao retorno após o estado final ser alcançado e λ é um parâmetrocom valores entre 0 e 1. Se λ= 0 a atualização será realizada da mesma forma que o algoritmoQ-learning após 1-passo, caso contrário, se λ= 1, o algoritmo utiliza apenas o retorno completoRt obtido no fim do episódio. Para efeitos de simplificação, assume-se que o estado final éum absorbing state (Sutton; Barto, 1998). Neste estado, as interações do agente continuaminfinitamente e todas as ações resultam no mesmo estado com recompensa 0. Desta forma, todasas interações após o estado final tornam-se sem efeito, pois as recompensas recebidas serãosempre 0. Sendo assim, todos os n retornos recebidos após o estado final serão iguais a Rt e asoma dos pesos restantes será igual a λT−t−1(Sutton; Barto, 1998). O incremento da funçãovalor para o retorno-λ é dado por,

∆Qλt (st,at) = α[Rλt −Qt(st,at)

] � �2.7

Page 33: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 32

O retorno-λ permite que a ação realizada em um estado anterior receba uma parcela λdas recompensas futuras. No entanto, esta não é uma estratégia de aprendizagem incremental,pois somente no fim do episódio os retornos estarão disponíveis. A técnica de Elegibility Traces

implementa o retorno-λ de forma incremental, a cada passo de tempo t. Para isto, uma memóriaadicional, cujo valor é denotado por e(s,a), é associada a todo par estado-ação. A cada interaçãodo agente com o ambiente e(s,a) é diminuído em função de dois parâmetros γ e λ, e aumentado(accumulating traces) ou substituído (replacing traces) por 1 quando st+1 é o estado sucessor dest:(accumulating traces)

et(s,a) =

γλet−1(s,a) + 1 se s= st e a= at;

γλet−1(s,a) caso contrário

� �2.8

ou (replacing traces)

et(s,a) =

1 se s= st e a= at;

γλet−1(s,a) caso contrário,

� �2.9

onde γ é o fator de desconto e λ é o parâmetro para redução gradual de et(s,a). O parâmetro λdetermina a contribuição dos estados passados que influenciaram para o agente se localizar emum estado futuro. Segundo Sutton; Barto (1998), melhores resultados são geralmente alcançadosao utilizar replacing traces.

Em um estudo experimental realizado por Singh; Sutton (1996), a aprendizagem éacelerada ainda mais se et(s,a) = 0 para todas as outras ações que não foram selecionadas emst. Em outros termos, a atualização de et(s,a) em um instante de tempo t para todo par (s,a)pode ser dado por (Singh; Sutton, 1996):

et(s,a) =

1 se s= st e a= at;

0 se s= st e a 6= at para todo a;

γλet−1(s,a) se s 6= st.

� �2.10

A Figura 2.3(b) exemplifica esta mecânica no último passo de um episódio do ambienteGridworld para efeitos comparativos com a atualização realizada pelo algoritmo Q-learning

(Figura 2.3(c)). O Gridworld trata-se de um ambiente onde os estados são discretos e adjacentes.Neste ambiente, o objetivo é encontrar um caminho curto até o estado meta. Na Figura 2.3, adireção das setas indica a ação realizada enquanto o tamanho representa a parcela da recompensaa ser recebida pelos estados passados. A Figura 2.3(a) mostra o caminho percorrido pelo agenteaté o estado meta. No algoritmo Q-learning, a recompensa rt+1 recebida em um estado st+1 éutilizada para atualizar apenas a estimativa do estado st enquanto a mecânica da técnica Elegibility

Page 34: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 33

Trace repassa uma parcela da recompensa para todos os estados passados st, st−1, st−2, . . . , st=0.

1

2

3

4

1 2 3 4

(a) Caminho Percorrido

1

2

3

4

1 2 3 4

(b) Q-learning com Elegibility Traces (Q(λ))

1

2

3

4

1 2 3 4

(c) Q-learning

Figura 2.3: Atualização da função valor no ambiente Gridworld após o agente alcançar oestado meta pelo estado (4,3). A Figura (a) mostra o caminho percorrido pelo agente,

enquanto as Figuras (b) e (c) mostram a intensidade da recompensa retropropagada paraos estados anteriores pelos algoritmos Q(λ) e Q-learning, respectivamente. O tamanho

das setas indicam a intensidade com que o valor da recompensa foi recebida nestesestados.

O algoritmo Q-learning quando implementa a técnica Elegibility Trace é chamado deQ(λ) (Watkins, 1989). Os passos deste algoritmo são enumerados a seguir:

1. Observe o estado atual s.

2. a← argmaxbQ(s,b) ou, com probabilidade ε, a← ação aleatória.

3. Realize a ação a e observe o próximo estado s′ e recompensa r.

4. a∗← argmaxbQ(s′, b).

5. Faça a′← a∗ ou, com probabilidade ε, a′← ação aleatória.

6. δ← r+Q(s′,a∗)−Q(s,a).

7. e(s,a)← 1

Page 35: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

2.2. APRENDIZAGEM POR REFORÇO 34

8. Para todo par (s,a) faça:

8.1. Q(s,a) =Q(s,a) +αδe(s,a)

8.2. Se a′ = a∗ então e(s,a) = γλe(s,a) senão e(s,a) = 0.

8.3. Para toda ação b 6= a faça e(s,b) = 0.

9. Faça s← s′ e a← a′ e repita a partir do terceiro passo até o fim do episódio.

Note que o algoritmo Q(λ) (passo 8.2) não utiliza toda a sequência de recompensas atéo fim do episódio; ao invés disto, utiliza apenas a sequência até a próxima ação exploratória,fazendo e(s,a) = 0 para todo par (s,a) quando a 6= a∗. No extremo, se as ações exploratóriassão frequentes, então o desempenho do algoritmo Q(λ) será apenas um pouco mais rápido que oQ-learning (Sutton; Barto, 1998). O passo 8.3 deve-se à recomendação de Singh; Sutton (1996).

Ambas as técnicas, Retorno-n e Elegibility Traces, podem ser utilizadas para acelerara aprendizagem dos algoritmos AR. A técnica Elegibility Traces, no entanto, utiliza umaestratégia mais eficiente de aprendizagem. Esperar n-passos para atualizar a estimativa do retornopode atrasar a aprendizagem. Independente de qual estratégia for utilizada, estes algoritmosainda sofrerão da maldição da dimensionalidade (Bellman, 1957). O espaço de busca aumentaconsideravelmente à medida que o número de estados e ações cresce tornando impraticável ouso destes algoritmos. Este é um dos problemas que será discutido no próximo capítulo.

Page 36: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

353535

3Descrição do Problema

O processo de aprendizagem incremental proporcionado pelo algoritmo Q-learning,permite que o conhecimento adquirido durante um episódio esteja disponível o quanto antes parao agente. Esta estratégia traz vantagens, como a possibilidade de o agente utilizar o conhecimentorecém-adquirido em outros estados do ambiente. Em relação aos algoritmos que precisam esperaro fim do episódio para atualizar a função valor, esta estratégia pode proporcionar uma reduçãono tempo da aprendizagem, especialmente quando os episódios são longos (Sutton; Barto, 1998;Ribeiro, 2002).

O algoritmo Q-learning constrói a função valor em uma tabela onde cada entradaarmazena a estimativa do retorno de um par estado-ação. Esta representação possui desvantagensquando utilizada em ambientes que possuem variáveis de estado contínuas. Nestes ambientes, aquantidade de estados é infinita, tornando impraticável este tipo de representação por duas razõesprincipais: 1) memória insuficiente para armazenar a tabela de estimativas (Vieira; Adeodato;Gonçalves, 2010) e 2) custo computacional alto para estimar o retorno de todos os estados doambiente (Haykin, 1998).

Felizmente, em problemas que possuem variáveis de estado contínuas há a possibilidadeda existência de estados similares. Nestes estados, uma mesma ação pode produzir resultadossemelhantes (Mahadevan; Connell, 1992). A estratégia abordada por este trabalho exploraesta característica agrupando os estados similares em regiões discretas a fim de produzir umarepresentação mais compacta do espaço de estados. Os algoritmos que utilizam esta estratégiadevem encontrar meios para detectar estas semelhanças e evitar o agrupamento de estadosnão-similares que exigem ações diferentes. Este capítulo formaliza o processo de discretização emostra que o agrupamento de tais estados requerem cuidados para evitar problemas que venhama impossibilitar o agente de encontrar uma solução.

O presente capítulo está organização como segue. A Seção 3.1 descreve o tipo de tarefaque se pretende solucionar com o uso da AR. A problemática e formalização do processo dediscretização destes ambientes são apresentados na Seção 3.2 e dois problemas que podemocorrer com este processo são discutidos em seguida na Seção 3.3.

Page 37: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 36

3.1 Tarefas Direcionadas à Meta

Em tarefas direcionadas à meta, o objetivo é encontrar um caminho curto entre o estadoinicial e o meta (Riedmiller, 2005; Koenig; Simmons, 1996). Pela exploração do espaço deestados, o agente deve buscar uma sequência mínima de ações que o conduza para o estado metaem uma quantidade menor de passos. Deve-se, portanto, programar o crítico para recompensar oagente de acordo com o número de estados visitados, de tal forma que a soma das recompensasdescontadas aumente quando T → 0 e diminua quando T →∞. Para isto, geralmente, umarecompensa negativa é associada a todos os estados que não seja o meta. Ao alcançar o estadometa, o agente pode: 1) continuar a receber uma recompensa negativa com mesma intensidadeque as anteriores, 2) nula (rt+1 = 0) ou 3) positiva (rt+1 > 0). Desta forma, o retorno serámaior se o número de estados visitados até o estado meta for menor. Uma vez que o objetivoé maximizar o retorno, esta estratégia incentiva a busca por caminhos que sejam mais curtos(Sutton; Barto, 1998).

Existem diversas tarefas que podem ser classificadas como direcionadas à meta, estasincluem o Mountain Car (Sutton, 1996), Puddle World (Sutton, 1996), Gridworld (Sutton; Barto,1998), Acrobot (Connell; Mahadevan, 1993), Dribble (Vieira; Adeodato; Gonçalves, 2010),Maze (Braga; Araújo, 2003), Peg in Hole (Lee; Lau, 2004) e outros. Com o objetivo de avaliaro modelo proposto apresentado no Capítulo 6, seu desempenho será comparado com outrosalgoritmos de aprendizagem em cinco ambientes experimentais que serão descritos nas próximassubseções deste capítulo. Estes ambientes são comumentes utilizados como benchmarking

para a validação de novos algoritmos, tais como os encontrados em (Handa, 2004; Abramson;Pachowicz; Wechsler, 2003; Sutton, 1996; Konidaris; Osentoski; Thomas, 2011; Baumann;Kleine büning, 2014; Sherstov; Stone, 2005; Whiteson; Taylor; Stone, 2007; Braga; Araújo,2003) e muitos outros. As variáveis de estado dos ambientes Mountain Car e Acrobot foramnormalizadas entre −1 e 1 e, nos ambientes Puddle World, Slow Puddle World e Continuous

Maze entre 0 e 1.

3.1.1 Mountain Car

Nesta tarefa, um carro é posicionado entre duas montanhas sem velocidade suficiente paraalcançar o estado meta localizado no topo da montanha da direita. O único meio para alcançareste objetivo é realizando uma sequência de ações que movimente o carro de forma alternadaentre as duas montanhas até obter velocidade suficiente para alcançar o topo da montanha dadireita. A Figura 5.1 ilustra o ambiente Mountain Car.

Nesta tarefa, o agente pode realizar duas ações que direcionam o carro para esquerda(at =−1) ou para direita (at = 1). Uma recompensa−1 é dada para cada passo de tempo até queo agente alcance o estado meta no qual ele recebe uma recompensa 0. Os estados do ambientesão compostos por duas variáveis contínuas que descrevem a posição (xt) e a velocidade (xt) do

Page 38: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 37

-1 -0.76 -0.52 -0.17 0.17 0.64 1Posição

MetaParede

Gravid

ade

Figura 3.1: Ambiente Mountain Car.

carro e são atualizadas pelas seguintes equações descritas por Singh; Sutton (1996),

xt+1 = xt+ xt+1

xt+1 = xt+ 0.001at−0.0025× cos(3xt)

e limitadas, respectivamente, nos intervalos [−1.2,1.2] e [−0.07,0.07] por

xt+1 = min(max(−1.2,xt+1),1.2)

xt+1 = min(max(−0.07, xt+1),0.07).

Quando o carro alcançar o topo da montanha à esquerda, a velocidade é reiniciada emzero para simular a presença de uma parede. Se o carro alcançar o estado meta, o episódio éfinalizado e o agente é recompensado. Em cada episódio o agente inicia em um estado aleatório.Este é um exemplo de tarefa em que o agente deve visitar estados distantes do meta antes de irpara estados mais próximos.

3.1.2 Puddle World

Na tarefa Puddle World, o agente está situado em um ambiente com estados que possuemduas dimensões com tamanho 1. O objetivo do agente é alcançar a região meta localizado nolado superior direito do ambiente com tamanho 0.05 em ambas as dimensões. A cada passode tempo, o agente pode mover-se em quatro direções (esqueda, direita, cima e baixo) e, paracada estado visitado, recebe recompensa −1. Uma recompensa menor será recebida se o agenteestiver localizado dentro da poça.

Conforme descrito por Sutton (1996), a intensidade das recompensas recebidas nas poçassão obtidas multiplicado −400 pela distância do agente até a aresta da poça mais próxima. Estas

Page 39: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 38

poças possuem um raio de 0.1 e as arestas que formam o centro das poças estão localizadas nospontos: (.10, .75) até (.45, .75) e (.45, .40) até (.45, .80). Ao alcançar o estado meta, o episódioé finalizado e o agente recebe uma recompensa 0. Um ruído retirado de uma distribuição normalcom média µ= 0 e desvio padrão σ = 0.01 é adicionado ao tamanho do passo do agente (0.05)para tornar a tarefa mais difícil. Este tipo de prática é comumente utilizada em ambientessimulados para aproximar o ruído existente em atuadores e sensores do mundo real (Sutton,1996; Connell; Mahadevan, 1993; Vieira; Adeodato; Gonçalves, 2010).

O ambiente descrito é apresentado na Figura 5.2. Nesta tarefa, a recompensa acumuladaé utilizada como métrica para o desempenho do modelo ao invés da quantidade de passos, pois ocaminho mais curto através das poças pode não ser a melhor política. A particularidade destatarefa que a diferencia das demais é a distribuição não-uniforme da recompensa no espaço deestados. Desta forma, em determinadas regiões o agente pode receber uma recompensa baixaenquanto em outras uma recompensa muito pior.

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

Y

X

Meta

Figura 3.2: Ambiente Puddle World. As poças são apresentadas na cor azul e o estadometa na cor vermelha. A densidade da cor das poças representa a intensidade da

recompensa negativa a ser recebida.

Slow Puddle World

Uma variante do ambiente Puddle World, onde o tamanho do passo do agente é 100vezes menor e com ruído σ = 0.0001, será utilizado. Desta forma, para concluir um episódio seránecessário uma sequência de passos maior. No estado mais distante do meta, desconsiderandoas poças e o ruído σ, o agente deverá percorrer aproximadamente 4000 estados. No ambienteoriginal, seriam 40 estados. Esta característica adicional torna este ambiente ideal para o testede novos algoritmos AR em ambientes que necessitam de uma longa sequência de ações paraalcançar o estado meta.

Page 40: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 39

3.1.3 Acrobot

Acrobot (Connell; Mahadevan, 1993) é um problema que simula a tarefa de um acrobataem se posicionar de cabeça para baixo em uma barra horizontal. Nesta tarefa o robô possuiduas juntas. A primeira (correspondente à mão do acrobata) não exerce torque enquanto asegunda (correspondente à cintura do acrobata) exerce. Esta é uma tarefa multidimensional comquatro variáveis de estado contínuas: posição das duas juntas e suas respectivas velocidades. Asequações que descrevem a dinâmica deste ambiente são dadas a seguir (Connell; Mahadevan,1993):

θ1 =−d−11 (d2θ2 +φ1)

θ2 =(m2l

2c2 + I2−

d22d1

)−1(τ + d2

d1φ1−m2l1lc2θ

21 sinθ2−φ2

)d1 =m1l

2c1 +m2

(l21 + l2c2 + 2l1lc2 cosθ2

)+ I1 + I2

d2 =m2(l2c2 + l1lc2 cosθ2

)+ I2

φ1 =−m2l1lc2θ22 sinθ2−2m2l1lc2θ2θ1 sinθ2 + (m1lc1 +m2l1)g cos

(θ1−

π

2

)+φ2

φ2 =m2lc2g cos(θ1 + θ2−

π

2

)

O torque aplicado na segunda junta é denotado por τ ∈ {+1,−1,0} onde, +1 indicaum torque positivo, −1 um torque negativo e 0 nenhum torque. Não há restrições para aposição das juntas, mas a velocidade angular é limitada em θ1 ∈ [−4π,4π] e θ2 ∈ [−9π,9π]. Asconstantes são: m1 =m2 = 1 (massa das articulações), l1 = l2 = 1 (tamanho das articulações),lc1 = lc2 = 0.5 (tamanho até o centro da massa das articulações), I1 = I2 = 1 (tensor de inérciadas articulações), e g = 9.8 (gravidade). A Figura 5.3 ilustra o ambiente. O passo de tempoutilizado é t = 0.05 segundos, mas as ações são realizadas em intervalos de quatro passos detempo. As velocidades angulares das articulações são dadas por

θ1 = θ1 + θ1× t

θ2 = θ2 + θ2× t

e as posições por

θ1 = θ1 + θ1× t

θ2 = θ2 + θ2× t.

O objetivo desta tarefa é controlar o Acrobot para que a ponta da segunda articulaçãoalcance a linha meta posicionada à uma distância d = 1 da primeira junta. Para isto, o agentedeve balançar a ponta em ambas as direções (esquerda e direita) para obter velocidade suficiente

Page 41: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 40

para que a ponta da segunda articulação alcance a linha meta. A cada passo de tempo o agenterecebe recompensa −1 ou uma recompensa 0 após alcançar o estado meta. No inicio de cadaepisódio serão atribuídos valores aleatórios para a posição das duas articulações θ1 e θ2 e suasrespectivas velocidades θ1 e θ2.

torqueaplicado

θ1

θ2

Meta

Articulaçõesl1

l2

lc1

lc2

d

Estado MetaAlcançado

Figura 3.3: Ambiente Acrobot.

3.1.4 Continuous Maze

Neste ambiente de teste, o agente encontra-se em um lambirinto de tamanho 20× 20como o apresentado pela Figura 5.4. Nesta tarefa, o agente deve encontrar um caminho curtoentre um dado estado e o estado meta fixo na posição (19,2). A cada passo de tempo, o agenterecebe uma recompensa de −1 até que alcance o estado meta onde receberá recompensa 0. Oagente inicia em uma posição aleatória e pode realizar quatro ações: 1) esquerda, 2) direita, 3)cima e 4) baixo. Se uma destas ações mover o agente para uma parede ou para fora dos limitesdo ambiente, a posição do agente não se altera e uma recompensa −1 é recebida.

O tamanho do passo do agente é de 0.01 totalizando 4 milhões de estados. Para tornareste espaço de estados infinito, um ruído retirado de uma distribuição normal com média µ= 0 edesvio padrão σ = 0.05 é adicionado ao passo do agente.

Page 42: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 41

0

5

10

15

20

0 5 10 15 20

Y

X Meta

1

1

1

1

Figura 3.4: Ambiente Continuous Maze.

3.1.5 Steering Car

Esta seção apresenta um ambiente do mundo real em que o objetivo é aprender a guiarum carro com quatro rodas. A complexidade desta tarefa deve-se à forma de como o carro fazuma curva que se assemelha a um carro real. O agente deve aprender o ângulo necessário paragirar as rodas dianteiras com o objetivo de guiar o carro na direção certa. Além disso, devido aolimite que as rodas podem girar, em alguns casos, o carro precisará ir para trás antes de ir parafrente, e vice-versa, para atingir o estado meta.

As Figuras 5.5 e 5.6 mostram o carro e uma imagem do ambiente sob uma perspectivavista de cima feitas utilizando uma webcam, respectivamente. A webcam está posicionada a2 metros do chão e 30 centímetros da parede de forma a cobrir todo o ambiente. As rodasdianteiras e traseiras foram marcadas com cores diferentes para facilitar a detecção da posiçãoe orientação do carro utilizando técnicas de detecção de cor (Bradski; Kaehler, 2008). Oproblema foi simplificado ao fazer a região meta virtual para evitar o uso de algoritmos de visãocomputacional, uma vez que este não é o objetivo deste trabalho. Após a detecção das quatrorodas do carro, a sua posição dianteira (F ), traseira (B) e central (C) podem ser determinadascalculando a média dos pares:

Ft = (W0 +W1)/2

Bt = (W2 +W3)/2

Ct = (Ft+Bt)/2

onde W0 e W1 são as posições das rodas dianteiras, W2 e W3 são as posições das rodas traseiras,Ft e Bt são, respectivamente, as posições dianteira e traseira do carro e Ct é o centro do carro noinstante de tempo t.

Nesta tarefa, o agente pode realizar sete ações que movimentam as rodas dianteirasem sete graus diferentes (−45◦, −30◦, −15◦, 0◦, 15◦, 30◦, 45◦). Uma ação que movimenta aroda dianteira é seguida de um movimento para frente ou para trás tornando possível realizar

Page 43: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 42

Figura 3.5: Carro com quatro rodas construído utilizando o kit Lego Mindstorms EV3. Ocarro possui dois motores, um para determinar sua orientação e outro para mover o carro

para frente ou para trás.

Figura 3.6: Visão do topo do ambiente Steering Car observado por uma webcamposicionada à 2 metros de altura. O quadrado verde é a região meta, o quadrado preto é o

limite do ambiente e as flechas são os estados iniciais do carro.

Page 44: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.1. TAREFAS DIRECIONADAS À META 43

14 ações distintas. Uma ação para frente ou para trás faz o carro mover-se aproximadamente12.5 centímetros. Esta distância pode variar devido à fricção das rodas com o piso. O estadoé composto por duas variáveis contínuas que descrevem a distância d e o ângulo β em grausradianos do carro relativo ao estado meta. Estas duas variáveis são calculadas como segue:

dt = ‖Ct−G‖

βt =arccos

(d2t +‖Ct−Ft‖2 +‖Ct−G‖2

)2×dt×‖Ct−Ft‖

onde Ft e Ct são, respectivamente, as coordenadas da frente e do centro do carro no instante detempo t, e G é a posição do estado meta. A posição do estado meta não depende do tempo, poisé fixa durante a aprendizagem. A equação abaixo calcula o sinal do ângulo βt (Schneider, 1997),

st = Cxt Fyt −C

yt F

xt +Cyt G

x−Cxt Gy +F xt Gy−F yt Gx

onde βt será multiplicado por −1 se st for um número negativo. Esta equação será negativa sea ordem dos pontos Ft, Ct e G estiverem no sentido horário e positivo caso contrário. Destaforma, o agente não precisa fazer distinção de sua posição relativa ao estado meta o que facilita aaprendizagem. A Figura 5.7 mostra como estes pontos estão configurados no carro e no estadometa.

0

0.4

0.5

0.6

1.0

0 0.6 0.7 0.8 1.4

y em

me

tros

x em metros

G

Meta

Carro

C

F

B

β

Rodas Dianteiras

Rodas Traseiras

Limite do Ambiente

Figura 3.7: Visão técnica do ambiente Steering Car. O quadrado preto nesta figuraindica o limite do mundo que o agente deve permanecer; as ações que levam o carro parafora desta região não são permitidas. Não existem sensores para detectar os limites doambiente, portanto, seu sentido de limite é baseado na distância e no ângulo relativo ao

estado meta. O ambiente e a região meta medem cerca de 140cm2 e 4cm2,respectivamente.

A cada passo de tempo, o agente recebe uma recompensa −d até que alcance o estado

Page 45: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.2. DISCRETIZAÇÃO DO AMBIENTE 44

meta, onde receberá uma recompensa 0. O estado meta é alcançado se em um passo de tempo t,C encontra-se dentro da região delimitada pelo quadrado verde. Se uma ação move o carro parafora dos limites do ambiente, sua posição não é alterada, o agente recebe uma recompensa −d ea oportunidade de realizar uma ação no instante de tempo atual é perdida.

Os cinco ambientes apresentados possuem variáveis de estado contínuas. Nestes ambien-tes, a maldição da dimensionalidade torna-se uma das principais dificuldades para a aplicaçãoda AR. A próxima seção formaliza e descreve como o processo de discretização do espaço deestados pode ajudar a reduzir os efeitos da maldição da dimensionalidade nestas tarefas.

3.2 Discretização do Ambiente

Conforme descrito no Capítulo 2, os algoritmos AR devem construir uma função valorque realize o mapeamento de todos os pares estado-ação em suas respectivas estimativas deretorno. Em uma representação tabular da função valor, cada entrada da tabela é endereçada pelopar (s,a). A quantidade de entradas nesta tabela será igual ao número de estados multiplicadopelo número de ações (|S|×|A|). Uma segunda tabela com o mesmo tamanho torna-se necessáriapara armazenar e quando a técnica Elegibility Traces é utilizada. Isto significa que à medida quea quantidade de estados e ações crescem, o tamanho destas tabelas também crescerá. Este tipode representação torna-se inviável em problemas onde o espaço de estados é contínuo. Nestescasos, a quantidade de estados é infinita enquanto os recursos computacionais são finitos. Outroproblema deve-se ao tempo necessário para estimar os retornos de cada par estado-ação. Umasolução para problemas deste tipo é pela discretização do espaço de estados em regiões disjuntas(Singh; Jaakkola; Jordan, 1995).

Definição 3.1 (Processo de Discretização). O processo de discretização consiste em dividir oespaço de estados S = {s1, s2, . . . , sN} em p subconjuntos disjuntos chamados de regiões F ={f1,f2, . . . ,fp} onde p <N . Formalmente, este processo pode ser definido pelo mapeamentode muitos-para-um (Whitehead; Ballard, 1991) U : S 7→F , onde U é a representação compactado ambiente que mapeia os estados S em regiões F .

Esta divisão pode ser feita à mão (Sutton; Barto, 1998), baseado na experiência humanaou, por intermédio de algum algoritmo que particione o espaço de estados automaticamente(Fernández; Borrajo, 1999; Fuchida; Aung, 2013; Abramson; Pachowicz; Wechsler, 2003).Independente da abordagem utilizada, o importante é que cada subconjunto da divisão contenhaestados similares para que a variação da função valor entre os estados seja relativamente pequenae possa ser aproximado pelos algoritmos AR (Bertsekas; Tsitsiklis, 1996). A Equação 2.3 doalgoritmo Q-learning é modificada para

Qt+1(U(st),at) =Qt(U(st),at) +α[rt+1 +γmax

bQt(U(st+1), b)−Qt(U(st),at)

] � �3.1

Page 46: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.2. DISCRETIZAÇÃO DO AMBIENTE 45

em razão do novo mapeamento Q : U ×A 7→R da função valor para esta representação compactado espaço de estados. O mapeamento da política também é modificado para π : U 7→ A. AFigura 3.8 ilustra como este mapeamento é realizado. Uma vez que o número de regiões |F|é menor que o de estados |S|, o tempo da aprendizagem e a quantidade de memória utilizadapodem ser reduzidos.

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

y

x

F

a1 ak...

f 1

f p

Q(f1,a1) Q(f1,ak)

Q(fp,ak)Q(fp,a1)

A

s

U(s)

Figura 3.8: Representação da função valor em um espaço de estados bidimensionalparticionado em nove regiões disjuntas. Os pontos vermelhos são os nós, cada um

representando uma região específica do espaço de estados delimitado pelas linhas pretas.Nesta representação, cada nó referencia uma linha i, e as ações uma coluna j da tabela à

direita. Cada entrada desta tabela armazena a estimativa do par (f i,aj). Esta Figuramostra a ativação de um nó que representa a região f1 após a visita do agente à um estado

s.

3.2.1 Particionamento Automático

O Particionamento automático do espaço de estados é preferível, principalmente quandonão se conhece todas as particularidades do problema que se deseja resolver. Em casos como este,os algoritmos que particionam automaticamente o espaço de estados são utilizados para detectarestas particularidades e reduzir as chances do agrupamento dos estados não-similares. A redeGNG é um algoritmo capaz de realizar de forma incremental e automática, o agrupamento de umconjunto infinito de vetores d-dimensional (sinais de entrada) em um conjunto finito de vetoresprotótipo,W = {w1,w2, . . . ,wk}, chamados de nós ou neurônios, que particionam o espaço deestados em regiões. Neste algoritmo, os nós podem ser conectados, mover-se em direção de umsinal de entrada ou adicionados depois de certo número de iterações. Os nós são movidos paralocais que necessitam de uma maior representatividade ou removidos de regiões onde a atividadeé muito baixa. Uma variável de erro local acumulado e as conexões entre os nós são utilizadospara este fim. A função do nó é representar um agrupamento dos sinais de entrada que possuem

Page 47: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.2. DISCRETIZAÇÃO DO AMBIENTE 46

alguma similaridade detectada por meio de alguma métrica de distância, como, por exemplo,a distância Euclidiana. Fornecida uma sequência de vetores de entrada X = {x1,x2,x3, . . .}amostrados conforme uma função densidade de probabilidade p(x), o algoritmo GNG tende aposicionar os nós de forma a reduzir o erro (Abramson; Pachowicz; Wechsler, 2003):

E =∫

mini‖x−wi‖p(x)dx

� �3.2

Após cada novo sinal de entrada, o algoritmo aproxima o nó mais próximo e todos osseus vizinhos1 em direção do vetor de entrada. A vizinhança de um nó é construída através deuma variante da aprendizagem competitiva de Hebb (Competitive Hebbian Learning – CHL)(Martinetz, 1993). Nesta variante, para cada sinal de entrada z, uma aresta é inserida entreos dois nós mais próximos de acordo com a distância Euclidiana. A CHL é um componenteessencial do algoritmo GNG, pois as conexões são utilizadas na adaptação e inserção de novosnós. Observe que no algoritmo GNG descrito a seguir, a variável idade é usada para remover asconexões antigas e, com isso manter a vizinhança atualizada (Fritzke, 1995):

1. Inicie com dois nós a e b posicionados aleatoriamente.

2. Gere um sinal de entrada x retirado de uma distribuição p.

3. Encontre os dois nós mais próximos de x, onde gf é o primeiro e gs é o segundo maispróximo;

4. Incremente a idade de todas as conexões que se originam de gf .

5. Adicione a distância quadrada entre x e gf em uma variável de erro local pertencentea gf .

6. Mova gf e todos os seus vizinhos a uma fração ew e en, respectivamente, em direçãodo vetor de entrada x.

7. Se gf e gs estão conectados por uma aresta, reinicie a variável local, idade, destaaresta para zero, caso contrário, adicione uma nova aresta conectando estes dois nós.

8. Remova as conexões que possuem uma idade maior que amax, e todos os nós queficaram sem conexões.

9. Se o número de iterações for múltiplo de um parâmetro λ e a quantidade de nós formenor que q, insira um novo nó como segue:

� Encontre o nó n que possui o maior erro acumulado.

� Insira um novo nó l entre n e seu vizinho m que possui o maior erroacumulado.

1A vizinhança de um nó é formada pelas conexões diretas com outros nós.

Page 48: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.2. DISCRETIZAÇÃO DO AMBIENTE 47

� Adicione uma conexão entre n e l e outra, entre l e m.

� Remova a conexão entre n e m.

� Reduza o erro acumulado de n emmultiplicando ambos por uma constanteα, e inicialize o erro local de l com o novo valor do erro em n.

10. Reduza o erro acumulado de todos os nós multiplicando eles por uma constante d.

11. Se o critério de parada não for satisfeito (por exemplo, a quantidade de nós alcançouo limite ou o erro está abaixo de um valor desejado) reinicie do passo 2.

O algoritmo GNG posiciona os nós em regiões que necessitam de uma maior representa-ção, ou os remove de locais onde a atividade é muito baixa. Em outras palavras, o algoritmoprioriza o posicionamento e a inserção de novos nós onde a função de densidade é alta e poucorepresentada. Desta forma, é possível reduzir o erro descrito pela Equação 3.2. A variável deerro local junto com as conexões entre os nós são utilizadas para este fim. Uma vez que há amovimentação dos nós, a vizinhança pode ser modificada e determinados nós podem deixar deser vizinhos. Esta característica justifica a utilização de uma variável idade para remover asconexões antigas e, com isso manter a vizinhança atualizada. O resultado deste processo pode servisto nas Figuras 3.9(a-b). O algoritmo GNG distribuiu os nós de forma a cobrir toda a espiralreduzindo, desta forma, o erro da Equação 3.2 como apresentado pela Figura 3.9(c).

Em AR, a rede GNG pode ser utilizada para representar os estados do ambiente. Nasua forma padrão, a rede GNG, quando aplicada em problemas AR, tende aproximar a políticautilizada pelo agente, uma vez que a amostragem dos estados segue uma distribuição de pro-babilidade p(st+1 = s′|π(st) = a). Em outras palavras, o próximo estado s′ (vetor de entrada)depende da ação a realizada ao seguir uma política π no estado atual st. Esta característica podese tornar um problema quando o agente permanece em uma região por um longo período detempo. Neste caso, o algoritmo GNG tende a posicionar os nós nestas regiões, seja pela adiçãode novos ou pelo deslocamento dos existentes. No último caso, o aprendizado pode ser arruinadoquando o movimento é realizado após a estimativa do retorno ter sido obtida. A Figura 3.10mostra na prática este problema ao utilizar os algoritmos GNG e Q(λ) no ambiente Mountain

Car 2. A combinação destes dois algoritmos foi feita da seguinte forma:

1. Inicie com dois nós posicionados aleatoriamente no espaço de estados.

2. Observe o estado atual s.

3. Determine a ação a ao seguir uma política ε-greedy derivada de Q.

4. Utilize s como sinal de entrada para a rede GNG.

5. Realize a ação a e observe o próximo estado s′ e recompensa r.

2Detalhes sobre este ambiente podem ser obtidos na Seção 5.1

Page 49: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.2. DISCRETIZAÇÃO DO AMBIENTE 48

(a) Após 1 iteração (b) Após 60000 iterações

0

500

1000

1500

2000

2500

3000

3500

0 10000 20000 30000 40000 50000 60000 70000 80000 90000 100000

Erro

Iterações

(c) Erro

Figura 3.9: Espiral apresentada como entrada para uma rede GNG. A cada iteração, umponto desta imagem é retirado de uma distribuição uniforme e apresentada a rede GNGcomo sinal de entrada. Iniciando com apenas dois nós conectados na primeira iteração,após 60000 iterações, o algoritmo posiciona os 100 nós (quantidade máxima definida)cobrindo toda a espiral. A Figura (c) mostra o erro E gerado em cada iteração. A redeGNG tende a reduzir o erro ao longo de sua execução pela inserção de novos nós ou

movimentação dos existentes. Para o resultado apresentado foram utilizados os seguintesparâmetros: ew = 0.05,en = 0.0005,amax = 50,λ= 50,d= 0.0005,α= 0.5 e q = 100.

Page 50: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 49

6. Determine a próxima ação a′ e atualize a função valor utilizando o algoritmo Q(λ).

7. Faça s= s′, a= a′ e repita a partir do segundo passo até o fim do episódio.

Na Figura 3.10 é possível notar que os nós apresentam um maior espalhamento (Figuras3.10(b), 3.10(d) e 3.10(f)) em decorrência de um ganho na velocidade ou um menor espalhamento(Figuras 3.10(a), 3.10(c) e 3.10(e)), caso contrário. No primeiro caso, o agente utiliza umapolítica que permite obter velocidade suficiente para alcançar o estado meta, diferente do segundocaso, onde a função densidade próximo a posição (−0.41,0) torna-se alta resultando na atração dealguns nós para este local. Caso os nós sejam movidos para regiões não-similares, as estimativasdo retorno obtidas anteriormente serão inúteis. Este exemplo, mostra que a rede GNG tentarepresentar qualquer política, seja ela boa ou não. Desta forma, os nós que antes representavamuma política satisfatória podem ser deslocados para representar uma política incapaz de concluirum único episódio.

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(a) Após 1000 passos

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(b) Episódio 10

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(c) Episódio 13

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(d) Episódio 14

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(e) Episódio 15

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

(f) Episódio 40

Figura 3.10: Particionamento do ambiente Mountain Car realizado pelo algoritmo GNG.As estimativas do retorno são obtidas pelo algoritmo Q-learning e armazenadas nos nós

da rede. Os parâmetros utilizados neste experimento foram:Q(λ) - (α= 0.1,γ = 0.95,λ= 0.95 e ε= 0.1) e

GNG - (ew = 0.01,en = 0.001,amax = 100,λ= 100,d= 0.0005,α= 0.5 e q = 10).

3.3 Dependência do Caminho

Um problema com a discretização do espaço de estados, seja ela automática ou não, éque em alguns casos a propriedade de Markov (Definição 2.1) pode ser perdida. A Figura 3.11ilustra a Discretização Uniforme (DU) realizada no espaço de estados do ambiente Gridworld

onde os algoritmos AR são incapazes de encontrar uma solução. Este ambiente foi dividido emquatro regiões enumeradas e delimitadas por duas linhas sólidas. Note que na quarta região,

Page 51: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 50

para alcançar o estado meta, duas ações diferentes que dependem da posição atual do agente sãonecessárias: no estado (3,4) a melhor ação será direita enquanto no estado (4,3) a melhor açãoserá cima. No entanto, este comportamento é impossível de se alcançar pois estes dois estadosforam agrupados, inviabilizando o mapeamento de duas ações diferentes. Sendo assim, paraalcançar o estado meta o agente precisa “lembrar” o caminho percorrido para determinar suapróxima ação. Por exemplo. Se o agente alcança a região 4 a partir do estado (2,4), sua próximaação deverá ser direita. No entanto, pelo estado (4,2), sua próxima ação deverá ser cima. Umproblema semelhante ocorre na região 1 do ambiente 4×4 Maze da Figura 3.12. Este ambiente éuma variante do Gridworld onde são incluídos obstáculos representados pelos retângulos verdes.Neste segundo exemplo, a região 1 precisa de uma ação diferente no estado (1,2) para alcançar aregião 2, contudo, este estado foi agrupado com outros que necessitam de uma ação diferente.

Em ambos os casos, o agente tem uma “dependência do caminho”, em contraste com a“independência do caminho” de ambientes que possuem a propriedade de Markov.

Definição 3.2 (Dependência do Caminho). A dependência do caminho foi um termo cunhadopor Vieira; Adeodato; Gonçalves (2013) para se referir a um problema específico que ocorreno processo de discretização onde dois ou mais estados são agrupados, mas precisam reali-zar ações diferentes em determinados estados para alcançar o estado meta ou outra regiãodiscretizada. A ocorrência deste problema implica que o agrupamento realizado cria umarepresentação que não atende à Propriedade de Markov (Seção 2.1)

Existem algoritmos que buscam evitar que problemas como este ocorram em ambientesque possuem espaço de estados discreto (Mccallum, 1995; Breslow, 1996; Shani; Brafman,2004). Basicamente, estes algoritmos utilizam uma memória adicional para “lembrar” o agentedo caminho percorrido. No entanto, em ambientes que possuem espaço de estados contínuo, ocusto para se armazenar as transições entre os estados torna-se proibitivo.

1

2

3

4

1 2 3 4

1 2

3 4

Figura 3.11: Discretização uniforme do ambiente Gridworld com dezesseis estados. Oestado meta é representado pelo retângulo vermelho localizado na posição (4,4). Esta

discretização uniforme divide o ambiente em quatro regiões disjuntas.

Page 52: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 51

1 2 3 4

1 2

3

1

2

3

4

Figura 3.12: Exemplo da dependência do caminho na região 1 de um ambiente dedimensão 4×4 chamado Maze. Os retângulos verdes são obstáculos que impedem a

passagem do agente. O retângulo vermelho representa o estado meta. A região 1 possui adependência do caminho, pois o estado (1,2) exige uma ação diferente das demais para

que o agente alcance uma outra região.

Fenômeno Chattering

Em regiões que possuem a dependência do caminho, um fenômeno conhecido comoChattering (Bertsekas; Tsitsiklis, 1996; Gordon, 1996) faz com que ocorra simultaneamente aoscilação da política e a convergência da função valor. A Figura 3.13 mostra a ocorrência destefenômeno no processo de aprendizagem do algoritmo Q-learning. Este é o resultado da suaaplicação no ambiente particionado da Figura 3.11. Todos os episódios iniciaram com o agenteno estado (1,1). Os resultados foram produzidos utilizando uma taxa de desconto γ = 0.95 euma taxa de aprendizagem α = 0.001 com decaimento proporcional entre os episódios, de talforma que, α = 0 após o último episódio. Para assegurar a exploração, o agente escolhe umaação aleatória com probabilidade ε= 0.1. As curvas Qu e Qr representam, respectivamente, asestimativas do retorno das ações cima e direita na região 4.

Para exemplificação do fenômeno Chattering, considere apenas as ações cima e direta re-alizadas na região 4 do ambiente Gridworld particionado conforme apresentado pela Figura 3.11.O grafo da Figura 3.14 apresenta as transições entre os estados desta região e as recompensas aserem recebidas após cada transição.

Considere que os episódios sempre iniciam no estado (3,3), onde, a ação cima, conduz oagente para o estado (3,4) e a ação, direita, para o estado (4,3). No estado (3,4), a ação cimanão movimenta o agente. O mesmo acontece com a ação direita, quando realizada no estado(4,3). Todas as ações recebem recompensa −1 com exceção das que conduzem o agente para oestado meta (4,4), estas recebem recompensa 0. A tabela de estimativas é inicializada com 0 paratodas as ações. Uma vez que todos os estados estão agrupados, em qualquer estado s da região4, U(s) será sempre 4. Desta forma, para simplificar, o estado será ignorado e as estimativasQ(4, cima) e Q(4,direita) serão apresentadas como Q(cima) e Q(dir.), respectivamente.

Suponha que no inicio do primeiro episódio, quando Q(cima) =Q(dir.) = 0, o agente

Page 53: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 52

0

50

100

150

200

250

300

350

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

-3

-2.5

-2

-1.5

-1

-0.5

0

Núm

ero

de M

udan

ças

da P

olíti

ca

Var

iaçã

o da

Fun

ção

Val

or

Episódio

Política

Qu

Qr

Figura 3.13: Fenômeno Chattering no ambiente da Figura 3.11. A política oscilaenquanto a função valor converge. Esta figura mostra o número de vezes que a política éalterada e as estimativas do retorno das ações cima (Qu) e direita (Qr) quando realizadas

na região 4 no decorrer de 10000 episódios. As curvas Qu e Qr estão sobrepostas. Osparâmetros utilizados neste experimento foram: α= 0.001, γ = 0.95 e ε= 0.1.

(3,3)inicio

(3,4)

(4,3)

(4,4)

cima, r =−1

direita, r =−1

cima, r =−1

direita, r = 0

cima, r = 0

direita, r =−1

Figura 3.14: Grafo de transição entre os estados quando realizadas as ações cima edireita na região 4 do ambiente Gridworld particionado conforme apresentado pela Figura3.11. Esta é uma versão simplificada deste ambiente utilizada apenas para exemplificar o

fenômeno Chattering.

Page 54: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 53

realiza a ação cima e transita para o estado (3,4) com recompensa −1. Após aplicar aEquação 3.1, Q(cima) será menor que Q(dir.) e, portanto, a próxima ação será direita, poisargmaxaQ(a) = dir.. Esta última ação, conduz o agente para o estado meta com recompensa0. No inicio do próximo episódio, a ação direita ainda possui a maior estimativa de retorno. Arecompensa recebida no fim do episódio anterior não modificou o valor Q(dir.) = 0. Sendoassim, após realizar esta ação no estado (3,3), o agente será conduzido para o estado (4,3)com recompensa −1. Esta última ação, faz Q(cima) < Q(dir.) tornar-se Q(cima) > Q(dir.)e com isso a política é novamente modificada e a ação cima é realizada resultando no fim doepisódio com recompensa 0. Como é possível notar, a ação da região 4 alterna-se enquanto aaprendizagem ainda estiver em curso em razão da variação das estimativas Q(cima) e Q(dir.).Estas estimativas seguem em toda a aprendizagem com valores muito próximos uma da outra,influenciando na oscilação da política.

A Figura 3.15 ilustra o que acontece com a política e com as estimativas Q(cima) eQ(dir.) na região 4. A oscilação da política continua enquanto a função valor converge para afronteira entre estas duas políticas, uma que mapeia a ação cima e a outra que mapeia a açãodireita. Neste momento, se a aprendizagem é encerrada, a função valor representa uma políticaque não é a solução (Bertsekas; Tsitsiklis, 1996). Em outras palavras, o algoritmo Q-learning

falha em resolver esta tarefa, pois os estados (3,3), (3,4) e (4,3) foram agrupados em umaúnica região gerando a dependência do caminho e, como exemplificado, esta pode ser condiçãosuficiente para que o fenômeno Chattering possa ser observado.

Percebe-se que ao manter a política fixa durante os episódios os efeitos do fenômenoChattering podem ser reduzidos. No entanto, isto faz a função valor saturar caso exista adependência do caminho.

Definição 3.3 (Saturação da função valor). A saturação da função valor refere-se ao momentoem que a função valor alcança seu valor máximo quando um desconto γ < 1 é utilizado.

A Figura 3.16 apresenta o comportamento da política e função valor ao manter a políticafixa durante os episódios. Nota-se que a partir do episódio 5000, momento em que a políticatornou-se fixa, a função valor tende a saturar. Isto ocorre se um desconto γ < 1 for utilizado,caso contrário, o valor tenderá ao infinito. Observe que neste caso, a função valor será umaaproximação da soma das recompensas futuras descontadas (Equação 2.2). Ao utilizar umdesconto, o valor máximo da função valor pode ser estimado pela soma de uma ProgressãoGeométrica (PG) infinita:

Qmax ≤∣∣∣∣∣ rmax1−γ

∣∣∣∣∣ , � �3.3

onde rmax é a maior recompensa que pode ser recebida em uma região discretizada e γ é odesconto. Se r é constante durante a visita de uma região, Qmax será o valor exato. Para oexemplo da Figura 3.16, uma vez que γ = 0.95 e r =−1, Qmax será igual à −20.

O presente capítulo descreveu o problema do uso da AR em ambientes que possuem

Page 55: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 54

πcima

πdir.

argmaxa

Q(a) = ci

ma

argmaxa

Q(a) = di

r.

Q(c

ima

)−Q

(dir

.)

0

fronteira

tempo

Figura 3.15: Fenômeno Chattering observado do espaço de políticas pertencente aregião 4 do ambiente Gridworld particionado como apresentado pela Figura 3.11. A linhapontilhada mostra o trajeto da função valor Q para a ação que possui a maior estimativade retorno em um dado momento. Se Q(cima)>Q(dir.), a ação cima é realizada, casocontrário, se Q(cima)<Q(dir.), a ação direita é realizada. A função valor destas duasações iniciam com variações de maior magnitude, mas tendem a reduzir, convergindo

para a fronteira entre estas duas políticas.

0

50

100

150

200

250

300

350

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000

-20

-18

-16

-14

-12

-10

-8

-6

-4

-2

0

Núm

ero

de M

udan

ças

da P

olíti

ca

Var

iaçã

o da

Fun

ção

Val

or

Episódio

Política

Qu

Qr

Figura 3.16: Redução dos efeitos do fenômeno Chattering observado a partir do episódio5000 após tornar a política fixa durante os episódios restantes. A oscilação da política éreduzida enquanto a função valor tende a saturar para o seu valor máximo (Equação 3.3).

Os parâmetros utilizados neste experimento foram: α= 0.001, γ = 0.95 e ε= 0.1.

Page 56: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

3.3. DEPENDÊNCIA DO CAMINHO 55

o espaço de estados contínuo, o processo de discretização de tais ambientes e o tipo de tarefa

que se pretende resolver. Ainda neste capítulo, dois problemas que podem ocorrer com a perdada Propriedade de Markov foram relacionados e discutidos na Seção 3.3. O próximo capítuloapresenta e classifica estratégias utilizadas por algoritmos AR que buscam reduzir os efeitos damaldição da dimensionalidade em ambientes que possuem o espaço de estados contínuo.

Page 57: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

565656

4Trabalhos Relacionados

Este capítulo descreve algoritmos que visam o uso de estratégias para a redução dosefeitos da maldição da dimensionalidade, sejam elas pelo particionamento do espaço de estadosou pelo uso de aproximadores de funções. Estes algoritmos serão apresentados em dois grupos.O primeiro, descrito na Seção 4.1, descreve os algoritmos que utilizam uma abordagem fixa,no sentido em que a representação do ambiente não se altera no decorrer da aprendizagem. Osegundo grupo, descrito na Seção 4.2, descreve os algoritmos adaptativos separados em trêssubseções que refletem a abordagem utilizada para particionar o espaço de estados. Estas duasseções apresentam as principais características destes algoritmos ressaltando suas principaisvantagens e desvantagens.

4.1 Representação Fixa

Tile Coding (Albus, 1975)

O Tile Coding (TC) (Albus, 1975) é um aproximador de função linear utilizado comsucesso em várias tarefas de controle que incluem o Dribble (Vieira; Adeodato; Gonçalves,2010), Keepaway (Stone; Sutton; Kuhlmann, 2005; Garca et al., 2010), Acrobot (Sutton, 1996),Mountain Car (Sutton, 1996) e muitos outros. Neste algoritmo, o espaço de estados é discretizadoem tilings. Cada tiling é composto por um grupo de pequenas regiões disjuntas chamadas tiles

que cobrem todo o espaço de estados (ver Figura 4.1). O projetista do modelo deve definirexperimentalmente como estes tiles deverão ser distribuídos no espaço de estados. Existeminúmeras possibilidades para a sua organização (Sutton; Barto, 1998). A mais simples consisteem utilizar tilings que dividem uniformemente o espaço de estados. Em casos onde existemregiões mais críticas que outras, uma divisão não-uniforme pode ser utilizada. Outra alternativaé utilizar grupos de tilings que cobrem dimensões distintas do espaço de estados. Em todosestes casos, apenas um especialista no domínio do problema pode definir com precisão qual é amelhor estratégia para particionar o espaço de estados. Infelizmente, a disponibilidade de umespecialista nem sempre é possível.

Page 58: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.1. REPRESENTAÇÃO FIXA 57

Para obter o retorno esperado de um par (s,a), a ação e as variáveis de um estado sãocombinadas em um vetor de entrada para endereçar os diversos tiles que particionam o espaçode estados. Neste algoritmo podem existir c-tilings sobrepostos com um deslocamento aleatórioentre si. Desta forma, para todo par estado-ação, c tiles serão ativos e o retorno pode ser obtidocom a soma de todos estes tiles (Sutton; Barto, 1998):

Q(s,a) =c∑i=1

θ(s,a, i),� �4.1

onde θ é a estimativa do retorno armazenada em um tile pertencente ao tiling i e c é a quantidadede tilings. Para todo par (s,a), a quantidade de tiles ativos será a mesma quantidade de tilings

existentes. A Figura 4.1 ilustra este processo.

tiling #1tiling #2

y x

estado

tiles ativos

Figura 4.1: Ativação de dois tiles em dois tilings sobrepostos pelo algoritmo TC. Nestafigura cada tile é endereçado por duas variáveis, x e y. A sobreposição dos tiles torna

possível compartilhar a experiência obtida em uma região entre as vizinhas.

A cada passo de tempo, a recompensa recebida é repassada para todos os tiles ativos. Aação a ser realizada pelo agente em um estado s é determinada por:

a= argmaxaQ(s,a)

� �4.2

A Equação 4.2 garante que o agente realize ações que o levem para a maior quantidade derecompensas aparente. Para garantir que o agente explore uma quantidade maior de estados, umaação aleatória deve ser selecionada com probabilidade ε ou a melhor ação com probabilidade1− ε. Os passos realizados pelo algoritmo TC são enumerados a seguir:

1. Observe o estado atual s.

2. Identifique quais tiles são ativados pelo estado s.

3. Calcule para cada ação a, o valor de Q(s,a) somando as estimativas contidas nostiles ativos.

4. Faça a← argmaxaQ(s,a) ou, com probabilidade ε, a← ação aleatória.

Page 59: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.1. REPRESENTAÇÃO FIXA 58

5. Realize a ação a e observe o próximo estado s′ e recompensa r.

6. Atualize as estimativas de recompensa dos c-tiles ativados pelo par (s,a).

7. Faça s← s′ e repita a partir do segundo passo.

Neural Fitted Q Iteration (Riedmiller, 2005)

Um problema associado à utilização das redes MLP (Rumelhart; Hinton; Williams, 1988)em ambientes AR se deve a sua característica de aproximador global (Haykin, 1998). Em razãodesta característica, ao aproximar a função valor em uma região, a estimativa em outras regiõestambém serão afetadas o que pode acabar arruinando todo o aprendizado (Haykin, 1998). Estacaracterística aumenta consideravelmente o tempo de convergência do algoritmo, pois muitasinterações serão necessárias para que uma política satisfatória seja encontrada (Haykin, 1998).Neural Fitted Q-iteration (NFQ) (Riedmiller, 2005) é um algoritmo que utiliza uma estratégia deaprendizagem para evitar a influência das novas atualizações da função valor em outras regiõessem relação do espaço de estados. Para isto, este algoritmo atualiza a função valor em umestado ao mesmo tempo em que reapresenta o conhecimento adquirido nos estados anteriores.A ideia consiste em armazenar toda a experiência do agente na forma (s,a,r,s′). Estes dadosserão reutilizados toda vez que a função valor precisar ser atualizada. Este algoritmo segue umaestratégia semelhante ao proposto por Ernst; Geurts; Wehenkel (2005) que utilizaram árvores dedecisão ao invés da rede MLP. As principais características do algoritmo NFQ são:

� Um modelo do ambiente não é necessário. A única informação utilizada são os dadoscoletados da experiência do agente com o ambiente.

� A aprendizagem é realizada de forma off-line, i.e., o processo de interação e aprendi-zagem ocorrem em etapas diferentes.

Para a coleta do conjunto de treinamento as seguintes heurísticas podem ser utilizadas. Aprimeira consiste em o agente interagir com o ambiente realizando ações aleatórias. O resultadodesta interação é armazenado e posteriormente utilizado para o treinamento da rede MLP. Deoutra forma, o treinamento pode ocorrer de forma incremental. Neste caso, a rede neural étreinada e posteriormente utilizada para controle do agente. A experiência obtida desta novainteração é armazenada para treinar a rede em outro momento. Este processo se repete até queum desempenho satisfatório seja alcançado. Esta última heurística de treinamento permite que oagente visite regiões do espaço de estados que são difíceis de serem alcançadas utilizando apenasações aleatórias (Riedmiller, 2005).

Contudo, ambas as estratégias não garantem que o agente consiga atingir o estado meta.Neste caso, o conjunto de treinamento será composto de exemplos em que o agente semprefalha. Ao utilizar a rede MLP é importante que, para um bom desempenho do modelo, oconjunto de treinamento seja composto de exemplos de sucesso e falha (Han; Kamber; Pei,

Page 60: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.1. REPRESENTAÇÃO FIXA 59

2011). Para isto, (Riedmiller, 2005) sugere uma terceira estratégia em que o agente é posicionadopróximo ao estado meta e se afasta à medida que uma quantidade satisfatória de casos de sucessosejam coletados. Melhores resultados podem ser obtidos se estas duas classes de exemplossão balanceadas (Han; Kamber; Pei, 2011). Esta última estratégia, no entanto, exige umamanipulação direta do projetista do modelo no ambiente o que, a depender da tarefa, nem sempreserá possível.

Determinada a melhor heurística para a coleta dos dados de treinamento, a próxima etapadeve definir a estrutura da rede MLP. O algoritmo NFQ utiliza um esquema semelhante ao apre-sentado pela Figura 4.2. Neste esquema, o projetista do modelo deve definir experimentalmentea quantidade de camadas ocultas e a quantidade de neurônios por camada, sendo esta etapa,crucial para um bom desempenho do modelo (Correa; Gonzalez, 2011). Estas configuraçõespodem ser realizadas com o uso de algoritmos que automatizam esta tarefa (Bodenhausen; Hild,1995; Saber; El-rashidy, 2014).

ação

Q

...

...

...

w . . .

estado

camadaoculta

camadade entrada

camadade saída

Figura 4.2: Estrutura da rede MLP utilizada pelo algoritmo NFQ. Os nós de umacamada estão conectados com todos os outros da próxima camada. Cada conexão possuium peso w associado que armazena o conhecimento adquirido pela rede. A saída da rede

é a estimativa Q para o par (s,a) apresentado na entrada.

Os neurônios da camada de entrada recebem o par (s,a), onde em cada variável deestado existe um neurônio associado e, para todas as ações do agente, apenas um neurônio éutilizado. A resposta da rede será um valor aproximado de Q para o par (s,a) apresentado naentrada da rede. A notação Q é utilizada para indicar que a resposta da rede é uma aproximaçãodo valor Q. Contudo, Q é uma estimativa e, por si só, já possui um erro associado. Esteerro é ampliado quando somado ao da aproximação dada pela rede MLP. Isto dificulta aaprendizagem e, em alguns casos, a política resultante pode não ser satisfatória (Boyan; Moore,1995). Para agravar o problema, no treinamento, o erro citado é distribuído por toda a funçãovalor, pois a resposta desejada que se pretende aproximar é baseada em outras estimativas dafunção valor (Sutton; Barto, 1998). O treinamento da rede, i.e., o ajuste dos pesos, pode serrealizado utilizando o algoritmo backpropagation (Rumelhart; Hinton; Williams, 1988) ou pelo

Page 61: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 60

uso de outros algoritmos de aprendizagem considerados mais velozes, tais como o Resilient

Propagation (RPROP) (Riedmiller; Braun, 1993).

4.2 Representação Adaptativa

No âmbito da AR, os modelos adaptativos possuem certas vantagens em relação aosfixos. A primeira é que eles não necessitam de um especialista no domínio do problema paradefinir a representação do ambiente. Esta é uma importante característica, pois na maioria dosproblemas, pouco se sabe a respeito das particularidades do problema que se deseja resolver.Uma representação errada pode reduzir drasticamente o desempenho do algoritmo ou, no piorcaso, impossibilitar o agente de encontrar uma solução. A segunda vantagem deve-se a suacapacidade de readaptação a pequenas mudanças do ambiente (Montazeri; Moradi; Safabakhsh,2011). Estas variações incluem erros nos sensores que podem mudar a forma como o agentepercebe o ambiente. Outra vantagem já foi exposta por Sherstov; Stone (2005). Em seu estudo,um ganho no desempenho da aprendizagem pode ser obtido se o refinamento do espaço deestados aumenta à medida que o agente aprende a desempenhar a tarefa.

Alguns dos algoritmos que serão apresentados nas próximas subseções não definem ograu de refinamento que o espaço de estados deve possuir, desta forma, cabe ao projetista domodelo definir a resolução ideal. Serão apresentados outros algoritmos que refinam o espaçode estados incrementalmente e param quando o número de partições torna-se suficiente pararepresentar o espaço de estados e, por fim, também serão apresentados algoritmos que possuemambas as características. Estes algoritmos serão apresentados separados em três subseções quedescrevem grupos de algoritmos que utilizam técnicas diferentes para o refinamento incrementale adaptativo do espaço de estados. O primeiro grupo são baseados no monitoramento da políticado agente (Subseção 4.2.1), o segundo, no monitoramento da função de recompensa (Subseção4.2.2) e o último, no monitoramento da função valor (Subseção 4.2.3).

4.2.1 Adaptação pela Política

Basicamente os algoritmos que utilizam esta abordagem monitoram as variações dapolítica e refinam o espaço de estados se, em uma mesma região, diferentes ações são realizadaspelo agente. A ideia parte do pressuposto de que este comportamento pode indicar a existênciade estados não-similares agrupados em uma mesma região. Baseado neste indicativo, estesalgoritmos decidem se uma região deve ser dividida em duas ou mais regiões. Considerenovamente o problema apresentado no Capítulo 3 e reapresentado neste capítulo pela Figura4.3(a). Como visto anteriormente, a política ótima é impossível de ser alcançada devido àdependência do caminho (Definição 3.2). A Figura 4.3(b) mostra a função valor nas quatroregiões do ambiente particionado uniformemente da Figura 4.3(a). Note que os valores das açõesdireita e cima da região quatro, diferem de apenas um passo da atualização pela equação do

Page 62: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 61

algoritmo Q-learning como exemplificado a seguir,

Q(4,→) =−0.59 + 0.1× [−1 + 0.95×0.59 + 0.59] =−0.68

Q(4,↑) =−0.69

Q(4,→) =−0.77

� �4.3

1

2

3

4

1 2 3 4

1 2

3 4

(a) Discretização uniforme

0

1

2

3

4

0 1 2 3 4

-2,41

-2,78

-2,42 -1,54

-2,85

-3,6

-3,57 -2,99

-0,6

-2,63

-1,61 -0,59

-2,19

-3,12

-3,19 -3,14

(b) Função valor

Figura 4.3: Discretização uniforme apresentada em (a) e as estimativas do retorno das 4ações (esquerda, cima, baixo e direita) apresentada em (b) após convergência da função

valor pelo algoritmo Q-learning.

Estas atualizações resultam na variação da política conforme apresentado na Figura4.4. Em outras palavras, o agente não consegue estabilizar a política, pois da forma comoo espaço de estados foi particionado, dois estados não-similares foram agrupados em umamesma região gerando a dependência do caminho. Neste caso, as estimativas dos retornosdas ações cima e direita seguem com valores bem próximos e a estimativa, ora é maior paraa ação cima, ora é maior para ação direta, resultando numa constante mudança da política doagente1. Contudo, devido a representação inicial muito generalizada é natural que a políticasofra mudanças durante a aprendizagem. No entanto, isto não indica que a região está malrepresentada. A adição de novos nós em casos como este pode levar a uma representação muitofina em regiões desnecessárias do espaço de estados o que pode ocasionar em uma perda nodesempenho da aprendizagem (Baumann; Kleine büning, 2014).

Nesta seção, dois algoritmos que utilizam esta abordagem serão apresentados. O primeiroparticiona o espaço de estados automaticamente, mas as regiões permanecem imóveis no decorrerda aprendizagem. O segundo algoritmo realiza tanto o refinamento quanto o movimento daspartições.

1Fenômeno Chattering.

Page 63: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 62

0

1

2

3

4

0 1 2 3 40

1

2

3

4

0 1 2 3 4

0

1

2

3

4

0 1 2 3 4

...

Figura 4.4: Oscilação da política devido a dependência do caminho.

Adaptive Tile Coding (Whiteson; Taylor; Stone, 2007)

Como visto anteriormente, o TC é um algoritmo que requer um especialista para escolhero tamanho e a distribuição dos tiles em cada dimensão do espaço de estados. O Adaptive Tile

Coding (ATC) (Whiteson; Taylor; Stone, 2007) é um algoritmo que busca automatizar estaetapa através de um processo iterativo que adiciona novos tiles no decorrer da aprendizagem.O algoritmo inicia a aproximação com apenas um tile representando todo o espaço de estados.O refinamento consiste em dividir os tiles existentes em duas partes iguais. Este processo serepete até que o valor obtido por ∆V = rt+γV (st+1)−V (st) tenha um valor suficientementepequeno; onde V (s) é a estimativa do retorno a ser recebido em um estado s ao seguir umapolítica π. Um problema com esta estratégia é que muitas divisões serão necessárias até quetodos os estados não-similares sejam separados. Isto pode resultar em uma representação muitofina e desnecessária em algumas partes do espaço de estados. A Figura 4.5 ilustra este problema.Note que um tile pode ser dividido de duas formas: 1) ao longo do eixo x ou 2) ao longo doeixo y. Para separar as regiões a e b foram necessários 37 tiles. Se a região a não tivesse umformato retangular, então uma quantidade muito maior de tiles seria necessária. O aumento donúmero de tiles ocasiona dois problemas: aumento no tempo de convergência e aumento nocusto computacional para encontrar o tile ativo (Sutton; Barto, 1998).

O momento para a divisão de um tile é determinado pelo monitoramento do valor ∆V .A motivação deve-se a tendência de ∆V diminuir à medida que a estimativa da função valorconverge. O algoritmo ATC utiliza a seguinte heurística para determinar o momento em queum tile deve ser dividido. Para cada tile, o agente monitora o menor |∆V | ocorrido durante asatualizações. Um contador global u é mantido para contar a quantidade de atualizações ocorridasdesde a última atualização em que se obteve um |∆V | menor. Em cada atualização, ou u éincrementado ou atribuído o valor zero. Se u excedeu um limite p previamente definido então,assume-se que a aprendizagem alcançou um estágio com pouco ou nenhuma alteração e, um

Page 64: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 63

a

b

a

b

a

b

a

b

...

Figura 4.5: Processo de refinamento do algoritmo ATC em um ambiente que requer duasações diferentes em duas regiões distintas a e b. As linhas pontilhadas representam aspossibilidades de divisão de um tile. Para separar os estados não-similares destas duas

regiões foram necessários 37 tiles.

tile é selecionado para dividir. Em outras palavras, uma divisão ocorre após p atualizaçõesconsecutivas que não produziram um menor |∆V |. O parágrafo seguinte descreve um potencialproblema que pode ocorrer ao utilizar esta heurística.

Caso a aproximação do espaço de estados inicial não seja suficiente para o agenteterminar um episódio, a condição necessária para o refinamento do espaço de estados nunca serásatisfeita. Este problema é exemplificado a seguir. Considere uma tarefa em que o agente recebeuma recompensa −1 a cada instante de tempo, exceto no estado meta no qual ele recebe umarecompensa 0. Se o agente não conseguir terminar o episódio, ∆V possuirá um comportamentosemelhante ao apresentado pela Figura 4.6. Em outras palavras, |∆V | decairá exponencialmenteconvergindo para zero. Desta forma, a condição necessária para realizar o refinamento nuncaserá satisfeita, pois não haverá p atualizações consecutivas que não produziram um |∆V | menor.

0

0.2

0.4

0.6

0.8

1

0 500 1000 1500 2000

V

Passos

Figura 4.6: Decaimento de ∆V em um problema com apenas um estado no qual oagente recebe recompensa −1 a cada passo de tempo. Os parâmetros utilizados foram:

α= 0.1 e γ = 0.95.

Page 65: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 64

Interpolating Growing Neural Gas Q-learning (Baumann; Kleine büning, 2014)

Baumann; Kleine büning (2014) apresenta o algoritmo Interpolating Growing Neural

Gas Q-learning (IGNG-Q) que utiliza a rede GNG para adaptativamente particionar o espaçode estados com o agrupamento dos estados similares. Nesta abordagem, os nós possuem umatabela com as estimativas dos retornos de cada ação. A estimativa Q do par (s,a) é obtida com ainterpolação baseada na distância entre os nós e o estado s. Esta estratégia permite suavizar afunção valor entre as fronteiras formadas pelos nós.

A cada iteração, o algoritmo Q(λ) é utilizado para atualizar a função valor e, caso aatualização provoque uma mudança na política, uma variável de erro local é incrementada. Osestados são apresentados para a rede como entrada e são armazenados nos nós mais próximosde acordo com a distância Euclidiana. No fim do episódio o algoritmo calcula para cada nó amédia destes estados e os move uma fração ew em direção da média se o erro for maior que umparâmetro ∆. Caso a soma de todos os erros seja maior que a quantidade de nós, o nó com omaior erro é duplicado e os dois são movidos para assegurar que não representem a mesma região.O erro destes nós são reiniciado com 0. A cada interação dois nós que são, respectivamente,mais próximo do estado atual e do próximo estado são conectados ou a idade da conexão éreiniciada com 0. As conexões que possuem idade maior que amax são removidas. Os passosdeste algoritmo são enumerados a seguir:

1. Observe o estado atual s.

2. Encontre o nó w mais próximo de s.

3. Selecione a próxima ação a a ser realizada, argmaxaQ(w,a) com probabilidade1− ε ou, com probabilidade ε uma ação aleatória.

4. Realize a ação a e observe a recompensa r e o próximo estado s′.

5. Encontre o nó w′ mais próximo de s′.

6. Armazene o estado s no nó w.

7. Se w 6= w′ faça

7.1. Reduza o erro de todos os nós.

7.2. Conecte os nós w e w′ ou reinicie a idade da conexão.

8. Incremente a idade das conexões originadas de w e remova as conexões com idademaior que amax.

9. Atualize Q(w,a) utilizando o algoritmo Q(λ).

10. Se acontecer uma mudança na política do agente, incremente a variável de erro localdo nó E(w).

Page 66: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 65

11. Enquanto o episódio não terminar, repita do passo 1.

12. Mova os nós uma fração ew em direção da média dos estados armazenados se onúmero de episódios é múltiplo de n e o erro do nó é maior que ∆.

13. Adicione um novo nó se a soma de todos os erros é maior que o número de nós.

14. Repita do passo 1 em um novo episódio.

Um problema com esta abordagem está relacionado ao movimento e adição dos nós. Paraobter informações suficientes sobre onde adicionar e para onde movê-los, este processo ocorresomente no fim do episódio. Desta forma, o movimento e o processo de refinamento tornam-selentos, pois muitos episódios serão necessários para alcançar uma representação satisfatória doespaço de estados. Esta característica aumenta consideravelmente o tempo de treinamento. Outroproblema ocorre no inicio da aprendizagem quando poucos nós estão representando o ambiente.Se esta representação não é suficiente para finalizar o episódio, a função valor tende a saturar(Definição 3.3).

Considere a tarefa apresentada pela Figura 4.3(a), onde o agente recebe uma recompensa−1 em todos os estados que são diferentes do estado meta. Neste caso, o valor máximo dafunção valor pode ser calculado pela Equação 3.3. Para o exemplo anterior, se γ = 0.95, Qmaxserá igual à −20. Se com a representação inicial, o agente for incapaz de terminar o episódio,então a função valor alcança a saturação e o valor estimado do retorno para o par estado-açãose apresentará conforme a Figura 4.7(a). Consequentemente, a política do agente não sofrerámodificações e será para sempre executar a mesma ação (Figura 4.7(b)). Desta forma, o agentenunca terminará um episódio, pois qualquer atualização da política resulta sempre no mesmovalor,

Q(s,a) =−20 + 0.1× [−1−0.95×20 + 20]

=−20

e com isso, nenhum nó será adicionado, pois a política não sofrerá nenhuma alteração.

4.2.2 Adaptação pela Função de Recompensa

Os algoritmos baseados na função de recompensa buscam particionar o espaço de estadosem função da recompensa recebida. Os algoritmos mais simples acumulam a recompensarecebida nos estados de uma região e particionam esta região se a recompensa acumuladaultrapassar um limite previamente estabelecido. Esta estratégia pode apresentar bons resultadosem problemas onde a função de recompensa possui uma distribuição não-uniforme no espaço deestados. Neste caso, novos nós serão adicionados em locais onde a recompensa é muito baixapermitindo ao agente aprender uma política mais refinada nestas regiões para que possa evitá-las(Lee; Lau, 2004). No entanto, em muitos problemas da AR a função de recompensa é distribuída

Page 67: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 66

0

1

2

3

4

0 1 2 3 4

-20

-20

-20 -20

-20

-20

-20 -20

-20

-20

-20 -20

-20

-20

-20 -20

(a) Função valor

0

1

2

3

4

0 1 2 3 4

(b) Política

Figura 4.7: Saturação da função valor e a política derivada dela.

uniformemente, como por exemplo, no Gridworld onde o agente recebe recompensa −1 emqualquer estado que não seja o meta, Mountain Car (Sutton; Barto, 1998), Cart Pole (Barto;Sutton; Anderson, 1983), Maze (Braga; Araújo, 2003) e muitos outros.

Temporal Difference Adaptive Vector Quantification (Lee; Lau, 2004)

Temporal Difference Adaptive Vector Quantification (TD-AVQ) (Lee; Lau, 2004) é umalgoritmo utilizado para particionar adaptativamente o espaço de estados pelo monitoramento darecompensa acumulada recebida pelo agente em uma região antes da ativação de outra diferente.Se a recompensa acumulada ultrapassar um limite pré-definido θ e o estado atual s estiver a umadistância maior que uma constante ρ, o espaço de estados é particionado com a adição de umnovo nó em s.

Uma característica importante deste algoritmo é que as ações são escolhidas imediata-mente após a ativação de uma região e não se alteram até que outra região seja ativada. Destaforma, é possível saber qual ação é responsável por levar o agente para outras regiões. Estecomportamento pode impedir que casos como o apresentado na Figura 4.3(b) ocorra. Istoacontece da seguinte forma. Considere para o exemplo dado a seguir que θ =−5 e ρ= 1. Se oagente alcançar a região quatro a partir do estado (1,2) e argmaxbQ(4, b) =→ o agente utilizaráesta ação até que a recompensa acumulada ultrapasse θ ou até que outra região seja ativada.Neste caso, isto não acontece, pois após o estado (1,2), o agente passaria para o estado (1,3) eposteriormente para o estado (1,4) e permaneceria neste estado uma vez que a ação direita fariao agente esbarrar em uma parede. Neste caso, a recompensa acumulada ultrapassaria o valor θ eum novo nó seria adicionado no estado (1,4). Por outro lado, se ao invés de ficar parado em umaparede, a ação o levasse para o estado (1,2) um novo nó nunca seria adicionado, pois, neste caso,a região três seria ativada e a recompensa acumulada reiniciaria com valor zero. Somente com aredução do valor θ seria possível o particionamento da região quatro. Isto mostra um pouco dadificuldade em se atribuir o valor θ.

Outro problema com esta abordagem é que o algoritmo Q-learning não é aplicado

Page 68: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 67

enquanto uma região diferente não for ativada. Enquanto isso, as recompensas são descartadase apenas as recebidas na trasição entre as regiões são consideradas. Neste caso, o agente nãosaberá o custo real para alcançar uma região diferente. Este problema potencialmente evita ouso desta abordagem em ambientes onde recompensas diferentes podem ser recebidas em ummesmo episódio como, por exemplo, no Puddle World (Sutton; Barto, 1998). Os passos destealgoritmo são enumerados a seguir:

1. Observe o estado atual s.

2. Encontre o nó w mais próximo de s.

3. Determine a próxima ação a a ser realizada, argmaxaQ(w,a) com probabilidade1− ε ou, com probabilidade ε uma ação aleatória.

4. Realize a ação a e observe a recompensa r e o próximo estado s′.

5. Acumule a recompensa recebida em uma variável R.

6. Encontre o nó w′ mais próximo de s′.

7. Enquanto w = w′ repita do passo 1 ou adicione um novo nó se R> θ e ||w−s′||> ρ.

8. Atualize a função valor utilizando a última recompensa recebida.

9. Repita do passo 1.

A Figura 4.8 apresenta um ambiente discreto no qual, no inicio do episódio, o agentedeve escolher entre os caminhos P1 e P2, onde o custo em P1 é menor que em P2. Após a escolhado caminho, o agente pode realizar apenas a ação direita. Em P1, o episódio termina após quatropassos enquanto em P2, o episódio termina após seis passos. O agente recebe recompensa 0 aoalcançar o estado meta e, recompensa −1, nos outros estados. Os três primeiros estados em P1

foram agrupados enquanto em P2, foram agrupados os seis primeiros. Para γ = 0.95, o custo Creal destes dois caminhos podem ser calculados como segue,

C(P1) =−1×0.950−1×0.951−1×0.952−1×0.953 + 0×0.954 =−3.70988

C(P2) =−1×0.950−1×0.951−1×0.952−1×0.953−1×0.954−1×0.955 + 0×0.956

=−5.29816.

Uma vez que as recompensas recebidas durante a visita de uma região são descartadas, oalgoritmo TD-AVQ não é capaz de calcular o custo correto destes dois caminhos. O caminhoP1 por possuir duas regiões discretas, um custo maior que em P2 foi associado, uma vez queP2 possui apenas uma região discreta. Este comportamento se deve ao algoritmo TD-AVQconsiderar apenas as recompensas de transição entre as regiões, sendo assim, visto que em P1

existem mais regiões que em P2, o algoritmo associou de forma errada um custo maior para P1.

Page 69: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 68

-1,95 -1 0

-1 0

Agente

P1

P2

Figura 4.8: Custo dos caminhos P1 e P2 calculados pelo algoritmo TD-AVQ. Ocaminho P1 foi discretizado em duas regiões enquanto o caminho P2 em apenas uma. Aslinhas pontilhadas representam os estados agrupados. Pelo caminho P1, o agente alcança

o estado meta em 5 passos enquanto pelo caminho P2 em 7 passos. Os parâmetrosutilizados foram: λ= 0.95, γ = 0.95 e α= 0.1. Apesar do custo em P1 ser menor que

em P2, o algoritmo TD-AVQ não foi capaz de calculá-lo corretamente.

4.2.3 Adaptação pela Função Valor

A função valor diz muito a respeito de uma região. Um valor muito baixo pode indicar apresença de estados não-similares ou uma região que deve ser evitada, por outro lado, se o valoré alto, a região deve ser visitada com mais frequência. Nesta última seção serão apresentadosalgoritmos que particionam o espaço de estados e movimentam as regiões discretizadas baseando-se na estimativa corrente da função valor.

SARSA Learning Vector Quantization(Abramson; Pachowicz; Wechsler, 2003)

Sarsa Learning Vector Quantization (SLVQ) (Abramson; Pachowicz; Wechsler, 2003)é um algoritmo que integra um algoritmo de aprendizagem on-policy para a aproximação dafunção valor com um algoritmo para a representação automática do espaço de estados. Osalgoritmos on-policy avaliam e aperfeiçoam a política que é utilizada para tomar suas decisões,ou seja, estes métodos estimam o valor da política enquanto a utilizam para o controle do agente.Já nos métodos off-policy, estas duas funções são separadas. A política utilizada para o controle,chamada de política de controle, é diferente da política que é avaliada e otimizada, chamada depolítica de estimação (Sutton; Barto, 1998). O Q-learning (ver Subseção 2.2.1) é um algoritmode aprendizagem off-policy, pois a estimativa do próximo estado (s′) onde a ação possui omaior valor de retorno (argmaxbQ(s′, b)) é utilizada. Em outras palavras, enquanto o agente écontrolado por uma política ε-greedy, o algoritmo Q-learning atualiza a função valor utilizandoestimativas de fora da política de controle. Em um algoritmo on-policy, por outro lado, a políticautilizada para controlar o agente é a mesma utilizada para atualizar a função valor. O SARSA(Rummery; Niranjan, 1994; Sutton, 1996) é um exemplo de algoritmo on-policy. A atualizaçãoda função valor deste algoritmo é dada por:

Q(st,at) =Q(st,at) +α [rt+1 +γQ(st+1,at+1)−Q(st,at)] .� �4.4

Note que ao invés de utilizar a estimativa (maxbQ(st+1, b)) onde possui o maior valor

Page 70: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.2. REPRESENTAÇÃO ADAPTATIVA 69

de retorno, o algoritmo SARSA utiliza a estimativa da próxima ação que será utilizada paracontrolar o agente (Q(st+1,at+1)).

No algoritmo SLVQ, um grupo de estados é representado por um nó. Este nó é aquádrupla {m,a,Q,α}, onde m é o vetor peso que determina sua posição, a é a ação atribuída,Q é a estimativa do retorno para esta ação e α é a taxa de aprendizagem local. A atualizaçãodo vetor de pesos de um nó n ocorre em função da variação da função valor. Seja ∆Q(n,a) oincremento do valor Q ao realizar uma ação a com desconto γ; o nó n mais próximo do estadocorrente deve se mover para mais perto ou longe do estado atual s da seguinte forma:

∆Q(n,a) = αn[γQ(n′,a′)−Q(n,a)

]mt+1 =mt+ ∆Q(n,a) [s−mt]

� �4.5

onde n′ é o próximo nó ativo pelo estado s′ e mt é posição do nó n no instante de tempo t.Basicamente, este algoritmo é uma variante do proposto por Claussen; Gutta; Wechsler

(1999) que utilizou um algoritmo de aprendizagem off-policy. A justificativa teórica para seutilizar um algoritmo on-policy ao invés de um off-policy, segundo Abramson; Pachowicz; We-chsler (2003), se deve ao algoritmo Learning Vector Quantization (LVQ) (Kohonen; Schroeder;Huang, 2001) tentar aproximar a densidade da distribuição dos sinais de entrada minimizandoo erro descrito pela Equação 3.2. O erro será minimizado se os dados de treinamento p(s)corresponderem à mesma política utilizada para controlar o agente (Abramson; Pachowicz;Wechsler, 2003).

Neste algoritmo, o projetista deve definir o número de nós experimentalmente. Para cadanó é atribuido uma ação que não se altera. Deve-se utilizar, para cada ação, uma rede com amesma quantidade de nós. Isto pode gerar problemas de desempenho se o problema for muitocomplexo e houver a necessidade de muitos nós para representar o espaço de estados, pois oalgoritmo deverá percorrer todos os nós de todas as redes para encontrar o mais próximo do sinalde entrada e que possui a maior estimativa de retorno.

Algoritmo proposto por Montazeri; Moradi; Safabakhsh (2011)

Montazeri; Moradi; Safabakhsh (2011) apresenta uma variante do algoritmo propostopor Smith (2002) onde duas redes GNGs são utilizadas para representar o espaço de estados eações ao invés de duas redes de Kohonen (Kohonen; Schroeder; Huang, 2001). A primeira rede,a de entrada, é responsável pela representação do espaço de estados enquanto a segunda, a desaída, representa e explora novas regiões do espaço de ações a fim de encontrar ações melhores.De acordo com Montazeri; Moradi; Safabakhsh (2011), estes dois mapas estão conectados porintermédio de uma tabela que armazena as estimativas do retorno, onde para cada neurônio domapa de entrada existe uma linha nesta tabela e, similarmente, para cada neurônio do mapa desaída existe uma coluna.

O processo de aprendizagem deste algoritmo consiste em três etapas, são elas: 1)

Page 71: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.3. RESUMO 70

aprendizagem do mapa de entrada, 2) aprendizagem do mapa de saída e 3) aproximação dasestimativas de retorno. Em outras palavras, o algoritmo proposto tenta simultaneamente encontrara melhor representação para o espaço de estados, uma estimativa melhorada da função valore uma representação apropriada do espaço de ações que permita ao agente receber um maiorretorno. Visto que o algoritmo utiliza uma rede GNG para representar o espaço de estadose ações, o número de nós se modifica com o tempo e, desta forma, a dimensão da tabela deestimativas não pode ser fixa. Sendo assim, um mecanismo para crescer esta tabela é utilizadopara lidar com a natureza crescente destes mapas. Para cada neurônio adicionado ou removidodo mapa de entrada, uma linha na tabela de estimativas deve ser respectivamente adicionada ouremovida. O mesmo acontece similarmente para o mapa de saída, contudo, ao invés de adicionaruma linha na tabela, será adicionada ou removida uma coluna.

No mapa de entrada, o algoritmo GNG é aplicado a cada passo de tempo aproximandoos nós em direção do sinal de entrada. Basicamente, nenhuma modificação no algoritmo GNGfoi feita, ainda é preciso especificar a quantidade de iterações necessárias para a adição de novosnós (λ), a idade máxima das conexões (amax) e a quantidade máxima de nós (q). Um problemaem utilizar este algoritmo ocorre quando o agente permanece por muito tempo em uma regiãoocasionando no deslocamento dos nós vizinhos. Desta forma, o aprendizado obtido em umaregião pode ser perdido devido a este deslocamento. Por outro lado, os nós do mapa de saída sãomovidos somente se,

rt+1 +γmaxaQ(st+1,a)>Q(st,at).

� �4.6

Desta forma, os nós tenderão a mover-se para regiões onde um retorno maior pode serrecebido.

4.3 Resumo

O presente capítulo apresentou situações onde os algoritmos adaptativos podem falhar.Em muitos casos, pela dependência do caminho e em outros devido à saturação da função valor.Ambas as deficiências resultaram em algoritmos de aprendizagem em que o agente não aprendeuma política satisfatória.

Evitar a dependência do caminho é uma tarefa que traz desafios para os algoritmosAR, pois em grande parte dos problemas pouco se sabe a respeito de como os estados estãodistribuídos no espaço. Dentre os algoritmos descritos neste capítulo, o algoritmo TD-AVQ é oque apresenta a melhor estratégia para evitá-la, pois o agente mantém a política fixa durante avisita de uma região, reduzindo assim, os efeitos do fenômeno Chattering.

A Tabela 4.1 mostra as principais características dos algoritmos apresentados nestecapítulo. Estes algoritmos particionam e adaptam o espaço de estados baseando-se em trêsestratégias: 1) Política, 2) Função valor e 3) Função de recompensa. Contudo, estes algoritmosutilizam estratégias que em determinados casos a convergência não pode ser alcançada ou que a

Page 72: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

4.3. RESUMO 71

solução encontrada depende da sequência de estados visitados anteriormente devido o surgimentoda dependência do caminho. Neste último caso, o algoritmo pode apresentar uma convergência,mas após o treinamento a política será insuficiente para concluir a tarefa designada.

Tabela 4.1: Principais características dos algoritmos TC, NFQ, ATC, IGNG-Q,TD-AVQ, SLVQ e Montazeri-GNG.

Algoritmo Adaptação Refinamento AprendizagemTC não não Sarsa(λ)NFQ não não Q-learningATC não pela política Temporal Difference (TD)IGNG-Q pela política pela política Q-learningTD-AVQ não pela função de recompensa Q-learningSLVQ pela função valor não Sarsa(λ)Montazeri-GNG pela função valor após n interações Q-learning

Page 73: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

727272

5Ambientes de Teste

Com o objetivo de avaliar o modelo proposto apresentado no próximo capítulo, seudesempenho será comparado com outros algoritmos de aprendizagem em cinco ambientesexperimentais que serão descritos nas próximas seções deste capítulo. Todas as variáveis deestado destes ambientes foram normalizadas entre −1 e 1 e os ambientes Puddle World, Slow

Puddle World e Continuous Maze entre 0 e 1.

5.1 Mountain Car

Nesta tarefa, um carro é posicionado entre duas montanhas sem velocidade suficiente paraalcançar o estado meta localizado no topo da montanha da direita. O único meio para alcançareste objetivo é realizando uma sequência de ações que movimente o carro de forma alternadaentre as duas montanhas até obter velocidade suficiente para alcançar o topo da montanha dadireita. A Figura 5.1 ilustra o ambiente Mountain Car.

-1 -0.76 -0.52 -0.17 0.17 0.64 1Posição

MetaParede

Gravid

ade

Figura 5.1: Ambiente Mountain Car.

Nesta tarefa, o agente pode realizar duas ações que direcionam o carro para esquerda

Page 74: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.2. PUDDLE WORLD 73

(at =−1) ou para direita (at = 1). Uma recompensa−1 é dada para cada passo de tempo até queo agente alcance o estado meta no qual ele recebe uma recompensa 0. Os estados do ambientesão compostos por duas variáveis contínuas que descrevem a posição (xt) e a velocidade (xt) docarro e são atualizadas pelas seguintes equações descritas por Singh; Sutton (1996),

xt+1 = xt+ xt+1

xt+1 = xt+ 0.001at−0.0025× cos(3xt)

e limitadas, respectivamente, nos intervalos [−1.2,1.2] e [−0.07,0.07] por

xt+1 = min(max(−1.2,xt+1),1.2)

xt+1 = min(max(−0.07, xt+1),0.07).

Quando o carro alcançar o topo da montanha à esquerda, a velocidade é reiniciada emzero para simular a presença de uma parede. Se o carro alcançar o estado meta, o episódio éfinalizado e o agente é recompensado. Em cada episódio o agente inicia em um estado aleatório.Este é um exemplo de tarefa em que o agente deve visitar estados distantes do meta antes de irpara estados mais próximos.

5.2 Puddle World

Na tarefa Puddle World, o agente está situado em um ambiente com estados que possuemduas dimensões com tamanho 1. O objetivo do agente é alcançar a região meta localizado nolado superior direito do ambiente com tamanho 0.05 em ambas as dimensões. A cada passo detempo, o agente pode mover-se em quatro direções (esqueda, direita, cima e baixo) e para cadaestado visitado recebe recompensa −1. Uma recompensa menor pode ser recebida se o agenteestiver localizado dentro da poça.

Conforme descrito por Sutton (1996), a intensidade das recompensas recebidas nas poçassão obtidas multiplicado −400 pela distância do agente até a aresta da poça mais próxima.Estas poças possuem um raio de 0.1 e as arestas (centro das poças) estão localizadas nos pontos:(.10, .75) até (.45, .75) e (.45, .40) até (.45, .80). Ao alcançar o estado meta o episódio é finalizadoe o agente recebe uma recompensa 0. Um ruído retirado de uma distribuição normal com médiaµ= 0 e desvio padrão σ = 0.01 é adicionado ao tamanho do passo do agente (0.05) para tornara tarefa mais difícil. Este tipo de prática é comumente utilizada em ambientes simulados paraaproximar o ruído existente em atuadores e sensores do mundo real.

O ambiente descrito é apresentado na Figura 5.2. Nesta tarefa, a recompensa acumuladaé utilizada como métrica para o desempenho do modelo ao invés da quantidade de passos, pois ocaminho mais curto através das poças pode não ser a melhor política. A particularidade destatarefa que a diferencia das demais é a distribuição não-uniforme da recompensa no espaço deestados. Desta forma, em determinadas regiões o agente pode receber uma recompensa baixa

Page 75: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.3. ACROBOT 74

enquanto em outras uma recompensa muito pior.

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

Y

X

Meta

Figura 5.2: Ambiente Puddle World. As poças são apresentadas na cor azul e o estadometa na cor vermelha. A densidade da cor das poças representa a intensidade da

recompensa negativa a ser recebida.

Slow Puddle World

Uma variante do ambiente Puddle World, onde o tamanho do passo do agente é 100vezes menor e com ruído σ = 0.0001, será utilizado. Desta forma, para concluir um episódio seránecessário uma sequência de passos maior. No estado mais distante do meta, desconsiderandoas poças e o ruído σ, o agente deverá percorrer aproximadamente 4000 estados. No ambienteoriginal, seriam 40 estados.

5.3 Acrobot

Acrobot (Connell; Mahadevan, 1993) é um problema que simula a tarefa de um acrobataem se posicionar de cabeça para baixo em uma barra horizontal. Nesta tarefa o robô possuiduas juntas. A primeira (correspondente a mão do acrobata) não exerce torque enquanto asegunda (correspondente a cintura do acrobata) exerce. Esta é uma tarefa multidimensional comquatro variáveis de estado contínuas: posição das duas juntas e suas respectivas velocidades. Asequações que descrevem a dinâmica deste ambiente são dadas a seguir (Connell; Mahadevan,1993):

Page 76: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.4. CONTINUOUS MAZE 75

θ1 =−d−11 (d2θ2 +φ1)

θ2 =(m2l

2c2 + I2−

d22d1

)−1(τ + d2

d1φ1−m2l1lc2θ

21 sinθ2−φ2

)d1 =m1l

2c1 +m2

(l21 + l2c2 + 2l1lc2 cosθ2

)+ I1 + I2

d2 =m2(l2c2 + l1lc2 cosθ2

)+ I2

φ1 =−m2l1lc2θ22 sinθ2−2m2l1lc2θ2θ1 sinθ2 + (m1lc1 +m2l1)g cos

(θ1−

π

2

)+φ2

φ2 =m2lc2g cos(θ1 + θ2−

π

2

)

O torque aplicado na segunda junta é denotado por τ ∈ {+1,−1,0} onde, +1 indicaum torque positivo, −1 um torque negativo e 0 nenhum torque. Não há restrições para aposição das juntas, mas a velocidade angular é limitada em θ1 ∈ [−4π,4π] e θ2 ∈ [−9π,9π]. Asconstantes são: m1 =m2 = 1 (massa das articulações), l1 = l2 = 1 (tamanho das articulações),lc1 = lc2 = 0.5 (tamanho até o centro da massa das articulações), I1 = I2 = 1 (tensor de inérciadas articulações), e g = 9.8 (gravidade). A Figura 5.3 ilustra o ambiente. O passo de tempoutilizado é t = 0.05 segundos, mas as ações são realizadas em intervalos de quatro passos detempo. As velocidades angulares das articulações são dadas por

θ1 = θ1 + θ1× t

θ2 = θ2 + θ2× t

e as posições por

θ1 = θ1 + θ1× t

θ2 = θ2 + θ2× t.

O objetivo desta tarefa é controlar o Acrobot para que a ponta da segunda articulaçãoalcance a linha meta posicionada à uma distância d = 1 da primeira junta. Para isto, o agentedeve balançar a ponta em ambas as direções (esquerda e direita) para obter velocidade suficientepara que a ponta da segunda articulação alcance a linha meta. A cada passo de tempo o agenterecebe recompensa −1 ou uma recompensa 0 após alcançar o estado meta. No inicio de cadaepisódio serão atribuídos valores aleatórios para a posição das duas articulações θ1 e θ2 e suasrespectivas velocidades θ1 e θ2.

5.4 Continuous Maze

Neste ambiente de teste o agente encontra-se em um lambirinto de tamanho 20× 20como o apresentado pela Figura 5.4. Nesta tarefa o agente deve encontrar um caminho curto

Page 77: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.4. CONTINUOUS MAZE 76

torqueaplicado

θ1

θ2

Meta

Articulaçõesl1

l2

lc1

lc2

Ponta

d

Figura 5.3: Ambiente Acrobot.

entre um dado estado e o estado meta fixo na posição (19,2). A cada passo de tempo o agenterecebe uma recompensa de −1 até que alcance o estado meta onde receberá recompensa 0. Oagente inicia em uma posição aleatória e pode realizar quatro ações: 1) esquerda, 2) direita, 3)cima e 4) baixo. Se uma destas ações mover o agente para uma parede ou para fora dos limitesdo ambiente, a posição do agente não se altera e uma recompensa −1 é recebida.

0

5

10

15

20

0 5 10 15 20

Y

X Meta

1

1

1

1

Figura 5.4: Ambiente Continuous Maze.

O tamanho do passo do agente é de 0.01 totalizando 4 milhões de estados. Para tornareste espaço de estados infinito, um ruído retirado de uma distribuição normal com média µ= 0 edesvio padrão σ = 0.05 é adicionado ao passo do agente.

Page 78: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.5. STEERING CAR 77

5.5 Steering Car

Esta seção apresenta um ambiente do mundo real em que o objetivo é aprender a guiarum carro com quatro rodas. A complexidade desta tarefa deve-se à forma de como o carro fazuma curva que se assemelha a um carro real. O agente deve aprender o ângulo necessário paragirar as rodas dianteiras com o objetivo de guiar o carro na direção certa. Além disso, devido aolimite que as rodas podem girar, em alguns casos, o carro precisará ir para trás antes de ir parafrente, e vice-versa, para atingir o estado meta.

As Figuras 5.5 e 5.6 mostram o carro e uma imagem do ambiente sob uma perspectivavista do topo feitas utilizando uma webcam, respectivamente. A webcam está posicionada à2 metros do chão e 30 centímetros da parede de forma a cobrir todo o ambiente. As rodasdianteiras e traseiras foram marcadas com cores diferentes para facilitar a detecção da posiçãoe orientação do carro utilizando técnicas de detecção de cor (Bradski; Kaehler, 2008). Oproblema foi simplificado ao fazer a região meta virtual para evitar o uso de algoritmos de visãocomputacional, uma vez que este não é o objetivo deste trabalho. Após a detecção das quatrorodas do carro - a sua posição dianteira (F ), traseira (B) e central (C) - podem ser determinadascalculando a média dos pares:

Ft = (W0 +W1)/2

Bt = (W2 +W3)/2

Ct = (Ft+B7)/2

onde W0 e W1 são as posições das rodas dianteiras, W2 e W3 são as posições das rodas traseiras,Ft e Bt são, respectivamente, as posições dianteira e traseira do carro e Ct é o centro do carro noinstante de tempo t.

Figura 5.5: Carro com quatro rodas construído utilizando o kit Lego Mindstorms EV3. Ocarro possui dois motores, um para determinar sua orientação e outro para mover o carro

para frente ou para trás.

Page 79: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.5. STEERING CAR 78

Figura 5.6: Visão do topo do ambiente Steering Car observado por uma webcamposicionada à 2 metros de altura. O quadrado verde é a região meta, o quadrado preto é o

limite do ambiente e as flechas são os estados iniciais do carro.

Nesta tarefa, o agente pode realizar sete ações que movimentam as rodas dianteirasem sete graus diferentes (−45◦, −30◦, −15◦, 0◦, 15◦, 30◦, 45◦). Uma ação que movimenta aroda dianteira é seguida de um movimento para frente ou para trás tornando possível realizar14 ações distintas. Uma ação para frente ou para trás faz o carro mover-se aproximadamente12.5 centímetros. Esta distância pode variar devido à fricção das rodas com o piso. O estadoé composto por duas variáveis contínuas que descrevem a distância d e o ângulo β em grausradianos do carro relativo ao estado meta. Estas duas variáveis são calculadas como segue:

dt = ‖Ct−G‖

βt =arccos

(d2t +‖Ct−Ft‖2 +‖Ct−G‖2

)2×dt×‖Ct−Ft‖

onde Ft e Ct são, respectivamente, as coordenadas da frente e do centro do carro no instante detempo t, e G é a posição do estado meta. A posição do estado meta não depende do tempo, poisé fixa durante a aprendizagem. A equação abaixo calcula o sinal do ângulo βt (Schneider, 1997),

st = Cxt Fyt −C

yt F

xt +Cyt G

x−Cxt Gy +F xt Gy−F yt Gx

onde βt será multiplicado por −1 se st for um número negativo. Esta equação será negativa sea ordem dos pontos Ft, Ct e G estiverem no sentido horário e positivo caso contrário. Destaforma, o agente não precisa fazer distinção de sua posição relativa ao estado meta o que facilita aaprendizagem. A Figura 5.7 mostra como estes pontos estão configurados no carro e no estadometa.

A cada passo de tempo, o agente recebe uma recompensa −d até que alcance o estado

Page 80: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

5.5. STEERING CAR 79

0

0.4

0.5

0.6

1.0

0 0.6 0.7 0.8 1.4

y em

me

tros

x em metros

G

Meta

Carro

C

F

B

β

Rodas Dianteiras

Rodas Traseiras

Limite do Ambiente

Figura 5.7: Visão técnica do ambiente Steering Car. O quadrado preto nesta figuraindica o limite do mundo que o agente deve permanecer; as ações que levam o carro parafora desta região não são permitidas. Não existem sensores para detectar os limites doambiente, portanto, seu sentido de limite é baseado na distância e no ângulo relativo ao

estado meta. O ambiente e a região meta medem cerca de 4cm2 e 136cm2,respectivamente.

meta, onde receberá uma recompensa 0. O estado meta é alcançado se em um passo de tempo t,C encontra-se dentro da região delimitada pelo quadrado verde. Se uma ação move o carro parafora dos limites do ambiente, sua posição não é alterada, o agente recebe uma recompensa −d ea oportunidade de realizar uma ação no instante de tempo atual é perdida.

Page 81: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

808080

6Algoritmo Proposto

No Capítulo 4, foram apresentados algoritmos que generalizam o espaço de estadosem ambientes AR. Os modelos adaptativos apresentados foram classificados de acordo coma estratégia de particionamento utilizada. A partir das vantagens e desvantagens identificadasnestes modelos, foram definidas as principais características que o modelo proposto por estetrabalho deve possuir. Primeiro, a representação do espaço de estados não pode ser fixa. Estaabordagem necessita de configurações elaboradas do modelo para uma representação adequadado ambiente. Para isso, é necessário possuir um conhecimento prévio do problema a ser resolvido.

Os modelos adaptativos que refinam incrementalmente o espaço de estados dispensama necessidade de um especialista para o particionamento do espaço de estados. Além disso,permitem definir uma representação flexível do ambiente. Esta característica permite que emcertas regiões do espaço de estados a generalização seja maior enquanto que em outros arepresentação seja mais fina. Com isso, pode-se obter uma redução no tempo de aprendizagem(Vieira; Adeodato; Goncalves, 2013).

Segundo, a aprendizagem deve ser independente de como os estados são amostrados.Caso contrário, a coleta dos dados de treinamento pode exigir estratégias complicadas quenecessitem de uma participação direta do projetista do modelo. O algoritmo desenvolvido poreste trabalho necessita apenas que o projetista defina seus parâmetros.

Terceiro, o algoritmo proposto é capaz de concluir a tarefa independente da representaçãoinicial do ambiente. Para isto, o retorno é monitorado ao manter a política fixa para evitar asaturação da função valor (Definição 3.3) e possibilitar a identificação de regiões que possuem adependência do caminho. No capítulo anterior, foram apresentados modelos adaptativos que, adepender da representação do ambiente, a função valor poderia alcançar o seu valor de saturação- o que consequentemente prejudicaria a aprendizagem do agente.

Por último, o algoritmo proposto deve ser capaz de aprender sem um modelo quedescreva a dinâmica do ambiente. Esta é uma importante característica, pois raramente é possívelobter um modelo computacional do ambiente que disponibilize as probabilidades de transiçãoentre os estados. A combinação destas características resultou em um algoritmo adaptativo deaprendizagem on-line capaz de generalizar com eficiência em ambientes que possuem variáveis

Page 82: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 81

de estado contínuas.O presente capítulo está organizado como segue. A Seção 6.1 apresenta o algoritmo

proposto separado em três subseções para melhor descrição das etapas que constituem seufuncionamento. Nesta mesma seção, serão apresentados os resultados preliminares da aplicaçãodo algoritmo TD(nλ)-GNG nos ambientes de teste apresentados no Capítulo 3.

6.1 Algoritmo TD(nλ)-GNG

O TD(nλ)-GNG combina dois algoritmos desenvolvidos por este trabalho. O primeiroé uma variante do algoritmo GNG utilizado para proporcionar a generalização do espaço deestados enquanto que o segundo é uma variante do algoritmo Q(λ) para estimar a função valor.O algoritmo proposto generaliza o espaço de estados pelo agrupamento dos estados similares.Cada grupo é representado por um nó que possui sua própria tabela de ações e Elegibility Traces.A tabela de ações é a estimativa do retorno que pode ser recebido, e a tabela Elegibility Traces

mantém a participação dos estados passados nos futuros. O algoritmo consiste em três estágioschamados (i) adaptação, (ii) refinamento, e (iii) comportamento e aprendizagem, descritos nassubseções seguintes deste capítulo.

6.1.1 Adaptação

GNG é um modelo de rede incremental capaz de aprender as relações importantes de umdeterminado espaço adicionando continuamente novos nós em sua rede que inicialmente possuiapenas dois nós conectados (Fritzke, 1995). O algoritmo proposto por este trabalho consisteem uma variante deste algoritmo para viabilizar o seu uso em problemas de AR. O algoritmoproposto movimenta os nós para regiões onde a probabilidade de recompensas é alta. Estasregiões são identificadas avaliando a função valor pela condição:

r+γ argmaxaQ(w′,a)> argmax

bQ(w,b)

� �6.1

onde os parâmetros w e w′ são os nós mais próximos do estado atual s e do próximo estado s′,respectivamente. Em outras palavras, o nó w será movido se a recompensa imediata somada àestimativa das recompensas dos estados futuros for maior que a função valor da melhor açãodo nó w. Esta estratégia é diferente da utilizada por Montazeri; Moradi; Safabakhsh (2011)(Inequação 4.6) onde os nós são movidos se a recompensa imediata somada à estimativa dasrecompensas dos estados futuros forem maior que a última ação realizada. Sendo assim, emdecorrência de uma ação exploratória os nós podem se deslocar para outras regiões que podempossuir uma menor estimativa de retorno.

Uma vez que os nós representam o conhecimento de cada região armazenado em suasrespectivas tabelas de estimativas, removê-los pode ocasionar na perda deste conhecimento.

Page 83: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 82

Além disto, uma vez que os nós formam fronteiras entre si, a remoção de um nó aumenta asregiões de seus vizinhos podendo ocasionar no agrupamento de estados não-similares. Por estesmotivos, os nós não são removidos pelo algoritmo proposto. Nenhuma mudança foi feita namaneira em que os nós são conectados. No algoritmo TD(nλ)-GNG, as conexões mantém umarelação entre os estados passados e os futuros e com isso evitam que o caminho se desfaça com amovimentação dos nós.

O algoritmo é ativado quando um novo estado é percebido pelo agente. O nó maispróximo deste estado, de acordo com a distância Euclidiana, é chamado vencedor e obtémo direito de responder a este estímulo. A saída do neurônio vencedor será a próxima açãoselecionada ao seguir uma política ε-greedy (Definição 2.5) a ser realizada pelo agente.

A cada iteração, se a Inequação 6.1 for satisfeita, o nó vencedor w e todos os seusvizinhos diretos n, i.e., todos os nós n conectados à w, serão movidos, respectivamente, umafração ew e en em direção do estado s. Para previnir que os nós deixem as regiões após a funçãovalor ter sido estimada, os parâmetros ew e en devem ser pequenos e decrescentes com o tempo;valores típicos para estes parâmetros são ew = 0.01 e en = 0.001. No algoritmo proposto, estesparâmetros são locais e decrescem quando a Inequação 6.1 é satisfeita. Os passos desta etapasão enumerados a seguir:

1. De posse do estado atual s e do próximo estado s′ encontre, respectivamente, os nósw e w′ mais próximos de s e s′, respectivamente.

2. Encontre o segundo nó l mais próximo do estado s.

3. Se os nós w e l estão conectados, atribua o valor 0 para uma variável idade, casocontrário, crie uma conexão entre eles.

4. Se a Inequação 6.1 é verdade, mova o nó vencedor w e todos os seus vizinhos n umafração ew e en em direção do estado s, respectivamente.

5. Incremente a idade de todas as conexões originadas de w e remova as conexões comidade maior que amax.

6. Reduza os parâmetros ew e en do nó w.

Resultados

A Figura 6.1 mostra a posição dos nós em diferentes estágios da aprendizagem doambiente Mountain Car. No inicio da aprendizagem o agente não possui nenhuma informaçãosobre o efeito de suas ações. Desta forma, devido à recompensa −1 recebida a cada passo detempo, o agente alterna entre todas as possíveis ações. Devido a este comportamento, o carroperde velocidade e consequentemente o leva para o vale entre as duas montanhas. Esta região é

Page 84: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 83

mais difícil do que as outras, pois a velocidade do agente é próxima de 0. Neste estado, umasequência maior de ações será necessária para ganhar velocidade suficiente para escapar do vale.O retorno neste momento irá saturar devido à falta de nós representando a complexidade destaregião. Desta forma, novos nós serão adicionados em lugares muito próximos como ilustradopela Figura 6.1(a) no treinamento após 10 episódios. No entanto, no curso da aprendizagem,estes nós tenderão a seguir maiores retornos forçando-os a formar um caminho até o estadometa. A Figura 6.2 mostra o caminho percorrido pelo agente até o estado meta. Cada cruzapresentada nesta Figura representa um estado visitado pelo agente, note que a quantidade deestados visitados é maior quando o agente está localizado próximo ao vale com velocidadepróxima de zero.

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1Velocidade

(a) Após 10 episódios

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1Velocidade

(b) Após 250 episódios

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1Velocidade

(c) Após 500 episódios

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1Velocidade

(d) Após 1000 episódios

Figura 6.1: Partição do espaço de estados realizado pelo algoritmo TD(nλ)-GNG noambiente Moutain Car após 10, 250, 500 e 1000 episódios, respectivamente. Os nós sãoapresentados na cor vermelha, as conexões na cor preta e as regiões de Voronoi na cor

azul.

O movimento dos nós realizado no ambiente Mountain Car também acontece de formasimilar no Puddle World. A Figura 6.3(a) apresenta a divisão realizada neste ambiente peloalgoritmo TD(nλ)-GNG. Note que os nós estão afastados das regiões em que uma baixarecompensa pode ser recebida. Nesta tarefa, os nós se posicionaram na fronteira das poças comações que levam o agente para longe delas. Em alguns estados a melhor ação não é possíveldevido a estes estados se localizarem entre as fronteiras de duas ou mais regiões. Esta é aprincipal desvantagem em se representar a função valor em pedaços. No entanto, o desempenho

Page 85: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 84

-1

-0.5

0

0.5

1

-1 -0.5 0 0.5 1

Vel

ocid

ade

Posição

Figura 6.2: Estados visitados pelo agente no espaço de estados do ambiente MountainCar. A política encontrada pelo algoritmo proposto percorreu 116 estados.

do agente não é consideravelmente afetado visto que este problema ocorre apenas nos estadosque estão localizados na fronteira.

A Figura 6.3(b) mostra a divisão realizada pelo algoritmo proposto no ambiente Con-

tinuous Maze. A longa sequência de ações necessárias para concluir um episódio não foi umobstáculo para o algoritmo TD(nλ)-GNG. Como é possível notar, a discretização do espaço deestados não gerou a dependência do caminho neste ambiente.

6.1.2 Refinamento

Para o refinamento da rede, um limite adaptativo é utilizado para determinar o momentoda adição de novos nós em locais onde a função valor tende a exceder o limite. Ao invés deutilizar um limite fixo, o algoritmo proposto estima o valor máximo que a soma das recompensasdescontadas pode assumir. Se um fator de desconto γ ∈ [0,1 [ é utilizado, o retorno Rt terá umlimite que pode ser calculado pela soma infinita de uma PG:

|Rt| ≤∣∣∣∣∣ r

1−γ

∣∣∣∣∣ � �6.2

A Equação 6.2 é verdade se r (recompensa) é uma constante ao longo do tempo, o que éverdade somente em alguns casos especiais, e.g., o agente fica preso em uma região e é incapazde sair visto que o número de nós é insuficiente para representar uma boa solução. Neste caso, afunção valor irá saturar e nenhum aprendizado irá ocorrer. Isto pode ser evitado com a adiçãode novos nós nestas regiões antes da saturação da função valor pelo monitoramento do retorno.Para isto, o algoritmo proposto utiliza um limite descrito pela seguinte equação:

θt =(rt+1 +γrt+2 + . . .+ γn−1rt+n

1−γ

)c,

� �6.3

Page 86: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 85

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

Y

X

(a) Puddle World

0

5

10

15

20

0 5 10 15 20

Y

X

(b) Continuous Maze

Figura 6.3: Particionamento realizado pelo algoritmo proposto no ambiente PuddleWorld e Continuous Maze após 1000 episódios. A posição dos nós e suas melhores ações

estão representadas através das setas pretas. As regiões de Voronoi estão em azul.

Page 87: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 86

onde c é um parâmetro constante com valor no intervalo ]0,1[, e n é a quantidade de passosrealizados em uma região antes da ativação de outra diferente. Se r é constante durante a visitaa uma região e o agente não é capaz de concluir o episódio, θt será o valor exato da soma dasrecompensas descontadas futuras. Caso contrário, o último termo do somatório é uma estimativaonde o erro é reduzido à medida que o número de passos aumenta.

O parâmetro c define o valor máximo que o retorno pode assumir antes da adição denovos nós. Para isto, é recomendável que o parâmetro c não seja tão pequeno ao ponto que θtseja menor do que a soma da sequência das n recompensas descontadas necessárias para seterminar o episódio. Caso contrário, o retorno-n sempre estará acima do limite podendo resultarna adição desnecessária de novos nós. Formalmente, um novo nó será adicionado se,

rt+1 +γrt+2 + . . .+γnmaxaQt(w′,a)≤ θt

� �6.4

o termo γnmaxaQt(w′,a) é igual a 0 enquanto w = w′. Como é possível notar, a soma dasrecompensas descontadas é truncada por este termo. Desta forma, não é preciso manter Rtatualizado para todos os nós visitados até o fim do episódio, ao invés disto, utiliza-se a estimativado retorno da próxima região visitada. Sendo assim, um nó será adicionado se uma região forativa por muito tempo ou se o retorno-n for menor ou igual que o limite.

É possível notar que o limite θ funciona apenas se as recompensas recebidas durante oepisódio forem diferentes de 0. Caso contrário, θ será 0 e a Equação 6.4 será sempre verdade.Esta característica limita o uso do algoritmo apenas em tarefas que são direcionadas à meta eque possuem a função de recompensas conforme definido no Capítulo 3, Seção 3.1.

Esta estratégia de refinamento do espaço de estados proporciona uma flexibilidade para arepresentação do ambiente. Esta flexibilidade permite que em determinadas regiões do espaçode estados possa haver mais nós do que em outras. O algoritmo proposto busca refinar asregiões em que o agente permanece por mais tempo acumulando recompensas descontadas. Estecomportamento pode indicar que nestas regiões não há uma representação suficiente para que oagente se mova para outros locais do espaço de estados.

Considere o problema Mountain Car. No inicio da aprendizagem, quando o algoritmopossui apenas um nó e o episódio inicia com o carro no vale entre as duas montanhas, o agentepermanece neste local sem a possibilidade de sair, pois a resolução atual do espaço de estadosé insuficiente para representar uma solução. Sendo assim, o nó que representa esta regiãopermanecerá ativo e enquanto isso o agente acumulará as recompensas descontadas recebidas.Em um momento, as recompensas acumuladas irão atingir o limite definido por θt ocasionando aadição de um novo nó nesta região. Para que o algoritmo de refinamento funcione, o agente nãopode realizar ações diferentes em uma mesma região, caso contrário, o fenômeno Chattering

pode atrapalhar a aprendizagem com a convergência da função valor.Esta estratégia possibilita uma redução da ocorrência da dependência do caminho como

descrito a seguir. Se a política é fixa durante a permanência em uma região e a dependência do

Page 88: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 87

caminho existir, o agente não conseguirá terminar o episódio ou alcançar outra região. Neste caso,o refinamento é garantido, pois a soma das recompensas descontadas irá atingir o limite definidopor θt. Uma vez que a dependência do caminho pode ser resolvida com o posicionamentode novos nós no espaço de estados, o processo de refinamento proporcionado pelo algoritmopossibilita a redução da sua ocorrência.

Considere como segundo exemplo o uso desta estratégia no ambiente particionado daFigura 3.11. Se o agente ativa a região 4 pelo estado (2,2) e escolhe a ação para direita, eleesbarrará em uma parede após dois passos e, permanecerá nesta região, pois a política não sealtera. Desta forma, a soma das recompensas descontadas alcançará o limite e um novo nó seráposicionado nesta região dividindo-a em duas. Este processo continuará enquanto o agente nãofor capaz de concluir o episódio ou alcançar outra região que faça parte do caminho até o estadometa.

Para que não ocorra a inserção excessiva de novos nós, um parâmetro ρ é utilizadopara evitar o posicionamento de novos nós em lugares muito próximos. Este problema podeacontecer quando a função valor representada pelos nós vizinhos alcançam valores próximos dolimite. Neste caso, o lado esquerdo da Inequação 6.4 poderá ultrapassar o valor θt após poucospassos. Sendo assim, para que o refinamento ocorra, os novos nós serão adicionados somentese estiverem a uma distância mínima ρ do nó mais próximo, caso contrário, a função valor éatualizada e outra ação é escolhida seguindo uma política ε-greedy. Desta forma, é possívelevitar o overfitting destas regiões. Este parâmetro também incentiva o movimento dos nós antesda adição de outros.

A Figura 6.4 mostra o efeito dos parâmetros c e γ no crescimento e desempenho darede. Estes valores são a média dos 20 primeiros episódios após 30 execuções no ambiente20×20Maze (Vieira; Adeodato; Goncalves, 2013). Como pode ser visto, à medida que γ e c seaproximam de 1, o crescimento da rede tende a ser lento, pois o retorno-n de uma região levarámais tempo para alcançar o limite.

Por outro lado, à medida que γ diminui e c se aproxima de 0, muitos nós serão adicionadosem um curto período de tempo. Em ambos os casos, o desempenho da rede será fraco. Paraque melhores resultados sejam alcançados deve-se definir valores que possibilitem que a funçãovalor seja aproximada antes do posicionamento de novos nós. Os experimentos realizados nosambientes de teste mostram que é mais fácil atribuir um valor fixo para o parâmetro c, e.g.,c= 0.15, e variar o valor de γ com valores entre 0.95 e 0.999.

A Figura 6.5 mostra o aumento da função valor para diferentes valores de γ. Como épossível notar, à medida que γ aproxima 1, o número de passos necessários para que a funçãovalor alcance seu limite aumenta. Esta característica justifica o fato de a rede crescer mais rápidopara valores pequenos de γ. O parâmetro c configura para que a função valor fique abaixo doseu limite. Portanto, ao atribuir um valor baixo para c, novos nós serão adicionados antes dasaturação do retorno.

Page 89: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 88

0

10

20

30

40

50

60

70

80

90

.9 .95 .999

Núm

ero

de N

ós

γ

c=0.1c=0.2c=0.4c=0.8c=0.9

c=0.99

(a) Crescimento

0

200

400

600

800

1000

1200

1400

1600

1800

2000

.9 .95 .999

Núm

ero

de P

asso

s

γ

c=0.1c=0.2c=0.4c=0.8c=0.9

c=0.99

(b) Desempenho

Figura 6.4: Efeito dos parâmetros c e γ no crescimento e desempenho do algoritmoproposto.

Page 90: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 89

-200

-100

-20-10

138 270 1241 2350

Fun

ção

valo

r

Passos

0.9

0.95

0.99

0.995

Figura 6.5: Aumento da função valor para diferentes valores de γ até sua saturação. Acada passo de tempo uma recompensa -1 é recebida. O valor máximo alcançado é

marcado com uma cruz preta.

Ajuste do parâmetro c

Se r é constante e é possível obter uma estimativa da quantidade n de passos necessáriospara se concluir um episódio, o retorno Rt pode ser obtido pela soma dos n-termos da PG,

Rt = r× (1−γn)1−γ

� �6.5

e o limite da função valor pela soma infinita,

Qlimit = r

1−γ .� �6.6

Substituindo o lado esquerdo da Inequação 6.4 pela Equação 6.5 e, o lado direito pelaEquação 6.6 após a expansão do termo θt obtém-se,

r× (1−γn)1−γ ≤ r

1−γ c� �6.7

e, por fim, colocando c em evidência é possível obter o valor mínimo para que novos nós nãosejam adicionados após uma quantidade n de passos,

c≥ 1−γn� �6.8

onde n é a quantidade de passos suficientes para se concluir um episódio.O valor n pode ser estimado pela média dos passos obtidos em k-episódios anteriores.

Desta forma, c é iniciado com um valor pequeno e atualizado com o valor obtido pela Inequação

Page 91: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 90

6.8 após k-episódios, onde k é menor que a quantidade máxima de episódios. De outra forma, épossível iniciar c com um valor pequeno e ir aumentando gradativamente até alcançar o valorobtido pela Inequação 6.8.

Resultados

A Figura 6.6 ilustra o crescimento da rede nos cinco ambientes de teste chamados Conti-

nuous Maze, Mountain Car, Steering Car, Acrobot, Puddle World e Slow Puddle World. Comopode ser observado, o modelo proposto adiciona nós rapidamente no inicio da aprendizagem,pois o atual número de nós é insuficiente para representar o espaço de estados. Sendo assim,o retorno irá alcançar o limite rapidamente. No entanto, após alguns episódios, o crescimentoda rede tende a convergir. No Acrobot a convergência é obtida mais lentamente. Determinadasregiões contidas neste ambiente só puderam ser visitadas após o agente obter certo desempenhoresultando na adição de novos nós após um certo número de episódios.

O algoritmo TD(nλ)-GNG possui uma desvantagem devido a uma característica doalgoritmo GNG. Para encontrar o nó mais próximo de um estado é necessário que o sinal deentrada seja comparado com todos os nós. A complexidade desta operação é O(n) (Weber;Schek; Blott, 1998), onde n é o número de nós. Isto significa que o tempo gasto para encontrar onó mais próximo cresce à medida que o número de nós aumenta. Em outras palavras, o algoritmoficará mais lento com o aumento da rede. Esta característica pode vir a ser um problema se aquantidade de nós for muito grande. No entanto, os resultados dos experimentos realizados noscinco ambientes de teste (ver Capítulo 7) mostram que o algoritmo TD(nλ)-GNG foi capaz desolucioná-los com uma quantidade que não representou um obstáculo para o seu uso.

0

20

40

60

80

100

120

0 50 100 150 200

Núm

ero

de n

ós

Episódio

AcrobotMountain CarPuddle WorldSteering Car

Slow Puddle WorldContinuous Maze

Figura 6.6: Crescimento do algoritmo proposto nos ambientes Mountain Car, SteeringCar, Puddle World e Acrobot.

Page 92: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 91

6.1.3 Comportamento e Aprendizagem

Com o objetivo de reduzir a ocorrência da dependência do caminho e do fenômenoChattering, o algoritmo proposto evita que o agente utilize ações diferentes durante a visita deuma região. Neste caso, a aprendizagem ocorre somente quando uma região diferente é ativadaou quando o episódio termina. Esta estratégia ajuda o agente a monitorar quais ações o levampara regiões diferentes. Enquanto isso, o agente deve acumular as recompensas descontadas.Estas recompensas são posteriormentes repassadas para outras regiões com a técnica Elegibility

Traces. Desta forma, o algoritmo se comporta como o algoritmo Temporal Differente de n-

passos (TD(n)) durante a visita de uma região e como Q(λ) na transição entre as regiões. Acombinação destes dois algoritmos deu origem ao TD(nλ):

Qt+n(s,a) =Qt(s,a) +

∆Qnλt (s,a)︷ ︸︸ ︷α[R

(n)t −Qt(s,a)

]et(s,a) .

� �6.9

Na Equação 6.9, os termos Qt(s,a) e et(s,a) correspondem a estimativa do retorno ea memória Elegibility Trace para o par (s,a), respectivamente. O termo R(n)

t é o retorno apósn-passos que pode ser expandido para

R(n)t =

n−1∑k=0

γkrt+k+1 +γn argmaxbQt(st+n, b),

� �6.10

onde n é o número de passos até que uma das seguintes condições aconteça: 1) o agente alcanceuma região diferente ou 2) o episódio termine. A memória e é atualizada conforme equaçãoapresentada a seguir:

et(s,a) =

(γλ)net−1(s,a) + 1 se s= st e a= at;

(γλ)net−1(s,a) se s 6= st

� �6.11

para todo par (s,a). O algoritmo TD(nλ) mantém a garantia de convergência do algoritmo TD(n)uma vez que a soma dos pesos dos retornos-n continua sendo 1 (ver Prova 6.1) (Sutton; Barto,1998). Esta condição é necessária para que o algoritmo possua a propriedade da redução do erroWatkins (1989) dos algoritmos TD(n). Os passos do algoritmo TD(nλ) são enumerados a seguir:

1. Observe o estado atual s.

2. Encontre o nó w mais próximo de s.

3. a← argmaxbQ(w,b) ou, com probabilidade ε, a← ação aleatória.

4. Realize a ação a e observe o próximo estado s′ e recompensa r.

5. Encontre o nó w′ mais próximo de s′.

Page 93: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 92

6. R←R+γnr.

7. Incremente o valor de n.

8. Enquanto w = w′ e n < N faça:

8.1. Realize a ação a, observe o próximo estado s′, a recompensa r e, encontreo nó w′ mais próximo de s′.

8.2. R←R+γnr.

8.3. Incremente o valor de n.

9. a∗← argmaxbQ(w′, b).

10. Faça a′← a∗ ou, com probabilidade ε, a′← ação aleatória.

11. δ←R+γnQ(s′,a∗)−Q(s,a).

12. e(s,a)← 1

13. Para todo par (s,a) faça:

13.1. Q(s,a) =Q(s,a) +αδe(s,a)

13.2. Se a′ = a∗ então e(s,a) = (γλ)ne(s,a) senão e(s,a) = 0.

13.3. Para toda ação b 6= a faça e(s,b) = 0.

14. Faça w← w′, a← a′, R← 0 e n← 0 e, repita a partir do quarto passo até o fim doepisódio.

Note que os passos 12 e 13.3 se devem, respectivamente, ao replacing traces e à reco-mendação de Singh; Sutton (1996) que foram discutidos no Capítulo 2, Seção 2.2.1. A condiçãon < N contida no passo 8 torna-se necessária quando o algoritmo não refina automaticamenteo espaço de estados. Assim, se o agente não alcançar uma região diferente após N passos, afunção valor deve ser atualizada e uma nova ação é escolhida.

Considere um problema onde cada região é ativa durante dois passos (n= 2) e que as atu-alizações ocorrem após mesmo período. Pela Definição 2.6, os retornos-n serão ponderados pelasoma dos dois pesos anteriores,

((1−λ)λ0 + (1−λ)λ1

)R

(2)t ,

((1−λ)λ2 + (1−λ)λ3

)R

(4)t e

assim sucessivamente. Seja ∆Q2λt (st,at) = α

[R2λt −Qt(st.at)

]o incremento aplicado ao par

(st,at) a cada 2-passos; a partir de ∆Q2λt (st,at) é possível justificar o uso do termo (γλ)2

ao invés de (γλ) alcançando ∆Qnλt (s,a) para cada novo retorno-n com a adaptação da provautilizada por Sutton; Barto (1998, p. 177) como segue,

∆Q2λt (st,at) =−Qt(st,at)+

(1−λ2)λ0[R

(2)t

]+ (1−λ2)λ2

[R

(4)t

]+ (1−λ2)λ4

[R

(6)t

]+ . . .

Page 94: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 93

expandindo os termo R(2)t , R(4)

t e R(6)t e, multiplicando cada um pelos seus pesos associados

obtêm-se,

∆Q2λt (st,at) =−Qt(st,at)+

(γλ)0[rt+1 +γrt+2 +γ2Qt(st+2,at+2)− (γλ)2Qt(st+2,at+2)

]+

(γλ)2[rt+3 +γrt+4 +γ2Qt(st+4,at+4)− (γλ)2Qt(st+4,at+4)

]+

(γλ)4[rt+5 +γrt+6 +γ2Qt(st+6,at+6)− (γλ)2Qt(st+6,at+6)

]+ . . .

∆Q2λt (st,at) =α

[rt+1 +γrt+2 +γ2Qt(st+2,at+2)−Qt(st,at)

](γλ)0+

α[rt+3 +γrt+4 +γ2Qt(st+4,at+4)−Qt(st+2,at+2)

](γλ)2+

α[rt+5 +γrt+6 +γ2Qt(st+6,at+6)−Qt(st+4,at+4)

](γλ)4 + . . .

e por fim,

∆Q2λt (st,at) =α

[R

(2)t −Qt(st,at)

](γλ)0+

α[R

(2)t+2−Qt(st+2,at+2)

](γλ)2+

α[R

(2)t+4−Qt(st+4,at+4)

](γλ)2+2 + . . .

� �6.12

onde a primeira região foi ativa no instante de tempo t, a segunda após dois passos t+2, a terceiraapós quatro passos t+ 4 e assim sucessivamente. Para o caso off-line, onde as atualizaçõessão acumuladas e posteriormente utilizadas para atualizar a função valor 1, a Equação 6.12implementa a atualização da função valor da mesma forma que ∆Qnλt (s,a) com o decaimento dee como proposto pela Equação 6.11 para (n= 2)-passos e (γλ)2 (Sutton; Barto, 1998). No casoon-line, a atualização realizada pela Equação 6.12 é uma aproximação se a taxa de aprendizagemfor pequena o suficiente para garantir que as variações de Q durante os episódios sejam pequenas(Sutton; Barto, 1998). A Prova 6.1 mostra que para qualquer sequência N de n-passos, e devedecair (γλ)n e que, desta forma, o algoritmo TD(nλ) implementa corretamente o Elegibility

Traces.

Prova 6.1. Seja N a sequência dos n-passos realizados em um episódio pelo algoritmo TD(nλ),(Ni)i∈N o i-ésimo termo desta sequência, onde Ni=0 é o primeiro termo. Seja RNλt a soma dasequência N dos retornos-n e seus respectivos pesos que podem ser escritos na seguinte forma:

RNλt =∞∑

i=p(t)

(1−λNi

)λli−lp(t)R

li−lp(t)+Nit

1Neste caso, Q permanece constante durante o episódio.

Page 95: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 94

com atualização dada por

∆QNλt (st,at) = α[RNλt −Qt(st,at)

]onde li = ∑i−1

j=0Nj , l0 = 0, p : li 7→ i, p(0) = 0 e que o estado final é um absorbing state.Pretende-se provar que para o caso off-line as atualizações

|N |−1∑k=0

∆Qnλlk (s,a) =|N |−1∑k=0

∆QNλlk (slk ,alk)IsslkIaalk� �6.13

são iguais e com isso mostrar que e deve decair de acordo com o número de passos. Note queIpq é uma função identidade, igual a 1 se p= q ou igual à 0 caso contrário. Iniciando pelo ladodireito da Equação 6.13, o termo RNλt pode ser expandido para

RNλt =(1−λN0

)λ0R

(N0)t +(

1−λN1)λN0R

(N0+N1)t +(

1−λN2)λN0+N1R

(N0+N1+N2)t + . . .

=R(N0)t −λN0R

(N0)t +

λN0R(N0+N1)t −λN0+N1R

(N0+N1)t +

λN0+N1R(N0+N1+N2)t −λN0+N1+N2R

(N0+N1+N2)t + . . .

uma vez que

R(n=

∑ij=0Nj)

t =n−1∑k=0

γkrt+k+1 +γnQt(st+n,at+n)

pode-se desmembrar o último n-passos do somatório e obter

R(n=

∑i−1j=0Nj+Ni)

t =n−Ni−1∑k=0

γkrt+k+1 +n−1∑

k=n−Niγkrt+k+1 +γnQt(st+n,at+n)

=n−Ni−1∑k=0

γkrt+k+1 +R(Ni)t+n−Ni ,

Page 96: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 95

sendo assim, RNλt pode ser reescrito como segue,

RNλt =R(N0)t −λN0γN0Qt(st+N0 ,at+N0)+

λN0γN0R(N1)t+N0

−λN0+N1γN0+N1Qt(st+N0+N1 ,at+N0+N1)+

λN0+N1γN0+N1R(N2)t+N0+N1

−λN0+N1+N2R(N0+N1+N2)t+N0+N1

+ . . .

= (λγ)0[R

(N0)t

]+

(λγ)N0[R

(N1)t+N0

−Qt(st+N0 ,at+N0)]

+

(λγ)N0+N1[R

(N2)t+N0+N1

−Qt(st+N0+N1 ,at+N0+N1)]

+ . . .

e por fim, ao substituir RNλt em ∆QNλt (st,at), obtém-se

∆QNλt (st,at) =α[R

(N0)t −Qt(st,at)

](λγ)0 +

α[R

(N1)t+N0

−Qt(st+N0 ,at+N0)]

(λγ)N0 +

α[R

(N2)t+N0+N1

−Qt(st+N0+N1 ,at+N0+N1)]

(λγ)N0+N1 + . . .

=α|N |−1∑i=p(t)

(γλ)li−lp(t)

δi︷ ︸︸ ︷[RNili −Qt(sli ,ali)

]� �6.14

e|N |−1∑k=0

∆QNλlk (slk ,alk)IsslkIaalk =|N |−1∑k=0IsslkIaalkα

|N |−1∑i=k

(γλ)li−lk δi� �6.15

uma vez que o estado final é um absorbing state, o restante dos termos após o último n-passospode ser descartado, pois r e Qt serão sempre 0.

Agora, observe que o decaimento de e proposto pela Equação 6.11 pode ser reescrito deforma não recursiva como (Sutton; Barto, 1998),

et(s,a) =p(t)∑i=0

(γλ)lp(t)−li IssliIaali .

e que ∆Qnλt (s,a) pode ser reescrito para representar um dos n-passos da sequência em N

∆Qnλt (s,a) = α

δi︷ ︸︸ ︷[RNili −Qt(s,a)

]et(s,a).

Page 97: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 96

Desta forma, o lado esquerdo da Equação 6.13 pode ser escrito como,

|N |−1∑k=0

∆Qnλlk (s,a) =|N |−1∑k=0

αδk

k∑i=0

(γλ)lk−liIssliIaali

=|N |−1∑i=0

αi∑

k=0(γλ)li−lkIsslkIaalk δi

=|N |−1∑k=0

α|N |−1∑i=k

(γλ)li−lkIsslkIaalk δi

=|N |−1∑k=0

αIsslkIaalk|N |−1∑i=k

(γλ)li−lkδi

� �6.16

o que prova a igualdade da Equação 6.13 para o caso off-line.

A Prova 6.1 pode ser estendida para o caso on-line se assumir que os estados não sãorevisitados. Neste caso, os dois lados da Equação 6.13 são iguais também para o caso on-line2.Isto é verdade, pois durante o episódio, o valor Qt de um estado será utilizado apenas uma únicavez para atualizar a função valor. Desta forma, é possível separar cada termo do somatório daEquação 6.14 e utilizá-los para atualizar a função valor e, com isso, obter o mesmo resultado nosdois casos: on-line e off-line.

Em suma, as etapas de Refinamento e Aprendizagem ilustradas pela Figura 6.7 funcionamda seguinte forma. Considere que toda ação é selecionada de uma política ε-greedy derivada deQ. O algoritmo inicia encontrando os nós w e w′ mais próximos do estado atual s e do próximoestado s′, respectivamente. A ação não se altera enquanto w = w′, ou seja, enquanto s e s′ foremagrupados pelo mesmo nó. Enquanto isso, a função valor não é atualizada, mas as recompensasrecebidas são descontadas e acumuladas. A atualização da função valor pode ocorrer: no fim doepisódio, quando o retorno-n ultrapassa o limite ou quando uma região diferente é ativada, ouseja, w 6= w′. Um novo nó é adicionado em s′ se a distância entre s′ e w é maior que ρ e um dosseguintes casos ocorrer:

1. R ultrapassa o limite θ em uma região que foi ativa por um longo período de tempoou,

2. uma região diferente foi ativada e o retorno esperado R+γnQ(w′,a) ultrapassa olimite θ.

Resultados

Os gráficos na Figura 6.8 mostram a média do desempenho após 10 execuções doalgoritmo TD(nλ)-GNG nos ambientes: Mountain Car, Steering Car, Puddle World (recompensa

2Confirmado por Richard S. Sutton em uma comunicação por e-mail (2016).

Page 98: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 97

Ambiente

Σγt-1

Q(nλ)

rt+1

st+1

rt

st

at

R

Qt+1(wt, at)rt

(n)

vencedor (wt)

st

Figura 6.7: Esquema do processo de aprendizagem do algoritmo proposto.

acumulada), Continuous Maze e Acrobot. O agente foi capaz de concluir todos os episódiossem a necessidade da reinicialização do episódio. Este era um dos problemas existentes nosalgoritmos adaptativos apresentados no Capítulo 4 que se pretendia resolver. No inicio daaprendizagem os nós são adicionados rapidamentes devido a uma representação fraca do espaçode estados, mas à medida que o desempenho aumenta, o tamanho da rede tende a convergir.Neste ponto, a rede GNG possui nós localizados de forma a evitar que a função valor sature emdeterminadas regiões do espaço de estados. As Figuras 6.9(a) e 6.9(b) mostram, respectivamente,a função valor nos ambientes Puddle World e Mountain Car. Valores baixos associados próximoa posição 0 da Figura 6.9(b) ressalta a dificuldade do agente em escapar do vale. Na Figura6.9(a) é possível observar que o algoritmo proposto associou corretamente um valor baixo paraas regiões representadas pelos nós localizados próximos as poças.

O experimento realizado no ambiente Steering Car mostra que o algoritmo TD(nλ)-GNGpode ser utilizado em tarefas do mundo real. A Figura 6.10 mostra a sequência de cinco passosrealizados pelo agente para mover o carro para o estado meta. Os passos apresentados pelaFigura 6.10 mostram como o algoritmo TD(nλ)-GNG consegue orientar com eficiência as rodasdianteiras para guiar o carro até o estado meta. Note, na Figura 6.10, que no quadro dois aprimeira ação foi ir para trás. Esta ação proporcionou espaço suficiente para o carro realizara curva e alcançar o estado meta após três passos. Uma recompensa menor foi recebida comesta ação devido ao aumento da distância do carro até o estado meta. No entanto, esta ação,aparentemente ruim, foi necessária para terminar o episódio em poucos passos e com um maiorretorno.

O presente capítulo apresentou um algoritmo adaptativo capaz de reduzir os efeitosda maldição da dimensionalidade e a ocorrência da dependência do caminho, dois problemasque afetam os algoritmos AR. O algoritmo TD(nλ)-GNG é composto por dois componentes:1) algoritmo TD(nλ), responsável pela aprendizagem da função valor e, 2) algoritmo GNG,responsável pelo particionamento adaptativo do espaço de estados. Os resultados preliminares

Page 99: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 98

0

500

1000

1500

2000

0 50 100 150 200-1600

-1400

-1200

-1000

-800

-600

-400

-200

0

Núm

ero

de P

asso

s

Rec

ompe

nsa

Acu

mul

ada

Episódio

Mountain Car

Acrobot

Steering Car

Puddle World

(a) Puddle World, Mountain Car, Steering Car e Acrobot

0

50000

100000

150000

200000

250000

0 20 40 60 80 100 120 140 160 180 200-250000

-200000

-150000

-100000

-50000

0

Núm

ero

de p

asso

s

Rec

ompe

nsa

Acu

mul

ada

Episódio

Continuous MazeSlow Puddle World

(b) Continuous Maze e Slow Puddle World

Figura 6.8: Desempenho do algoritmo proposto no treinamento do agente nos ambientesMountain Car, Steering Car, Acrobot, Continuous Maze e Puddle World (recompensa

acumulada).

Page 100: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 99

0 0.2 0.4 0.6 0.8 1

x

0

0.2

0.4

0.6

0.8

1

y

-160-140-120-100-80-60-40-20

∑aQ(s,a)

(a) Puddle World

-1 -0.5 0 0.5 1

Posição

-0.05

0

0.05

Velocidade

-100

-80

-60

-40

-20

0

maxaQ(s,a)

(b) Mountain Car

Figura 6.9: Custos (maxaQ(s,a)) e (∑aQ(s,a)) estimado pelo algoritmo proposto

após 1000 episódios nos ambientes Puddle World e Mountain Car, respectivamente.

Page 101: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 100

Figura 6.10: Sequência de cinco ações desempenhadas pelo algoritmo proposto paraguiar o carro até a região meta.

Page 102: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

6.1. ALGORITMO TD(Nλ)-GNG 101

apresentados mostram que o algoritmo TD(nλ)-GNG é capaz de gerar uma representaçãoautomática do espaço de estados sem a interverção de um especialista no domínio do problema.O próximo capítulo compara o algoritmo proposto com 4 algoritmos de aprendizagem AR, sãoeles: Q(λ)-DU, TD-AVQ, TC e IGNG-Q.

Page 103: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

102102102

7Estudo Comparativo

O ambiente Steering Car ficou de fora do presente estudo, pois o tempo necessáriopara realizar os experimentos neste ambiente tornou-se bastante alto. Ao utilizar o algoritmoproposto, uma única execução durou cerca de 1 hora. Visto que seriam necessárias 10 execuções,o tempo total seria de aproximadamente 10 horas por algoritmo sem considerar o tempo debusca dos parâmetros. Além disto, é necessário ter a presença humana para o posicionamento docarro em um dos estados iniciais após o fim de cada episódio (2000 posicionamentos). Destaforma, optou-se em utilizar o ambiente Steering Car apenas para validar o algoritmo propostoem problemas do mundo real.

Para avaliar o algoritmo proposto, seu desempenho foi comparado com os algoritmosTD-AVQ, IGNG-Q, Q(λ) com Discretização Uniforme (Q(λ)-DU) e TC em cinco ambientes deteste descritos no Capítulo 3, são eles: Mountain Car, Continuous Maze, Acrobot, Puddle World

e Slow Puddle World. Nos ambientes Mountain Car, Continuous Maze e Acrobot, a medida dedesempenho foi o número de passos usado para alcançar o estado meta. No ambiente Puddle

World e Slow Puddle World, a recompensa acumulada foi utilizada uma vez que o caminho maiscurto pode não ser o melhor, pois é possível alcançar o estado meta pelas poças com recompensasnegativas maiores. Os parâmetros utilizados nos algoritmos do presente estudo comparativo sãoapresentados no Apêndice B.

Este capítulo também avalia o algoritmo TD(nλ) quando utilizado com DU. O objetivodeste estudo é verificar o desempenho do algoritmo TD(nλ) sem a influência do algoritmo GNGe, com isso, determinar se existem vantagens em utilizar o algoritmo ao invés do Q(λ). Para isto,os mesmos parâmetros e configuração da discretização do espaço de estados são utilizados nosdois algoritmos.

Todos os experimentos foram repetidos 10 vezes e cada treinamento teve duração de200 episódios. Os números aleatórios utilizados para determinar os estados iniciais ou paradeterminar uma ação exploratória foram gerados igualmente para todos os algoritmos. Episódioscom duração maior que dez mil passos nos ambientes Mountain Car, Puddle World e Acrobot

e, maior que um milhão nos ambientes Continuous Maze e Puddle World, foram terminadosprematuramente e reiniciados em um novo episódio. Os algoritmos que atingiram o limite

Page 104: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 103

de tempo em mais de 50 episódios/execução durante o treinamento foram julgados incapazesde realizar a tarefa. As médias dos desempenhos foram calculadas e apresentadas nas seçõesseguintes deste capítulo. É importante mencionar que o conceito de tempo utilizado deste pontoem diante se refere ao número de episódios necessário para obter convergência. Espera-se queum bom algoritmo de aprendizagem seja capaz de convergir para uma política que possibilite aoagente desempenhar a tarefa designada.

7.1 Tempo de Aprendizagem

Os resultados apresentados nesta seção permitirão analisar os algoritmos em dois aspec-tos: 1) capacidade de convergência e 2) tempo de aprendizagem.

As curvas de aprendizagem apresentadas pelas Figuras 7.2, 7.1, 7.4, 7.5 e 7.3 mostram odesempenho dos algoritmos capazes de apresentar convergência nos ambientes Puddle World,Mountain Car, Acrobot, Continuous Maze e Slow Puddle World, respectivamente.

0

200

400

600

800

1000

1200

0 50 100 150 200

Núm

ero

de p

asso

s

Episódio

TD(nλ)-GNGTD(nλ)-DU

TD-AVQIGNG-Q

TCQ(λ)-DU

Figura 7.1: Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU,TD-AVQ, IGNG-Q, TC e Q(λ)-DU no ambiente Mountain Car.

Os experimentos mostram que no ambiente Puddle World, todos algoritmos foramcapazes de convergir. Os algoritmos TD(nλ)-GNG, IGNG-Q, TD-AVQ, Q(λ)-DU, TD(nλ)com Discretização Uniforme (TD(nλ)-DU) e TC convergiram para uma política estável apóscerca de 50, 50, 40, 100, 100 e 50 episódios, respectivamente. A distribuição não-uniforme dasrecompensas pelo espaço de estados não foi um obstáculo para o algoritmo TD-AVQ. Devido aodescarte das recompensas recebidas durante a visita de uma região, esperava-se que o algoritmofosse incapaz de convergir para uma política que evitasse as poças. No entanto, ao atribuirum valor pequeno para o parâmetro θ notou-se uma tendência quanto ao posicionamento dosnós pelas proximidades e interiores das poças. Desta forma, os nós formaram fronteiras quedividiram as poças e, com isso, as transições puderam ocorrer no interior delas. Uma vez que oalgoritmo utiliza apenas as recompensas de transição, a mudança de região no interior das poçaspossibilitou associar uma recompensa baixa nestes locais. Contudo, o algoritmo TD-AVQ ainda

Page 105: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 104

-2000

-1500

-1000

-500

0

0 50 100 150 200

Rec

ompe

nsa

acum

ulad

a

Episódio

TD(nλ)-GNGTD(nλ)-DU

TD-AVQIGNG-Q

TCQ(λ)-DU

Figura 7.2: Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU,TD-AVQ, IGNG-Q, TC e Q(λ)-DU no ambiente Puddle World.

-500000

-400000

-300000

-200000

-100000

0

0 50 100 150 200

Rec

ompe

nsa

acum

ulad

a

Episódio

TD(nλ)-GNGTD(nλ)-DU

TCTD-AVQ

Figura 7.3: Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU, TC eTD-AVQ no ambiente Slow Puddle World.

0

200

400

600

800

1000

1200

0 50 100 150 200

Núm

ero

de p

asso

s

Episódio

TD(nλ)-GNGTD(nλ)-DU

TD-AVQTC

Q(λ)-DU

Figura 7.4: Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU,TD-AVQ, TC e Q(λ)-DU no ambiente Acrobot.

Page 106: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 105

0

100000

200000

300000

400000

500000

600000

0 50 100 150 200

Núm

ero

de p

asso

s

Episódio

TD(nλ)-GNGTD(nλ)-DU

TC

Figura 7.5: Curvas de desempenho dos algoritmos TD(nλ)-GNG, TD(nλ)-DU e TC noambiente Continuous Maze.

não poderá determinar o custo correto de se transitar por estas regiões. Em episódios iniciadosno interior da poças, o agente não saberá qual ação é a melhor para evitar recompensas negativasmaiores. A Figura 7.6 mostra como o algoritmo TD-AVQ posicionou os nós no ambiente Puddle

World.

0

0.2

0.4

0.6

0.8

1

0 0.2 0.4 0.6 0.8 1

Y

X

Figura 7.6: Particionamento do ambiente Puddle World realizado pelo algoritmoTD-AVQ.

No ambiente Mountain Car, os algoritmos TD(nλ)-GNG, TD-AVQ e TC convergiramapós cerca de 50 episódios. Os algoritmos Q(λ)-DU e TD(nλ)-DU convergiram para umapolítica com desempenho próximo, mas no inicio da aprendizagem o algoritmo TD(nλ)-DUobteve um menor tempo de aprendizagem. O algoritmo IGNG-Q foi incapaz de convergir em 200passos. A Figura 7.7 mostra o particionamento realizado pelo algoritmo IGNG-Q no ambienteMountain Car. Nota-se que devido a oscilação da política no vale formado pelas duas montanhaso algoritmo posicionou uma quantidade maior de nós nesta região. Contudo, a adição frequentee tardia de novos nós provocou a oscilação do desempenho durante a aprendizagem.

No ambiente Acrobot, o algoritmo TC obteve o melhor resultado. O algoritmo TD(nλ)-GNG

Page 107: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 106

-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4

Vel

ocid

ade

Posição

Figura 7.7: Particionamento do ambiente Mountain Car realizado pelo algoritmoIGNG-Q.

convergiu para uma política que utiliza uma sequência de ações maior que o algoritmo TC. Oalgoritmo TD-AVQ obteve o pior desempenho enquanto os algoritmos Q(λ)-DU e TD(nλ)-DUconvergiram para uma política que utiliza uma sequência de ações maior que a do algoritmoTD(nλ)-GNG. As curvas de desempenho dos algoritmos que utilizaram DU mostram um poucode instabilidade, acredita-se que isso ocorre devido ao agrupamento de estados não-similares. Oalgoritmo IGNG-Q foi incapaz de encontrar uma solução para o problema. A movimentação eadição tardia dos nós proporcionada por este algoritmo contribuiu para a saturação da funçãovalor o que impossibilitou a solução do problema. Neste ambiente uma ação errada pode prejudi-car ou arruinar toda a sequência de ações realizadas durante um episódio. Os estados localizadosnas fronteiras entre as regiões discretizadas contribuíram para um tempo de aprendizagem maiorque o TC. Uma vez que o espaço de estados do ambiente Acrobot possui dimensão maior que oMountain Car, a quantidade de fronteiras geradas pela discretização também será maior. Alémdisto, a representação mais geral feita pelos algoritmos adaptativos impedem que em determina-das regiões o espaço de estados a melhor ação seja realizada. Desta forma, se o ambiente requereruma precisão maior nos movimentos estes algoritmos apresentarão um desempenho fraco. Estesmotivos justificam o fato do desempenho dos algoritmos que discretizam ser melhor no Mountain

Car do que no Acrobot. É possível resolver o problema com o aumento da quantidade de nós,contudo, o tempo de aprendizagem, uso da memória e o custo computacional para encontrar onó mais próximo será maior.

Os algoritmos TD-AVQ, IGNG-Q e Q(λ)-DU foram incapazes de convergir para umasolução após 200 episódios no ambiente Continuous Maze. A sequência longa de ações necessáriapara concluir um único episódio impossibilitou a convergência destes algoritmos. No entanto,conforme apresentado pela Figura 7.5, o algoritmo TD(nλ)-GNG foi capaz de convergir parauma solução em menos de 100 episódios. Notou-se que a atualização após 1-passo proporcionadapelo algoritmo Q− learning dificultou a aprendizagem dos algoritmos. Isto porque os valoresQ das ações de uma região tendem a convergir para o mesmo valor quando a mesma recompensa

Page 108: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 107

é recebida. Desta forma, o agente tende a alternar entre todas as ações possíveis, uma a cadapasso de tempo. Assim, em regiões que agrupavam muitos estados, o agente teve dificuldadesem ativar uma região diferente. A estratégia de aprendizagem utilizada pelo algoritmo TD(nλ)proporcionou uma saída rápida destas regiões ao utilizar a mesma ação. Como apresentado pelaFigura 7.5, o uso do algoritmo TD(nλ) com DU ao invés do Q(λ), com os mesmos parâmetros,possibilitou que o algoritmo convergisse neste problema. Isto mostra a vantagem em se utilizaro algoritmo TD(nλ) ao invés do algoritmo Q(λ) em ambientes discretizados com episódios delonga duração.

No ambiente Slow Puddle World os algoritmos TC, TD(nλ)-DU e TD-AVQ convergirampara políticas com desempenho inferior ao do algoritmo TD(nλ)-GNG. Os algoritmos IGNG-Qe Q(λ)-DU que antes eram capazes de convergir para uma política em menos de 200 passosno Puddle World, tornaram-se incapazes após o aumento da duração dos episódios. Por outrolado, o algoritmo TD(nλ)-GNG conseguiu convergir após aproximadamente 150 episódios. Aaprendizagem pela discretização uniforme do ambiente só foi possível com o algoritmo TD(nλ),que conseguiu obter um tempo de aprendizagem menor que todos os outros.

As Figuras 7.8, 7.9, 7.10, 7.11 e 7.12 apresentam as áreas abaixo das curvas de desempe-nho e a Tabela 7.1 a média do desempenho dos algoritmos TD(nλ)-GNG, IGNG-Q, TD-AVQ,DU e TC nos ambientes Puddle World, Mountain Car, Acrobot, Continuous Maze e Slow Puddle

World, respectivamente. A área abaixo da curva de aprendizagem permite analisar o tempo gastopelos algoritmos durante toda a aprendizagem. Os resultados mostram com 95% de confiançaque o algoritmo TD(nλ)-GNG obteve o melhor tempo durante a aprendizagem nos ambientesMountain Car, Continuous Maze e Slow Puddle World e o algoritmo TC nos ambientes Puddle

World e Acrobot. Entre os algoritmos adaptativos, o algoritmo proposto obteve o melhor tempodurante a aprendizagem em todos os ambientes de teste.

10000

15000

20000

25000

30000

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU IGNG-Q

Áre

a A

baix

o da

Cur

va

Erro P.Média

Figura 7.8: Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ,TD(nλ)-GNG, TC, DU e IGNG-Q no ambiente Mountain Car com intervalo de

confiança de 95%.

Page 109: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 108

10000

15000

20000

25000

30000

35000

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU IGNG-Q

Áre

a A

baix

o da

Cur

va (

x-1)

Erro P.Média

Figura 7.9: Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ,TD(nλ)-GNG, TC, DU e IGNG-Q no ambiente Puddle World com intervalo de confiança

de 95%.

5x106

1x107

1.5x107

2x107

2.5x107

TD-AVQ TD(nλ)-GNG TD(nλ)-DU TC

Áre

a A

baix

o da

Cur

va (

x-1)

Erro P.Média

Figura 7.10: Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ,TD(nλ)-GNG, TC e TD(n)-DU no ambiente Slow Puddle World com intervalo de

confiança de 95%.

20000

40000

60000

80000

100000

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU

Áre

a A

baix

o da

Cur

va

Erro P.Média

Figura 7.11: Área abaixo da curva de aprendizagem dos algoritmos TD-AVQ,TD(nλ)-GNG, TC e DU no ambiente Acrobot com intervalo de confiança de 95%.

Page 110: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.1. TEMPO DE APRENDIZAGEM 109

5x106

1x107

1.5x107

2x107

2.5x107

3x107

TD(nλ)-GNG TD(nλ)-DU TC

Áre

a A

baix

o da

Cur

vaErro P.Média

Figura 7.12: Área abaixo da curva de aprendizagem dos algoritmos TD(nλ)-GNG, TC eTD(nλ)-DU no ambiente Continuous Maze com intervalo de confiança de 95%.

Tabela 7.1: Tempo de aprendizagem em média dos algoritmos TC, IGNG-Q, TD-AVQ,TD(nλ)-GNG, TD(nλ)-DU e Q(λ)-DU nos ambientes Mountain Car (MC), Puddle World(PW), Slow Puddle World (Slow PW), Acrobot e Maze. Os melhores resultados em cada

ambiente estão destacados em negrito.

Algoritmo MC PW Slow PW Acrobot MazeTC 14.255,50 -10.469,27 -15.959.876,69 19.306,10 29.799.621,00IGNG-Q 79.714,70 -18.200,12TD-AVQ 14.775,50 -19.316,15 -21.568.690,55 73.404,40TD(nλ)-GNG 12.536,30 -14.468,79 -2.097.060,32 50.901,40 2.733.507,10TD(nλ)-DU 17.453,60 -29.286,40 -16.160.843,71 63.052,20 18.485.374,10Q(λ)-DU 18.875,60,73 -28.604,27 63.191,80

Page 111: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.2. MEMÓRIA UTILIZADA 110

7.2 Memória Utilizada

A Tabela 7.2 mostra a média da memória gasta pelos algoritmos em 10 execuções. Comoé possível notar, o algoritmo proposto obteve o menor consumo de memória. Em comparação como TC, o algoritmo proposto obteve uma redução de 93%, 98%, 98%, 98% e 98% nos ambientesMountain Car, Acrobot, Continuous Maze e Slow Puddle World, respectivamente. No ambientePuddle World, houve um aumento de 2% no uso da memória do algoritmo TD(nλ)-GNG emcomparação com o TC. Os resultados mostram que os algoritmos adaptativos são capazes deresolver problemas utilizando pouca memória o que os torna mais indicados para o uso emsistemas embarcados onde a quantidade de memória pode determinar o custo final do dispositivo.

Tabela 7.2: Média de 10 execuções da memória gasta pelos algoritmos TD(nλ)-GNG,TD-AVQ, TC, IGNG-Q e DU nos ambientes Mountain Car, Acrobot, Continuous Maze,

Puddle World e Slow Puddle World.

Algoritmo Ambiente Média (kB) Desv. P. (kB)Continuous Maze 3,52kB 0,07kBSlow Puddle World 4,01kB 0,07kBPuddle World 1,99kB 0,16kBMountain Car 0,11kB 0,03kB

TD(nλ)-GNG

Acrobot 2,69kB 1,02kBSlow Puddle World 3,65kB 0,14kBPuddle World 4,22kB 0,14kBMountain Car 0,19kB 0,02kB

TD-AVQ

Acrobot 4,05kB 0,20kBContinuous Maze 31,25kB –Slow Puddle World 31,25kB –Puddle World 1,95kB –Mountain Car 5,69kB –

TC

Acrobot 128,00kB –Puddle World 1,98kB 0,17kB

IGNG-QMountain Car 0,13kB 0,05kBPuddle World 6,23kB –Mountain Car 0,48kB –DUAcrobot 78,12kB –

7.3 Qualidade da Política

Esta seção apresenta os resultados referentes ao desempenho da política do agenteobtida após o treinamento. Nesta etapa dos experimentos não há atualização da função valorcomo também não há exploração. As ações do agente são obtidas ao seguir uma políticagreedy derivada da estimativa Q obtida no treinamento. As Figuras 7.16, 7.13, 7.14 e 7.15

Page 112: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.4. COMPLEXIDADE DOS ALGORITMOS 111

apresentam o desempenho dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU nos ambientesAcrobot, Mountain Car, Puddle World, Continuous Maze e Slow Puddle World, respectivamente.A Tabela 7.3 mostra o desempenho em média destes algoritmos. Para cada uma das 10 execuçõesdo treinamento, 10 testes foram realizados com o agente posicionado em diferentes estados doambiente totalizando 100 testes por ambiente para cada algoritmo. Testes com mais de 5000episódios nos ambientes Acrobot, Puddle World e Mountain Car, e 50000 passos no Continuous

Maze e Slow Puddle World foram finalizados prematuramente. O algoritmo é excluído do testese não concluir mais que 50% dos episódios.

Os resultados mostram com 95% de confiança que o algoritmo TC obteve a melhorpolítica no Acrobot e Mountain Car. No Puddle World todos os algoritmos - com exceção doDU - tiveram um desempenho semelhante. O algoritmo IGNG-Q foi incapaz de concluir maisque 50% dos episódios de teste no ambiente Mountain Car e por isso seu desempenho não foiapresentado. Nos ambientes Continuous Maze e Slow Puddle World, o algoritmo TD(nλ)-GNGfoi o único que obteve uma política utilizável após o treinamento. Nestes dois ambientes de testeo algoritmo proposto foi melhor que todos os outros, pois apresentou convergência, um menortempo de aprendizagem, uma melhor qualidade da política e um menor uso da memória. Emtermos absolutos, o algoritmo TD(nλ)-DU mostra em média ter obtido uma política melhor queo algoritmo Q(λ)-DU.

40

50

60

70

80

90

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU

Núm

ero

de p

asso

s

Erro P.Média

Figura 7.13: Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU noambiente Mountain Car.

7.4 Complexidade dos Algoritmos

A Tabela 7.4 apresenta as complexidades, calculadas no Apêndice A, dos algoritmos nasetapas de busca pela partição ativa e atualização da função valor.

Dentre os algoritmos utilizados, o DU é o que possui o menor tempo pela busca dapartição ativa. A distribuição regular das regiões pelo estado de espaço permite utilizar o próprioestado para indexar a região ativa. O mesmo pode ser feito no algoritmo TC, mas a operação deve

Page 113: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.4. COMPLEXIDADE DOS ALGORITMOS 112

0

200

400

600

800

1000

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU IGNG-Q

Rec

ompe

nsa

acum

ulad

a (x

-1)

Erro P.Média

Figura 7.14: Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU noambiente Puddle World.

5000

10000

15000

20000

25000

C. Maze S. Puddle World

Núm

ero

de p

asso

s

Erro P.Média

Figura 7.15: Desempenho no teste do algoritmo TD(nλ)-GNG nos ambientesContinuous Maze e Slow Puddle World.

0

50

100

150

200

250

300

350

400

TD-AVQ TD(nλ)-GNG TC Q(λ)-DU TD(nλ)-DU

Núm

ero

de p

asso

s

Erro P.Média

Figura 7.16: Desempenho no teste dos algoritmos TD-AVQ, TD(nλ)-GNG, TC e DU noambiente Acrobot.

Page 114: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

7.4. COMPLEXIDADE DOS ALGORITMOS 113

Tabela 7.3: Qualidade da política em média dos algoritmos TC, IGNG-Q, TD-AVQ,TD(nλ)-GNG, TD(nλ)-DU e Q(λ)-DU nos ambientes Mountain Car (MC), Puddle World(PW), Slow Puddle World (Slow PW), Acrobot e Maze. Os melhores resultados em cada

ambiente estão destacados em negrito.

Algoritmo MC PW Slow PW Acrobot MazeTC 52,49 -37,52 75,37IGNG-Q -54,94TD-AVQ 64,99 -60,81 271,25TD(nλ)-GNG 63,64 -39,85 -16.585,78 231,07 8.176,43TD(nλ)-DU 68,46 -199,02 214,57Q(λ)-DU 68,73 -425,92

ser repetida em todos os tilings que dividem o espaço de estados. Uma vez que os algoritmosTD(nλ)-GNG, TD-AVQ e IGNG-Q utilizam nós para particionar o espaço de estados, todospossuem o mesmo tempo de busca. Apenas se o número de tilings for maior que o númerode nós é que os algoritmos TD(nλ)-GNG, TD-AVQ e IGNG-Q possuirão tempo de execuçãomenor que o TC. No entanto, em todos os experimentos o algoritmo TC utilizou menos tilings

do que nós.A complexidade da função utilizada para atualizar a função valor é igual para todos os

algoritmos. Devido o uso da técnica Elegibility Traces, os algoritmos devem percorrer todas asregiões discretas que cobrem o espaço de estados. Para minimizar o custo, pode-se manter umalista com as regiões que foram ativas durante o episódio e atualizar apenas as regiões desta lista.No pior caso, se o agente visitar todos os estados durante um episódio, o custo será o mesmo queo apresentado pela Tabela 7.4. Uma vez que em todos os ambientes - com exceção do Puddle

World - houve mais tiles que nós, o algoritmo TC teria o pior tempo de execução.

Tabela 7.4: Tempo de execução dos algoritmos TD(nλ)-GNG, TD-AVQ, TC, IGNG-Q eDU nas etapas de busca pela partição ativa e atualização da função valor, onde d é o

número de dimensões, n é o número de nós, c é o número de tilings, t é o número total detiles, a é o número de ações e k é o número de regiões.

Algoritmo Busca AtualizaçãoTD(nλ)-GNG O(dn) O(an)TD-AVQ O(dn) O(an)TC O(dc) O(at)IGNG-Q O(dn) O(an)DU O(d) O(ak)

Page 115: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

114114114

8Conclusões e Trabalhos Futuros

A maldição da dimensionalidade (Bellman, 1952) é um dos principais problemas quedificulta o uso da AR. Em ambientes que possuem o espaço de estados contínuo, o númerode soluções cresce exponencialmente à medida que o número de estados e ações cresce e,consequentemente, o tempo de aprendizagem aumenta.

Com a generalização do ambiente é possível reduzir o tempo de aprendizagem em estadosnão visitados através do compartilhamento da experiência ganha em estados similares em outrosque nunca foram vistos pelo agente. O algoritmo proposto utilizou a rede GNG para obter ageneralização com o agrupamento dos estados a partir do uso de estratégias que visam a reduçãoda dependência do caminho (Definição 3.2) e o agrupamento a partir da detecção de estadosnão-similares (Seção 6.1).

Uma característica importante do algoritmo proposto é a capacidade de gerar umarepresentação automática do espaço de estados sem a interverção de um especialista no domíniodo problema. O Particionamento automático do espaço de estados é preferível, principalmentequando não se conhece todas as particularidades do problema que se deseja resolver. A aplicaçãodo algoritmo TD(nλ)-GNG proporcionou uma representação compacta e flexível do espaço deestados contínuo, e com isso foi possível reduzir os efeitos da maldição da dimensionalidade.Como resultado, o tempo de aprendizagem e a quantidade de memória utilizada puderam serreduzidos.

O presente capítulo está dividido em cinco seções. A proposta é apresentada na Seção 8.1.A Seção 8.2 apresenta o resumo dos resultados. A Seção 8.3 apresenta as principais contribuições.As perspectivas de trabalhos futuros são apresentadas na Seção 8.4.

8.1 Proposta

O presente trabalho mostrou que os tradicionais algoritmos AR são incapazes de encontraruma solução onde a dependência do caminho existe. Neste caso, observa-se o surgimento dofenômeno Chattering (Bertsekas; Tsitsiklis, 1996) (Capítulo 3, Seção 3.3) com a convergênciada função valor e a oscilação da política. Durante a aprendizagem, a mudança da política é

Page 116: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

8.1. PROPOSTA 115

inevitável enquanto a convergência da função valor é desejável, isto diz um pouco a respeito dadificuldade em detectar a ocorrência deste fenômeno em tempo de execução. Outro problemaque dificulta sua detecção ocorre quando a curva de desempenho apresenta convergência, mas aointerromper a aprendizagem o agente não é capaz de desempenhar a tarefa designada.

Ao manter a política fixa durante o episódio, percebe-se que os efeitos do fenômenoChattering são reduzidos (ver Figura 3.16). No entanto, isto faz a função valor saturar (Definição3.3) em regiões onde a dependência do caminho existe. Felizmente, este problema pode serutilizado em benefício do algoritmo de aprendizagem. O algoritmo proposto utiliza a saturaçãocomo indicativo da existência da dependência do caminho em uma região. Desta forma, épossível determinar o momento e o local onde o refinamento do espaço de estados deve ocorrer.Uma vez que a dependência do caminho pode ser resolvida com o refinamento de uma região,esta estratégia permite reduzir sua existência. Esta é a primeira vez que a saturação da funçãovalor é utilizada em benefício de um algoritmo de aprendizagem adaptativo. A vantagem destaestratégia deve-se à facilidade em determinar o limite da função valor quando um desconto éutilizado para as recompensas recebidas (Subseção 6.1.2).

Esta tese propôs um algoritmo adaptativo capaz de reduzir os efeitos da maldição dadimensionalidade e a ocorrência da dependência do caminho, dois problemas que afetam osalgoritmos AR. O algoritmo proposto apresenta avanços (i) no particionamento adaptativo doespaço de estados, e (ii) aprendizagem da função valor, ambos descritos nos próximos tópicosdesta seção.

8.1.1 Algoritmo TD(nλ) - Particionamento Adaptativo

Para que o tempo de aprendizagem não seja sacrificado, a política do agente não podeser fixa durante todo o episódio. Contudo, ainda é possível reduzir os efeitos do fenômenoChattering ao mantê-la fixa durante um curto período de tempo. O algoritmo TD(nλ) (Capítulo6, Subseção 6.1.3) mantém a política fixa durante a visita a uma região atualizando-a apenasnas transições. Desta forma, a saturação ainda pode ser percebida em locais onde existe adependência do caminho, os efeitos do fenômeno Chattering podem ser reduzidos e a políticanão permanece fixa durante todo o episódio.

A estratégia utilizada pelo algoritmo TD(nλ) possibilita transições rápidas ao manter apolítica fixa durante a visita de uma região. Enquanto não houver uma transição, as recompensasdescontadas são acumuladas. Caso contrário, o retorno é truncado (Capítulo 2, Subseção 2.2.1)pela estimativa das recompensas futuras da próxima região visitada. É neste momento quea função valor é atualizada. Para isto, o algoritmo TD(nλ) utiliza o TD(n) para atualizar afunção valor em uma região, e Elegibility Traces (Capítulo 2, Subseção 2.2.1) para acelerar aaprendizagem repassando uma parcela do retorno-n para as regiões passadas.

A motivação para o uso desta estratégia deve-se à impossibilidade do mapeamento deduas ações diferentes em uma mesma região (Capítulo 2, Seção 2.2). Desta forma, percebe-se que

Page 117: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

8.2. RESULTADOS 116

não existem vantagens explícitas para ocorrer mudanças na política durante a visita a uma região,visto que este comportamento não será possível após o treinamento. Sendo assim, ao utilizar estaestratégia o tempo de aprendizagem não é sacrificado, e nos casos onde a generalização é muitoalta observa-se um aumento significativo do desempenho (ver Figuras 7.3 e 7.5 nas páginas 104e 105).

8.1.2 Algoritmo TD(nλ)-GNG

O algoritmo TD(nλ)-GNG é composto por dois componentes: 1) algoritmo TD(nλ),responsável pela aprendizagem da função valor e, 2) algoritmo GNG, responsável pelo particio-namento adaptativo do espaço de estados. O algoritmo GNG modificado (Capítulo 6, Subseções6.1.1 e 6.1.2) atende às necessidades da estratégia de aprendizagem utilizada, sendo compostode duas etapas: 1) adaptação e 2) refinamento. Estas etapas referem-se, respectivamente, aomovimento e posicionamento de novos nós no espaço de estados.

A movimentação dos nós ocorre quando uma ação produz uma estimativa de retornomaior que a esperada. Para identificar estas ações, o algoritmo avalia a Equação 6.1 que, emoutras palavras, move um nó se a recompensa imediata somada à estimativa das recompensasdos estados futuros for maior que a melhor ação do nó. Sendo assim, em decorrência de umaação exploratória os nós não serão deslocados para outras regiões que podem possuir uma menorestimativa de retorno. Esta estratégia de movimento procura evitar que o algoritmo GNG tenterepresentar políticas que são ruins (menor retorno) (ver Capítulo 3, Seção 3.2).

A etapa de refinamento ocorre em regiões onde a função valor tende a saturar. O algoritmoadiciona novos nós antes que a saturação ocorra, para isto, o retorno-n é monitorado. Um novonó será adicionado quando o retorno-n alcançar valores maiores que o limite adaptativo calculadopelo algoritmo. O limite é dito adaptativo, pois a depender da recompensa recebida, este limitepode aumentar ou diminuir. Esta estratégia de refinamento pode proporcionar uma redução naocorrência da dependência do caminho da seguinte forma: se o agente está localizado em umaregião que possui a dependência do caminho, então existe pelo menos um estado não-similar queexige uma ação diferente para que a transição para outra região ocorra. Desta forma, uma vezque a política é fixa, o retorno-n alcançará o limite neste estado e um novo nó será adicionadodividindo a região. Visto que a dependência do caminho pode ser resolvida com o refinamentode uma região, esta estratégia possibilita reduzir sua ocorrência.

8.2 Resultados

O uso do algoritmo TD(nλ) em ambientes discretizados que possuem episódios delonga duração mostrou ser mais adequado que os tradicionais algoritmos AR. Houve umganho significativo no desempenho do agente ao substituir o algoritmo Q(λ) pelo algoritmoTD(nλ). Isto porque a atualização após 1-passo proporcionada pelo algoritmo Q− learning

Page 118: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

8.2. RESULTADOS 117

dificultou a aprendizagem do agente, principalmente quando as regiões agrupavam muitosestados. Nos ambientes que possuiam episódios de longa duração, o uso do algoritmo propostocom TD(nλ)-DU foi capaz de mostrar convergência onde o Q(λ) não conseguiu. Ao aplicaro algoritmo TD(nλ)-GNG, o desempenho foi superior em todos os aspectos: 1) tempo deconvergência, 2) qualidade da política e 3) memória utilizada.

Esta tese compara o algoritmo proposto com quatro algoritmos AR chamados: TC,TD-AVQ, Q(λ)-DU e IGNG-Q. Os experimentos mostram que o algoritmo proposto foi capazde encontrar a solução dos cinco ambientes de teste envolvidos. A Tabela 8.1 mostra osalgoritmos que obtiveram o melhor desempenho nos quesitos tempo de aprendizagem, memóriautilizada e qualidade da política encontrada. Em comparação com o algoritmo TC, o algoritmoproposto foi capaz de proporcionar uma redução no uso da memória de 88%, 87%, 98% e 97%nos ambientes Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente.No teste, o algoritmo proposto foi o único capaz de produzir uma política utilizável nos ambientesContinuous Maze e Slow Puddle World.

Tabela 8.1: Melhores algoritmos nos quesitos tempo de aprendizagem, memória utilizadae qualidade da política.

Aprendizagem Memória Qualidade da PolíticaPuddle World TC TC TCMountain Car TD(nλ)-GNG TD(nλ)-GNG TCAcrobot TC TD(nλ)-GNG TCContinuous Maze TD(nλ)-GNG TD(nλ)-GNG TD(nλ)-GNGSlow Puddle World TD(nλ)-GNG TD(nλ)-GNG TD(nλ)-GNG

Em ambientes multidimensionais, onde as ações futuras possuem impacto em toda umasequência correta de ações, o algoritmo proposto mostra obter um desempenho inferior. Istoporque a quantidade de fronteiras entre os nós torna-se maior em problemas multidimensionais(Baumann; Kleine büning, 2014). Além disto, estes ambientes irão necessitar de uma quantidademaior de nós para representar o espaço de estados. A representação mais geral feita pelosalgoritmos adaptativos impedem que em determinadas regiões do espaço de estados a melhor açãoseja realizada. Por outro lado, ao configurar os algoritmos para que realizem uma representaçãomais específica do espaço de estados percebe-se que a generalização é prejudicada implicandoem um aumento no tempo de aprendizagem e uso da memória.

No ambiente Acrobot, o algoritmo proposto foi capaz de convergir utilizando umaquantidade menor de memória devido o uso de uma quantidade menor de partições. Isto foipossível com o ajuste do o parâmetro ρ (ver Seção 6.1.2). Desta forma, em aplicações onde amemória é pouca, o algoritmo proposto se mostra mais adequado para o uso. Um exemplo destaaplicação são as plataformas eletrônicas de prototipagem de baixo custo tais como o Arduíno. ATabela 8.2 apresenta o processador e a quantidade de memória disponível pelos Arduínos maisutilizados no mercado. Esta plataforma possui três tipos de memórias que possuem propósitos

Page 119: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

8.3. CONTRIBUIÇÕES 118

diferentes, são elas:

1. Flash – Utilizada para armazenar o algoritmo de aprendizagem.

2. SRAM – Para armazenar as variáveis, vetores, pilha e todo tipo de dado utilizado emtempo de execução. Esta memória é utilizada para armazenar os tiles ou nós durantea aprendizagem.

3. EEPROM – Memória para o armazenamento de dados geralmente estáticos.

Tabela 8.2: Os tipos de Arduínos, seus respectivos processores e, tipo e quantidade dememória disponível.

Arduíno Processador Memória Flash Memória SRAM Memória EEPROMUno Atmega328 32,0kB 2,0kB 1,0kBLeonardo Atmega32U4 32,0kB 2,5kB 1,0kBMega Atmega2560 256,0kB 8,0kB 8,0kB

Os resultados mostram que os algoritmos adaptativos são mais adequados para o usonestes dispositivos. Os algoritmos que realizam uma representação fixa não proporcionamuma representação flexível do espaço de estados sem a intervenção humana. Desta forma, aquantidade de memória utilizada será maior.

8.3 Contribuições

O presente trabalho apresentou três contribuições: 1) algoritmo para estimar a funçãovalor em ambientes discretizados, 2) prova de que o algoritmo TD(nλ) implementa corretamenteo Elegibility Traces e 3) algoritmo para o particionamento automático do espaço de estados.

A primeira contribuição foi a elaboração de um algoritmo AR para estimar a função valorem ambientes discretizados. A maior parte das pesquisas que envolvem o uso dos algoritmosAR buscam meios de como aprimorar a representação do espaço de estados contínuo enquantoos algoritmos AR permanecem inalterados. O presente trabalho quebrou esta tradição ao terapresentado um novo algoritmo AR capaz de proporcionar um ganho na aprendizagem emambientes discretizados. Ao comparar os algoritmos TD(nλ) e Q(λ), utilizando os mesmosparâmetros de aprendizagem e representação do espaço de estados, foi possível observar umganho no desempenho em todos os ambientes de teste.

A segunda contribuição prova que o algoritmo TD(nλ) implementa corretamente oElegibility Traces (Prova 6.1, página 93). Assim, o algoritmo TD(nλ) mantém a propriedadede convergência do algoritmo TD(n) uma vez que a soma dos pesos dos retornos-n continuaigual a 1 (Sutton; Barto, 1998). Segundo Watkins (1989), esta condição é necessária para que osalgoritmos que combinam os retornos-n possuam a propriedade da redução do erro (Watkins,

Page 120: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

8.4. TRABALHOS FUTUROS 119

1989). Por meio desta propriedade é possível mostrar formalmente que o algoritmo TD(nλ)converge para o valores corretos da função valor.

A última contribuição do presente trabalho é a apresentação de um algoritmo paraa discretização automática do espaço de estados. O Particionamento automático é preferível,principalmente quando as particularidades do problema que se deseja resolver não são conhecidas.Em casos como este, os algoritmos que particionam automaticamente o espaço de estados sãoutilizados para detectar estas particularidades e reduzir as chances do agrupamento de estadosnão-similares. A flexibilidade proporcionada pelo algoritmo proposto permitiu obter umarepresentação eficiente do espaço de estados com poucos nós, isto porque em determinadasregiões do espaço foi possível utilizar mais nós do que em outras. Uma vez que o consumo dememória (Tabela 7.2, página 110) e recursos computacionais está associado ao número de nós, acapacidade do algoritmo proposto de resolver problemas com uma quantidade menor de nós quea utilizada pelos demais algoritmos comparados viabiliza o uso do algoritmo TD(nλ)-GNG emaplicações onde a quantidade de memória é reduzida.

8.4 Trabalhos Futuros

Como trabalho futuro, planeja-se modificar o algoritmo proposto para que utilize maisde uma camada a fim de permitir o compartilhamento do conhecimento de um nó entre seusvizinhos. A ideia é semelhante ao funcionamento do algoritmo TC onde vários tilings estãosobrepostos com um deslocamento. Desta forma, a função valor pode ser suavizada eliminando oproblema dos estados localizados entre as fronteiras dos nós. O número de camadas do algoritmoirá determinar o grau de suavidade que a função valor irá possuir. Contudo, o número de nós iráaumentar

Outro trabalho futuro consiste em reduzir o custo computacional em encontrar o nó maispróximo. Para isto, planeja-se dividir o espaço de busca em listas distribuídas uniformemente noespaço de estados. Estas listas armazenarão os nós mais próximos de acordo com a distânciaEuclidiana. Ao apresentar uma nova entrada, o algoritmo irá buscar pelo nó apenas na lista maispróxima. A movimentação dos nós exigirá que as listas sejam atualizadas após o deslocamentode um nó, isto aumentará o custo da etapa de adaptação do algoritmo. No entanto, este custopode ser reduzido ao manter uma variável para cada nó com a distância até a segunda lista maispróxima. Após cada movimento, esta variável é reduzida pelo tamanho do deslocamento do nó.Ao alcançar um valor abaixo de 0 o algoritmo verifica se o nó ainda pertence à lista atual, casocontrário, ele é movido para outra lista.

Como último trabalho futuro, planeja-se obter a prova de convergência do algoritmoTD(nλ).

Page 121: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

120120120

Referências

Abramson, M.; Pachowicz, P.; Wechsler, H. Competitive reinforcement learning in continuouscontrol tasks. In: INTERNATIONAL JOINT CONFERENCE ON NEURAL NETWORKS.Proceedings. . . [S.l.: s.n.], 2003. v.3, p.1909–1914.

Albus, J. S. A new approach to manipulator control: The cerebellar model articulation controller(CMAC). Journal of Dynamic Systems, Measurement, and Control, [S.l.], v.97, n.3,p.220–227, 1975.

Barto, A.; Sutton, R.; Anderson, C. Neuronlike adaptive elements that can solve difficultlearning control problems. IEEE Transactions on Systems, Man and Cybernetics, [S.l.],v.13, n.5, p.834–846, Set 1983.

Baumann, M.; Kleine büning, H. Adaptive function approximation in reinforcement learningwith an interpolating growing neural gas. International Journal of Hybrid IntelligentSystems, [S.l.], v.11, n.1, p.55–69, 2014.

Bellman, R. On the Theory of Dynamic Programming. Proceedings of the National Academyof Sciences of the United States of America, [S.l.], v.38, n.8, p.716–719, 1952.

Bellman, R. Dynamic Programming. 1.ed. Princeton, NJ, USA: Princeton University Press,1957.

Bertsekas, D. P.; Tsitsiklis, J. N. Neuro-Dynamic Programming. Belmont, MA: AthenaScientific, 1996.

Bodenhausen, U.; Hild, H. Automatic construction of neural networks for special purposespeech recognition systems. In: INTERNATIONAL CONFERENCE ON ACOUSTICS,SPEECH, AND SIGNAL PROCESSING. Anais. . . [S.l.: s.n.], 1995. v.5, p.3327–3330.

Boyan, J. A.; Moore, A. W. Generalization in Reinforcement Learning: safely approximatingthe value function. In: ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS7. Anais. . . MIT Press, 1995. p.369–376.

Bradski, D. G. R.; Kaehler, A. Learning Opencv. 1.ed. [S.l.]: O’Reilly Media Inc., 2008.

Braga, A. P.; Araújo, A. F. R. A topological reinforcement learning agent for navigation. NeuralComputing and Applications, [S.l.], v.12, n.3-4, p.220–236, 2003.

Breslow, L. Greedy Utile Suffix Memory for Reinforcement Learning withPerceptually-Aliased States. [S.l.]: Naval Research Laborary, 1996.

Claussen, C.; Gutta, S.; Wechsler, H. Reinforcement Algorithms Using FunctionalApproximation for Generalization and Their Application to Cart Centering and FractalCompression. In: SIXTEENTH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIALINTELLIGENCE, San Francisco, CA, USA. Proceedings. . . Morgan Kaufmann PublishersInc., 1999. p.1362–1369. (IJCAI ’99).

Connell, J.; Mahadevan, S. Robot Learning. 1.ed. Boston: Kluwer Academic, 1993.

Page 122: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

REFERÊNCIAS 121

Correa, B.; Gonzalez, A. Evolutionary Algorithms for Selecting the Architecture of a MLPNeural Network: a credit scoring case. In: INTERNATIONAL CONFERENCE ON DATAMINING WORKSHOPS (ICDMW), 11. Anais. . . [S.l.: s.n.], 2011. p.725–732.

Crites, R.; Barto, A. Improving Elevator Performance Using Reinforcement Learning. In:ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 8. Anais. . . MIT Press,1996. p.1017–1023.

Ernst, D.; Geurts, P.; Wehenkel, L. Tree-Based Batch Mode Reinforcement Learning. J. Mach.Learn. Res., [S.l.], v.6, p.503–556, Dec. 2005.

Fernández, F.; Borrajo, D. VQQL. Applying Vector Quantization to Reinforcement Learning. In:ROBOCUP-99: ROBOT SOCCER WORLD CUP III. Anais. . . [S.l.: s.n.], 1999. p.292–303.

Fritzke, B. A Growing Neural Gas Network Learns Topologies. In: ADVANCES IN NEURALINFORMATION PROCESSING SYSTEMS 7. Anais. . . MIT Press, 1995. p.625–632.

Fuchida, T.; Aung, K. A proposition of adaptive state space partition in reinforcement learningwith Voronoi tessellation. Artificial Life and Robotics, [S.l.], v.18, n.3-4, p.172–177, 2013.

Garca, J. et al. A Comparative Study of Discretization Approaches for State SpaceGeneralization in the Keepaway Soccer Task. [S.l.]: Nova Science Publishers, 2010.

Gordon, G. J. Chattering in SARSA(lambda). [S.l.]: CMU Learning Lab, 1996.

Han, J.; Kamber, M.; Pei, J. Data Mining: concepts and techniques. 3.ed. San Francisco, CA,USA: Morgan Kaufmann Publishers Inc., 2011.

Handa, H. State space construction of reinforcement learning agents based upon anticipatedsensory changes. In: IEEE INTERNATIONAL JOINT CONFERENCE ON NEURALNETWORKS. Anais. . . [S.l.: s.n.], 2004. v.2, p.1115–1120.

Haykin, S. Neural Networks: a comprehensive foundation. 2.ed. Upper Saddle River, NJ, USA:Prentice Hall PTR, 1998.

Jain, R. The art of computer systems performance analysis - techniques for experimentaldesign, measurement, simulation, and modeling. [S.l.]: Wiley, 1991. I-XXVII, 1-685p.(Wiley professional computing).

Kaelbling, L. P.; Littman, M. L.; Moore, A. P. Reinforcement Learning: a survey. Journal ofArtificial Intelligence Research, [S.l.], v.4, p.237–285, 1996.

Koenig, S.; Simmons, R. The effect of representation and knowledge on goal-directedexploration with reinforcement-learning algorithms. Machine Learning, [S.l.], v.22, n.1-3,p.227–250, 1996.

Kohonen, T.; Schroeder, M. R.; Huang, T. S. (Ed.). Self-Organizing Maps. 3.ed. Secaucus, NJ,USA: Springer-Verlag New York Inc., 2001.

Konidaris, G.; Osentoski, S.; Thomas, P. Value Function Approximation in ReinforcementLearning using the Fourier Basis. In: TWENTY-FIFTH CONFERENCE ON ARTIFICIALINTELLIGENCE. Proceedings. . . [S.l.: s.n.], 2011. p.380–385.

Page 123: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

REFERÊNCIAS 122

Lampton, A.; Niksch, A.; Vakasek, J. Reinforcement Learning of a Morphing Airfoil-Policy andDiscrete Learning Analysis. Journal of Aerospace Computing, Information, andCommunication, [S.l.], v.7, n.8, p.241–260, 2010.

Lee, I. S.; Lau, H. Y. Adaptive state space partitioning for reinforcement learning. EngineeringApplications of Artificial Intelligence, [S.l.], v.17, n.6, p.577 – 588, 2004.

Mahadevan, S.; Connell, J. Automatic programming of behavior-based robots usingreinforcement learning. Artificial Intelligence, [S.l.], v.55, n.2, p.311 – 365, 1992.

Martinetz, T. M. Competitive Hebbian learning rule forms perfectly topology preserving maps.In: ICANN’93: INTERNATIONAL CONFERENCE ON ARTIFICIAL NEURALNETWORKS, Amsterdam. Anais. . . Springer, 1993. p.427–434.

Mccallum, R. A. Instance-Based Utile Distinctions for Reinforcement Learning with HiddenState. In: IN PROCEEDINGS OF THE TWELFTH INTERNATIONAL CONFERENCE ONMACHINE LEARNING. Anais. . . Morgan Kaufmann, 1995. p.387–395.

Montazeri, H.; Moradi, S.; Safabakhsh, R. Continuous State/Action Reinforcement Learning: agrowing self-organizing map approach. Neurocomputing, Amsterdam, The Netherlands, v.74,n.7, p.1069–1082, Mar. 2011.

Otterlo, M. van; Wiering, M. Reinforcement Learning and Markov Decision Processes. In:Wiering, M.; Otterlo, M. van (Ed.). Reinforcement Learning. [S.l.]: Springer BerlinHeidelberg, 2012. p.3–42. (Adaptation, Learning, and Optimization, v.12).

Puterman, M. L. Markov Decision Processes: discrete stochastic dynamic programming. 1.ed.New York, NY, USA: John Wiley & Sons, Inc., 1994.

Ribeiro, C. Reinforcement Learning Agents. Artificial Intelligence Review, [S.l.], v.17, n.3,p.223–250, 2002.

Riedmiller, M. Neural fitted Q iteration – first experiences with a data efficient neuralreinforcement learning method. In: IN 16TH EUROPEAN CONFERENCE ON MACHINELEARNING. Anais. . . Springer, 2005. p.317–328.

Riedmiller, M.; Braun, H. A Direct Adaptive Method for Faster Backpropagation Learning: therprop algorithm. In: IEEE INTERNATIONAL CONFERENCE ON NEURAL NETWORKS.Anais. . . [S.l.: s.n.], 1993. p.586–591.

Rumelhart, D. E.; Hinton, G. E.; Williams, R. J. Neurocomputing: foundations of research. In:Anderson, J. A.; Rosenfeld, E. (Ed.). . Cambridge, MA, USA: MIT Press, 1988. p.673–695.

Rummery, G. A.; Niranjan, M. On-line Q-learning using connectionist systems. [S.l.]:Cambridge University Engineering Department, 1994. (166).

Russell, S. J.; Norvig, P. Artificial Intelligence: a modern approach. 2.ed. [S.l.]: PearsonEducation, 2003.

Saber, A. S.; El-rashidy, M. A. Article: an effective intelligent self-construction multilayerperceptron neural network. International Journal of Computer Applications, [S.l.], v.98,n.11, p.23–28, July 2014. Full text available.

Page 124: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

REFERÊNCIAS 123

Schneider, M. Finite Resolution Geometry for Geographic Information Systems. [S.l.]:Springer-Verlag Berlin Heidelberg, 1997.

Shani, G.; Brafman, R. I. Resolving Perceptual Aliasing In The Presence Of Noisy Sensors. In:ADVANCES IN NEURAL INFORMATION PROCESSING SYSTEMS 17 [NEURALINFORMATION PROCESSING SYSTEMS, NIPS 2004, DECEMBER 13-18, 2004,VANCOUVER, BRITISH COLUMBIA, CANADA]. Anais. . . [S.l.: s.n.], 2004. p.1249–1256.

Sherstov, A. A.; Stone, P. Function Approximation via Tile Coding: automating parameterchoice. In: Zucker, J.-D.; Saitta, L. (Ed.). SARA. [S.l.]: Springer, 2005. p.194–205. (LectureNotes in Computer Science, v.3607).

Singh, S.; Bertsekas, D. Reinforcement Learning for Dynamic Channel Allocation in CellularTelephone Systems. In: IN ADVANCES IN NEURAL INFORMATION PROCESSINGSYSTEMS: PROCEEDINGS OF THE 1996 CONFERENCE. Anais. . . MIT Press, 1997.p.974–980.

Singh, S. P.; Jaakkola, T.; Jordan, M. I. Reinforcement Learning with Soft State Aggregation. In:Tesauro, G.; Touretzky, D.; Leen, T. (Ed.). Advances in Neural Information ProcessingSystems 7. [S.l.]: MIT Press, 1995. p.361–368.

Singh, S. P.; Sutton, R. S. Reinforcement Learning with Replacing Eligibility Traces. MachineLearning, [S.l.], v.22, n.1-3, p.123–158, 1996.

Smith, A. J. Applications of the self-organising map to reinforcement learning. NeuralNetworks, [S.l.], v.15, n.8–9, p.1107 – 1124, 2002.

Stone, P.; Sutton, R. S.; Kuhlmann, G. Reinforcement Learning for RoboCup-Soccer Keepaway.Adaptive Behavior, [S.l.], v.13, n.3, p.165–188, 2005.

Sutton, R. S. Learning to Predict by the Methods of Temporal Differences. Machine Learning,Hingham, MA, USA, v.3, n.1, p.9–44, Aug. 1988.

Sutton, R. S. Generalization in Reinforcement Learning: successful examples using sparsecoarse coding. In: Touretzky, D.; Mozer, M.; Hasselmo, M. (Ed.). Advances in NeuralInformation Processing Systems 8. [S.l.]: MIT Press, 1996. p.1038–1044.

Sutton, R. S.; Barto, A. G. Introduction to Reinforcement Learning. 1.ed. Cambridge, MA,USA: MIT Press, 1998.

Szepesvári, C. Algorithms for Reinforcement Learning. [S.l.]: Morgan & Claypool, 2010.

Tesauro, G. TD-Gammon, a Self-teaching Backgammon Program, Achieves Master-level Play.Neural Comput., Cambridge, MA, USA, v.6, n.2, p.215–219, Mar. 1994.

Vieira, D.; Adeodato, P.; Gonçalves, P. A Temporal Difference GNG-Based Approach for theState Space Quantization in Reinforcement Learning Environments. In: INTERNATIONALCONFERENCE ON TOOLS WITH ARTIFICIAL INTELLIGENCE (ICTAI), 25. Anais. . .[S.l.: s.n.], 2013. p.561–568.

Vieira, D.; Adeodato, P.; Goncalves, P. A Temporal Difference GNG-Based Algorithm That CanLearn to Control in Reinforcement Learning Environments. In: INTERNATIONALCONFERENCE ON MACHINE LEARNING AND APPLICATIONS (ICMLA), 12. Anais. . .[S.l.: s.n.], 2013. v.1, p.329–332.

Page 125: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

REFERÊNCIAS 124

Vieira, D. C. L.; Adeodato, P. J. L.; Gonçalves, P. M. Improving reinforcement learningalgorithms by the use of data mining techniques for feature and action selection. In:INTERNATIONAL CONFERENCE ON SYSTEMS MAN AND CYBERNETICS (SMC).Anais. . . [S.l.: s.n.], 2010. p.1863–1870.

Watkins, C. J. C. H. Learning from Delayed Rewards. 1989. Tese (Doutorado em Ciência daComputação) — King’s College, Cambridge, UK.

Weber, R.; Schek, H.-J.; Blott, S. A Quantitative Analysis and Performance Study forSimilarity-Search Methods in High-Dimensional Spaces. In: INTERNATIONALCONFERENCE ON VERY LARGE DATA BASES, 24., San Francisco, CA, USA.Proceedings. . . Morgan Kaufmann Publishers Inc., 1998. p.194–205. (VLDB ’98).

Whitehead, S.; Ballard, D. Learning to Perceive and Act by Trial and Error. Machine Learning,[S.l.], v.7, n.1, p.45–83, 1991.

Whiteson, S.; Taylor, M. E.; Stone, P. Adaptive Tile Coding for Value FunctionApproximation. [S.l.]: University of Texas at Austin, 2007. (AI-TR-07-339).

Widrow, B.; Gupta, N. K.; Maitra, S. Punish/Reward: learning with a critic in adaptive thresholdsystems. IEEE Transactions on Systems, Man and Cybernetics, [S.l.], v.3, n.5, p.455–465,Sept 1973.

Page 126: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

Apêndice

Page 127: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

126126126

AComplexidade dos Algoritmos

Considere o algoritmo da Figura A.1 utilizados pelos algoritmos TD(nλ)-GNG, TD-AVQe IGNG-Q para encontrar o nó ativo. Seja d o número de dimensões, a função dist executará emO(d). Como a função busca chama a função dist para cada nó, então a função busca executaráno tempo O(nd), onde n é o número de nós.

Considere o algoritmo da Figura A.2 utilizado pelo algoritmo TC para encontrar os c-tiles

ativos pelo estado s. Seja d o número de dimensões e c o número de tilings, uma vez que há doislaços de repetição aninhados nas linhas 2 e 3, o primeiro repetindo por c vezes o segundo que,por sua vez, repete a linha 3 d vezes, a função busca executará no tempo O(cd).

Considere o algoritmo da Figura A.3 utilizado pelo algoritmo DU para encontrar apartição ativa pelo estado s. Seja d o número de dimensões, a função busca possui apenas umlaço de repetição na linha 2 que repete d vezes a linha 4, sendo assim, esta função executará notempo O(d).

Considere o algoritmo da Figura A.4 utilizado pelos algoritmos TD(nλ)-GNG, TD-AVQ,IGNG-Q, TC e DU para atualizar a função valor. Seja r o número total de regiões que repre-sentam o espaço de estados e a o número de ações, uma vez que há dois laços de repetiçãoaninhados nas linhas 2 e 3, o primeiro repetindo por r vezes o segundo que, por sua vez, repeteas linhas 4 à 8 a vezes, a função atualização executará no tempo O(rd).

Page 128: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

127

1 Função busca(s):Entrada: estado atual s.Saída: nó w1 mais próximos de s.

2 d1 =∞;3 para todo nó ni faça4 d= dist(ni, s);5 se d < d1 então6 d1 = d;7 w1 = ni;

8 retorna w1;

9 Função dist(v1,v2):Entrada: vetores v1 e v2.Saída: distância euclidiana entre v1 e v2.

10 sum= 0;11 para todo dimensão d faça12 sum= sum+ (v1(d)−v2(d))2;

13 retorna√sum;

Figura A.1: Algoritmo para encontrar o nó mais próximo do sinal de entrada.

1 Função busca(c, o, t, s):Entrada: c tilings, deslocamentos o entre os tilings, tamanho t dos tiles e estado

atual s.Saída: os a tiles ativos.

2 para todo tiling c faça3 para todo dimensão d do estado s faça4 pd← floor((s(d)−o(d))/t(d));

5 ai← c(p);

6 retorna a;

Figura A.2: Algoritmo de busca pelos tiles ativos.

1 Função busca(k, t, s):Entrada: vetor k de regiões, tamanho t das regiões e estado atual s.Saída: região ativa.

2 para todo dimensão d do estado s faça3 pd← floor(s(d)/t(d));

4 retorna k(p);

Figura A.3: Algoritmo de busca pela região ativa.

Page 129: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

128

1 Procedimento atualização(δ,k,b):Entrada: erro TD δ, decaimento k e o indicativo de ação exploratória b.

2 para todo região ri faça3 para todo ação a faça4 Q(ri,a)←Q(ri,a) +αδe(ri,a);5 se b então6 e(ri,a)← 07 senão8 e(ri,a)← e(ri,a)k;

Figura A.4: Função atualização responsável pela atualização da função valor.

Page 130: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

129129129

BParâmetros Utilizados

Uma das tarefas do projetista é definir quais serão os valores dos parâmetros de umalgoritmo. Estes valores devem ser escolhidos cuidadosamente, pois influenciam diretamente noseu desempenho. Como não há formas teóricas para determinar qual o melhor ajuste, deve-seajustar seus valores experimentalmente, por meio de um projeto experimental (Jain, 1991). Paraacelerar este processo, optou-se pelo projeto experimental linear, iniciando a busca com valoresque são frequentemente encontrados na literatura.

Os parâmetros iniciais utilizados como ponto de partida para cada algoritmo são apre-sentados na Tabela B.1. Sutton (1996) realizou experimentos conduzidos de forma similarao proposto neste apêndice para encontrar os melhores parâmetros do algoritmo TC. Sendoassim, optou-se em utilizar os mesmos parâmetros (ver Tabela B.3) nos ambientes Mountain

Car e Puddle World. Nos demais ambientes, a busca pelos parâmetros foi realizada seguindo aestratégia descrita na próxima seção.

Page 131: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

130

Tabela B.1: Configuração dos parâmetros iniciais dos algoritmos TD(nλ)-GNG,TD-AVQ, TC, IGNG-Q e DU para os ambientes Mountain Car, Acrobot, Puddle World,

Slow Puddle World e Continuous Maze.

Algoritmo Ambiente α γ λ ε ew en amax c ρ θ ∆ β q N./Div. N.Til.

Puddle World 0,1 0,999 0,95 0 0,001 0,0001 300 0,15 0,2 – – – – – –Mountain Car 0,25 0,999 0,99 0 0,01 0,001 300 0,15 0,15 – – – – – –S. Puddle World 0,1 0,9999 0,95 0 0,001 0,0001 300 0,15 0,2 – – – – – –C. Maze 0,1 0,9999 0,95 0 0,001 0,0001 300 0,15 0,2 – – – – – –

TD(nλ)-GNG

Acrobot 0,1 0,999 0,95 0 0,001 0,0001 300 0,15 0,2 – – – – – –Puddle World 0,1 0,95 0,95 0,1 – – – – 0,2 10 – – – – –Mountain Car 0,1 0,95 0,95 0 – – – – 0,05 10 – – – – –S. Puddle World 0,1 0,95 0,95 0,1 – – – – 0,2 10 – – – – –C. Maze 0,1 0,95 0,95 0,1 – – – – 0,2 10 – – – – –

TD-AVQ

Acrobot 0,1 0,95 0,95 0 – – – – 0,05 10 – – – – –Puddle World 0,55 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 2 – –Mountain Car 0,55 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 2 – –S. Puddle World 0,55 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 2 – –C. Maze 0,55 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 2 – –

IGNG-Q

Acrobot 0,55 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 2 – –Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 20 –Mountain Car 0,5 1 0,9 0 – – – – – – – – – 8 –S. Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 20 –C. Maze 0,5 1 0,9 0,1 – – – – – – – – – 20 –

DU

Acrobot 0,5 1 0,9 0 – – – – – – – – – 20 –S. Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 9 9

TCC. Maze 0,5 1 0,9 0,1 – – – – – – – – – 9 9

Page 132: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

B.1. PARÂMETROS FINAIS 131

B.1 Parâmetros Finais

A condução dos experimentos se deu da seguinte forma. Com o objetivo de determinaros melhores parâmetros, seus valores foram fixados e cada parâmetro foi variado individual-mente. O desempenho de cada variação foi obtido calculando a média da soma do número depassos realizados durante os 40 episódios iniciais de cada uma das 30 repetições realizadas nosambientes de teste Mountain Car, Acrobot, Puddle World, Slow Puddle World e Continuous

Maze. Os números aleatórios utilizados para determinar os estados iniciais ou para determinaruma ação exploratória foram gerados igualmente para todas as variações dos parâmetros. Destaforma, foi possível obter uma estimativa mais confiável do desempenho para um determinadoparâmetro. Todo este processo foi repetido enquanto as variações gerassem melhores resultados.A experiência humana pode ser utilizada para obter melhores ajustes dos parâmetros. O episódioé reiniciado em um estado diferente se após dez mil passos o algoritmo não alcançar o estadometa nos ambientes Mountain Car, Acrobot e Puddle World, e após um milhão de passos nosambientes Slow Puddle World e Continuous Maze. A Tabela B.2 mostra o espaço de busca dosparâmetros dos algoritmos TD(nλ)-GNG, TD-AVQ, TC, IGNG-Q e DU.

O número de variações dos parâmetros por repetição foram 78, 58, 57, 71 e 50 para osmodelos TD(nλ)-GNG, TD-AVQ, TC, IGNG-Q e DU, respectivamente. Os melhores parâmetrospara estes algoritmos são apresentados na Tabela B.3. Nos ambientes Mountain Car e Puddle

World, os parâmetros para o algoritmo TC foram os mesmos que os utilizados por Sutton; Barto(1998); Sutton (1996); Konidaris; Osentoski; Thomas (2011).

Page 133: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

B.1. PARÂMETROS FINAIS 132

Tabela B.2: Espaço de busca dos parâmetros dos algoritmos TD(nλ)-GNG, TD-AVQ,TC, IGNG-Q e DU.

Algoritmo Parâmetro Mínimo Máximo Incrementoα 0,1 1 +0,05γ 0,95, 0,99, 0,995, 0,999, 0,9995, 0,9999λ 0,6 1 +0,05ε 0 0,3 +0,05ew 0,0001 0,1 ×10en 0,0001 0,1 ×10amax 10 500 +50c 0,01 0,5 +0,05

TD(nλ)-GNG

ρ 0,01 0,3 +0,05α 0,1 1 +0,05γ 0,6 1 +0,05λ 0,6 1 +0,05ε 0 0,3 +0,05θ 2 64 ×2

TD-AVQ

ρ 0,01 0,3 +0,05α 0,4 0,7 +0,05γ 0,6 1 +0,05λ 0,6 1 +0,05ε 0 0,3 +0,05ew 0,0001 0,1 ×10amax 10 500 +50∆ 0,8 1,2 +0,1q 5 40 +5

IGNG-Q

β 0,999, 0,9995, 0,9999, 0,99995, 0,99999α 0,1 1 +0,05γ 0,6 1 +0,05λ 0,6 1 +0,05ε 0 0,3 +0,05

DU

N./Div. 2 64 ×2α 0,1 1 +0,05γ 0,6 1 +0,05λ 0,6 0,99 +0,05ε 0 0,3 +0,05N.Til. 2 64 ×2

TC

N./Div. 2 64 ×2

Page 134: Davi Carnaúba de Lima Vieira - repositorio.ufpe.br Davi... · Continuous Maze, Slow Puddle World, Mountain Car e Acrobot, respectivamente. ... through the use of Fritzke’s self-organizing

B.1.

PAR

ÂM

ET

RO

SFIN

AIS

133

Tabela B.3: Melhores parâmetros para os algoritmos TD(nλ)-GNG, TD-AVQ, TC,IGNG-Q e DU para os ambientes Mountain Car, Acrobot e Puddle World.

Algoritmo Ambiente α γ λ ε ew en amax c ρ θ ∆ β q N.Div. N.Til.

Puddle World 0,7 0,995 0,8 0,01 0,001 0,0001 100 0,1 0,2 – – – – – –Mountain Car 0,25 0,999 0,99 0 0,01 0,001 300 0,15 0,15 – – – – – –S. Puddle World 0,1 0,9999 0,95 0,01 0,001 0,0001 300 0,15 0,2 – – – – – –C. Maze 0,5 0,9999 0,95 0,01 0,001 0,0001 300 0,15 0,2 – – – – – –

TD(nλ)-GNG

Acrobot 0,1 0,999 0,95 0 0,001 0,0001 100 0,15 0,2 – – – – – –Puddle World 0,3 1 0,8 0,1 – – – – 0,05 2 – – – – –Mountain Car 0,2 1 0,95 0 – – – – 0,05 32 – – – – –S. Puddle World 0,1 0,95 0,95 0,1 – – – – 0,1 15 – – – – –C. Maze 0,1 0,95 0,95 0,1 – – – – 0,1 15 – – – – –

TD-AVQ

Acrobot 0,15 1 0,95 0 – – – – 0,05 2 – – – – –Puddle World 0,5 1 0,95 0,2 0,001 – 50 – – – 1,2 0,9999 2 – –Mountain Car 0,85 1 0,95 0,2 0,05 – 10 – – – 1 0,9999 5 – –S. Puddle World 0,5 0,9 0,9 0,01 0,01 – 300 – – – 1 0,9999 5 – –C. Maze 0,5 0,9 0,9 0,01 0,01 – 50 – – – 1 0,9999 5 – –

IGNG-Q

Acrobot 0,55 0,9 0,9 0,01 0,05 – 50 – – – 1 0,9999 5 – –Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 20 –Mountain Car 0,5 1 0,9 0 – – – – – – – – – 8 –S. Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 20 –C. Maze 0,5 1 0,9 0,1 – – – – – – – – – 20 –

DU

Acrobot 0,5 1 0,9 0 – – – – – – – – – 10 –Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 5 5Mountain Car 0,5 1 0,9 0 – – – – – – – – – 9 9S. Puddle World 0,5 1 0,9 0,1 – – – – – – – – – 20 5C. Maze 0,5 1 0,9 0,1 – – – – – – – – – 20 5

TC

Acrobot 0,5 1 0,9 0 – – – – – – – – – 4 64