You are on page 1of 15

rboles de juegos

Anlisis y Diseo de Algoritmos

Tipos de juegos
Juegos deterministas Con informacin perfecta Con informacin imperfecta Juegos de azar

Ajedrez, damas, Go, Othello

Backgammon, Monopoly

barquitos

Bridge, poker, scrabble

rboles de juegos
Juego perfecto Dos jugadores Movimientos intercalados Suma cero (la ganancia de uno es la prdida del otro). Informacin perfecta (ambos jugadores tienen acceso a toda la informacin sobre el estado del juego: no se ocultan informacin el uno al otro). No interviene el azar (p.ej. dados). Ejemplos: Nim, Grundy, 3 en raya, conecta-4, damas, ajedrez Nim, Grundy, conecta-

rboles de juegos

Funcin de evaluacin: +1 si gana X -1 si gana O 0 si hay tablas


3

rboles de juegos
Complejidad de algunos juegos

Juego 3 en raya Conecta-4 Damas Ajedrez Go

Estados 9! = 362280 1013 1018 1050 10170

Minimax
Estrategia perfecta para juegos deterministas. IDEA: Elegir el movimiento que nos lleva a la posicin que nos asegura una recompensa mxima en el peor caso (valor minimax). minimax). MAX: Cuando movemos nosotros, elegimos el nodo de mximo valor. MIN: Cuando mueve nuestro oponente, elige el nodo de menor valor (para nosotros).
5

Minimax
rbol con 2 niveles (2-ply): (2-

Minimax

Minimax
Bsqueda minimax (primero en profundidad): 2 2 1 2 1

7 1

7 1

7 1

MAX MIN
8

Minimax
Complejidad b = Factor de ramificacin del rbol d = Profundidad del rbol de juego Tiempo: O(bd). O(b Espacio: O(bd). O(bd) Ejemplo En el ajedrez, b35 y d100, por lo que no podemos explorar el rbol completo del juego.

Poda -

10

Poda -

11

Poda -

12

Poda -

13

Poda -

14

Poda -

15

Poda -

16

Poda -
max min max
= =
0

= =

=0 = =
0

=0
=0

=0 =0

= =0

=0

min

= =
0 0 -3

=0 =

-3

= =0
3

max 0 5 -3 3 3 -3 0 2 -2 3
17

Poda -
max min max
=0 =
= =0

=0 =
= =0 =0 = 3 = =0

=0 =0

min

max 0 5 -3 3 3 -3 0 2 -2 3
18

Poda -
La poda - no afecta al resultado del juego. Cuanto mejor ordenemos los movimientos, ms efectiva ser la poda. Con una ordenacin perfecta, la complejidad del algoritmo es O(bd/2). O(b En otras palabras, con el mismo esfuerzo podremos explorar un rbol del doble de profundidad.
19

Poda -
Por qu se llama poda -? es el valor de la mejor opcin encontrada para el jugador MAX: MAX evitar cualquier movimiento que tenga un valor v peor que (poda si v<). v< es el valor de la mejor opcin encontrada para MIN (mnimo encontrado hasta ahora): MIN evitar cualquier movimiento que tenga, para l, un valor v peor que (poda si v> )

20

En la prctica
Si disponemos de 100 segundos por movimiento y podemos explorar 104 nodos por segundo, slo podremos analizar 106 nodos por movimiento:

Solucin habitual: Cota de profundidad Funcin de evaluacin (heurstica): Solucin aproximada p.ej. Eval(s) Eval(s) = w1 f1(s) + w2 f2(s) + + wn fn(s)
21

En la prctica
Aplicacin: Ajedrez b=35 4-ply (novato) d = 4 bd = 1.5 x 106 8-ply (maestro): Programa tpico para PC d = 8 bd = 2.25 x 1012 12-ply (Kasparov?): 12(Kasparov?): d = 12 bd = 3.4 x 1018 En Deep Blue, el valor medio de b se reduca de 35 a 6 utilizando la poda -.

22

En la prctica
Aplicacin: Ajedrez

23

En la prctica
Damas: Damas: Chinook venci al campen del mundo, Marion mundo, Tinsley, en 1994 usando una base de datos que defina el juego perfecto para todas los finales de partida con 8 o menos piezas (443748 millones de posiciones). posiciones). Ajedrez: Ajedrez: Deep Blue venci a Gary Kasparov en 1997 analizando 200 millones de posiciones por segundo y usando 8000 caractersticas y heursticas que le permitan analizar algunas secuencias de hasta 40 ply. Othello: Othello: Los campeones humanos se niegan a jugar contra ordenadores porque son demasiado buenos. buenos. Go: Los campeones humanos se niegan a jugar contra Go: ordenadores porque son demasiado malos (b>300). 24

Juegos de azar
Hay juegos, como el Backgammon, en los que Backgammon, interviene el azar (en forma de dados):

25

Juegos de azar

26

Juegos de azar
A1 como mejor movimiento 2 resultados con probabilidades (0.9, 0.1) A2 como mejor movimiento

27

Bibliografa
Stuart Russell & Peter Norvig: Artificial Intelligence: Norvig: A Modern Approach [second edition]. Chapter 6: Adversarial Search. Prentice Hall, 2002. ISBN Search. 0137903952. http://aima.cs.berkeley.edu/

28

You might also like