Documentos de Académico
Documentos de Profesional
Documentos de Cultura
De Wikipedia, la enciclopedia libre Saltar a navegacin, bsqueda Para otros usos de este trmino, vase Minimax (infantil). En teora de juegos, Minimax es un mtodo de decisin para minimizar la prdida mxima esperada en juegos con adversario y con informacin perfecta. Minimax es un algoritmo recursivo. El funcionamiento de Minimax puede resumirse como elegir el mejor movimiento para ti mismo suponiendo que tu contrincante escoger el peor para ti.
Contenido
[ocultar]
1 Teorema Minimax 2 Algoritmo Minimax con movimientos alternativos 3 Ejemplo 4 Optimizacin 5 Enlaces externos
ambos jugadores minimizar la prdida mxima esperada. En particular, cuando se examina cada posible estrategia, un jugador debe considerar todas las respuestas posibles del jugador adversario y la prdida mxima que puede acarrear. El jugador juega, entonces, con la estrategia que resulta en la minimizacin de su mxima prdida. Tal estrategia es llamada ptima para ambos jugadores slo en caso de que sus minimaxes sean iguales (en valor absoluto) y contrarios (en signo). Si el valor comn es cero el juego se convierte en un sinsentido.
Pasos del algoritmo Minimax: 1. Generacin del rbol de juego. Se generarn todos los nodos hasta llegar a un estado terminal. 2. Clculo de los valores de la funcin de utilidad para cada nodo terminal. 3. Calcular el valor de los nodos superiores a partir del valor de los inferiores. Alternativamente se elegirn los valores mnimos y mximos representando los movimientos del jugador y del oponente, de ah el nombre de Minimax. 4. Elegir la jugada valorando los valores que han llegado al nivel superior. El algoritmo explorar los nodos del rbol asignndoles un valor numrico mediante una funcin de evaluacin, empezando por los nodos terminales y subiendo hacia la raz. La funcin de utilidad definir lo buena que es la posicin para un jugador cuando la alcanza. En el caso del ajedrez los posibles valores son (+1,0,-1) que se corresponden con ganar, empatar y perder respectivamente. En el caso del backgammon los posibles valores tendrn un rango de [+192,192], correspondindose con el valor de las fichas. Para cada juego pueden ser diferentes. Si Minimax se enfrenta con el dilema del prisionero escoger siempre la opcin con la cual maximiza su resultado suponiendo que el contrincante intenta minimizarlo y hacernos perder.
[editar] Ejemplo
En el siguiente ejemplo puede verse el funcionamiento de Minimax en un rbol generado para un juego imaginario. Los posibles valores de la funcin de utilidad tienen un rango de [1-9]. En los movimientos del contrincante suponemos que escoger los movimientos que minimicen nuestra
utilidad, en nuestros movimientos suponemos que escogeremos los movimientos que maximizan nuestra utilidad. El primer paso ser calcular los nodos terminales, en verde. Posteriormente calcularemos el cuarto nivel, movimiento min, minimizando lo elegido (5, 2 y 1). Despus podremos calcular el tercer nivel, movimiento max, maximizando la utilidad (5, 9). El segundo nivel es un movimiento min (5, 3 y 1). Finalmente llegamos al primer nivel, el movimiento actual, elegiremos el nodo que maximice nuestra utilidad (5).
[editar] Optimizacin
En la prctica el mtodo Minimax es impracticable excepto en supuestos sencillos. Realizar la bsqueda completa requeriran cantidades excesivas de tiempo y memoria. Claude Shannon en su texto sobre ajedrez de 1950 (Programming a Computer for Playing Chess) propuso limitar la profundidad de la bsqueda en el rbol de posibilidades y determinar su valor mediante una funcin heurstica. Para optimizar Minimax puede limitarse la bsqueda por nivel de profundidad o por tiempo de ejecucin. Otra posible tcnica es el uso de la poda alfa-beta. Esta optimizacin se basa en la suposicin que el jugador contrario no nos permitir jugar nuestras mejores jugadas.
Poda alfa-beta
De Wikipedia, la enciclopedia libre Saltar a navegacin, bsqueda
La poda alfa beta es una tcnica de bsqueda que reduce el nmero de nodos evaluados en un rbol de juego por el algoritmo Minimax. Se trata de una tcnica muy utilizada en programas de juegos entre adversarios como el ajedrez, el tres en raya o el Go. Entre los pioneros en el uso de esta tcnica encontramos a Arthur Samuel, D.J Edwards y T.P. Hart,1 Alan Kotok,2 Alexander Brudno3 , Donald Knuth y Ronald W. Moore4 El problema de la bsqueda Minimax es que el nmero de estados a explorar es exponencial al nmero de movimientos. Partiendo de este hecho, la tcnica de poda alfa-beta trata de eliminar partes grandes del rbol, aplicndolo a un rbol Minimax estndar, de forma que se devuelva el mismo movimiento que devolvera este, gracias a que la poda de dichas ramas no influye en la decisin final.
Contenido
[ocultar]
1 Desarrollo del algoritmo o 1.1 Ejemplo de poda alfa-beta 2 Eficacia de la poda alfa-beta 3 Referencias
La bsqueda minimax es primero en profundidad, por ello en cualquier momento slo se deben considerar los nodos a lo largo de un camino en el rbol. La poda alfa-beta toma dicho nombre de la utilizacin de dos parmetros que describen los lmites sobre los valores hacia atrs que aparecen a lo largo de cada camino.
es el valor de la mejor opcin hasta el momento a lo largo del camino para MAX, esto implicar por lo tanto la eleccin del valor ms alto es el valor de la mejor opcin hasta el momento a lo largo del camino para MIN, esto implicar por lo tanto la eleccin del valor ms bajo.
Esta bsqueda alfa-beta va actualizando el valor de los parmetros segn se recorre el rbol. El mtodo realizar la poda de las ramas restantes cuando el valor actual que se est examinando sea peor que el valor actual de o para MAX o MIN, respectivamente. El desarrollo del algoritmo en pseudocdigo ser el siguiente:
funcin alfabeta(nodo, profundidad, , ) si nodo es un nodo terminal o profundidad = 0 devolver el valor heurstico del nodo para cada hijo de nodo := max(, -alfabeta(hijo, profundidad-1, -, -)) si break devolver (* Llamada inicial *) alfabeta(origen, profundidad, -infinito, +infinito)
La figura muestra un ejemplo de la poda alfa-beta. Cada nivel representa la jugada de los jugadores MAX y MIN, que tendrn que definir un valor o respectivamente.
A continuacin se presenta un ejemplo de aplicacin del algoritmo para el rbol de la figura. En ella los nodos podados al aplicar el algoritmo se presentan sombreados en gris.
Comenzamos con la bsqueda de primero en profundidad. El padre de los nodos hoja ms a la izquierda, etiquetados con 5 y 6 respectivamente, deber escoger un valor al tratarse de un nivel MIN, esto implica que deber escoger el valor mnimo entre dichos nodos, es decir 5. Siguiendo el desarrollo, se expandirn el resto de sucesores del padre. En este caso se expande el camino que conduce a los nodos hoja 7 y, buscando un valor menor, el nodo etiquetado con 4. En este momento el valor momentneo de en ese nivel es 4 (el mnimo entre 7 y 4). Esto implica que en este momento en el nivel superior, el padre del nodo que etiquetamos anteriormente con igual a 5, y de este igual a 4 momentneo, debe decidir el mejor valor, el ms alto al encontrarse en un nivel MAX), si siguiramos expandiendo hijos del nodo MIN padre de 7 y 4, slo podramos conseguir valores menores a 4, lo que seguira implicando una eleccin de la jugada izquierda en el nivel MAX, por lo tanto, podemos podar el resto de hijos, tal y como se muestra en la Figura. El resto del desarrollo del rbol se seguira utilizando los criterios mencionados con anterioridad.
[editar] Referencias
1. Richards, D.J. and Hart, T.P. (4 de diciembre de 1961 to 28 October 1963). The Alpha-Beta Heuristic (AIM-030). Massachusetts Institute of Technology. Consultado el 21-12-2006. 2. Kotok, Alan (XHTML 3 December 2004). MIT Artificial Intelligence Memo 41. Consultado el 01-07-2006. 3. Marsland, T.A. (May de 1987). Computer Chess Methods (PDF) from Encyclopedia of Artificial Intelligence. S. Shapiro (editor) (PDF) pgs. 159-171. J. Wiley & Sons. Consultado el 2112-2006.
4. Knuth, D. E., and Moore, R. W. (1975). An Analysis of Alpha-Beta Pruning. Artificial Intelligence Vol. 6, No. 4: pp. 293326. 5. Russell, S.J; Norving, P. (2004). Inteligencia Artificial. Un enfoque moderno. Pearson Educacin. ISBN 84-205-4003-Z.