Reunião do dia 06/06/2012
Reparador
Quando um agente precisar ser reparado, deve avisar os reparadores. De acordo com a localização do agente ou prioridade de reparo, um reparador será alocado para aquele agente. Cada reparador possui sua lista de agentes doentes a serem reparados. O reparador, então, passa a ter poderes sobre o agente a ser reparado e deve determinar um ponto de encontro no mapa. O agente a ser reparado deve se deslocar até o ponto definido pelo reparador para que seja feito o reparo.
- Os reparadores, mesmo desabilitados, podem reparar outros agentes. Assim, se um reparador for desabilitado pode ser reparado por outro reparador.
Exploitação
Visa manter a maior área possível. Neste ponto já se conhece os cenário e os vértices de maior valor.
- Faz uma busca em largura a partir do melhor lugar do mapa (grupo de vértices de maior valor).
Como organizar os agentes para garantir a dominação sobre esta área?
Utilizar um sistema de feudos, distribuindo os agentes em camadas. Na camada central ficam os agentes exploradores. Na segunda camada, os agentes sentinelas e os reparadores e, por fim, os sabotadores ficam na camada mais externa. Assim, o sentinela tem condições de avisar o sabotador da localização do inimigo para que este realize o ataque. Cada agente fica há um vértice de distância do outro e o feudo pode ser aberto ou condensado se houver necessidade.
-
O sentinela deve permanecer o mais longe do núcleo do feudo possível, de forma que ele consiga enxergar tanto o centro do feudo quanto as fronteiras externas. Sentinela consegue "mandar" nos outros agentes para organizar o feudo.
-
Sabotador fica "batendo" no inimigo para tentar derrotá-lo. Quando um sabotador for atingido, este volta para o centro do feudo para ser reparado.
-
Quando os agentes forem atacados - ataque com poucos agentes inimigos -, chamam os sabotadores
-
Quando ocorrer um ataque grande (muitos agente inimigos atacando ao mesmo tempo), os sentinelas/sabotadores coordenam os outros agentes para a defesa da área. A defesa consiste em condensar o feudo (diminuindo a distância entre os agentes ou aumentando o número de agentes em uma determinada área, de acordo com a necessidade).
Estratégia para o ataque com muitos agentes inimigos)
- Aumenta sobreposição do feudo (diminui a distância entre os agentes)
- Redistribui os agentes, concentrando-os em um único ponto (de forma proporcional à quantidade de agentes em ataque)
- Agente que vê o ataque primeiro passa a ter maior prioridade. Se mais de um agente ver um ataque ao mesmo tempo, utiliza-se estratégias de priorização de coordenação: o ataque com mais agentes é resolvido antes, aquele no qual o agente está mais próximo, etc...
- Se o time chegar depois na melhor área do mapa, deve disputá-la com o outro time.
Ataque e Defesa
- Utilizam as mesmas idéias da exploração
- O sentinela monta a área
- Para o ataque, a área deve ser a de maior valor.
Compra
- Não é necessária a compra de visão
- Não é necessária a compra de energia pois o maior peso das arestas é menor que a energia máxima dos agentes
- Manter o sabotador com força maior que a maior força do inimigo e com saúde maior do que a maior saúde do inimigo para que possa desabilitar o agente inimigo em um único ciclo.
- Porém o sabotador é fraco. Seria necessário comprar muita força. Talvez seja melhor deixar o reparador mais forte - menos força a ser comprada.
- Necessita de estratégia para inspeção do inimigo - por ex, inspecionar a cada 100 ciclos
Já foi implementada!
Implementação da Exploitação
- As informações sobre o grafo são compartilhadas entre os agentes, então todos vão conhecer o mesmo grafo.
- Desenvolvimento de um algoritmo que fará a leitura do grafo e distribuirá as posições aos agentes. Um sentinela (escolhido aleatóriamente) determinará onde os demais agentes devem se colocar.
-
O algoritmo se baseia nos agentes habilitados e disponíveis (Um agente disponível é aquele que não está executando um ataque, por exemplo)
- O sentinela executa o algoritmo
- Recebe o número de agentes disponíveis para formação da área
- Avisa os agentes sobre onde devem se posicionar
- Agentes se posicionam no local designado
-
O sentinela deverá reexecutar o algoritmo...
- Se um agente desabilitar durante a formação da área
- Quando um agente indisponível passar a ser disponível
-
Sabotadores nunca estão disponíveis porque são os protetores da área.
Estratégias a serem testadas
- Se em um vértice encontram-se dois reparadores e dois sabotadores (reparadores do time A e sabotadores do time B): é possível que os reparadores nunca morram (um repara o outro)??
A Fazer
- Testar times atuais e dos anos anteriores
- Implementar estratégias: OK
- Essas estratégias precisam de planos de longo prazo. *** Em andamento ***
- 1º tentar implementar utilizando crenças.
- se possível, usar intenções.
Próxima Reunião
Dia 14/06/2012 às 13h30min
Pauta: slides sobre ASP - Daniela