Anda di halaman 1dari 4

IMPLEMENTA C

AO DE HEUR

ISTICAS PARA ACELERA C

AO DO APRENDIZADO
POR REFOR CO NA LIGA SIMULADA ROBOCUP 2D
Samir Elias Hachem Kerbage

, Emerson Oliveira Antunes

, Paulo Fernando Ferreira


Rosa

, Bruno Eduardo Madeira

, Diego Felix de Almeida

Emails: samirehk@gmail.com, emersono10@hotmail.com, rpauloime@gmail.com,


madeira@ime.eb.br, diegobill@gmail.com
Resumo Este artigo descreve o time RoboIME, desenvolvido no Instituto Militar de Engenharia. S ao ap-
resentados as principais implementac oes da equipe que e baseada em aprendizado por reforco acelerado por
heursticas.
Keywords Inteligencia Articial, Robotica Inteligente, Aprendizado por Reforco, Heurstica, Q-Learning,
RoboCup 2D.
1 Introducao
A utiliza cao do ambiente da RoboCup 2D para
simulacao de uma partida de futebol (simulador
Soccer Server) permite a avaliacao de diferentes
tecnicas de Sistemas Multiagentes como planeja-
mento de estrategias, gera cao de conhecimento
em tempo real, colabora cao de agentes, princ-
pios de agentes autonomos, entre outros, e estim-
ula as pesquisas, investiga coes e testes que possi-
bilitem a constru cao gradativa de agentes avan ca-
dos (Kitano et al., 1995). Um pre-requisito para
participacao em uma competicao na modalidade
de simulacao 2D de futebol e a disponibiliza cao do
codigo fonte do time participante. Portanto, este
artigo foi desenvolvido a partir do codigo fonte
do time UvA Trilearn (de Boer and Kok, 2002),
adicionando a seu codigo implementacoes das tec-
nicas de Aprendizado por Refor co.
No Aprendizado por Reforco, o agente
aprende por meio da interacao direta entre o
agente e o ambiente, e das recompensas recebidas.
Uma das maneiras de diminuir o tempo que o
agente leva para aprender no Aprendizado por Re-
for co e aplicar uma heurstica, isto e, uma ajuda
que acelere o aprendizado. Uma heurstica indica
que uma acao deve ser executada em detrimento
de outra.
Uma heurstica pode ser denida como uma
tecnica que melhora, no caso medio, a eciencia
na solucao de um problema. Segundo (Norvig and
Russel, 2004), funcoes heursticas sao a forma mais
comum de se aplicar o conhecimento adicional do
problema a um algoritmo de busca, e portanto,
uma maneira de generaliza cao do conhecimento
que se tem acerca de um domnio.
De maneira mais formal, um algoritmo da
classe HAL (Heuristic Accelerated Reinforcement
Learning) pode ser denido como um modo de
solucionar um problema modelavel por um MDP
(Markov Decision Process) que utiliza explicita-
mente a funcao heurstica H : S A R para
conduzir o agente na escolha de suas acoes. Du-
rante o aprendizado. H
t
(s
t
, a
t
) dene a heurstica
que indica a importancia de se executar a a cao a
t
estando no estado s
t
.
2 Modelagem da Estrategia para o Time
Foi criada uma chave de estados que contem infor-
ma coes da localizacao do agente; do angulo entre
o adversario mais proximo, da bola e do agente; da
distancia do agente mais proximo; da distancia do
adversario mais proximo e por nal da posi cao do
adversario mais proximo(`a direita, em frente ou `a
esquerda do agente). Estes valores sao adiciona-
dos `a chave por uma representacao qualitativa,
discretizados em valores que vao de zero a cinco.
Com esta chave trabalharemos com 6x3x6x6x3 =
1944 estados. Cada estado constitui uma infor-
ma cao relevante para que o agente decida entre
uma das cinco possveis acoes disponveis.
2.1 Discretizacao dos estados
i0 i1 i2 i3 i4
[0;5] [0;2] [0;5] [0;5] [0;2]
Posi c ao
do
agente
no
campo

Angulo
entre o
oponente
mais
pr oximo,
a bola e o
aliado
mais
pr oximo
Distancia
do agente
ao
jogador
do
mesmo
time mais
pr oximo
Distancia
do agente
ao
jogador
oponente
mais
pr oximo
Posi c ao
do
oponente
mais
pr oximo
em
rela c ao
ao agente
Tabela 1: Chave de estados

Angulo (em graus) Representacao


|a| <= 15 0
15 < |a| <= 30 1
30 < |a| 2
Tabela 2: Representacao dos angulos
A posicao do agente no campo (i0) e infor-
mada com o valor dado como 0 se o agente esta
Distancia Representacao
|d| <= 5.0 0
5.0 < |d| <= 10.0 1
10.0 < |a| <= 20.0 2
20.0 < |a| <= 35.0 3
35.0 < |a| <= 50.0 4
50.0 < |a| 5
Tabela 3: Representacao das distancias
localizado na area central da defesa, como 1 se o
agente esta em qualquer outra posicao dentro da
area da defesa, como 2 se ele esta localizado na
area central do meio de campo, como 3 se esta
localizado em outra posi cao dentro do meio do
campo, como 4 se estiver localizado na area cen-
tral do ataque e como 5 se estiver em outra posicao
dentro da area de ataque. Esta discretiza cao do
campo valoriza a do UvA Trilearn de posicionar
os jogadores mais velozes nas posicoes laterais de
sua forma cao 4-3-3. Os angulos de i1 sao repre-
sentados na tabela II. As distancias de (i2) e (i3),
sao representadas na tabela III.
2.2 Discretizacao das acoes
Ha uma enorme quantidade de acoes realizaveis
por um agente da RoboCup. Para a aplica cao
do algoritmo foi necessario reduzir o n umero de
acoes realizaveis, mas sem incapacitar o jogador.
Procurou-se dar uma enfase maior em acoes para
adocao de uma estrategia ofensiva. Outro ponto a
se destacar e que o aprendizado so ocorre quando
o agente esta de posse da bola. A coes com a bola:
Chutar para o gol adversario;
Driblar na direcao 30

;
Driblar na direcao 0

;
Driblar na direcao -30

;
Tocar para um jogador do mesmo time mel-
hor posicionado.
2.3 Denicao dos reforcos
Reforcos com avanco em direcao ao gol adversario:
Gol feito: +50;
Posse da bola: +10;
Adversario toma a bola: -10;
Adversario marca gol: -100.
Reforcos sem avanco:
Posse da bola: +5;
Adversario toma a bola: -20;
Adversario marca gol: -100.
3 Implementacao da Estrategia
Para realiza cao da estrategia descrita na se cao
2 foram feitas algumas adaptacoes no time base
original do UvA Trilearn com as seguintes alter-
acoes:
Encontrar oponente mais proximo e retornar
sua posicao;
Encontrar jogador do mesmo time mais prox-
imo e retornar sua posi cao;
Retornar distancia do agente `a bola;
Retornar distancia do jogador do mesmo time
mais proximo;
Retornar distancia do oponente mais prox-
imo.
Alem disso, foram implementadas as classes
descritas a seguir.
3.1 Classe Matriz
Nesta classe foram concentrados os metodos para
manipulacao e armazenamento do conhecimento
adquirido durante os jogos. No incio de uma par-
tida o agente instancia uma Matriz e a carrega
com as experiencias que estao armazenadas num
arquivo comum para toda a equipe. Esta matriz
e atualizada pelo agente que ao nal da partida
a armazena num arquivo referente a este agente.
Como numa partida estao envolvidos 11 agentes
do time em questao, sao salvos 11 arquivos con-
tendo as experiencias obtidas por cada um dos
agentes durante uma partida completa.
3.2 Classe Crtico
Esta classe implementa o algoritimo Q-Learning
de aprendizado por reforco. Neste metodo, para
cada acao do agente e computado uma recom-
pensa e o valor esperado ao seguir a melhor
poltica, que e aprendida por meio da interacao
com o ambiente e, assim, aprendidos quais as mel-
hores para chegar a um objetivo.

