Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia

20
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 - Presentación de Antonio J. Fernández-Ares - - CoSECiVi 2016 -

Transcript of Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia

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

- Presentación de Antonio J. Fernández-Ares -

- 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