• Nenhum resultado encontrado

O Time de Futebol Simulado ITANDROIDS-2D

N/A
N/A
Protected

Academic year: 2021

Share "O Time de Futebol Simulado ITANDROIDS-2D"

Copied!
7
0
0

Texto

(1)

O Time de Futebol Simulado ITANDROIDS-2D

Raphael O. Xavier, Rodrigo Barbosa, Jackson P. Matsuura

Instituto Tecnológica de Aeronáutica - ITA São José dos Campos – SP – Brasil

rapha.xavier@uol.com.br, digaozao@hotmail.com, jackson@ita.br

Abstract. This article describes the functioning of the team ITANDROIDS-2D,

team created to participate in RoboCup soccer simulation competitions in two dimensions. The objective is simple, create a team of “robots” that take their own decisions and collaborate among each other. The simulations are constituted by 11 players and one coach, just as in a real soccer team. In the championships, teams belonged to many institutions are put to dispute matches among each other, testing artificial inteligence algoritms, creating new challenges, as well as new techniques and technologys to overcome them.

Resumo. Este artigo descreve o funcionamento do time ITANDROIDS-2D,

criado para participar das competições de simulação de futebol em duas dimensões da RoboCup. O objetivo é simples, criar um time de "robôs" que tomem decisões e colaborem entre si. As simulações são constituídas de 11 jogadores e um técnico, como num time de futebol real. Nos campeonatos, times de várias instituições são colocados para disputar partidas entre si, testando assim algoritmos de inteligência artificial, criando novos desafios, bem como criando novas técnicas e tecnologias para superá-los.

1. Introdução

A RoboCup é uma iniciativa internacional organizada pela Federação Internacional RoboCup com o apoio de comitês nacionais. Sua missão é promover progressos científicos e técnicos nos campos de Robótica e Inteligência Artificial.

A RoboCup é uma organização sem fins lucrativos e cerca de 4.000 pesquisadores de aproximadamente 40 países contribuem com seus propósitos.

O objetivo final da RoboCup é criar um time composto por robôs humanóides completamente autônomos que tenha chances reais de vencer a seleção campeã da Copa do Mundo de Futebol até o ano de 2050.

O conceito de robôs jogadores de futebol foi introduzido pela primeira vez em 1993. Após dois anos de estudo de viabilidade, em agosto de 1995, um pronunciamento foi feito para a introdução da primeira conferência internacional e jogos de futebol. Em

(2)

julho de 1997, a primeira conferência e jogos oficiais foram realizados em Nagoya, Japão.

O popular jogo de futebol é utilizado porque provê tanto desafios científicos quanto a possibilidade de uma avaliação concreta baseada em um problema bem definido. Além disso, o futebol RoboCup oferece também um grande estímulo para o envolvimento de estudantes.

Num esforço de desenvolver conhecimento em Inteligência Artificial e em Robótica Inteligente, o Instituto Tecnológico de Aeronáutica – ITA, começou a participar na RoboCup em 2005 na competição brasileira e latino-americana, sagrando-se campeã em ambas, na categoria de Futebol Simulado 2D (duas dimensões). Para isso, o ITA criou um grupo então chamado ITANDROIDS, a fim de que os estudantes e professores interessados possam fazer este tipo de pesquisa. O ITA passa a fazer parte da RoboCup porque acredita que ela tem um grande potencial de pesquisa nas áreas de Inteligência Artificial, Sistemas de Controle, Mecatrônica, Processamento de Imagens, Robótica, dentre outras.

Além de servir como meio de pesquisa, as competições da RoboCup são um grande atrativo para estudantes em graduação e já graduados, que desejam representar suas instituições e seus países.

No intuito de participar das diferentes categorias existentes nas competições de robótica, a ITANDROIDS foi subdividida em equipes específicas, abrangendo várias categorias, ampliando assim o conhecimento em áreas distintas das tecnologias abrangidas por estes projetos. O presente artigo está relacionado ao time ITANDROIDS-2D, criado para participar na categoria de Futebol Simulado em duas dimensões.

2. Futebol Simulado 2D

