• Nenhum resultado encontrado

Emerson de Oliveira Antunes Samir Elias Hachem Kerbage

N/A
N/A
Protected

Academic year: 2021

Share "Emerson de Oliveira Antunes Samir Elias Hachem Kerbage"

Copied!
60
0
0

Texto

(1)

DEPARTAMENTO DE CIˆENCIA E TECNOLOGIA INSTITUTO MILITAR DE ENGENHARIA

Se¸ao de Engenharia de Computa¸ao / SE 8

Emerson de Oliveira Antunes Samir Elias Hachem Kerbage

Implementa¸c˜ao de heur´ısticas para a Liga Simulada RoboCup 2D

Rio de Janeiro 2011

(2)

Emerson de Oliveira Antunes Samir Elias Hachem Kerbage

Implementa¸ c˜ ao de heur´ ısticas para a Liga Simulada RoboCup 2D

Monografia de Projeto de Final de Curso ao Curso de Gradua¸c˜ao em Engenharia de Computa¸c˜ao.

Orientador:

Paulo Fernando Ferreira Rosa, PhD

Rio de Janeiro 2011

(3)

EMERSON DE OLIVEIRA ANTUNES SAMIR ELIAS HACHEM KERBAGE

IMPLEMENTAC¸ ˜AO DE HEUR´ISTICAS PARA A LIGA SIMULADA ROBOCUP 2D

Projeto de Final de Curso sob o t´ıtulo “Implementa¸ao de heur´ısticas para a Liga Simulada RoboCup 2D”, defendido por Emerson Oliveira Antunes e Samir Elias Hachem

Kerbage e aprovada em 2011, no Rio de Janeiro, Estado do Rio de Janeiro, pela banca examinadora constitu´ıda pelos professores:

Prof. Paulo Fernando Ferreira Rosa Orientador

Cap Wallace Anacleto Pinheiro Instituto Militar de Engenharia

Cap Julio Cesar Duarte Instituto Militar de Engenharia

(4)

Este exemplar ´e de propriedade do Instituto Militar de Engenharia, que poder´a inclu´ı- lo em base de dados, armazenar em computador, microfilmar ou adotar qualquer forma de arquivamento.

E permitida a men¸c˜´ ao, reprodu¸c˜ao parcial ou integral e a transmiss˜ao entre bibliotecas deste trabalho, sem modifica¸c˜ao de seu texto, em qualquer meio que esteja ou venha a ser fixado, para pesquisa acadˆemica, coment´arios e cita¸c˜oes, desde que sem finalidade comercial e que seja feita a referˆencia bibliogr´afica completa.

Os conceitos expressos neste trabalho s˜ao de responsabilidade do autor e do orientador.

006.3 Kerbage, Samir Elias Hachem.

A6361 Implementa¸c˜ao de heur´ısticas para a Liga Simulada RoboCup 2D. Antunes, Emerson de Oliveira; Kerbage, Samir Elias Hachem - Rio de Janeiro: Insituto Militar de Engenharia, 2011.

59 p.: il.

Projeto Fim de Curso – Instituto Militar de Enge- nharia – Rio de Janeiro, 2011.

1. Inteligˆencia Artificial. 2. Rob´otica Inteligente. 3.

Heur´ıstica. I Antunes, Emerson de Oliveira. II T´ıtulo III Instituto Militar de Engenharia

CDD 006.3

(5)

O Aprendizado por Refor¸co ´e uma t´ecnica muita conhecida para a solu¸c˜ao de pro- blemas quando o agente precisa atuar com sucesso em um local desconhecido por meio de tentativa e erro. Esta t´ecnica tem sido utilizada amplamente em robˆos autˆonomos em ambientes desestruturados, apesar do tempo que o agente leva para aprender. Este traba- lho apresenta o uso do Aprendizado por Refor¸co acelerado por heur´ıstica no dom´ınio da rob´otica m´ovel, utilizando a plataforma de simula¸c˜ao da RoboCup 2D. Esta plataforma vem sendo usada cada dia mais no meio cient´ıfico, pois possibilita fazer in´umeros experi- mentos com jogadores virtuais, sem sofrer com problemas que comumente s˜ao encontrados em sistemas reais, al´em de manterem sempre as mesmas caracter´ısticas de ambiente.

O principal problema abordado neste trabalho ´e desenvolver um time com Aprendi- zado por Refor¸co Acelerado por Heur´ıstica na RoboCup 2D. Tal time apresenta diversos desafios, sendo o maior deles o tamanho do ambiente, o que gera grande dificuldade para um agente aprender uma pol´ıtica de decis˜oes. Para solucionar este problema foram pro- postas formas de generalizar os estados, sem causar qualquer interferˆencia no aprendizado.

Foram realizados 18000 treinamentos com o time implementado e os resultados in- dicam que a convergˆencia desse m´etodo ´e lenta, indicando a necessidade de defini¸c˜ao de algumas diretrizes adicionais para o uso da aprendizagem por refor¸co no dom´ınio do fu- tebol de robˆos, como a implementa¸c˜ao de estrat´egias diferentes de acordo com a fun¸c˜ao que cada jogador assume, como as de atacante, zagueiro, meio de campo e goleiro.

Palavras-chave: Inteligˆencia Artificial, Rob´otica Inteligente, Aprendizado por Refor¸co, Heur´ıstica, Q-Learning, RoboCup 2D

(6)

needs to operate successfully in an unfamiliar place through trial and error. This technique has been widely used in autonomous robots in unstructured environments, despite the time that the agent takes to learn. This paper presents the use of Heuristic Accelerated Reinforcement Learning in the field of mobile robotics, using the simulation platform of RoboCup 2D. This platform is being used increasingly in the scientific community, because it makes possible to do many experiments with virtual players, without suffering from problems that are commonly found in real systems, while maintaining all the same features of the environment.

