RoboCup
O RoboCup é uma competição internacional de robótica cujo objectivo é despertar interesse e promover investigação na área da inteligência artificial.
Rescue
A RoboCupRescue League é uma expansão à competição de futebol, com um novo ênfase na investigação em áreas socialmente relevantes.
O Ambiente Simulado
• Modelo virtual de uma cidade
• Simulação das 72 horas que sucedem uma catástrofe natural
• Forças de emergência mobilizam-se de modo a minimizar a perda de vidas e os danos materiais
Vista 3D de parte da cidade de Kobe (Japão)
Vista 2D de parte da cidade de Foligno (Itália)
Domínios do Projecto
• Sistemas multi-agente
• Agentes heterogéneos
• Ambientes parcialmente desconhecidos
• Ambientes dinâmicos
Arquitectura doSistema de Simulação
• Divisão em sub-módulos de simulação
• Sistema de simulação com passos discretos
• Em permanente desenvolvimento
• Em constante crescimento
Objectos do Mundo Simulado
Edifícios com nível crescente de desmoronamento (1 a 4)
Estradas com obstrução: (1) Parcial (2) Total
Refúgio
O refúgio (vista 2D e 3D, respectivamente)
a) Saudável
b) Ferido
c) Morto
Civis com diferente nível de saúde
Ambulâncias
Ambulância a resgatar um civil
CivilSoterrado Ambulância
Civil saudável
Função:• Desenterrar agentes e
levá-los ao refúgio
Desafios associados:• Escalonamento de salvamentos
• Estimação do tempo de vida de agentes soterrados
• Coordenação entre ambulâncias
• Coordenação com agentes de tipo diferente
BombeirosEdifícios em chamas
Bombeiros
Edifício a ser apagado
Jacto de água
Função:• Apagar incêndios e/ou
controlar a sua expansão
Desafios associados:• Escolha da melhor região a apagar
• Escolha do melhor edifício dentro de uma região
• Antecipar possíveis expansões do fogo, quer em termos de área afectada, quer a nível de vidas humanas em risco
• Gestão colectiva e individual da quantidade de água nos tanques
• Coordenação entre bombeiros
• Coordenação com agentes de tipo diferente
Polícias
Polícia a aproximar-se de uma obstrução
Polícia a desobstruir
uma estrada
Estradas obstruídas
Função:• Desobstrução de estradas
Desafios associados:• Escalonamento de estradas a desbloquear considerando agentes de emergência presos, vias principais, caminhos para incêndios e refúgios
• Coordenação entre polícias
• Coordenação com agentes de tipo diferente
Percepção e Actuação
• Existem três tipos de informação sensorial:– Visual– Audição– Recepção rádio
• Um agente pode executar as seguintes acções:– Deslocar-se– Falar (voz e rádio)– Acções específicas do tipo de agente
Agentes Centro e comunicação
Função:• Servir de interface de
comunicação entre agentes de diferentes tipos
• Tomar decisões de coordenação de agentes
Desafios associados:• Tirar partido da visão global para melhorar as decisões de alto nível
• Coordenação dos agentes do mesmo tipo
• Gestão das limitações de comunicação
Mais informações:
www.fe.up.pt/~rescue
A equipa FC Portugal
Estados de simulação
É da responsabilidade de cada agente enviar as acções/mensagens antes do inicio do próximo tempo
Devido à natureza discreta do simulador, para um agente, cada passo de simulação tem:
• Fase de percepção
• Fase de envio de acções
• Fase de envio de mensagens
Blocos comuns aos agentes
• Módulos de gestão de comunicações
• Módulos de movimentação
• Módulos de particionamento de mapa
Funcionamento de Ambulâncias
• Após fase inicial agem como uma só
• Fazem o escalonamento dos agentes conhecidos e desenterram o melhor
• Uma leva ao refúgio, as outras passam para o seguinte
• Quando não conhecem mais civis, exploram as partes desconhecidas do mapa
Ambulâncias - melhorar
• Melhorar a predição do tempo de vida
• Conseguir prever a influência dos incêndios nos agentes soterrados
Funcionamento de Bombeiros
• Ataque inicial – escolha do melhor edifício a apagar.
• Formar grupos• Atribuir uma região a cada grupo• Escolha de edifícios alvo e origem• Recarregar água• Procurar incêndios• Procurar civis• Verificar saúde de civis
Bombeiros - melhorar
• Adicionar factores de avaliação relevantes– Ex: Definição do conceito de Bairro
• Parameterizar melhor os edifícios que não vale a pena apagar
• Conseguir prever melhor a evolução dos incêndios.
Funcionamento de Polícias
Gestão de Tarefas:
• Libertar agentes
• Limpar caminhos para determinada região
• Limpar à volta do refúgio
• Limpar caminho para determinado edifício
• Limpar célula
• Procurar civis na célula
Polícia - melhorar
• Conseguir identificar nós chave prevendo o tráfego com base na localização de civis, incêndios e refúgios
Tomada de decisões
• Para cada decisão existe uma fórmula
• Em cada formula são considerados vários factores de decisão
• Cada factor é normalizado e afectado por um coeficiente
• Existem ainda factores de folga/confiança para os casos limite
Configuração de Agentes
• Existe um ficheiro de configuração para cada tipo de agente
• Existem ficheiros de configuração específicos para certos mapas
Exemplo de uma tomada de decisão
Escolha do próximo edifício na fronteira de uma região a ser apagadoPara cada edifício a arder na fronteira:weight = (coefc * wc + coefnn * wnn + coefdc * wdc + coefdu * wdu
+ coefbn * wbn + coefe * we+ coefunbarea * wpa - coefdestarea * wna);
if (((Building *) (*it))->buildingAreaTotal() < param(area_limit))
weight += param(area_priority);
if (((Building *) (*it))->fieryness() == 1)weight += param(one_fieryness_priority);
if (((Building *) (*it))->fieryness() == 2)weight += param(two_fieryness_priority);
Exemplo de uma tomada de decisão (cont)
Cálculo de um sub-peso:
wc = (double)(civNum - mincn) / (maxcn - mincn + 1E-6);
wc *= (int) ((civNum - 1) / acn) + 1;
Exemplo de pesos em Polícias
• ProcessCell=5
• FreeAgent=180
• ClearPath=30
• ClearToBuilding=10
• ClearAroundBuilding=15
• SearchCellForCivilian=1
Mais informações:
www.fe.up.pt/~rescue
FCPx
• FC Portugal eXtended Freiburg Viewer
• Ferramenta para análise de resultados
• Comparação entre diferentes equipas
• Comparação entre estratégias, abordagens e/ou parâmetros de agentes na mesma equipa
Avaliação competitiva
• V – Score
• P – Número de agentes vivos
• S – Somatório da saúde de todos os agentes vivos
• Sint – Somatório da saúde de todos os agentes no início da simulação
• B – Área total de edifícios não danificada
• Bint – Área total não danificada no início da simulação
Bint
B
Sint
S+P=V
Novos parâmetros de avaliação
Necessários para:• Avaliar pequenas melhorias• Contrariar a natureza estocástica do
simulador• Comparações precisas entre agentes de
diferentes equipas• Avaliação de aspectos precisos de um
agente• Identificar as principais falhas de uma
equipa
Final do Campeonato Europeu
Usando o FCPx...
Análise Comparativa
• Em tabelas...
E em gráficos...FC Portugal MRL
Mais informações:
www.fe.up.pt/~rescue/FCPx