robocup 2010 - criação de uma equipa para liga mixed reality do robocup orientador: prof. dr....
Post on 07-Apr-2016
213 Views
Preview:
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