O Futebol Simulado 2D é uma simulação do jogo de futebol, apresentando várias das características presentes no mundo real. Com exceção da terceira dimensão, todas as outras características utilizadas representam bem um jogo de futebol real. A utilização de variáveis aleatórias torna a simulação realista para os usuários, contribuindo consideravelmente para as pesquisas.

A simulação é composta por três sistemas distintos: o servidor, o monitor e os clientes (jogadores e técnicos), conforme ilustrado na figura 1. O funcionamento da simulação em alto nível é bastante simples, a cada ciclo de simulação os passos descritos a seguir são repetidos até que o tempo total de jogo, tipicamente 6.000 ciclos, seja atingido:

Passo 1: O servidor envia informação para os clientes e o monitor. Esta informação é referente ao que está “acontecendo” no ciclo. Algumas partes desta informação seriam: velocidade de objetos (jogadores, bola,...), posição de objetos (bandeiras, jogadores, bola,...), condições do próprio jogador, resumindo, o que o jogador estaria vendo, sentindo e ouvindo.

(3)

Passo 2: Quando o monitor recebe esta informação, ele representa tudo em uma forma visual para que a equipe e os espectadores possam acompanhar o jogo.

Time B Servidor Monitor Clientes Clientes Clientes Time A Clientes Clientes Clientes

Figura 1 – Componentes da Simulação de Futebol 2D.

Passo 3: Quando o cliente recebe esta informação, ele analisa o que está acontecendo segundo um algoritmo pré-estabelecido pelos responsáveis pelo time, e toma a decisão determinada pelo algoritmo (correr, virar, chutar, ...) e envia o comando correspondente a essa decisão para o servidor.

Passo 4: O servidor então calcula as novas condições, baseado nas condições anteriores e nos comandos enviados pelos clientes e realiza novamente o Passo 1.

A tarefa da equipe ITANDROIDS-2D é conceber e implementar o algoritmo responsável pelo Passo 3. Tal algoritmo deve ser capaz de processar as informações recebidas do servidor de modo a tomar a melhor decisão para marcar gols ao mesmo tempo que evita que o adversário marque.

3. ITANDROIDS-2D

O time implementado para a competição brasileira e latino americana de 2005 foi baseado no código base disponibilizado pela equipe da Universidade de Amsterdã, UVA Trilearn. O algoritmo principal desse código base é bastante simples. Os jogadores foram programados para ficar em uma determinada formação e o que estivesse mais próximo da bola interceptaria a mesma e chutaria na direção do gol adversário, independentemente da distância até o gol.

A partir desse código base, a ITANDROIDS implementou rotinas de decisão mais elaboradas, como carregar a bola, passar para o companheiro em melhores condições de jogo ou mesmo proteger a bola, mas sem se preocupar muito com o recebimento de informações do servidor e com outros detalhes do código base do time UVA.

Para a competição brasileira de 2006, o código base foi revisto e foram encontrados inúmeros detalhes de implementação que diminuíam a eficiência dos jogadores e esse código foi sendo modificado e melhorado.

(4)

Um dos principais aprimoramentos foi a introdução de diversos aspectos envolvendo Teoria da Probabilidade, criando, através desta, modelos de predições de posicionamento e velocidade dos jogadores e da bola. Para isso utilizamos vários conceitos básicos como variáveis aleatórias, vetores aleatórios e estimação de parâmetros. Algumas das melhorias que desejamos utilizar ainda estão sendo desenvolvidas, mas os primeiros resultados dessa nova abordagem já podem ser sentidos.

Outro ponto importante foi uma mudança de paradigma. Com jogadores individuais, o desempenho do time implementado era bom. Os jogadores tocavam certo, chutavam bem e até marcavam razoavelmente bem. Mas, como um time, os resultados não eram satisfatórios. Com o pensamento de que, a melhor maneira de saber o que melhorar num algoritmo de um jogador de futebol é sendo um jogador de futebol, passamos a analisar nós mesmos e os outros em atuação real. Empiricamente, chegamos em unanimidade que o mais importante num jogo de futebol são os sentidos. E é isso que havia sido deixado inalterado na equipe de 2005 e está sendo aprimorado na equipe de 2006.