The main problem addressed in this work is to develop a Heuristic Accelerated Rein- forcement Learning Team in the RoboCup 2D competition. This team presents several challenges, the largest being the size of the environment, which creates great difficulty for an agent to learn a policy-making. To solve this problem, ways to generalize the states were proposed, without causing any interference in the learning process.

So far, 18000 trainings with the team were conducted and the results indicate that the convergence of this method is slow. This demonstrate the need to define some additional guidelines for applying the use of reinforcement learning in the field of robot soccer, like implementation of different strategies accordingly to the role that each player takes, such as attacker, defender, midfielder and goalkeeper.

Keywords: Artificial intelligence, Intelligent Robotics, Reinforcement Learning, Heu- ristic, Q-Learning, RoboCup 2D.

(7)

Lista de Figuras Lista de Tabelas

1 Introdu¸ao p. 12

1.1 Objetivos . . . . p. 13 2 Revis˜ao de Literatura e T´opicos Tutoriais p. 15 2.1 Aprendizagem . . . . p. 15 2.1.1 Caracter´ısticas dos ambientes de aprendizagem . . . . p. 15 2.1.2 Agentes Inteligentes . . . . p. 16 2.1.3 Processo Markoviano de Decis˜ao . . . . p. 17 2.1.4 Determina¸c˜ao de uma pol´ıtica ´otima . . . . p. 19 2.1.5 Aprendizado por Refor¸co . . . . p. 20 2.1.6 etodos de aprendizagem por refor¸co . . . . p. 21 2.1.7 O M´etodo de Diferen¸cas Temporais . . . . p. 21 2.1.8 Q-Learning . . . . p. 25 2.2 Acelera¸c˜ao da aprendizagem por refor¸co . . . . p. 26 2.2.1 Generaliza¸c˜ao espacial . . . . p. 27 2.2.2 Imita¸c˜ao . . . . p. 28 2.2.3 Heur´ıstica . . . . p. 28 2.2.4 A fun¸c˜ao heur´ıstica H . . . . p. 30 2.2.5 O algoritmo QLearning Acelerado por Heur´ısticas . . . . p. 32

(8)

2.3.3.1 O Simulador . . . . p. 37 2.3.3.2 O ambiente simulado . . . . p. 39 2.4 An´alise do time UvA Trilearn . . . . p. 40

3 Implementa¸ao p. 42

3.1 Modelagem da estrat´egia para o time . . . . p. 42 3.1.1 Discretiza¸c˜ao dos estados . . . . p. 42 3.1.2 Discretiza¸c˜ao das a¸c˜oes . . . . p. 43 3.1.3 Defini¸c˜ao dos refor¸cos . . . . p. 44 3.2 Implementa¸c˜ao da estrat´egia . . . . p. 44 3.2.1 Matriz de estados e a¸c˜oes . . . . p. 45 3.2.2 Cr´ıtico . . . . p. 45 3.2.2.1 An´alise do melhor instante para colhimento do refor¸co p. 46 3.3 Implementa¸c˜ao das Heur´ısticas . . . . p. 48 3.3.1 Escolha do melhor jogador para fazer o passe . . . . p. 49 3.3.2 Posicionamento dos jogadores no campo . . . . p. 49 3.3.3 Chutar a gol sempre que houver condi¸c˜oes favor´aveis . . . . p. 50 3.3.4 Defini¸c˜ao da melhor trajet´oria do chute `a gol . . . . p. 50 3.3.5 Otimiza¸c˜ao do tiro de meta . . . . p. 50 4 Treinamentos e Resultados Experimentais p. 52 4.1 Q-Learning sem Heur´ıstica . . . . p. 53 4.2 Q-Learning com Heur´ısticas - 11 jogadores . . . . p. 54

(9)

4.4 Compara¸c˜ao dos resultados . . . . p. 55

5 Considera¸oes Finais p. 57

5.1 Contribui¸c˜oes . . . . p. 57 5.2 Li¸c˜oes aprendidas . . . . p. 57 5.3 Trabalhos Futuros . . . . p. 58

Referˆencias p. 59

(10)

1 Diagrama esquem´atico de um agente reativo simples (RUSSEL; NORVIG,

2004). . . . p. 17 2 Agente baseado na utilidade (RUSSEL; NORVIG, 2004). . . . p. 17 3 Um modelo geral de agentes com aprendizagem (RUSSEL; NORVIG, 2004). p. 18 4 Funcionamento de um agente com aprendizado por refor¸co. . . . p. 21 5 Uma partida de simula¸c˜ao 2D vista do SoccerMonitor. . . . . p. 37 6 Arquitetura do Sistema de Simula¸c˜ao SoccerServer (REIS, 2003) . . . . p. 38 7 Localiza¸c˜ao e nomes dos marcos de orienta¸c˜ao no SoccerServer (NODA et

al., 1998) . . . . p. 39 8 Arquitetura de camadas do time UVA Trilearn. (BOER; KOK, 2002) . . p. 41 9 Representa¸c˜ao da localiza¸c˜ao do ´ındice (i0) da chave de estados e deter-

mina¸c˜ao do ´ındice (i1) da chave de estados. . . . p. 43 10 Arquitetura de camadas do time . . . . p. 46 11 Histograma do n´umero de ciclos transcorridos a partir da ´ultima a¸c˜ao

realizada at´e fazer um gol. . . . p. 47 12 Histograma do n´umero de ciclos transcorridos a partir da ´ultima a¸c˜ao

realizada at´e sofrer um gol. . . . p. 47 13 Boxplot do n´umero de ciclos transcorridos a partir da ´ultima a¸c˜ao reali-

zada at´e fazer um gol . . . . p. 48 14 Boxplot do n´umero de ciclos transcorridos a partir da ´ultima a¸c˜ao reali-

zada at´e sofrer um gol . . . . p. 48 15 Histograma do n´umero de ciclos transcorridos a partir do ´ultimo toque

realizado at´e a constata¸c˜ao da manuten¸c˜ao ou perda da posse de bola. . p. 49

(11)

17 Histograma do n´umero de ciclos transcorridos a partir do ´ultimo chute

realizado at´e a constata¸c˜ao da manuten¸c˜ao ou perda da posse de bola. . p. 50 18 Escolha da melhor trajet´oria de chute `a gol baseado nos ˆangulos entre o

