Búsqueda entre Adversarios S1

Page 1

BúsquedaAdversariosentre

En esta clase • Historia / Resumen • Minimax para juegos de suma cero • Poda α-β • Busqueda de Arbol de Montecarlo

Tipos de Juegos • Juego = entorno de tareas con > 1 agente • Ejes • ¿Determinista o estocástico? • ¿Información perfecta (totalmente observable)? • ¿Dos, tres o más jugadores? • ¿Equipos o individuales? • ¿Turnos o simultáneos? • ¿ suma cero? • Quiere algoritmos para calcular un plan contingente (también conocido como estrategia o política) que recomiende un movimiento para cada eventualidad posible

Juegos “estándar” • Los juegos estándar son deterministas, observables, de dos jugadores, de turnos, de suma cero. • Formulación del juego: • Estado inicial: s0 • Jugadores: Jugador(s) indica de quién es el movimiento • Acciones: Accion(s) para el jugador en movimiento • Modelo de transición: Resultado(s,a) • Prueba de fin: Terminal-Test(s) • Valores terminales: Utilidad(s,p) para el jugador p • O simplemente Utilidad(s) para el jugador que tome la decisión desde el principio

Juegos de suma cero • Juegos de suma cero • Los agentes tienen utilidades opuestas . • Competencia pura: • Uno maximiza , el otro minimiza • Juegos de suma general • Los agentes tienen utilidades independientes • La cooperación, la indiferencia, la competencia, las alianzas cambiantes y más son posibles • Juegos de equipo • Pago común para todos los miembros del equipo

adversariaBúsqueda

