la guerra fri.a. · 2018. 1. 2. · 1 ideas y mecánicas estrategia por turnos 1vs1vs1 (aliens vs...

23
La Guerra FrI.A. ALIENS vs USA vs URSS

Upload: others

Post on 05-Oct-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

La Guerra FrI.A.ALIENS vs USA vs URSS

Page 2: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

Grupo 6: En la granja de pepito I.A. I.A. o

Andoni PinillAIRaúl CuadrAIdoCarlos RAIzoDiego MacIAJosé MarIA PizanaNéstor L. ZapatIA

Page 3: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

Índice1. Ideas y mecánicas

2. Editor de juego3. IA: Idea general.4. Capa High Level AI

4.1. Decision Tree4.2. Creación de unidades.

5. Capa Terrain Analysis6. Capa Allocation

6.1. Matrices de convolución6.2. Configuración del grid6.3. Pathfinding

6. Rendimiento 7. Logros y limitaciones

Page 4: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

1 Ideas y mecánicas

✘ Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS)

✘ Mapa hexagonal prefijado formando un triángulo:✗ Cada facción en una esquina.✗ Luna en el centro del triángulo.✗ Terreno difícil: Asteroides.✗ Ciudades repartidas por el mapa.

✘ Objetivo: Controlar la Luna el mayor tiempo posible.

Page 5: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una
Page 6: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

1 Ideas y mecánicas

✘ Recursos: energía y materiales

✘ Ciudades:✗ Minas. Proporcionan materiales.✗ Satélites. Proporcionan energía.✗ Luna. Proporciona materiales y energía.

✘ Naves:✗ Infantería (counter de Antitanque)✗ Tanque (counter de Infantería)✗ Antitanque (counter de Tanque)

Page 7: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

2 Editor de juego

✘ Tool para el cambio rápido del diseño de mapa sin arrastrar de carpetas.

✘ Todo sucede en edición, no hace falta darle a play.

✘ Guardado y cargado de layouts en ficheros.

Page 8: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

Artículo: Strategies for Strategy Game AI (Lane, 1999)

Page 9: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

3 IA: Idea General

2º Terrain Analysis

3º Allocation

1º High Level AI

-Relacionar recursos (unidades, …) con objetivos (goals).

-Encontrar enemigos y clasificar objetivos por importancia (dependiendo de AIP).-Target-goals.-Ranked by priority.

-Cambiar prioridades y modo AIP.-Examina factores de gran escala (comparar nuestras fuerzas con las del enemigo).-Decision Making (decision tree).-Output: switch AIP.

Strategic AI

Page 10: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

4 Capa High Level AI

-Input: factores de gran escala (ratio fuerzas amigas-enemigas, triggers específicos, amenaza general).

-Proceso: Decision Making. Árbol de dicisiones.

-Output: switch AIP (prioridades generales).

✘ AIP: Lista de prioridades generales con pesos. Ejemplo: Conquistar Luna(1), Atacar ALIENS(2), Conquistar Minas(3).

✘ Se estudia el estado del mapa.✗ Número de unidades de cada tipo de cada Facción.✗ Número de ciudades de cada Facción.

✘ A partir del estudio se modifican las prioridades. (Árbol de decisiones).

Page 11: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

4 Capa High Level AIÁrbol de decisiones

Raíz

Conquistar Luna

NOConquistar

Luna

Escoger facción objetivo

Defender Ciudades

Atacar unidades de facción

Conquistar ciudades

Si todos los parámetros sonaproximadamente similares o somos superiores y aún no hemos conquistado la Luna.

Si no.

Si estoy por encima de otras facciones y he conquistado la Luna.

No he conquistado la Luna y alguna facción destaca.

Una facción destaca por tener más unidades

Una facción destaca por tener más ciudades

Page 12: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

4 3 2

0 2 2

3 1 3

✘ Spawnear unidades que necesita la facción dependiendo de las prioridades:✗ Si quieres atacar a una facción, crear unidades counter.

4 Capa High Level AICreación de unidades

USA

Aliens

URS

Page 13: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

5 Capa Terrain Analysis

✘ Dependiendo de las prioridades se definen celdas objetivo con pesos. Ejemplo:✗ Prioridad: Conquistar Minas.✗ Output: Celdas de las Minas con el peso de la

prioridad.

-Input: Prioridades (con pesos) de la AIP.

-Proceso: Determinar objetivos geográficos a partir de las prioridades.

-Output: objetivos geográficamente definidos con prioridades.

Page 14: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

6 Capa Allocation

✘ Relacionar las unidades disponibles con los objetivos. Dependiendo de:✗ Tipo de unidad.✗ Distancia al objetivo.✗ Matrices de convolución.

✘ Órdenes de movimiento y ataque a las unidades.

-Input: objetivos geográficamente definidos con prioridades.

-Proceso: relacionar recursos (unidades) con objetivos.

-Output: órdenes a las unidades.

Page 15: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

6 Capa AllocationPathfinding

✘ Adaptar pathfinding a un mapa hexagonal.

La Ocultasió La Guerra FrI.A.

Page 16: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

6 Capa AllocationConfiguración del grid

Para cada celda objetivo

Multiplicador de peso *=0.8

Para cada enemigo

Le puedo vencer?

ADEMÁS

Peso*=0.95 Peso*=1.2

SI NO

DESPUÉS

AQUÍ LA MATRIZ YA ESTÁ CONFIGURADA

Convolucionamos el grid con una matriz de smoothing

Page 17: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

6 Capa AllocationMatrices de convolución

6

3

5

3

24

1

1

1

3

1

11

1

4,5

3,66

3,77

3,33

2,833,5

3

x

Donde Mi = celdas de M que intervienen en la evaluación

HexoMatriz de

convolución M

Estado inicial de las celdas

Estado final de las celdas

Page 18: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una
Page 19: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

7 Rendimiento IA

✘ Cálculo rápido de camino óptimo mediante el uso de una variación de A*

✘ Toma de decisiones en poco tiempo gracias a la implementación de un decision tree.

✘ Allocation se ha dividido de manera secuencial por objetivos del turno.

Page 20: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

8 Logros

✘ Diseño de una IA con varias capas que estudia el terreno de una forma adecuada.

✘ Capacidad de la IA de decidir la estrategia que más le conviene (decision tree).

✘ Creación de unidades inteligente.✘ Pathfinding con convolución de celdas hexagonales.

Page 21: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

9 Limitaciones

✘ Capa Allocation se podría hacer de una forma mucho más eficiente en mapas más grandes.

✘ Convolución cara y difícilmente escalable.

✘ Se podría haber mejorado las llamadas a las unidades con una cola.

Page 22: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

Demo

Page 23: La Guerra FrI.A. · 2018. 1. 2. · 1 Ideas y mecánicas Estrategia por turnos 1vs1vs1 (ALIENS vs USA vs URSS) Mapa hexagonal prefijado formando un triángulo: Cada facción en una

GracI.A.s