jogador, a bola e as traves . . . . p. 51 19 Resultado do saldo de gols para o algoritmo Q-Learning sem heur´ısticas p. 53 20 Resultado do saldo de gols para o algoritmo HAQL em uma partida com

11 jogarores em cada time . . . . p. 54 21 Resultado do saldo de gols para o algoritmo HAQL em uma partida com

5 jogarores em cada time . . . . p. 55 22 Compara¸c˜ao do resultado das se¸c˜oes de treinamento com e sem Heur´ısticas p. 56

(12)

1 Diferen¸cas entre as caracter´ısticas dos dom´ınios do RoboCup e Xadrez.

(REIS, 2003) . . . . p. 35 2 Chave de estados . . . . p. 42 3 Representa¸ao dos ˆangulos . . . . p. 43 4 Representa¸ao das distˆancias . . . . p. 43 5 Refor¸cos com avan¸co em dire¸ao ao gol advers´ario. . . . p. 44 6 Refor¸cos sem avan¸co em dire¸ao ao gol advers´ario . . . . p. 44

(13)

1 Introdu¸ c˜ ao

O interesse de pesquisa da comunidade de Inteligˆencia Artificial em Sistemas Multi- agentes tem gerado o crescimento da utiliza¸c˜ao de t´ecnicas de agentes nas mais diversas aplica¸c˜oes em que esses sistemas podem ser usados, como por exemplo: jogos de compu- tadores, interfaces adaptativas, simula¸c˜ao e controle de processos industriais. O futebol de robˆos ´e uma iniciativa de um grupo internacional de pesquisadores em Inteligˆencia Artificial e Rob´otica Inteligente, a RoboCup Federation, que prop˜oe um problema padr˜ao a ser solucionado: uma partida de futebol de robˆos. A RoboCup ´e uma tentativa de estimular a ´area de IA (Inteligˆencia Artificial) e, principalmente de Sistemas Multiagen- tes por promover um problema padr˜ao onde uma ampla cadeia de tecnologias podem ser integradas, examinadas e comparadas. A utiliza¸c˜ao do ambiente da RoboCup 2D para simula¸c˜ao de uma partida de futebol (simulador Soccer Server) permite a avalia¸c˜ao de diferentes t´ecnicas de Sistemas Multiagentes como planejamento de estrat´egias, conhe- cimento em tempo real, colabora¸c˜ao de agentes, princ´ıpios de agentes autˆonomos, entre outros, e estimula as pesquisas, investiga¸c˜oes e testes que possibilitem a constru¸c˜ao gra- dativa de agentes avan¸cados. A Robocup possui trˆes categorias, duas delas disputadas entre times de robˆos reais de pequeno e m´edio porte e uma terceira categoria na qual as partidas s˜ao disputadas em um simulador, o Soccer Server. Esta ´ultima ser´a o foco de nosso estudo. A Robocup 2D foi inicialmente proposta para ser um meio de divulga¸c˜ao da rob´otica e da pesquisa em inteligˆencia artificial, e fornecer meios para a avalia¸c˜ao de arias teorias, algoritmos e arquiteturas, servindo tamb´em como uma ferramenta para a integra¸c˜ao e estudos de como v´arias tecnologias podem trabalhar em conjunto (BOER;

KOK, 2002). Esta competi¸c˜ao deu oportunidade aos pesquisadores trabalharem nas mais variadas ´areas da inteligˆencia artificial, como por exemplo, em sistemas multiagentes, es- trat´egia, aprendizado, vis˜ao, redes neurais, controle e em muitas outras, pois a cria¸c˜ao de times para o Robocup vai al´em da simples integra¸c˜ao da Inteligˆencia Artificial. Dentre as aplica¸c˜oes dos estudos envolvidos na Robocup, podemos destacar:

Roteamento de pacotes de rede;

(14)

Coordena¸c˜ao de Ve´ıculos n˜ao tripulados;

Simula¸c˜ao de ambientes desestruturados.

Atualmente, o interesse pelo estudo da rob´otica e inteligˆencia artificial tem sido incenti- vado pelos campeonatos criados pela RoboCup, envolvendo estudantes do mundo todo.

