PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Algoritmo Poda Alpha-Beta Información imperfecta. i JUEGO DE INSPECCION - Me imagino aquí a mi exalumno y ahora colega, el Dr. Heinecken, actualmente Inspector de Instalaciones Nucleares de la ONU. i Los países con instalaciones que producen plutonio son inspeccionados un número fijo de veces por año. Si el inspector adelanta sus visitas para verificar que no han surgido novedades, el inspeccionado tiene tiempo, luego de las visitas tempranas, para entrar en infracción (si eso quisiera hacer). La fecha de las visitas es para el infractor un tema importante y tiene que resultar para él un caso de información imperfecta. Por simetría, también al inspector le gustaría saber en qué momento aparecen pistas sospechosas, para frenar con su visita la tentación de su inspeccionado de transformarse en infractor. Es determinístico. i GUERRA MARINA – No vemos el tablero del adversario. No hay dados o naipes. Es determinístico. Decisiones imperfectas. Hay juegos aleatorios y con información imperfecta, como el póquer, en que se puede demostrar que hasta los mejores jugadores humanos se equivocan. Para una máquina jugadora de póquer la situación es tremendamente inadaptada para la estructura de problemas que ella puede encarar. Pero puede ir aprendiendo si se ponen dos máquinas a competir entre ellas. Con ese propósito se empieza simplificando el póquer a otros juegos similares pero más relajados en requisitos. Por ejemplo en lugar de usar un INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 1 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. mazo de 52 barajas, se usa uno de tres barajas, un J, una Q y un K – y cada jugador recibe 1 baraja en lugar de las clásicas 3. Ya en ese caso aparece la posibilidad de “bluff” (engaño) si una de las dos máquinas apuesta a pesar de tener la peor de las barajas, un J. Pese a que no hay regla explícita que lo autoriza, provista a la máquina, ella comete con alta probabilidad el “bluff” de apostar si tiene un juego muy flojo. Para la otra máquina el caso le da ventajas si tiene un K y la pone en duda si tiene un Q, debiendo explorar el árbol para tomar la mejor decisión, cosa que hace. El árbol resulta distinto que en el Juego de Inspección o en el de Guerra Marina. Suponer que el espacio de problema es demasiado grande como para llegar a los nodos terminales Interrumpir la búsqueda en algún nivel y aplicar evaluaciones heurísticas a las hojas Polinomios lineales ponderados - forma habitual de adaptarse a evaluaciones heurísticas Pesos o ponderaciones ¿por aprendizaje? Reglas sobre cuándo interrumpir la búsqueda Profundidad fija Profundización iterativa hasta cuando el tiempo permitido queda satisfecho Expandir con búsqueda secundaria nodos no quietos - teoría de la extensión singular INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 2 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Irresoluble problema del horizonte (peón coronado) Árbol de juego con turnos para los dos adversarios - aplicación de la heurística alfa-beta. Poda alfa-beta. Omitir la expansión de nodos que por sus valores no pueden ser los mejores (peores). Valor del nodo max (alfa) menor que el más alto hasta este momento omitir nodo. Valor del nodo min (beta) mayor que el nodo más bajo hasta el momento - omitir nodo. Alfa-beta permite búsqueda dos veces más profunda. Ordenamiento de los operadores, resultante del conocimiento o experiencia. Únicamente importa el orden y no los valores exactos. La poda no afecta al resultado final. INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 3 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Alfa-beta es una mejora del algoritmo minimax que evita revisar porciones dominadas del árbol, que no pueden proveer información útil sobre la jugada siguiente. Alfa-beta es un algoritmo bpp, rama y cota, que avanza por el árbol en un orden ya fijado (p.ej., de izquierda a derecha) y va usando la información de la valuación de los nodos hoja para podar ramas dominadas que no sirven para cambiar el valor minimax del nodo inicio (la jugada inminente). Estructuras de datos. Dos variables deben recordarse a lo largo de la búsqueda. alfa, que es el límite inferior encontrado hasta ese momento, y Beta, que es el límite superior. En los niveles maximizantes donde max debe optar, solo beta se usa para podar la búsqueda y ; En los niveles minimizantes donde min debe optar, solo alfa se usa para podar. Alfa-beta es el algoritmo más usado para buscar en árboles de juegos determinísticos. Origen del nombre alfa Alfa es el nombre del mejor valor m, para max, encontrado hasta ahora en su ruta de búsqueda en un nivel de min. *si n es peor que alfa, max lo evitará ⇒ podar esa rama punteada *m y n son nodos de min INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 4 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Algoritmo de búsqueda alfa-beta. Corresponde a la combinación de tres aportes: Ejecutar minimax + Mantener recordados alfa y beta + Podar INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 5 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Función del valor Mínimo. Entradas: -Estado, lugar en la estructura del juego. -Juego, descripción del juego. -alpha, el mejor puntaje para Máx. a lo largo del juego. -beta, el mejor puntaje para Máx. a lo largo del juego. v Si se va examinar un corte (Estado). Evaluar (Estado). F Para cada sucesor del Estado. Beta es igual a Mín. de beta, con el valor del Máx. que se esta estudiando (con las reglas de Juego). v Si beta es mayor que alpha. Devolver alpha F INSTITUTO TECNOLOGICO DE NUEVO LAREDO. Retornar beta 6 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Función del valor Máximo. Entradas: -Estado, lugar en la estructura del juego. -Juego, descripción del juego. -alpha, el mejor puntaje para Máx. a lo largo del juego. -beta, el mejor puntaje para Máx. a lo largo del juego. v Si se va examinar un corte (Estado). Evaluar (Estado). F Para cada sucesor del Estado. Alpha es igual a Máx. de alpha, con el valor del Mín. que se esta estudiando (con las reglas de Juego). v Si alpha es mayor que beta. Devolver beta F INSTITUTO TECNOLOGICO DE NUEVO LAREDO. Retornar alpha 7 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Comportamiento de los nuevos algoritmos de búsqueda en juegos. Aproximadamente, alfa-beta ha de buscar solamente b3/4 de los b movimientos posibles desde una dada posición de juego. Alternativamente, esto significa que la profundidad de búsqueda se puede incrementar por un factor = log b / log b ~= 4/3 por encima de una búsqueda exhaustiva minimax . B es aquí el factor de ramificación efectivo. Si los sucesores se ordenan a la perfección (definido como que al usar alfa-beta la búsqueda es mínima), alfa-beta examina 2bd/2 - 1 posiciones de juego. Así tenemos B = b ............en búsquedas exhaustivas, B ~= b3/4 .....en alfa-beta ordenando al azar; y B = b1/2 .......en alfa-beta ordenando perfectamente. Tipos de juegos Determinísticos, información perfecta: Arriba, izq Arriba, der d ⇒ información imperfecta Aleatorios, información perfecta: Abajo, izq Abajo, der a ⇒ información imperfecta: INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 8 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Info Perf Ta-te-ti Otelo=Reversi Ajedrez--Go Truco mental (sin naipes) Info Imp Juego de Inspección Guerra marina Scrabble sin pozo Back gamón Chaquete Monopolio Dominó Truco Bridge Póquer Scrabble con pozo Juegos con una componente aleatoria (moneda, dados, etc.). Nodos aleatorios (además de los nodos min/max) el árbol se incrementa desmesuradamente porque debajo de la fila max aparece una nueva fila con las posibilidades aportadas por los dados, debajo de la cual aparece una fila min y de nuevo la fila de posibles combinaciones de dados. Es una tarea de búsqueda muy compleja, p. Ej.: INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 9 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Un nodo para cada posibilidad (por ejemplo, puntos del dado) con su probabilidad asociada. Calcular el valor esperado (idem max e idem min) para cada posibilidad (p.ej., de un dado) - con su probabilidad asociada - y reemplazar el valor minimax del algoritmo. Diferencias absolutas en la función de evaluación pueden afectar cual movimiento elegir. Posibles podas si los valores están acotados. Conclusiones Mejoras pretendidas en la forma de encarar los juegos: Usar distribuciones de probabilidad sobre valores posibles en lugar de valores crudos para incrementar la discriminación del significado de diferencias en valores No fijarse tanto si es legal una expansión de nodos, sino si muestra utilidad. Combinar dos proyectos: el de la búsqueda de victoria y el de satisfacer una meta “secundaria”, p.ej., capturar la reina en ajedrez. Equivale a tener una estrategia. ¿Extensión del sistema gala por parte de los bots jugadores? – 1) mejores los juegos heurísticamente adaptados a un ambiente concreto. 2) competencia de la máquina consigo misma a la manera del td-gammon. INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 10 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. El diseño de automóviles “culmina” en las carreras de fórmula 1. El diseño de programas de la ia “culmina” en los juegos. Dedicarse a los juegos es divertido (y peligroso). Según muchos psicólogos, los juegos adultos son una forma de escape del mundo real - como tal, no pretendamos que sean muy aplicables. La perfección es inobtenible. Basta con aproximarse a la perfección (prr). Las ideas : Pensar acerca de lo que hay que pensar. Superar la incertidumbre, que restringe la atribución de valores a los estados. Repetición: el diseño de programas de la ia se concreta en los juegos. Durante el diseño de un juego surgen temas muy importantes- P.ej., el reconocimiento de patrones como actividad fundamental (go). P.ej., el uso de redes neurales cuando el caso es muy complejo (tetris, backgammon). P.ej., el aprendizaje reforzado como heurística casi inevitable (samuel). Samuel (1959) mide en el juego de damas la diferencia entre . El resultado del cálculo de eval directamente de una posición y el resultado predicho de una exploración hacia niveles más profundos. INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 11 PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL. Esa diferencia implica la posibilidad de un aprendizaje por refuerzo de evaluar, mejorándolo y abriendo campos a la curiosidad con cada nuevo aprendizaje. P.ej., el aprendizaje reforzado como heurística casi inevitable (newell). Newell (1955) escribe: para lograr aprendizaje en un juego debemos contar con mucha información, no solamente saber si los varios nodos hojas son ganadores, perdedores o empatados. La mayor información se obtiene desglosando un problema en una serie de subproblemas componentes. La medida de buen éxito es la meta. Si se consigue la meta, las submetas se refuerzan, si, en cambio, no se consigue, las submetas se inhiben . Realmente, la parte que es reforzada es la regla de transformación que proveyó la submeta.. Esto se puede generalizar: Cada nueva táctica creada proporciona información sobre buen o mal éxito de las reglas tácticas de búsqueda, Cada acción del oponente provee información sobre buen o mal éxito de las inferencias probabilísticas Habría que volver a estudiar “juegos” al conocer toda la especialidad. Bibliografía http://www.angelfire/oh4/ohcop/clasecap7nu.ppt http://www.angelfire/oh4/ohcop/clasecap7nu.ppt INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 12 PODA ALPHA-BETA EQUIPO 2. http://www.angelfire/oh4/ohcop/clasecap7nu.ppt http://www.angelfire/oh4/ohcop/ayuda55.html http://www.angelfire/oh4/ohcop/ayuda55.html http://www.angelfire/oh4/ohcop/ayuda55.html INTELIGENCIA ARTIFICIAL. INSTITUTO TECNOLOGICO DE NUEVO LAREDO. 13