E nesta classe
,portanto, onde ocorre a atualizacao da Matriz
de estados, onde e calculado o novo valor para
esta atualizacao com base nos valores de reforcos
e parametros do algoritmo (Figura 1).
4 Implementacao das Heursticas
A estrategia de aprendizado por reforco descrita
na secao 2 se limita a decidir a melhor acao a
ser executada quando o jogador possui a posse da
bola porem, devido `a complexidade que envolve
um jogo de futebol, essa estrategia nao e suciente
para garantir um bom desempenho no jogos pois
Modelagem
Figura 1: Arquitetura de camadas do time
nao aborda algumas decisoes importantes na par-
tida, como a estrategia de posicionamento dos jo-
gadores no campo e o que o jogador deve fazer
quando nao possui a posse de bola. Alem disso,
com a estrategia implementada o jogador so pode
fazer o passe para o jogador mais proximo dele,
mas nem sempre o jogador mais proximo e o mel-
hor jogador para fazer o toque. Podemos ter um
jogador em uma posicao estrategica, ou sem mar-
ca cao, que tenha maiores chances de conduzir a
bola para o gol.
4.1 Escolha do melhor jogador para fazer o passe
A heurstica busca o jogador mais proximo que
nao tenha nenhum adversario na linha entre ele e
a bola, ou que esteja livre para chutar `a gol.
4.2 Posicionamento dos jogadores no campo
Para melhorar a dinamica do time, criamos roti-
nas que posicionam os jogadores mais rapidos nas
laterais do campo, facilitando o deslocamento dos
jogadores e a condu cao da bola `a area inimiga.
4.3 Chutar a gol sempre que houver condicoes
favoraveis
Esta heurstica altera a acao a ser executada caso
o jogador detecte que a linha entre a bola e o gol
se encontra livre, fazendo com que ele chute com
toda a potencia em direcao ao gol, aumentando as
chances de fazer um gol.
4.4 Denicao da melhor trajet oria do chute `a gol
Foi implementado um algoritmo de deteccao da
regiao mais livre do gol para direcionar os chutes.
Ele leva em consideracao tres angulos formados
entre: (i) trave esquerda, bola e goleiro; (ii) trave
direita, bola e goleiro; e (iii) trave esquerda, bola
e trave direita.
4.5 Otimizacao do tiro de meta
O goleiro analisa a posicao de todos os jogadores
mais proximos dos dois times e busca pelo jogador
mais proximo que esteja livre de marcacao ou com
uma linha livre de chute. Caso nao encontre, ele
chuta para a regiao com menos jogadores do time
adversario.
5 Treinamentos e Resultados
Neste trabalho, foram realizados no total cerca de
18000 jogos, agrupados em series de treinamen-
tos com e sem heursticas. O treinamento do time
requer muitos jogos para um efetivo aprendizado.
Como cada jogo e composto de 6000 ciclos o que
requer aproximadamente 12 minutos de duracao
alem de necessitarem de a cao humana para ini-
ciar, a realiza cao de varios jogos se torna muito
demorada e dispendiosa se for feita atraves de co-
mandos manuais. Implementar a automacao dos
treinos foi entao uma necessidade para o progresso
dos treinamentos e analise de desempenho.
As estrategias de treinamentos utilizadas en-
volviam a modica cao da taxa de explora cao
do algoritmo -Greedy. Como explicado anteri-
ormente, essa e a taxa na qual o agente executa
a melhor a cao, de acordo com a matriz de esta-
dos x acoes do Q-Learning, com probabilidade 1-
e escolhe uma a cao aleatoria com probabilidade
. Ou seja, quanto maior o valor de , maior a
quantidade de jogadas aleatorias na partida. Esta
solucao foi adotada para que a matriz de estados
x a coes seja bastante explorada e preenchida du-
rante os treinamentos.
Foi adotada uma estrategia de comecar com
uma taxa de explora cao de 100%, ou seja, todas
as acoes executadas sendo aleatorias, e diminuir
gradualmente ate chegar em 0%.
6 Q-Learning sem Heurstica
Figura 2: Resultado do saldo de gols para o algo-
ritmo Q-Learning sem heursticas
Os resultados mostram que a implementacao
de um algoritmo de aprendizado por refor co
sem utilizacao de heursticas nao apresentou uma
evolucao satisfatoria.
7 Q-Learning com Heursticas - 11
jogadores
Apos a implementacao das heursticas, uma nova
secao de treinamentos foi realizada para a eca-
cia das mesmas, bem como comparar a evolu cao.
Os resultados revelam como a implementacao de
heursticas pode melhorar os resultados do algo-
ritmo desde as primeiras iteracoes, ja que a media
do saldo de gols por partida foi de -6,7 para -3,5.
Figura 3: Resultado do saldo de gols para o al-
goritmo HAQL em uma partida com 11 jogarores
em cada time
8 Q-Learning com Heursticas - 5
jogadores
Apesar de podermos constatar uma melhora com
a implementacao das heursticas, os treinamen-
tos realizados anteriormente nao foram sucientes
para identicar a convergencia do algoritmo.
Visando reduzir a complexidade do jogo, real-
izamos uma se cao de treinamento com apenas o
goleiro e 4 jogadores em cada time. Os resultados
apresentaram uma melhora expressiva em relacao
aos jogos com o time completo e pode-se vericar
a convergencia do aprendizado para uma poltica
otima.
Figura 4: Resultado do saldo de gols para o algo-
ritmo HAQL em uma partida com 5 jogarores em
cada time
Figura 5: Comparacao do resultado das secoes de
treinamento com e sem Heursticas
9 Compara cao dos resultados
O graco da gura 5 compara as 3 secoes treina-
mento. Podemos concluir que a ecacia da im-
plementacao de heursticas para acelarar o apren-
dizado por reforco e alta, de forma que ja nos
primeiros jogos os resultados do time utilizando
heursticas e bem melhor do que os do time que
utiliza aprendizado sem heursticas.
Nota-se tambem que ao reduzir a quantidade
de jogadores em campo, os resultados sao mel-
hores e convergem mais rapido. Isso pode ter ocor-
rido porque com menos jogadores se tem mais es-
paco no campo e a corretude na condu cao da bola
e chute `a gol sao habilidades que sao exercitadas
com mais frequencia.
10 Conclusoes
Este trabalho trata-se do primeiro esforco do Lab-
oratorio de Robotica e Inteligencia Articial do
IME no sentido de criar um time para a liga sim-
ulada Robocup 2D que possa se tornar compet-
itivo ao longo dos anos. Para tanto, o primeiro
objetivo visado foi a implementar estrategias de
aprendizado por reforco acelerado por heursticas,
utilizando-se do algoritmo QLearning, e heurs-
ticas que tiveram sua eciencia comprovada e que
servirao de base para aperfei coamentos futuros.
Referencias
de Boer, R. and Kok, J. (2002). The incremental
development of a synthetic multi-agent sys-
tem: The uva trilearn 2001 robotic soccer
simulation team.
Kitano, H., Asada, M., Kuniyoshi, Y., Noda, I.
and Osawa, E. (1995). Robocup: The robot
world cup initiative, IJCAI-95 Workshop on
Entertainment and AI/Alife pp. 1924.
Norvig, P. and Russel, S. J. (2004). Inteligencia
Articial, 2 edn, Elsevier.

Anda mungkin juga menyukai