robocup 2010 - criação de uma equipa para liga mixed reality do robocup orientador: prof. dr....

Post on 07-Apr-2016

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

RoboCup 2010 - Criação de uma Equipa para Liga Mixed Reality do RoboCup

Orientador: Prof. Dr. Luís Paulo Reis

Hugo Mendes – ee02108@fe.up.pt

2

Estrutura da apresentação

RoboCup Liga Mixed Reality Funções de mais baixo nível Decisões de alto nível Resultados obtidos Dúvidas

3

Objectivos da RoboCup

Fomentar a pesquisa em:

Inteligência artificial Sistemas multi-agente Robótica Fusão sensorial Aquisição de estratégias Criação uma equipa de futebol robótico capaz de

vencer a equipa humana campeã do mundo

4

Importância do Futebol Robótico

Fornece alguns desafios interessantes:

Ambiente dinâmico Ambiente não determinístico Incerteza no estado do mundo

5

Aplicação dos agentes

Investigação em agentes e inteligência artificial aplica-se em:

Interacção homem-máquina Processos de controlo industrial Aplicações na internet …

6

Estrutura da apresentação

RoboCup Liga Mixed Reality Funções de mais baixo nível Decisões de alto nível Resultados obtidos Dúvidas

7

RoboCup Soccer: Mixed Reality

Ligas simuladas / Ligas com robôs físicos Agentes autónomos

8

O robô

Robô criado pela CITIZEN sem fins comerciais

9

Terreno de jogo

10

Estrutura da apresentação

RoboCup Liga Mixed Reality Funções de mais baixo nível Decisões de alto nível Resultados obtidos Dúvidas

11

Simulador

Substitui: Vision Tracking Robot Control

12

Principais constituintes do agente

WorldData - Contém o software necessário para a extracção do estado do mundo (posições de jogadores, posição da bola, velocidade de um colega de equipa, etc.)

BasicPlayer - Contém todas as acções que um jogador pode desempenhar (chutar, passar, parar, driblar, …)

SampleAgent – Contém o ciclo principal de raciocínio do agente

13

WorldData

Informação disponível

14

WorldDataQual o companheiro mais próximo de um dado ponto? Qual o adversário mais próximo de um dado ponto? Qual o adversário mais próximo de um dado companheiro? Qual o companheiro mais próximo de um outro companheiro? Qual o adversário mais próximo de um outro adversário? Qual o companheiro mais próximo da bola? Qual o adversário mais próximo da bola? Qual o estado do jogo? Quais as dimensões do campo? Qual a posição da bola? Qual a velocidade da bola? Qual a minha posição no campo? Qual a minha orientação? Quais as posições dos meus colegas? Sou o agente mais perto da bola? Qual o vector polar que me une ao centro da baliza adversária? Qual o vector polar que me une ao centro da minha baliza? Posso avançar com a bola? …

15

Principais constituintes do agente

WorldData - Contém o software necessário para a extracção do estado do mundo (posições de jogadores, posição da bola, velocidade de um colega de equipa, etc.)

BasicPlayer - Contém todas as acções que um jogador pode desempenhar (chutar, passar, parar, driblar, …)

SampleAgent – Contém o ciclo principal de raciocínio do agente

16

Basic Player

Movimentos básicos:

Chutar a bola Rodar à direita/esquerda Parar Passar a bola a um companheiro de equipa Rematar à baliza …

17

Basic Player Mas também:

Decisões para o guarda-redes Decisões dos demais agentes Envio de comandos para o servidor

Funções disponíveis de origem:

Chutar para um ponto, dado um vector polar Ir para um ponto, dado um vector polar

18

Ir para um ponto (X,Y)

Método semelhante para chutar para um ponto (X,Y)

19

Guarda Redes

Sempre entre o centro da baliza e a bola

20

Guarda Redes Se o guarda-redes tiver a posse da bola:

Passa a bola ao colega mais próximo Chuta para a intersecção da linha do meio campo

com a linha lateral Chuta para a sua bandeira de canto

O guarda-redes tenta interceptar a bola se:

A bola está muito próxima da baliza Existe um adversário isolado, já próximo da baliza

21

Guarda Redes

22

Zona de remate para golo

Caso um jogador esteja a uma distância em que pode fazer golo, tenta:

Chutar para o centro da baliza Se não, chuta para um dos lados que esteja livre Caso não tenha ângulo para rematar para nenhum

destes pontos, passa ao colega mais próximo

23

Principais constituintes do agente

WorldData - Contém o software necessário para a extracção do estado do mundo (posições de jogadores, posição da bola, velocidade de um colega de equipa, etc.)

BasicPlayer - Contém todas as acções que um jogador pode desempenhar (chutar, passar, parar, driblar, …)

SampleAgent – Contém o ciclo principal de raciocínio do agente

24

SampleAgent

Ciclo principal:

Actualizar o estado do mundo Decidir estratégia (Formação, táctica, …) Achar um ponto para chutar (se tiver a bola) Achar o ponto para onde deve ir (no caso de não

ter a bola)

25

Strategy

Decisões de alto nível da FCPortugal

26

Decisões de Alto Nível

Posicionamento estratégico – Quando o jogador não tem a bola

27

Decisões de Alto Nível

Posicionamento estratégico – Quando o jogador não tem a bola - MatchFlow

28

Decisões de Alto Nível

Matriz de fluxo

29

Decisões de Alto Nível

Matriz de fluxo

30

Decisões de Alto Nível

Outros factores de decisão:

Segurança

O jogador tende também a fugir dos adversários!

31

Testes - BahiaMR

RoboCup 2007: 4º Lugar RoboCup Brazil: 1º Lugar German Open: 2º Lugar RoboCup 2008: 3º Lugar RoboCup Latino Americana: 1º Lugar Japan Open: 2º Lugar RoboCup 2009: 3º Lugar Iran Open: 3º Lugar Japan Open: 1º Lugar

32

Testes de formações e fluxosResultados estatísticos contra a BahiaMR

2 atacantes/fluxo central

2 atacantes/fluxo lateral

3 atacantes/fluxo central

3 atacantes/fluxo lateral

4 atacantes/fluxo central

4 atacantes/fluxo lateral

V 0% 10% 0 50% 0 90%E 30% 70% 90% 50% 30% 10%D 70% 10% 10% 0% 70% 0%GM 0.0 0.2 0.0 0.6 0.0 2.4GS 1.1 0.2 0.1 0.0 0.9 0.3

33

Conclusões

As funções criadas têm um bom funcionamento. É possível usar as decisões de alto nível

desenvolvidas pela FCPortugal. É necessário adquirir o sistema de jogo real, de

forma a poder melhorar o deslocamento dos robôs.

34

FIM

Questões?

35

top related