Um pr´e-requisito para participa¸c˜ao em uma competi¸c˜ao na modalidade de simula¸c˜ao 2D de futebol ´e a disponibiliza¸c˜ao do c´odigo fonte do time participante. Portanto, a par- tir do c´odigo fonte do time UVA Trilearn (BOER; KOK, 2002) com implementa¸c˜oes de ecnicas de Aprendizado por Refor¸co (AR) j´a efetuadas em trabalho de Inicia¸c˜ao `a Pes- quisa, ´e que iremos desenvolver este trabalho, adicionando em seu c´odigo mais estrat´egias de AR e heur´ısticas, com o intuito de acelerar o aprendizado e melhorar o desempenho dos jogadores. Quando se deseja solucionar uma variedade de problemas e quando n˜ao existem modelos dispon´ıveis a priori, o Aprendizado por Refor¸co ´e uma t´ecnica muito atraente, pois o agente ir´a aprender a cumprir uma fun¸c˜ao de maneira correta em um ambiente desconhecido atrav´es de tentativa e erro. No Aprendizado por Refor¸co, o agente aprende por meio da intera¸c˜ao direta entre o agente e o ambiente, e das recompensas recebidas. Estas recompensas s˜ao dadas na forma de refor¸cos positivos e negativos, que ao usados para sinalizar ao agente se ele est´a realizando as a¸c˜oes corretas ou n˜ao. A tarefa de aprendizagem por refor¸co consiste em usar recompensas observadas para apren- der uma pol´ıtica ´otima (ou quase ´otima) para o ambiente. Em uma plataforma de robˆos autˆonomos cooperativos (e.g., o futebol de robˆos), o programa pode ser informado quando ganhou ou perdeu, e pode usar essa informa¸c˜ao para aprender uma fun¸c˜ao de avalia¸c˜ao que forne¸ca estimativas razoavelmente precisas da probabilidade de ganhar a partir de qualquer posi¸c˜ao dada. Apesar de o aprendizagem por refor¸co ser muito indicado como ecnica de aprendizagem no ambiente de futebol de robˆos, ele apresenta uma deficiˆencia que ´e a lentid˜ao do aprendizado. ´E na tentativa de solucionar este problema que se torna importante o uso de heur´ısticas visando aceler´a-lo.

1.1 Objetivos

Este projeto tem por objetivo a implementa¸c˜ao de heur´ısticas baseadas no uso de ecnicas de aprendizado por refor¸co no dom´ınio da rob´otica m´ovel, utilizando a plata-

(15)

forma padr˜ao de simula¸c˜ao da Liga Simulada 2D da RoboCup. O objetivo espec´ıfico desta pesquisa consiste na participa¸c˜ao de competi¸c˜oes locais, nacionais e internacionais de futebol de robˆos. Esta plataforma vem sendo usada cada dia mais no meio cient´ıfico por possibilitar a realiza¸c˜ao de in´umeros experimentos com jogadores virtuais, sem sofrer com problemas que comumente s˜ao encontrados em sistemas reais, al´em de manter sempre as mesmas caracter´ısticas de ambiente. Devido `a complexidade que envolve a cria¸c˜ao de todos os componentes de um time inteiro, como camada de comunica¸c˜ao e modelagem do mundo, utilizamos como base o time da equipe UvA Trilearn, desenvolvido como trabalho de mestrado da universidade de Amsterdam, para focar o estudo na implementa¸c˜ao de um sistema onde os agentes devem aprender a agir de acordo com a sua posi¸c˜ao no campo, a posi¸c˜ao da bola e dos oponentes. Neste trabalho ´e utilizado o algoritmo Q-Learning, ecnica de aprendizado n˜ao supervisionado na qual um agente sem conhecimentos pr´evios aprende por meio de intera¸c˜oes com o ambiente, recebendo recompensas por suas a¸c˜oes e assim descobrindo a pol´ıtica ´otima para a resolu¸c˜ao de um determinado problema. E para tornar essa descoberta mais r´apida empregam-se diversas heur´ısticas sobre as estrat´egias de aprendizado. O Q-Learning foi empregado por ser um dos mais conhecidos algoritmos de Aprendizado por Refor¸co e por j´a ter sido aplicado com sucesso em uma grande va- riedade de dom´ınios. Neste trabalho tamb´em ´e aplicada a t´ecnica explora¸c˜ao aleat´oria -Greedy para que, durante o treinamento, o agente possa explorar com frequˆencia todos os estados para que o treinamento seja mais efetivo.

(16)

2 Revis˜ ao de Literatura e T´ opicos Tutoriais

2.1 Aprendizagem

Em IA existe um campo chamado de Aprendizado de M´aquina (Machine Learning

ML) que busca a cria¸c˜ao de programas de computador capazes de aprender automa- ticamente com est´ımulos externos de ambientes diversos, baseados em experiˆencias. Em (BIANCHI, 2001) encontramos duas classifica¸c˜oes do aprendizado de m´aquina, que levam em considera¸c˜ao a forma na qual o agente interage com o ambiente em que est´a atuando com o intuito de aprender, s˜ao elas: supervisionado, semi-supervisionado e n˜ao supervisi- onado.

No aprendizado supervisionado o agente ´e guiado por um supervisor que o informa sobre o seu desempenho, forncecendo-lhe portanto, informa¸c˜oes a cerca dos resultados esperados para suas a¸c˜oes.

No Aprendizado por Refor¸co n˜ao existem exemplos de entrada, nem a especifica¸c˜ao das sa´ıdas. Nele o aprendizado acontece a partir da intera¸c˜ao do agente aprendiz com o ambiente em que est´a inserido, o qual ir´a responder `as a¸c˜oes do agente, retornando um refor¸co, tamb´em denominado de recompensa. A tarefa do agente ´e aprender um mapeamento das diferentes respostas do ambiente em rela¸c˜ao `as diferentes a¸c˜oes que esse agente venha a executar, buscando maximizar as recompensas recebidas a cada intera¸c˜ao com o ambiente, acumuladas ao longo do tempo.

2.1.1 Caracter´ısticas dos ambientes de aprendizagem

