BUSQUEDA EN JUEGOS DE ADVERSARIO Sección 1-4 Cápitulo 6 BUSQUEDA EN JUEGOS DE ADVERSARIO Sección 1-4
Bosquejo Las decisiones óptimas Poda α-β Las decisiones imperfectas de tiempo real
Juegos vs. Búsqueda Adversario “imprevisible” especificar un movimiento para cada respuesta posible del adversario Límite de tiempo improbable encontrar meta, deben aproximarse
Arbol de juego (2 jugadores, deterministas, turnos)
Minimax Jugada perfecta para juegos determinísticos Idea: mover a la posición con mayor valor minimax = Mejor ganancia vs. mejor jugada E. g. Explorando a profundidad 2
Algoritmo Minimax
Propiedades de minimax ¿Completa? Sí (si el árbol es finito) ¿Óptimo? Sí (en contra de un adversario óptimo) ¿Complejidad en Tiempo? O(bm) ¿Complejidad en espacio? O(bm) DFS Para el ajedrez, b ≈ 35, m ≈100, para juegos "razonables“. Solución exacta no factible.
Ejemplo de α-β
Ejemplo de α-β
Ejemplo de α-β
Ejemplo de α-β
Ejemplo de α-β
Propiedades de α-β La poda no afecta el resultado final Un buen orden de movimientos mejora la efectividad de poda Orden perfecto. Complejidad en tiempo = O(bm/2) à duplica la profundidad de búsqueda Un ejemplo simple del valor de razonamiento donde las computaciones tienen importancia (una forma de metarazonamiento)
¿Por que α-β? α es el valor de la mejor elección (el valor más alto) encontrada hasta ahora en cualquier punto a lo largo del camino hacia max Si v es peor que α, max lo evitará à poda esa rama β semejante para min
Algoritmo α-β
Algoritmo α-β
Recursos Limitados Tenemos 100 s, explorar 104 nodos/s 106 nodos por movimiento método estándar: Prueba de truncamiento: v.g., Límite de profundidad La función de evaluación = estimar la conveniencia de la posición
Funciones de evaluación Para el ajedrez, típicamente la suma ponderada lineal de características Eval(s) = w1 f1(s) + w2 f2(s) + … + wn fn(s) w1 = 9 con f1(s) = (el número de reinas blancas) – (el número de reinas negras) etc.
Recortando la búsqueda MinimaxCutoff es idéntico a MinimaxValue excepto Terminal? es remplazada por Cutoff? Utility es remplazada por Eval Funciona en la práctica? bm = 106, b=35 m=4 Adelantarse 4 jugadas jugador pésimo! 4-ply ≈ Principiante humano 8-ply ≈ PC típica, maestro humano 12-ply ≈ Deep Blue, Kasparov
Juegos Determinísticos Damas: Chinook acabó reinado de 40 años de campeón mundial Marion Tinsley en 1994. Usaba una base de datos precomputada de finales perfectos para 8 o menos piezas. Un total de 444 billones de posiciones. Ajedrez: Deep Blue derrotó al campeón mundial Garry Kasparov en seis juegos en 1997. Deep Blue registra 200 millones de posiciones por segundo. Evaluación muy sofisticada, y métodos sin revelar para explorar hasta 40 jugadas adelante. Othello: Los campeones humanos se reúsan a jugar en contra de computadoras. Son demasiado buenas. Go: Los campeones humanos se reúsan a jugar contra computadoras. Son demasiados malas. En Go, b > 300, la mayoría de programas usan bases de conocimiento de patrones para sugerir movimientos aparentemente buenos.
Resumen ¡Los juegos son divertidos ! Ilustran varias puntos importantes acerca de IA La perfección es inalcanzable debe aproximarse