alfa-beta poda
TRANSCRIPT
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
1
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
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
2
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
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
3
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.
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
4
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
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
5
Algoritmo de búsqueda alfa-beta.
Corresponde a la combinación de tres aportes:
Ejecutar minimax +
Mantener recordados alfa y beta +
Podar
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
6
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.
Si se va examinar un corte (Estado). Evaluar (Estado).
v
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).
Si beta es mayor que alpha. Devolver alpha
v
F Retornar beta
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
7
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.
Si se va examinar un corte (Estado). Evaluar (Estado).
v
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).
Si alpha es mayor que beta. Devolver beta
v
F Retornar alpha
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
8
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 d ⇒ información imperfecta
Arriba, der
Aleatorios, información perfecta:
Abajo, izq a ⇒ información imperfecta:
Abajo, der
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
9
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.:
Ta-te-ti Otelo=Reversi Ajedrez--Go Truco mental (sin naipes)
Back gamón Chaquete
Monopolio
Juego de Inspección
Guerra marina
Scrabble sin pozo
Dominó Truco Bridge Póquer
Scrabble con pozo
Info Perf Info Imp
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
10
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.
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
11
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.
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
12
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
PODA ALPHA-BETA EQUIPO 2. INTELIGENCIA ARTIFICIAL.
INSTITUTO TECNOLOGICO DE NUEVO LAREDO.
13
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