Ambientes possuem diversas caracter´ısticas que definem a maneira que esse ambiente pode ter seu estado alterado e como o mesmo reage `as a¸c˜oes executadas pelo agente.

Para que um agente possa interagir com o ambiente em que est´a inserido, primeiro ele

(17)

tem que observar esse ambiente. Um ambiente onde o agente ´e capaz de observar todas as informa¸c˜oes relevantes para a escolha da a¸c˜ao a ser executada, ´e denominado ambiente completamente observ´avel. Esses ambientes completamente observ´aveis s˜ao ideais, pois ao ´e necess´ario que o agente armazene informa¸c˜oes sobre o ambiente ao longo do tempo para ser capaz de selecionar a a¸c˜ao a ser executada.

Entretanto, a presen¸ca de ru´ıdo e a imprecis˜ao na leitura de sensores podem impossi- bilitar que o agente seja capaz de observar todas as vari´aveis do ambiente que definem um estado. Pode acontecer, ainda, que um agente n˜ao seja capaz de observar todas as vari´aveis que definem um estado. Logo, o ambiente ´e denominado parcialmente observ´avel.

Depois de observar o estado atual em que se encontra e selecionar a a¸c˜ao a ser exe- cutada, ´e conveniente que o agente possa de determinar o estado futuro do ambiente.

Quando ´e poss´ıvel determinar o estado futuro apenas com a observa¸c˜ao do estado atual e com a informa¸c˜ao de qual a¸c˜ao ser´a executada pelo agente, o ambiente ´e denominado determin´ıstico. Caso apenas as informa¸c˜oes de estado atual e a¸c˜ao a ser executada pelo agente n˜ao sejam suficientes para determinar o estado futuro, esse ambiente ´e denominado ao-determin´ıstico.

Quando se trata da mudan¸ca de estados de um ambiente, caso seu estado seja alterado apenas pela execu¸c˜ao da a¸c˜ao selecionada pelo agente, ent˜ao ´e denominado ambiente est´atico. Do contr´ario, quando o estado do ambiente pode sofrer altera¸c˜oes enquanto o agente est´a selecionando qual a¸c˜ao deve ser executada, esse ambiente ´e denominado dinˆamico.

2.1.2 Agentes Inteligentes

Agente ´e o elemento b´asico da IA. ´E ele quem ir´a perceber e agir num ambiente, atrav´es de seus sensores e atuadores. Mas para decidir qual a¸c˜ao tomar sob determinada circunstˆancia ´e necess´ario um programa que implemente sua fun¸c˜ao de agente. Existem alguns tipos de programas de agentes, mas neste trabalho nos restringiremos aos agentes reativos, baseados na utilidade e com aprendizagem.

O tipo mais simples de agente ´e o agente reativo simples. Esses agentes selecionam a¸c˜oes com base na percep¸c˜ao atual, ignorando o restante do hist´orico de percep¸c˜oes. S˜ao, portanto agentes com inteligˆencia limitada e tem sua estrutura ilustrada na Figura 1 .

a os agentes baseados na utilidade procuram tomar suas decis˜oes segundo a¸c˜oes que lhe s˜ao mais ´uteis, guiados por fun¸c˜oes de utilidade que mapeiam os sentidos captados do

(18)

Figura 1: Diagrama esquem´atico de um agente reativo simples (RUSSEL; NORVIG, 2004).

ambiente em um n´umero real. Suas estruturas s˜ao mostradas na Figura 2 .

Figura 2: Agente baseado na utilidade (RUSSEL; NORVIG, 2004).

Os agentes com aprendizagem n˜ao s˜ao b´asicos como os demais e sim utilizados como evolu¸c˜ao dos outros tipos, ou seja, os demais tipos podem evoluir e passar a trabalhar com aprendizado se incorporarem alguns elementos, tais como cr´ıtico, de aprendizado e gerador de problemas.

Nesse trabalho a t´ecnica de aprendizado por refor¸co ´e usada para implementa¸c˜ao desses agentes inteligentes, dado a complexidade do ambiente (parcialmente observ´avel, ao determin´ıstico e dinˆamico) na liga simulada 2D e a impossibilidade de emprego de um supervisor para orientar o agente nas tomadas de decis˜ao.

2.1.3 Processo Markoviano de Decis˜ao

Uma das maneiras de formalizar um agente de AR ´e atrav´es do Processo Markoviano de Decis˜ao (Markov Decision Process - MDP), descrito em (RUSSEL; NORVIG, 2004). Uti- lizando o MDP ´e poss´ıvel modelar matematicamente um agente de AR, isto ´e, definir as

(19)

Figura 3: Um modelo geral de agentes com aprendizagem (RUSSEL; NORVIG, 2004).

fun¸c˜oes matem´aticas para os componentes de um agente de AR.

A propriedade de Markov define que as transi¸c˜oes de estados s˜ao independentes do hist´orico de estados visitados e a¸c˜oes executadas anteriormente pelo agente.

Um MDP ´e definido da seguinte maneira:

Um conjunto finito de estados S;

Um conjunto finito de a¸c˜oesA;

Uma fun¸c˜ao recompensaR :S×AR ;

Uma fun¸c˜ao de transi¸c˜ao de estados T : S×A Π(S) , onde Π(S) ´e um mapea- mento da transi¸c˜ao de estados em probabilidades.

As fun¸c˜oes de recompensa e transi¸c˜ao de estados s˜ao definidas de acordo com as propriedades do ambiente, representando um modelo desse ambiente.

Um agente de AR ´e composto por quatro componentes: uma pol´ıtica, uma fun¸c˜ao de recompensa, uma fun¸c˜ao valor e uma fun¸c˜ao de transi¸c˜ao de estados.

A pol´ıtica ´e respons´avel por selecionar a a¸c˜ao a ser executada, dependendo da situa¸c˜ao em que o agente se encontra, para que uma meta seja alcan¸cada. Seja qual for o estado inicial, essa pol´ıtica deve indicar uma seq¨encia de a¸c˜oes para se chegar ao objetivo, sendo essa seq¨encia a que maximiza o ganho de recompensas acumuladas ao longo do tempo at´e um estado terminal ou at´e que um crit´erio de parada seja atingido. Uma pol´ıtica que maximiza esse ganho de recompensas acumuladas ´e tida como uma pol´ıtica ´otima.

Uma pol´ıtica pode determinar uma seq¨encia de a¸c˜oes que n˜ao alcance o objetivo, ou

(20)

de recompensa deve retornar um valor que representa, numericamente, uma puni¸c˜ao ou uma gratifica¸c˜ao para cada poss´ıvel a¸c˜ao a ser executada em cada um dos poss´ıveis estados.

Enquanto a fun¸c˜ao recompensa representa uma resposta imediata do ambiente `a a¸c˜ao executada pelo agente, a fun¸c˜ao valor representa, para cada a¸c˜ao poss´ıvel a ser executada em determinado estado, o valor m´aximo de recompensa acumulada que pode ser recebida ao longo do tempo, at´e que um estado terminal seja atingido.

