EQUIPE PAHNOIS Michel Silva Soares Departamento de Informatica [email protected] Centro Tecnológico, Universidade Federal do Espírito Santo Av. Fernando Ferrari s/n – Goiabeiras, Vitória ES Abstract—Pahnois é um time que começou em 2009, com a finalidade de jogar as competições internas da equipe do Suporte do Departamento de Informática da UFES. O time não possui inteligência artificial e a programação é feita por zonas do campo, com será mostrado a seguir. I. INTRODUÇÃO Este artigo apresenta as estratégias utilizadas pela Equipe Pahnois para fazer um time de Simulação 2D competitivo. Desde o começo, o time usa o código base disponibilizado pela UvA Trilearn1. O código dos jogadores foi separado de acordo com a sua função em campo. Desse modo o time está divido em zagueiro, meio de campo, atacante e goleiro. Cada um tem uma programação diferente. O foco do time é a programação por zona. O campo foi dividido em várias partes e dependendo da posição que o jogador se encontra e do seu tipo (zagueiro, meio, atacante), o agente realiza o seu comando. O goleiro é especial, foi apagado por completo o código base e totalmente refeito, usando algumas funções já implementadas pelo time base da UvA Trilearn. O trabalho foi desenvolvido no Laboratório de Graduação de Engenharia e Ciência de Computação da UFES. Será descrito nesse artigo como foi feito a divisão de campo para cada tipo de jogador e o trabalho realizado no goleiro. II. ARQUIVOS BÁSICOS Este código contém implementações de baixo e médio nível escritas na linguagem C++, abrangendo funções básicas passadas pelo servidor e funções estratégicas para uma boa partida. No geral o algoritmo faz a seleção do melhor jogador para roubar a bola e quando está em posse da bola, dependendo da sua posição em campo e do seu tipo de jogador realiza uma ação diferente. Nos arquivos básico estão feitas todas as funções básicas do time, por exemplo, comunicação com servidor, cálculos geométricos entre outros. São em alguns desses arquivos em 1 Copyright (c) 2000-2003, Jelle Kok, University of Amsterdam. All rights reserved. que foram feitas todas as modificações do time para a disputa da competição. III. DIVISÕES DO CAMPO O time está dividido em três tipos de jogadores além do goleiro. Para cada tipo será descrito com foi feita a divisão do campo. A. Zagueiro Os zagueiros têm duas áreas principais, da intermediária para frente, e da intermediária para trás. São quatro zagueiros, sendo um mais avançado trabalhando mais com um meio de campo defensivo. Os outros três ficam mais atrás e cada um tem a sua área de interceptar a bola a qualquer custo. Quando a bola está nessa região, o zagueiro da região tenta interceptar a bola independentemente se é o mais rápido ou mais perto dela. B. Meio de Campo Os meias possuem duas divisões de campo essencial, a primeira é antes da entrada da área adversaria, e a segunda é depois da entrada da área. Antes da grande área, a função dos meias de campo é carregar a bola para frente enquanto estiver livre. Ao menor sinal de ameaça adversária o agente deve tocar a bola para um companheiro. Quando o agente chega perto da grande área, ele tenta o arrematar para o gol. C. Atacante Para os atacantes, o campo é dividido em duas partes principais, antes de dentro da grande área adversária e depois desse ponto. Antes da grande área o objetivo dos atacantes é carregar a bola o mais rápido possível para frente. Depois da grande área o campo novamente se divide, em mais três partes, as duas pontas do campo e a região dentro da área. Quando o agente está nas pontas do campo, deve ser feito o cruzamento para dentro da área. Se o agente está dentro da área, o arremate é feito escolhendo o canto de chute numa lógica aleatória. IV. GOLEIRO A programação do goleiro se dividiu em duas etapas. A. Posicionamento O posicionamento básico do goleiro é feito dentro da sua pequena área. Ele fica centrado no meio do gol, e de acordo com a posição da bola ele se desloca de um lado para o outro com a intenção de fechar o ângulo de chute do jogador adversário. Existe uma região da área que, se a bola estiver nela, o goleiro sai pra interceptar independente se é o mais rápido ou não. Quando há arremate com chances de gol do time adversário, o goleiro tenta se posicionar entre a bola e o gol, para fazer a defesa. B. Goleiro com a posse da bola O goleiro fica com a posse de bola em duas situações, quando ele defende, ou quando é tiro de meta. Quando ele defende, ele olha para os seus zagueiros e tenta tocar a bola para o que estiver menos marcado. Quando é tiro de meta ele procura o jogador mais próximo e menos marcado para tocar. V. TRABALHO FUTURO Para um futuro mais próximo, está sendo implementado um melhor toque de bola entre os jogadores, com o intuito diminuir os passes errados. Como objetivo mais a longo prazo, deve ser feito a implementação de uma comunicação eficiente entre os jogadores. VI. CONCLUSÃO As alterações feitas no código da UvA Trilearn 2003 demonstram um melhor desempenho dos jogadores na partida. Percebe-se também que a modificação no goleiro é essencial para tornar o time mais competitivo. AGRADECIMENTOS Queria deixar o agradecimento a Jelle Kok por ter fornecido o código base de seu time que foi de grande ajuda para o desenvolvimento do nosso time.