Eduardo Jos Torres Sampaio Rocha Paulo Gustavo Soares

  • Slides: 29
Download presentation
Eduardo José Torres Sampaio Rocha Paulo Gustavo Soares Fonseca

Eduardo José Torres Sampaio Rocha Paulo Gustavo Soares Fonseca

O que é Robo. Cup ¨ Robo. Cup - abreviação de Robot World Cup

O que é Robo. Cup ¨ Robo. Cup - abreviação de Robot World Cup Initiative é uma iniciativa internacional de educação e pesquisa que objetiva impulsionar as pesquisas na área de IA e robótica propondo um problema real onde diversas tecnologias podem ser integradas. ¨ Para este propósito, a Robo. Cup utiliza o jogo de futebol como framework para a aplicação destas diversas teconologias. .

Histórico ¨ 1992: Prof. Alan Macworth propõe a idéia de robôs jogarem futebol em

Histórico ¨ 1992: Prof. Alan Macworth propõe a idéia de robôs jogarem futebol em seu paper “On seeing robots”. ¨ Outubro/1992: Um grupo de pesquisadores japoneses promovem workshop para discutir os grandes desafios da robótica. ¨ Junho/1993: Um grupo de pesquisadores japoneses lançam uma competição de robótica - a Robot-J-League. ¨ 1993: Antendendo a apelos da comunidade científica, a Robot-J-League toma contornos internacionais e torna-se a Robot World Cup Initiative - Robo. Cup.

