cosecivi'16 - sólo puede quedar uno: evolución de bots para rts basada en supervivencia
TRANSCRIPT
![Page 1: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/1.jpg)
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 -
![Page 2: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/2.jpg)
Í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
![Page 3: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/3.jpg)
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
![Page 4: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/4.jpg)
Introducción: Planet Wars
Edificaciones: Planetas
Unidades: Naves
Recursos: Naves generadas en cada planeta
![Page 5: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/5.jpg)
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 ->
![Page 6: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/6.jpg)
Problema del cálculo del Fitness
![Page 7: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/7.jpg)
Selección basada en Justa (por supervivencia)
![Page 8: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/8.jpg)
Política de reemplazo (perdedores)
![Page 9: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/9.jpg)
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}
![Page 10: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/10.jpg)
SurvivalBot vs GPBot
![Page 11: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/11.jpg)
Evolución del Score
![Page 12: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/12.jpg)
Número de Victorias
![Page 13: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/13.jpg)
Evolución de la Edad (generaciones que sobrevive un individuo)
![Page 14: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/14.jpg)
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
![Page 15: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/15.jpg)
SurvivalBot Vs TODOS
BotName Simulations in
training
BullyBot Ninguna*
SurvivalBot 8 000
Genebot 32 000
ExpGenebot 32 000
GPBot 8 000
HotFBot 180 000
![Page 16: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/16.jpg)
Conclusiones (I)
Bots generalistas: • No especializados contra un
oponente concreto • No necesitan un rival para su
evaluación
![Page 17: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/17.jpg)
Conclusiones (II)
Menor número de combates: • Reducción del tiempo de
computación
![Page 18: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/18.jpg)
Conclusiones (III)
Menos sensible al ruido: • Si pierde un combate ➡ será
eliminado • Alta presión selectiva
![Page 19: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/19.jpg)
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.
![Page 20: CoSECiVi'16 - Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia](https://reader033.vdocuments.pub/reader033/viewer/2022042619/5882664e1a28ab470c8b483d/html5/thumbnails/20.jpg)
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