Valor de un estado 8 2 0 2 6 4 6… … Valor de un estado: el mejor alcanzableresultado(utilidad) de ese estado Estados terminales: V (s) = conocido Estados no terminales: V (s) = max V(s') s' Î sucesores (s)

Árbol de juego de tres en raya

• Elija la acción que conduce al estado con el mejor valor minimax • Supone que todos los movimientos futuros serán óptimos • => racional contra un jugador racional

Algoritmo minimax

Minimax generalizado • ¿Qué sucede si el juego no es de suma cero o tiene múltiples jugadores? • Generalización de minimax: • Los terminales tienen tuplas • Los valores de nodo también son tuplas de utilidad • Cada jugador maximiza su propio componente • Puede dar lugar a la cooperación y competencia dinámicamente… 1,1,6 0,0,7 9,9,0 8,8,1 9,9,0 7,7,2 0,0,8 0,0,7 0,0,7 8,8,1 7,7,2 0,0,8 8,8,1 7,7,2 8,8,1

Eficiencia minimax • ¿Qué tan eficiente es minimax? • Al igual que DFS (exhaustivo) • Tiempo: O ( b m ) • Espacio: O ( bm ) • Ejemplo: Para ajedrez, b » 35, m » 100 • La solución exacta es completamente inviable • Los humanos tampoco pueden hacer esto, entonces, ¿cómo jugamos al ajedrez?

Poda deárbolesdeJuego

Ejemplo minimax 12 8 5 23 2 144 6 3 2 2 3

Cuestionario alfa-beta

Cuestionario Alfa Beta 2

Propiedades de poda alfa-beta • Teorema: ¡Esta poda no tiene efecto sobre el valor minimax calculado para la raíz! • Un buen ordenamiento de los niños mejora la eficacia de la poda • La profundización iterativa ayuda con esto • Con “ordenamiento perfecto”: • La complejidad del tiempo cae a O ( b m /2 ) • Duplica profundidad soluble! • Este es un ejemplo simple de metarazonamiento. (razonando sobre elrazonamiento) • Para ajedrez: ¡solo 35 50 en lugar de 35 100 ! Yaaay !!!!! 10 10 0 max min

Los valores alfa/beta realizan un seguimiento de los mejores valores que se pueden obtenerde cualquier nodo máximo/mínimo en la ruta desde la raíz hasta el nodo actual

Resumen •

Extensión simple a n-player "girando" max con vectores de utilidades Implementable como un recorrido en profundidad del árbol del juego

La complejidad del tiempo cae a O ( b m /2 ) con un orden de nodos ideal

Para juegos de suma cero, decisiones óptimas definidas por minimax

La solución exacta es imposible incluso para juegos "pequeños" como el ajedrez.

• Poda

Los juegos son problemas de decisión con ³ 2 agentes Gran variedad de problemas y fenómenos según los detalles de las interacciones y losbeneficios.

Complejidad temporal O ( b m ) , complejidad espacial O ( bm ) alfa-beta Conserva la elección óptima en la raíz.

Esquema • Anticipación finita y evaluación • Juegos con elementos de azar • Búsqueda del árbol de Montecarlo

Límites de recursos

La profundidad importa

• Las funciones de evaluación son siempre imperfectas. • Búsqueda más profunda => mejor juego (generalmente).

• Un ejemplo importante de la compensación entre la complejidad de las características y la complejidad de la computación.

• O bien, la búsqueda más profunda brinda la misma calidad de juego con una función de evaluación menos precisa.

Pacman con Profundidad-10 de anticipacion

resultadoscon inciertos

Juegos

Resultados aleatorios en los árboles 10 10 9 10010 10 9 100 9 10 9 1010 100 tictactoe , minimaxajedrez tetris, Expectimaxinvertir Backgammon, expectiminimaxMonopolio

Ejemplo: Backgammon • dados aumentan b : 21 tiradas posibles con 2 dados • Backgammon » 20 movimientos legales • 4 capas = 20 x (21 x 20) 3 = 1,2 x 10 9 • A medida que aumenta la profundidad, la probabilidad de llegar a un nodo de búsqueda determinado se reduce • La utilidad de la búsqueda se ve disminuida • La poda es más complicada... • IA histórica: TDGammon (1997) utiliza búsqueda en profundidad 2 + muy buena función de evaluación + aprendizaje reforzado: nivel de juego de campeón mundial

Búsqueda de árboles de Montecarlo • Los métodos basados en la búsqueda alfa-beta asumen un horizonte fijo • Bastante desesperado para Go, con b > 300 • MCTS combina dos ideas importantes: • Evaluación por lanzamientos : juegue múltiples juegos hasta la terminación de un estado s (usando una política de lanzamiento simple y rápida) y cuente las ganancias y pérdidas • Búsqueda selectiva : explore partes del árbol que ayudarán a mejorar la decisión desde la raíz, independientemente de la profundidad

Despliegues • Para cada lanzamiento: • Repita hasta la terminal: • Juega un movimiento de acuerdo con una política de implementación rápida y fija • Registrar el resultado • ¡La fracción de ganancias se correlaciona con el verdadero valor de la posición! • Tener una política de despliegue "mejor" ayuda “Jugada 37"

MCTS Versión 0 • Realice N lanzamientos de cada hijo de la raíz, registre la fracción de victorias • Elija el movimiento que dé el mejor resultado según esta métrica 57/100 65/10039/100

MCTS Versión 0.9 • Asigne implementaciones a nodos más prometedores 61/100 48/1006/10

MCTS Versión 1.0 • Asigne implementaciones a nodos más prometedores • Asignar lanzamientos a nodos más inciertos 61/100 48/1006/10

heurística UCB • La fórmula UCB1 combina "prometedor" e "incierto": • N ( n ) = número de despliegues desde el nodo n • U ( n ) = utilidad total de despliegues (p. ej., # victorias) para el jugador(padre(n))

MCTS Versión 2.0: UCT • Repita hasta que se acabe el tiempo: • Dado el árbol de búsqueda actual, aplique UCB recursivamente para elegir una ruta hasta un nodo de hoja (no completamente expandido) n • Agregue un nuevo hijo c a n y ejecute un despliegue desde c • Actualice los recuentos de ganancias desde c hasta la raíz • Elija la acción que conduce al niño con mayor N

Ejemplo de UCT 2/3 0/1 2/2 4/7 0/1 0/1 4/95/101/11/2

¿Por qué no hay mínimo o máximo???? • ¡El "valor" de un nodo, U(n)/N(n) , es una suma ponderada de valores secundarios! • Idea: como N ® ¥ , la gran mayoría de los lanzamientos se concentran en los mejores niños, por lo que el promedio ponderado ® máx./mín. • Teorema: como N ® ¥ UCT selecciona el movimiento minimax • (¡pero N nunca tiende a infinito!)

Resumen • Los juegos requieren decisiones cuando la optimización es imposible • Búsqueda de profundidad limitada y funciones de evaluación aproximada. • Los juegos fuerzan el uso eficiente de la computación • Poda alfa-beta, MCTS. • El juego ha producido importantes ideas de investigación. • Aprendizaje por refuerzo (damas) • Profundización iterativa (ajedrez) • Metarazonamiento racional (Otelo) • Búsqueda de árbol de Monte Carlo (ajedrez, Go) • Métodos de solución para juegos de información parcial en economía (póquer) • Los videojuegos presentan desafíos mucho mayores, ¡mucho por hacer! • b = 10 500 , | S | = 10 4000 , m = 10 000 , parcialmente observable, a menudo > 2 jugadores

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.