Histórico ¨ 1994/5: Itsuki Noda e sua equipe da ETL (Eletro. Technical Laboratories -

Histórico ¨ 1994/5: Itsuki Noda e sua equipe da ETL (Eletro. Technical Laboratories - Japão) anunciam o Soccer. Server 0 (LISP), o primeiro siestema de simulação aberto para futebol baseado no princípio de multi-agentes. Esta versão fora brevemente substituída pela versão 1 (C++) distribuída via www. ¨ 1995: Durante a International Joint Conference of Artificial Intelligence (IJCAI) foram anunciados os jogos da 1 a. Robo. Cup a serem realizados durante a IJCAI-97.

Histórico ¨ Novembro 1996: É realizada a Pre-Robo. Cup 96 durante a International Conference

Histórico ¨ Novembro 1996: É realizada a Pre-Robo. Cup 96 durante a International Conference on Intelligent Robotics and Systems em Osaka Japão. ¨ 1997: Acontece 1 a. Robo. Cup oficial com mais de 40 competidores e 5000 expectadores. ¨ 1998: A 2 a. Robo. Cup Internacional é realizada paralelamente à Copa do Mundo da França em Paris.

Organização ¨ Atualmente, a competição é dividida mas seguintes quatro categorias: · · Simulador

Organização ¨ Atualmente, a competição é dividida mas seguintes quatro categorias: · · Simulador Robôs Pequenos Robôs Médios com pernas Sony

Robôs Pequenos ¨ Esta categoria é disputada por times de no máximo 05 robôs.

Robôs Pequenos ¨ Esta categoria é disputada por times de no máximo 05 robôs. ¨ Cada robô ocupa um área máxima de 180 cm 2, . ¨ As dimensões do campo de jogo são 152. 5 cm x 274 cm, o que equivale a uma mesa de pingue-pongue. ¨ A bola utilizada é uma bola de golf alaranjada. ¨ As partidas são disputadas em dois tempos de 10 min. com morte súbita em caso de empate.

Robôs Pequenos

Robôs Pequenos

Robôs Médios ¨ Esta categoria é disputada por times de no máximo 05 robôs.

Robôs Médios ¨ Esta categoria é disputada por times de no máximo 05 robôs. ¨ Cada robô ocupa um círculo máximo de 50 cm de diâmetro. ¨ As dimensões do campo de jogo são 457. 5 cm x 822 cm. ¨ A bola utilizada é uma bola de Futsal tamanho 4. ¨ As partidas são disputadas em dois tempos de 5 min. com morte súbita em caso de empate.

Robôs Médios

Robôs Médios

Robo. Cup Categoria Simulador

Robo. Cup Categoria Simulador

Introdução ¨ A divisão simulador da Robo. Cup tem como objetivo oferecer um ambiente

Introdução ¨ A divisão simulador da Robo. Cup tem como objetivo oferecer um ambiente para experimentação com os conceitos de software envolvidos. ¨ É a categoria mais acessível da competição. Para participar basta saber programar e ter noções de IA. ¨ Pode ser implementado em qualquer paradigma de programação, desde que a linguagem escolhida tenha suporte a socket.

Componentes ¨ O Servidor (Soccer Server) · Responsável pela modelagem e manipulação do ambiente

Componentes ¨ O Servidor (Soccer Server) · Responsável pela modelagem e manipulação do ambiente (campo de jogo). · Simula o movimento da bola e dos jogadores atualizando o “estado” do mundo periodicamente em intervalos típicos de 100 ms. ¨ Os Clientes · Um cliente é um programa que se conecta ao servidor e controla exatamente um jogador. · Cada time é composto de 1~11 clientes.

Arquitetura ¨ A divisão simulador da Robo. Cup baseia-se na arquitetura cliente/servidor. ¨ Os

Arquitetura ¨ A divisão simulador da Robo. Cup baseia-se na arquitetura cliente/servidor. ¨ Os clientes comunicam-se com o servidor via pacotes UDP/IP. ¨ A comunicação entre clientes é efetuada via servidor. ¨ O Conteúdo destes pacotes são strings ASCII.

Arquitetura Time A Time B Client 1 UDP/IP Client 11 Soccer Server UDP/IP Client

Arquitetura Time A Time B Client 1 UDP/IP Client 11 Soccer Server UDP/IP Client 11

Soccer Server ¨ É um programa que cria um campo “virtual” por onde dois

Soccer Server ¨ É um programa que cria um campo “virtual” por onde dois times podem jogar futebol. ¨ O campo e os objetos sobre ele são considerados em 2 dimensões. ¨ Tanto os jogadores como a bola são representados por círculos.

Soccer Server

Soccer Server

O Cliente ¨ Clientes são programas conectados ao servidos que controlam jogadores. ¨ O

O Cliente ¨ Clientes são programas conectados ao servidos que controlam jogadores. ¨ O cliente obtém informações sobre o ambiente (percepções) através do servidor. ¨ A partir destas informações, o cliente atualiza sua concepção do mundo e efetua ações sobre o ambiente (também através de mensagens transmitidas ao servidor). ¨ Os sentidos básicos do cliente são a audição e a visão. ¨ As ações básicas do cliente são: virar-se, deslocar-se, chutar e falar.

Percepções do Cliente (Visão) ¨ O jogador é capaz de enxergar objetos que se

Percepções do Cliente (Visão) ¨ O jogador é capaz de enxergar objetos que se encontram nos seguintes locais: · No interior do seu campo visual ou cone de visão. · Em qualquer direção no raio de 3 m - entretanto, neste caso, se o objeto estiver fora do cone de visão, o jogador só será capaz de identificar o tipo do objeto (jogador, bola, gol, etc. ) e não qual objeto especificamente. ¨ As informações visuais passadas pelo servidor ao cliente informam sua posição relativa a outros objetos no campo e não suas coordenadas absolutas em relação ao campo

Percepções do Cliente (Visão) ¨ A visão do jogador possui dois parâmetros que podem

Percepções do Cliente (Visão) ¨ A visão do jogador possui dois parâmetros que podem ser ajustados durante os jogos: · ngulo do Cone de Visão: determina a amplitude do campo visual: 45 o (modo narrow) 90 o (modo normal) 180 o (modo wide) · Qualidade da Visão: determina a quantidade de informação contida num estímulo visual: Modo high - informa direção, distância, mudança na direção e mudança na velocidade Modo low - informa apenas a direção.

Percepções do Cliente (Visão) ¨ A freqüência da informação visual passada ao jogador depende

Percepções do Cliente (Visão) ¨ A freqüência da informação visual passada ao jogador depende do seu modo de visão: · No modo normal/high, a taxa típica é de 1 estímulo a cada 300 ms. · Se o ângulo é incrementado, a taxa é reduzida à metade. Se o ângulo diminui, a taxa é dobrada. Exemplos: wide/high = 600 ms, narrow/normal=150 ms. · A mesma relação é valida para a o critério qualidade. Exemplo: narrow/low = 75 ms

Percepções do Cliente (Visão) ¨ A precisão da informação visual passada ao jogador depende

Percepções do Cliente (Visão) ¨ A precisão da informação visual passada ao jogador depende da sua distância em relação ao objeto enxergado: quanto mais próximo do objeto, maior a veracidade da informação passada pelo servidor com respeito exclusivamente ao parâmetro “distância”.

Percepções do Cliente (Audição) ¨ O jogador também pode obter informações auditivas que são

Percepções do Cliente (Audição) ¨ O jogador também pode obter informações auditivas que são frutos de mensagens transmitidas por outros jogadores e pelo árbitro. ¨ Cada jogador pode escutar mensagens de objetos que estejam a uma distância de até 50 m. ¨ Cada jogador pode receber no máximo uma informação auditiva a cada ciclo, sendo que a cada dois ciclos só uma mensagem pode ser do seu time, tendo a outra que ser do time adversário.

Ações do Cliente ¨ Virar-se: Gira o jogador numa direção especificada. ¨ Deslocar-se: Movimenta

Ações do Cliente ¨ Virar-se: Gira o jogador numa direção especificada. ¨ Deslocar-se: Movimenta o jogador com uma “energia” especificada. ¨ Chutar: Chuta a bola numa certa direção e com uma certa energia. ¨ Falar: Transmite uma mensagem para os demais jogadores.

Ações do Cliente ¨ No início da partida cada jogador possui uma energia (stamina)

Ações do Cliente ¨ No início da partida cada jogador possui uma energia (stamina) de 2000 unidades. ¨ Ao efetuar uma ação (deslocar-se ou chutar) com uma certa energia X, sua energia total é decrescida deste valor. ¨ Se o jogador não dispuser das X unidades, a ação é efetuada com toda a energia que ele dispõe. ¨ A cada ciclo sem efetuar uma ação, o jogador recupera 20 unidades até o máximo de 2000 unidades.

Arbitragem ¨ Algumas situações são controladas automaticamente pelo Soccer Server: · · · gol

Arbitragem ¨ Algumas situações são controladas automaticamente pelo Soccer Server: · · · gol bola fora distância regulamentar (tiro de meta e faltas) modos de jogo início, intervalo e fim de jogo ¨ Outras são julgadas pelo comissário (operador do Soccer Server): · jogadas desleais

O Processo de uma Partida 1. Cada cliente conecta-se ao servidor via um comando

O Processo de uma Partida 1. Cada cliente conecta-se ao servidor via um comando init. 2. Quando todos os clientes estiverem prontos, o comissário (operador do servidor) inicia a partida pressionando o botão kick-off. Iniciase o 1 o. tempo. 3. O primeiro tempo dura cerca de 05 minutos. Após este tempo, o servidor suspende a partida. 4. O intervalo dura 05 minutos. Durante o intervalo, os competidores podem substituir os clientes.

O Processo de uma Partida 5. Antes do 2 o. Tempo, todos os clientes

O Processo de uma Partida 5. Antes do 2 o. Tempo, todos os clientes devem reconectar-se ao servidor via um comando reconnect. 6. Quando todos os clientes estiverem prontos, o comissário (operador do servidor) inicia a partida pressionando o botão kick-off. Iniciase o 2 o. tempo. 7. O segundo tempo dura também cerca de 05 minutos. Após este tempo, o servidor pára a partida. 8. Em caso de empate, proceder-se-á a uma prorrogação com morte súbita.

FIM

FIM