Académique Documents
Professionnel Documents
Culture Documents
programación de
videojuegos
David Erosa García
Luis Rodero Morales
ascii@talika.eii.us.es tf2@talika.eii.us.es
Inteligencia Artificial
• Antes de la generalización del uso de técnicas de IA, los PNJ de los juegos
se comportaban de una manera fija:
• Disparos aleatorios.
3
Introducción
Soluciones
• Búsqueda de caminos.
• Heurística.
• Algoritmos genéticos.
• Redes neuronales.
• Lógica difusa.
4
Finite State Machines
Introducción
5
Finite State Machines
Introducción
• Para diseñar una FSM, tenemos que tener en cuenta todo lo que queremos
que haga, y de qué manera.
6
Finite State Machines
Ejemplos de FSM's
• Un ejemplo básico:
Parado
No
¿Lo veo?
Sí
Cazar
No
¿Lo veo? No
Sí
¿Cerca?
Sí
Atacar
7
Finite State Machines
Ejemplos de FSM's
• Tenemos una FSM que representa a una torreta automática, con las
siguientes características:
8
Finite State Machines
Ejemplos de FSM's
• Tenemos otra FSM que representa a las balas que dispara la torreta.
9
Finite State Machines
Ejemplos de FSM's
• Como propuesta, podemos diseñar una FSM que implemente otro tipo de
bala con las cualidades de la anterior y las siguientes:
10
Búsqueda de caminos
Introducción
• Ejemplo:
11
Búsqueda de caminos
Crash and Turn
12
Búsqueda de caminos
Algoritmo de Dijkstra
• Las aristas tienen un peso que representa la distancia entre los vértices que
unen.
13
Búsqueda de caminos
A*
14
Búsqueda de caminos
A* - G
G = 24 G = 14 G = 10 G = 14 G = 24
G = 20 G = 10 G=0 G = 10 G = 20
G = 24 G = 14 G = 10 G = 14 G = 24
15
Búsqueda de caminos
A* - H
H = 60 H = 50 H = 40 H =30 H = 20 H = 10 1
H = 50 H = 40 H = 30 H = 20 H = 10 H=0 2
H = 60 H = 50 H = 40 H = 30 H = 20 H = 10 3
16
Búsqueda de caminos
A* - F
H = 70 H = 50 H = 40 H = 30 H = 20 1
F = 70 F = 98 F = 98 -> 92 F = 95 F = 94
G = 10 G = 44 -> 38 G = 82 ->76
H = 60 H = 40 H = 10 2
F = 70 F = 84 -> 78 F = 92 -> 86
G = 20 G = 30 -> 24 G = 34 G = 80 G=-
H = 50 H = 40 H = 30 H = 10 H=- 3
F =70 F = 70 -> 64 F = 64 F = 81 F=-
17
Búsqueda de caminos
Caminos - A*
18
Búsqueda de caminos
Caminos - A*
• Ventajas:
• Inconvenientes:
19
Búsqueda de caminos
Region-Based A*
• Se basa en usar regiones de más alto nivel de abstracción para realizar las
búsquedas.
• Dividir el mapa en zonas conectadas por aristas entre las que no existan
obstáculos.
20
Búsqueda de caminos
Iterative-Deepening A*
• Como ejemplo:
21
EOD
• Próximo día: 3D
22