3.1. Visão

Percebeu-se que não se pode olhar só para bola, como vínhamos fazendo, mas não só isso, também percebemos que não se deve olhar para todos os lados igualmente, como passamos a fazer. Por exemplo, se você está perto da margem esquerda do campo, não há sentido em você olhar para a esquerda (fora do campo). Mais ainda, tendo um algoritmo de predição, se se consegue prever que a possibilidade de haver alguém à sua esquerda em “n” ciclos é zero, não há sentido para olhar para a esquerda dentro destes “n” ciclos.

Logo, criou-se um algoritmo de prioridade. Por exemplo, se for definido que vai ser efetuada a função de drible para passar por um adversário, deve-se focar a visão neste último. Para isso, a probabilidade de um adversário, além do a ser driblado, se aproximar tem que ser zero (ou próxima de zero) dentro do número de ciclos que tomam a função de drible, se não, não podemos efetuá-lo, uma vez que é possível que algum defensor tome a bola. É fácil perceber isto em jogos reais. Quando um atacante fica cara-a-cara com um defensor, ele só dribla se tiver certeza de que tem boa chance de continuar com a bola.

3.2. Audição e Fala

Percebeu-se que os algoritmos criados tratavam os jogadores como ilhas, isto é, eles agiam independentemente dos outros, embora normalmente aparentasse que não. O algoritmo utilizado funcionava da seguinte maneira: cada um tem uma posição padrão em relação à posição da bola, logo um jogador sabe que o outro está (ou pelo menos deveria) em uma determinada região. Devido a algumas características como stamina não era sempre verdade a relação acima, acarretando em grandes erros.

Logo, para realmente se obter um jogo em equipe, passamos a utilizar mensagens de modo mais efetivo. Os jogadores mais próximos ao que se encontra com a bola passaram a falar suas posições e se estão sendo marcados ou não em relação ao outro (que está com a bola), já na defesa, os defensores falam posições de jogadores

(5)

fazer manda uma mensagem dizendo para quem vai passar e por que reta a bola vai andar, tornando os passes mais rápidos.

A fala no simulador se dá através de strings. O jogador que irá falar manda um comando “say” para o servidor contendo a informação desejada numa string que é um argumento do comando. No mesmo ciclo em que ele é mandado, os jogadores do mesmo time que estiverem a uma distância mínima definida pelo servidor (o valor típico é 50,0) podem receber a mensagem contanto que mandem o comando hear para o servidor. Este comando possui 3 argumentos: o ciclo em que ela foi enviada, quem a enviou e a string contendo a mensagem. A mensagem fica durante algum tempo podendo ser ouvida pelos jogadores (valor típico: 2 ciclos).

As mensagens utilizadas por nós são escritas através de códigos para que ela caiba na string, visto que esta tem um número máximo de caracteres que podem ser utilizados. Normalmente enviamos ações futuras, dizendo em qual ciclo elas irão acontecer. Desta forma a decisão tomada pelo jogador que recebe a mensagem fica mais confiável, uma vez que ele assume que a ação mandada realmente irá acontecer (sendo raro caso contrário).

Outro grande aprimoramento realizado foi o dos passes. Antes, os passes eram mandados no pé do jogador a recebê-lo, mas observando jogos de futebol real percebemos que a grande maioria dos passes é dada de forma que o jogador que recebe o passe deva correr atrás da bola, evitando que um adversário a tome. Utilizando as funções de fala e audição implementamos mais este avanço.

Figura 2. O passe implementado.

A figura 2 ilustra a utilização da comunicação e do passe à frente do jogador. Primeiro o jogador que tem o domínio da bola decide qual a ação a tomar, nesse caso um passe para o companheiro à sua frente, e avisa sobre o passe. O jogador que vai receber a bola vira-se então para correr na direção para qual a bola será lançada, obtendo uma visível vantagem sobre seu marcador.

(6)

A grande maioria das decisões que os jogadores tomam até o momento é baseada em um sistema especialista, implementado com regras heurísticas probabilísticas, mas espera-se em breve que técnicas mais elaboradas de inteligência artificial sejam usadas para melhorar ainda mais o desempenho da equipe.

