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 -
Í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
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
Introducción: Planet Wars
Edificaciones: Planetas
Unidades: Naves
Recursos: Naves generadas en cada planeta
Introducción: Programación Genética
Algoritmo Evolutivo que evoluciona árboles de decisión binarios ➔Nodos internos: Condiciones ➔Hojas: Acciones
Individuo -> modelo de comportamiento Evaluación -> jugar una combate contra un rival, obteniendo una puntuación Operadores adaptados ->
Problema del cálculo del Fitness
Selección basada en Justa (por supervivencia)
Política de reemplazo (perdedores)
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}
SurvivalBot vs GPBot
Evolución del Score
Número de Victorias
Evolución de la Edad (generaciones que sobrevive un individuo)
Análisis de Incertidumbre (ruido)
Factor de ruido:
Score máximo – Score mínimo:
30 mejores bots
10 mapas (5 entrenados)
30 combates por mapa
SurvivalBot Vs TODOS
BotName Simulations in
training
BullyBot Ninguna*
SurvivalBot 8 000
Genebot 32 000
ExpGenebot 32 000
GPBot 8 000
HotFBot 180 000
Conclusiones (I)
Bots generalistas: • No especializados contra un
oponente concreto • No necesitan un rival para su
evaluación
Conclusiones (II)
Menor número de combates: • Reducción del tiempo de
computación
Conclusiones (III)
Menos sensible al ruido: • Si pierde un combate ➡ será
eliminado • Alta presión selectiva
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.
Muchas gracias
¿Alguna pregunta?
Antonio Fernández-Ares [email protected] - @antaress
Pablo García-Sánchez [email protected] - @fergunet
Antonio M. Mora [email protected] - @amoragar
Top Related