2. JUEGOS
En el Capítulo 2 se introdujo la
diferencia entre entornos multi-agente
cooperativos y competitivos.
Los entornos competitivos, en los
cuales los objetivos del agente están en
conflicto, dan ocasión a problemas de
búsqueda entre adversarios a menudo
conocidos como juegos.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 2
3. JUEGOS
Implican entornos deterministas,
totalmente observables en los
cuales hay dos agentes cuyas
acciones deben alternar y en los
que los valores utilidad, al final de
juego, son siempre iguales y
opuestos (suma cero).
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 3
5. JUEGOS
Son interesantes porque son
demasiado difíciles para resolverlos.
Requieren la capacidad de tomar una
decisión cuando no se puede calcular
la decisión óptima.
Castigan la ineficiencia con
severidad.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 5
6. DECISIONES ÓPTIMAS EN JUEGOS
Consideraremos juegos con dos
jugadores: MAX y MIN
MAX mueve primero, luego por turno
hasta que el juego se termina.
Al final del juego se conceden puntos al
ganador y penalizaciones al perdedor.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 6
7. DECISIONES ÓPTIMAS EN JUEGOS
El juego puede definirse como una clase de
problemas de búsqueda:
Estado inicial
Función sucesor
Test terminal
Función utilidad
El estado inicial y los movimientos para cada
lado definen el árbol de juegos
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 7
8. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 8
Desde el estado inicial, MAX tiene
nueve movimientos posibles.
9. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 9
El juego alterna entre la colocación de una X
para MAX y la colocación de un O para min,
hasta que alcancemos nodos hoja
correspondientes a estados terminales
10. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 10
El juego alterna entre la colocación de una X para MAX y la
colocación de un O para min, hasta que alcancemos nodos hoja
correspondientes a estados terminales, de modo que un jugador
tenga tres en raya o todos los cuadrados estén llenos.
11. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 11
12. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 12
13. PARTE DEL ÁRBOL DEL TIC TAC
TOE
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 13
El número sobre cada nodo
hoja indica el valor de
utilidad del estado terminal
desde el punto de vista de
MAX ; se supone que los
valores altos son buenos
para MAX y malos para min
(por eso los nombres de los
jugadores).
14. En un problema de búsqueda normal, la
solución óptima sería una secuencia de movi-
mientos que conducen a un estado objetivo
(un estado terminal que es ganador).
En un juego, por otra parte, min tiene algo que
decir sobre ello.
MAX por lo tanto debe encontrar una
estrategia contingente que especifica el
movimiento de MAX en cada movimiento.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 14
ESTRATEGIAS ÓPTIMAS
15. Incluso un juego simple como tíc-tac-toe es
demasiado complejo para dibujar el árbol de
juegos entero,
por tanto cambiemos al juego trivial de la
Figura:
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 15
ESTRATEGIAS ÓPTIMAS
Nodos MAX :
Nodos min :
Nodos terminales:
valor utilidad para
MAX
16. 08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 16
ESTRATEGIAS ÓPTIMAS
Los movimientos posibles para max, en el nodo
raíz, se etiquetan por a1 a2, y a3. Las respuestas
posibles a a1 para min, son b1 b2, b3, etc. Este
juego particular finaliza después de un movimiento
para MAX y min.
17. 08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 17
VALOR MINIMAX
• Considerando un árbol de juegos, la estrategia óptima
puede determinarse examinando el valor minimax de
cada nodo, que escribimos como el VALOR-
MINIMAX(n).
• El valor minimax de un nodo es la utilidad (para MAX)
de estar en el estado correspondiente, asumiendo que
ambos jugadores juegan óptimamente desde allí al final
del juego.
• El valor minimax de un estado terminal es solamente su
utilidad.
• MAX preferirá moverse a un estado de valor máximo,
mientras que MIN prefiere un estado de valor mínimo.
18. 08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 18
VALOR MINIMAX
VALOR-MINIMAX(n) =
Utilidad(n) Si n es un estado
terminal
Max s ∈
Sucesores(n
)
VALOR-
MINIMAX(s)
SI n es un
estado MAX
Min s ∈
Sucesores(n
)
VALOR-
MINIMAX(s)
SI n es un
estado MIN
19. Los nodos terminales se etiquetan por sus valores de utilidad.
El primer nodo de min, etiquetado B, tiene tres sucesores con
valores 3, 12 y 8 , entonces su valor minimax es 3
Del mismo modo, los otros dos nodos de min tienen un valor
minimax de 2.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 19
VALOR MINIMAX
20. El nodo raíz es un nodo MAX; sus sucesores tienen valores
minimax de 3, 2 y 2; entonces tiene un valor minimax de 3.
Podemos identificar también la decisión minimax en la raíz: la
acción a1 es la opción óptima para MAX porque conduce al
sucesor con el valor minimax más alto.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 20
DECISIÓN MINIMAX
21. PODA ALFA-BETA
El problema de la búsqueda minimax es que el número de
estados que tiene que examinar es exponencial en el número de
movimientos.
Lamentablemente no podemos eliminar el exponente, pero
podemos dividirlo, con eficacia, en la mitad.
podemos tomar “prestada” la idea de podar del Capítulo 4 a fin de
eliminar partes grandes del árbol.
Cuando lo aplicamos a un árbol minimax estándar, devuelve el
mismo movimiento que devolvería minimax, ya que podar las
ramas no puede influir, posiblemente, en la decisión final
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 21
25. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 25
A[-∞ ; +∞ ]
B[-∞ ; +3 ]
3
La primera hoja debajo de
B tiene el valor 3, entonces
B que es un nodo MIN,
tiene como valor máximo 3
26. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 26
A[-∞ ; +∞ ]
B[-∞ ; +3 ]
3 12
La segunda hoja debajo de
B tiene un valor 12; MIN
evita este movimiento, por
tanto el valor de B es
todavía como máximo 3
27. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 27
A[-∞ ; +∞ ]
B[-∞ ; +3 ]
3 12 8
La tercera hoja debajo de
B tiene un valor 8; …
28. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 28
A[- ∞; +∞ ]
B[+3 ; +3 ]
3 12 8
La tercera hoja debajo de
B tiene un valor 8; hemos
visitado todos los
sucesores de B, por tanto
el valor de B es
exactamente 3
29. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 29
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
Podemos deducir que el
valor de la raíz es al
menos 3 hasta ahora
32. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 32
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ]
La primera hoja debajo de
C tiene el valor 2,
entonces C que es un
nodo MIN tiene como
máximo valor 2
33. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 33
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ]
Como sabemos que B vale
3, MAX nunca elegiría C,
por tanto no hay razón
para mirar los otros
sucesores de C
34. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 34
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ]
Esto es un ejemplo de
poda alfa-beta
37. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 37
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ] [- ∞; +14] D
14
La primera hoja de D vale
14, entonces D vale como
máximo 14. Como es
mayor que 3 hay que
seguir explorando
39. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 39
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ] [- ∞; +5] D
14 5
La segunda hoja debajo de
D vale 5, D como máximo
valdrá 5 pues es un nodo
MIN. Como 5 podría ser el
valor de D hay que seguir
explorando
42. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 42
A[+3; +∞ ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ] [+2 ; +2] D
14 5 2
El tercer y ultimo sucesor
de D vale 2, D vale
exactamente 2.
43. PODA ALFA-BETA
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 43
A[+3; +3 ]
B[+3 ; +3 ]
3 12 8
C
2
[- ∞; +2 ] [+2 ; +2] D
14 5 2
La decisión de MAX
entonces es moverse a B
dando un valor de 3
44. La poda alfa-beta consigue su nombre de los dos
parámetros que describen los límites sobre los valores
hacia atrás que aparecen a lo largo del camino:
α = el valor de la mejor opción (es decir, valor más
alto) que hemos encontrado hasta ahora en cualquier
punto elegido a lo largo del camino para MAX
β = el valor de la mejor opción (es decir, valor más
bajo) que hemos encontrado hasta ahora en cualquier
punto elegido a lo largo del camino para MIN.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 44
PODA ALFA-BETA
45. La búsqueda alfa-beta actualiza el valor de
𝛼 𝑦 𝛽 según se va recorriendo el árbol y poda
las ramas restantes en un nodo tan pronto
como el valor del nodo actual es peor que el
actual valor 𝛼 𝑜 𝛽 para MAX o MIN,
respectivamente.
La eficacia de la poda alfa-beta es muy
dependiente del orden en el que se examinan
los sucesores.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 45
PODA ALFA-BETA
46. EJERCICIO
Aplicar la estrategia minimax con poda alfa-beta sobre el siguiente
árbol de juego. Mostrar el árbol resultante y los nodos podados.
Considera los dos casos:
i) los nodos son generados de izquierda a derecha;
ii) los nodos son generados de derecha a izquierda.
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 46
2 3 7 2 1 8 5 1 2 4 3 6
47. BIBLIOGRAFÍA
INTELIGENCIA ARTIFICIAL: UN ENFOQUE MODERNO.
STUART RUSSELL Y PETER NORVIG.
PEARSON EDUCATION
2da Edición, 2004.
1240 páginas
Capitulo 6, Paginas 181 a 215
http://dis.um.es/~ginesgm/files/doc/ejerc7-2.pdf
08/05/2014FCT - UNCA ING. HÉCTOR ESTIGARRIBIA 47