Por fim, a fun¸c˜ao de transi¸c˜ao de estados ´e capaz de retornar o estado futuro, seja qual for o estado atual e a a¸c˜ao executada. Essa fun¸c˜ao de transi¸c˜ao de estados depende das propriedades do ambiente no qual o agente de AR est´a inserido.

Em um ambiente determin´ıstico, a sele¸c˜ao de uma a¸c˜ao at A em um estadost S resulta sempre no mesmo estado futuro st+1 S e a transi¸c˜ao T(st, at, st+1) ocorre com probabilidade 1. Para ambientes n˜ao-determin´ısticos, a sele¸c˜ao da a¸c˜aoat A no estado stS pode resultar em diferentes estados futuros e a transi¸c˜aoT(st, at, st+1) ´e represen- tada por uma distribui¸c˜ao de probabilidades que define os efeitos de cada a¸c˜aoat sobre o conjunto de estados S, que pode ser expressa como a probabilidade de alcan¸car o estado st+1, dado o estado atual st e considerando que a a¸c˜aoat seja executada, P(st+1|st, at) .

2.1.4 Determina¸c˜ao de uma pol´ıtica ´otima

Com o agente de AR modelado por um MDP, admitindo que as fun¸c˜oes de recom- pensa e transi¸c˜ao de estados s˜ao conhecidas e o ambiente seja determin´ıstico, ´e poss´ıvel determinar uma pol´ıtica ´otimaπ :S A , para selecionar a pr´oxima a¸c˜aoaA quando observado o estados S, ou seja,π(s) =a .

Pode-se definir o valor acumulado Vπ(st), que utiliza uma pol´ıtica arbitr´aria π , a partir de um estado inicialst, como mostrado na equa¸c˜ao 2.1:

Vπ(st) =

X

i=0

γirt+i (2.1)

onde:

rt+i ´e a seq¨encia de recompensas recebidas a partir do estado st, utilizando a

(21)

pol´ıtica π para selecionar a¸c˜oes;

γ ´e um fator de desconto que determina o quanto as recompensas futuras ser˜ao consideradas, admitindo o intervalo 0γ <1.

Para que uma pol´ıtica ´otima, denominada π, seja determinada, a tarefa do agente de AR ´e aprender uma pol´ıtica π que maximize o valor acumulado Vπ(s), para qualquer estados S, como mostrado na equa¸c˜ao 2.2:

π argπmaxVπ(s),∀sS (2.2)

Dessa forma, denomina-se V(s) como sendo o valor acumulado ´otimo, aquele que resulta de uma pol´ıtica ´otimaπ .

2.1.5 Aprendizado por Refor¸co

No Aprendizado por Refor¸co, um agente sem conhecimentos pr´evios aprende por meio de intera¸c˜oes com o ambiente, recebendo recompensas por suas a¸c˜oes e assim descobrindo a pol´ıtica ´otima para a resolu¸c˜ao de um determinado problema. A suposi¸c˜ao principal deste m´etodo ´e a existˆencia de um agente que pode aprender a escolher suas a¸c˜oes que resultar˜ao em um melhor resultado futuro na realiza¸c˜ao de uma tarefa.

Em uma grande variedade de dom´ınios complexos, nos quais n˜ao se conhece a solu¸c˜ao de um problema, a op¸c˜ao pelo uso do Aprendizado por Refor¸co pode ser ´util (JUNIOR, 2007). Hoje em dia ele ´e utilizado nas mais diversas ´areas como jogos, navega¸c˜ao autˆonoma de robˆos, controle de tr´afego, entre outras.

O Aprendizado por Refor¸co ´e uma t´ecnica de aprendizado n˜ao supervisionado devido

