Using multi-agent potential fields in real-time strategy games
Artigo apresentado no AAMAS2008, apresenta o uso de campos potenciais multiagentes (doravante MAPF), técnica originada na robótica para controle da navegação de robôs em ambientes dinâmicos. No artigo, os autores dizem que a indústria de jogos é relutante quanto à implementação desta técnica, devido a preocupações com desempenho e altos custos de implementação. Daí, o objetivo do trabalho era avaliar o potencial de MAPF em jogos de estratégia de tempo real. Este objetivo se divide em dois:
- Como o MAPF se comporta comparado a soluções tradicionais?
- Até que nível a abordagem MAPF é configurável com respeito a mudanças no ambiente?
Uma justificativa para o uso de videogames é que eles formam plataformas de teste perfeitas para sistemas multiagentes. O ambiente pode ser competitivo e os NPCs devem se comportar de maneira racional e autônoma. Além do mais, as unidades atuam em um ambiente que possibilita comunicação explícita e colaboração para que certas tarefas sejam resolvidas.
Um dado interessante sobre o artigo é que ele é completo ao apresentar suas seções.
A seguinte metodologia foi estruturada para o projeto de uma solução MAPF:
- Identificação de objetos
- Identificação de forças do jogo
- O processo de atribuição de forças para os objetos
- Granularidade de tempo e espaco no ambiente
- Os agentes do sistema
- A arquitetura do sistema multiagentes (MAS)
Para validação do modelo, a engine de RTS ORTS foi usada, com foco em dois jogos de dois jogadores:
- Batalha de tanques, onde cada jogador possui 50 tanques e 5 bases, com o objetivo de destruir as bases do oponente. Os mapas, neste modo de jogo são gerados dinamicamente;
- Combate tático, onde cada jogador possui 50 soldados com o objetivo de destruir todos os soldados do oponente. Os soldados são posicionados aleatoriamente no mapa.
Implementação de MAPF no ORTS
A implementação de MAPF no ORTS seguiu a metodologia supracitada. Sobre os campos projetados, alguns destaques:
- Quatro forças básicas: evitar colisão com objetos em movimento, caçar as forças inimigas e, para a batalha de tanques, evitar colisões com montes e defender as bases - daí três tipos de campos: navegação, estratégico e tático;
- O campo de navegação é gerado repelindo terreno estático;
- O campo estratégico é atrativo, levando as unidades em direção aos oponentes e situando-as em posição de ataque;
- As próprias unidades, bases e ovelhas geram pequenos campos repelentes
- Todos os campos gerados por objetos são pesados e somados para formar um campo total usado pelos agentes para seleção de ações
Arquitetura do MAS
O controle tático foi dividido em dois nívels. Para que os agentes ataquem tanto unidades quanto bases, um dos seguintes requisitos deve ser satisfeito:
- Deve-se possuir, no mínimo, o dobro de tanques que o adversário;
- O oponente deve possuir menos de seis tanques;
- O oponente deve possuir apenas uma base restante.
Caso esses requisitos não sejam satisfeitos, o objetivo tático é atacar apenas unidades do oponente e o campo potencial gerado pelas bases inimigas é repelente.
O artigo também descreve a existência de um coordenador de ataques, responsável por otimizar os ataques às unidades do oponente, destruindo o máximo de unidades inimigas em por unidade de tempo.
Experimentos
A inteligência artificial desenvolvida participou do torneio de 2007 do ORTS e se colocou na sexta posição de nove oponentes. A justificativa dos autores é a de que os times anteriores usavam abordagens mais tradicionais para o desenvolvimento de caminhos, enquanto o deles era o de investigar quão bom era o MAPF.
Discussão
Apesar de serem bons na robótica, em jogos os campos potenciais são menos controláveis que algoritmos tradicionais de pathfinding, além de o A* possuir melhorias específicas que geram bons resultados. Além do mais, agentes navegando apenas com campos potenciais podem ficar presos em ótimos locais.
Sobre o problema de máximos locais, uma abordagem baseada na trilha de feromônios, como os usados pelas formigas, pode ajudar a resolver este problema.
A conclusão a que se chega é que é possível implementar MAPF em jogos RTS e possuir um desempenho satisfatório. No entanto, os autores afirmam que mais pesquisa é necessária sobre como soluções baseadas em MAPF devem ser realizadas.