RESUMEN:
Este artículo propone un algoritmo evolutivo para optimizar el comportamiento de bots (NPCs) que no requiere de una función de fitness explícita,
usando en su lugar combates por pares (a modo de "justa") en los que sólo uno
de los contendientes sobrevivirá. Este proceso hará las veces de mecanismo de
selección del algoritmo, en el que sólo los ganadores pasarán a la siguiente generación del mismo. Se ha utilizado un algoritmo de Programación Genética,
diseñado para generar motores de comportamiento para bots del conocido RTS
Planet Wars. Este método tiene dos objetivos principales: en primer lugar, paliar
el efecto que la naturaleza "ruidosa" de la función de fitness añade a la evaluación
y, en segundo lugar, generar bots más generales (menos especializados) que los
que se obtienen mediante algoritmos evolutivos en los que se usa siempre un contendiente común para evaluar los individuos. Más aún, la omisión de un proceso
de evaluación explícito reduce el número de combates necesarios para evolucionar, lo que reduce a su vez el tiempo de cómputo del algoritmo. Los resultados
demuestran que el método converge y que es menos sensible al ruido que otros
métodos más tradicionales. Además de esto, con este algoritmo se obtienen bots
muy competitivos en comparación con otros bots de la literatura.
CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
1. Sólo puede
quedar uno:
Evolución de Bots
para RTS basada en
supervivencia
Antonio Fernández-Ares, Antonio M. Mora,
Pablo García-Sánchez, Pedro A. Castillo, J.J. Merelo
Universidad de Granada
- CoSECiVi 2016 -
2. Índice
1.Introducción
a.RTSs
b.Planet Wars
c.Programación Genética
d.Problema del cálculo
del Fitness
2.SurvivalBot
a.Selección basada en
Justas
b.Política de Reemplazo
3.Experimentos
a.Configuración
b.SurvivalBot vs GPBot
c.Evolución del score
d.Número de victorias
e.Evolución de la edad
f. Análisis de
incertidumbre
g.SurvivalBot vs TODOS
4.Conclusiones
5. Trabajo Futuro
3. Introducción: RTSs
Real-Time Strategy games (RTS-games)
Recursos
Unidades
Edificaciones
Victoria Conseguir todos los recursos, eliminar todas
las unidades del enemigo o destruir todas las
edificaciones del rival
9. Experimentos y Resultados
Parámetro Valor
Tamaño población 32
Initialización Aleatoria (árboles de tres niveles de profundidad)
Tipo de cruce Cruce de sub-árbol
Tasa de cruce 0,5
Máximo número de turnos por combate 1000
Mutación Mutación de un nodo
Tasa de mutación 0,25
Selección Justa (Torneo entre 2)
Reemplazo Estacionario
Criterio de parada 4000 iteraciones
Máxima profundidad de los árboles 7
Ejecuciones por configuración 30
Mapas utilizados en los combates uno aleatorio entre {76,69,7,11, 26}
19. Trabajo futuro
• Probar el método en nuevos problemas (y
algoritmos).
• Aplicar mecanismos para mejorar el AE.
• Considerar árboles de decisión mayores y
más complejos.