`

a n˜ao existˆencia de uma representa¸c˜ao de pares de entrada e de sa´ıda. Para cada movi- menta¸c˜ao do agente n˜ao ´e fornecida nenhuma informa¸c˜ao externa que ajude na tomada de suas decis˜oes, tirando aquela que ele mesmo percebe da sua intera¸c˜ao com o ambiente.

O Aprendizado por Refor¸co funciona da seguinte maneira: em um ambiente, a cada intervalo de tempo o agente executa uma a¸c˜aoat. Esta a¸c˜ao ´e determinada pela pol´ıtica a aprendida e faz o agente ir para o estado st+1 e tendo em vista a recompensarst,at que ir´a ganhar. A recompensa pode ser dada por valores positivos ou negativos, indicando a correta ou incorreta persegui¸c˜ao do objetivo, respectivamente. A figura 4 apresenta um esbo¸co do funcionamento de um agente no Aprendizado por Refor¸co.

Seguindo este ciclo de funcionamento, o agente poder aprender uma pol´ıtica ´otima

(22)

Figura 4: Funcionamento de um agente com aprendizado por refor¸co.

para o problema, que tem o intuito de maximizar a soma das recompensas que foram recebidas durante o processo de aprendizado do agente.

2.1.6 M´etodos de aprendizagem por refor¸co

Segundo (MARTINS, 2007), existem trˆes classes de m´etodos para resolver o problema de AR: programa¸c˜ao dinˆamica, m´etodos de Monte Carlo e m´etodos de diferen¸cas temporais.

Os m´etodos de programa¸c˜ao dinˆamica tˆem uma base matem´atica consistente, embora necessitem de um modelo completo do ambiente, ou seja, o conhecimento das fun¸c˜oes de recompensa e transi¸c˜ao de estados.

etodos de Monte Carlo s˜ao conceitualmente simples e n˜ao requerem um modelo de ambiente, mas n˜ao s˜ao apropriados para computa¸c˜ao iterativa, onde uma pol´ıtica ´e aprendida passo a passo, enquanto os m´etodos de diferen¸cas temporais n˜ao requerem um modelo de ambiente e s˜ao, essencialmente, m´etodos iterativos.

A seguir apresentamos os algoritmos fundamentais para a compreens˜ao desse trabalho.

2.1.7 O M´etodo de Diferen¸cas Temporais

O M´etodo de Diferen¸cas Temporais (TD) ´e fundamentado por uma base matem´atica consistente. Esse m´etodo calcula, de forma iterativa, uma estimativaVπ do valor acumu- ladoVπ, selecionando as a¸c˜oes seguindo uma pol´ıticaπ . O M´etodo TD exige apenas que o pr´oximo passo st+1 seja observado para atualizar a estimativa Vπ , sem a necessidade de um modelo do ambiente. A regra de atualiza¸c˜ao da estimativaVπ do M´etodo TD mais simples, conhecido por TD(0), acontece de acordo com as equa¸c˜oes 2.3 e 2.4:

(23)

Vπt+1(st)Vπt(st) +αtδt0 (2.3) δt0 =rt+γVπt(st+1)Vπt(st) (2.4) Onde:

st´e o estado atual;

st+1 ´e o estado futuro;

Vπt ´e a estimativa atual do valor acumulado Vπ na itera¸c˜ao t;

Vπt+1 ´e a estimativa futura do valor acumulado Vπ na itera¸c˜aot+ 1;

αt´e a taxa de aprendizado na itera¸c˜aot, sendo 0< α1;

δt0 ´e chamado de diferen¸ca temporal, ou erro TD(0), na itera¸c˜ao t, que representa uma estimativa da diferen¸ca entre a estimativa de valor atual Vπt(st) e o valor acumulado esperado rt+γVπt(st+1) ;

rt ´e a recompensa recebida na itera¸c˜aot, quando uma a¸c˜aoat, selecionada a partir da pol´ıtica π , ´e executada no estado st, atingindo o estado st+1;

γ ´e um fator de desconto que determina o quanto as recompensas futuras ser˜ao consideradas, admitindo o intervalo 0γ <1.

O algoritmo 1 ´e o TD(0) que se encarrega de calcular a estimativa Vπ . Para todo estado s, inicialize Vπ(s) com zero

Observe o estado atual st repita

Selecione uma a¸c˜aoat de acordo com a pol´ıticaπ Receba a recompensa imediata rt

Observe o novo estado st+1

Compute o erro TD(0) conforme a equa¸c˜ao 2.4

Atualize a estimativa do valor acumulado Vπ conforme a equa¸c˜ao 2.3 stst+1

at´e que algum crit´erio de parada seja atingido;

Algoritmo 1: Algoritmo TD(0) (MARTINS, 2007)

As equa¸c˜oes 2.3 e 2.4 mostram que a estimativa futura Vπt+1 ´e atualizada gradual- mente, sendo ponderada com a estimativa atual Vπt atrav´es da taxa de aprendizado α.

Em ambientes determin´ısticos, o valor 1 ´e atribu´ıdo a α, o erro TD(0) δ0 ´e calculado e

(24)

a taxa de aprendizadoα <1 , todas as itera¸c˜oes anteriores s˜ao consideradas para calcular a estimativa de valor acumulado Vπ.

Segundo (MARTINS, 2007), a taxa de aprendizado α deve decair ao longo do tempo para satisfazer duas condi¸c˜oes de convergˆencia de algoritmos iterativos utilizados em am- bientes n˜ao determin´ısticos.

Uma maneira de se obter uma taxa de aprendizado α que decai ao longo do tempo ´e atrav´es da equa¸c˜ao 2.5:

αt= 1

1 +visitast(s) (2.5)

Onde visitast(s) ´e o n´umero de visitas ocorridas ao estado s at´e a itera¸c˜aot.

Pode-se expandir o M´etodo TD(0), que calcula a diferen¸ca ap´os uma itera¸c˜ao obser- vando o estado futuro st+1, para uma formula¸c˜ao mais geral que considera a influˆencia das diferen¸cas temporais obtidas em n estados futuros `a frente, sendo n o n´umero de itera¸c˜oes. A regra de atualiza¸c˜ao para calcular a estimativaVπ, mostrada na equa¸c˜ao 2.6,

´e muito similar `a regra da equa¸c˜ao 2.3 :

Vπt+1(st)Vπt(st) +αtδtn (2.6) No entanto, a diferen¸ca temporal δnt ´e definida para considerar os erros TD(0) dos estados futuros,n itera¸c˜oes `a frente, conforme a equa¸c˜ao 2.7 :

δtn=δ0t +γδ0t+1+γ2δt+20 +γ3δt+30 ...=δ0t +

X

n=1

γnδt+n0 (2.7) A partir da defini¸c˜ao da diferen¸ca temporal δn , (MARTINS, 2007) apresenta uma formula¸c˜ao que desconta a influˆencia das diferen¸cas temporais futuras independente do fator γ, utilizando um fator λ , admitindo o intervalo 0 λ 1, originando o M´etodo TD(λ). Enquanto o fator γ representa o desconto de recompensas futuras, o fator λ representa o desconto das diferen¸cas temporais futuras. Dessa forma, ´e poss´ıvel definir o erro TD(λ)δλ de acordo com a equa¸c˜ao 2.8:

δtλ =δt0+γλδt+10 +γ2λ2δt+20 +γ3λ3δt+30 ...=δ0t +

X

n=1

(γλ)nδt+n0 (2.8)

(25)

Al´em disso ´e poss´ıvel determinar o erro DT(λ)δtλ recursivamente, conforme a equa¸c˜ao 2.9:

δtλ =δt0+γλδλt+1 (2.9)