4. Resultados

Como expressado anteriormente, o futebol é utilizado porque é um esporte que provê tanto desafios científicos quanto a possibilidade de uma avaliação concreta baseada em um problema bem definido. Este esporte provê esta avaliação porque podemos confrontar os métodos utilizados através de jogos entre times.

O melhor modo de saber se os resultados obtidos são positivos são as competições, como a RoboCup. Mas outro método também efetivo, e mais rápido, é confrontar times criados por outras universidades (através dos binários deles), times que já participaram de outras competições e, principalmente, os que foram campeões, sendo ainda melhor se foram campeões em competições recentes de caráter mundial. Um método bastante efetivo e simples para verificar se o time foi aprimorado em relação ao anterior é confrontar os dois em uma partida. Fazendo estes tipos de verificação percebe-se que o time desenvolvido depois da última competição disputada (RoboCup da América Latina) é muito superior ao anterior. Nos últimos jogos simulados o time atual não sofreu gols do time anterior. Antes perdia com saldos muito negativos para o campeão de 2005 da RoboCup Mundial, mas atualmente já pode ser considerado equivalente ou superior a ele, possuindo mais vitórias do que derrotas e empates neste último mês de testes.

Com isso percebemos que as implementações desenvolvidas agiram de forma a aprimorar o time e que nossos preceitos estavam corretos. Isto serve de estímulo para continuarmos seguindo em frente com as pesquisas e, quando possível, vê-las sendo utilizadas em robôs reais, visto que o objetivo da RoboCup é criar um time de robôs para ganhar do campeão mundial de humanos.

5. Conclusões

O conhecimento que será obtido através da RoboCup nas áreas de fundamentos de projeto e implementação de agentes autônomos, colaboração de multi-agentes, aquisição de estratégia, raciocínio em tempo real, robótica, dentre outras, têm um grande valor para o ITA. Estas áreas podem trazer muitas aplicações em diversos problemas que o setor aeroespacial possui. Isto é de grande importância uma vez que estará ajudando o ITA a executar uma de suas missões, que é promover, através de ensino e pesquisa, o progresso da Ciência e Tecnologia, relativas às atividades ao setor aeroespacial.

Desta forma, além de estar executando uma das missões do ITA, a pesquisa aqui desenvolvida pode trazer muitos benefícios para a humanidade, não apenas no setor aeroespacial, mas pode ser aplicado em milhares de problemas significantes que a

(7)

6. Agradecimentos

Os autores agradecem ao Instituto Tecnológico de Aeronáutica, à Fundação Casimiro Montenegro Filho e à Telefônica pelo apoio dado durante o desenvolvimento deste trabalho.

7. Referências

Stark, H. and Woods, J. (2002) “Probability and Random Processes with applications to Signal Processing”, Third Edition, Prentice-Hall Inc.

De Boer,R. and Kok, J. (2002) “The incremental development of a synthetic multi-agent system: The uva trilearn 2001 roboti soccer simulation team”, Tese de mestrado, Universidade de Amsterdam, Holanda

Stone, P. (2000) “Layered Learning in Multiagent Systems: A Winning Approach to Robotic Soccer”, MIT Press.

Referências

Documentos relacionados

Excluindo as operações de Santos, os demais terminais da Ultracargo apresentaram EBITDA de R$ 15 milhões, redução de 30% e 40% em relação ao 4T14 e ao 3T15,

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

As IMagens e o texto da Comunicação (com as legendas incluídas) devem ser enviadas por correio eletrônico. Comitê

No entanto, maiores lucros com publicidade e um crescimento no uso da plataforma em smartphones e tablets não serão suficientes para o mercado se a maior rede social do mundo

esta espécie foi encontrada em borda de mata ciliar, savana graminosa, savana parque e área de transição mata ciliar e savana.. Observações: Esta espécie ocorre

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,

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

Box-plot dos valores de nitrogênio orgânico, íon amônio, nitrito e nitrato obtidos para os pontos P1(cinquenta metros a montante do ponto de descarga), P2 (descarga do