A regra de atualiza¸c˜ao da estimativaVπ que utiliza o erro TD(λ)δλ, que por sua vez considera as recompensas futuras e as diferen¸cas temporais futuras, descontadas ao longo do tempo pelos fatoresγ eλ respectivamente, ´e definida, ent˜ao, conforme a equa¸c˜ao 2.10:

Vπt+1(st)Vπt(st) +αtδλt (2.10) Entretanto, n˜ao ´e poss´ıvel implementar diretamente a regra de atualiza¸c˜ao da equa¸c˜ao 2.10, pois ela ´e n˜ao causal, o que significa que as diferen¸cas temporais futuras δt+10 , δt+20 , δt+30 , ..., δt+n0 ao utilizadas para atualizar a estimativa Vπt+1 na itera¸c˜ao t. Para que o alculo das atualiza¸c˜oes possa ser feito iterativamente, utiliza-se o rastro de elegibilidade.

Esse rastro de elegibilidade ´e uma vari´avel de mem´oria associada a cada estado sS. O rastro de elegibilidade pode ser definido por acumula¸c˜ao (accumulating trace), conforme a equa¸c˜ao 2.11, ou ainda, por substitui¸c˜ao (replacing trace), conforme a equa¸c˜ao 2.12:

et(s) =

λγet−1(s) se s6=st λγet−1(s) + 1 se s=st

(2.11)

et(s) =

λγet−1(s) se s6=st

1 se s=st (2.12)

O rastro de elegibilidade armazena a informa¸c˜ao sobre quais estados foram visitados recentemente. Determina-se o qu˜ao recente um estado s foi visitado atrav´es de sua ele- gibilidade e(s), que decai em γλ a cada itera¸c˜ao. Dessa forma, a atualiza¸c˜ao de Vπt+1, calculada pelo erro DT(0)λ0t , ´e propagada proporcionalmente aos estados recentemente visitados, conforme mostra a equa¸c˜ao 2.13, atrav´es do rastro de elegibilidade et(s):

Vπt+1(s)Vπt(s) +αtδt0et(s),∀sS (2.13) O algoritmo TD(λ) ´e apresentado a seguir:

(26)

Receba a recompensa imediata rt

Observe o novo estado st+1

Compute o erro TD(0) conforme a equa¸c˜ao 2.4

Atualize o rastro de elegibilidade conforme uma das regras 2.11 ou 2.12 Para todo estado s:

Atualize a estimativa do valor acumuladoVπ(s) conforme a equa¸c˜ao 2.13

Compute o decaimento do rastro e(s)γλe(s) stst+1

at´e que algum crit´erio de parada seja atingido;

Algoritmo 2: Algoritmo TD(λ) (MARTINS, 2007)

2.1.8 Q-Learning

Entre os diversos algoritmos de Aprendizado por Refor¸co existentes, o mais conhecido

´e o Q-Learning (WATKINS; DAYAN, 1992). Neste m´etodo, para cada a¸c˜ao realizada pelo agente, ´e computado sua recompensa e o valor esperado ao seguir a melhor pol´ıtica com um desconto. Esta pol´ıtica ´e aprendida por meio da intera¸c˜ao com o ambiente e, assim, aprendidos quais as melhores a¸c˜oes para chegar a um objetivo. A informa¸c˜ao da pol´ıtica

´e armazenada em uma matriz Q(s, a), que guarda os valores estimados para cada par de estado e a¸c˜ao.

Inicialize Qt (st,at) arbitrariamente repita

Visita o estado st.

Selecione uma a¸c˜aoa de acordo com a regra de transi¸c˜ao de estados.

Execute a a¸c˜aoat.

Receba o refor¸co r(st, at) e observe o pr´oximo estado st+1. Atualize os valores de Qt+1(st, at) de acordo com a equa¸c˜ao 2.14 Atualize o estado stst+1.

at´e que algum crit´erio de parada seja atingido;

Algoritmo 3: Algoritmo Q-Learning (WATKINS; DAYAN, 1992)

O Q-Learning tem como principal caracter´ıstica a capacidade de aprender por meio da intera¸c˜ao de uma pol´ıtica ´otima π∗, quando n˜ao existe um modelo do sistema. Esta pol´ıtica ´otima ´e encontrada escolhendo a a¸c˜ao que maximiza os valores de Q, para um de- terminado estado. O valor de custo de um estado (fun¸c˜ao valorV(s)) ´e o valor m´aximo de Q(st, at) de um estadost, para todas as a¸c˜oes poss´ıveis de serem executadas nesse estado.

Referências

Documentos relacionados

São por demais conhecidas as dificuldades de se incorporar a Amazônia à dinâmica de desenvolvimento nacional, ora por culpa do modelo estabelecido, ora pela falta de tecnologia ou

O envolvimento do utilizador como visualizador, na realidade virtual, tem de provocar estímulos suficientemente satisfatórios, para que este sinta um maior envolvimento

A par disso, analisa-se o papel da tecnologia dentro da escola, o potencial dos recursos tecnológicos como instrumento de trabalho articulado ao desenvolvimento do currículo, e

nesta nossa modesta obra O sonho e os sonhos analisa- mos o sono e sua importância para o corpo e sobretudo para a alma que, nas horas de repouso da matéria, liberta-se parcialmente

Este trabalho buscou, através de pesquisa de campo, estudar o efeito de diferentes alternativas de adubações de cobertura, quanto ao tipo de adubo e época de

3.3 o Município tem caminhão da coleta seletiva, sendo orientado a providenciar a contratação direta da associação para o recolhimento dos resíduos recicláveis,

Para a perfeita conservação de suas características alguns cuidados deverão ser seguidos, para tal, a Polipiso do Brasil desenvolveu este Manual de Manutenção,

Para preparar a pimenta branca, as espigas são colhidas quando os frutos apresentam a coloração amarelada ou vermelha. As espigas são colocadas em sacos de plástico trançado sem