Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arbolesminmax 131111143214 Phpapp01
Arbolesminmax 131111143214 Phpapp01
Integrantes:
Amanda Solano
Katherine Rojas
Samantha Mendoza
Yasiell Vallejos
Teorema MinMax
Establece que en los juegos bipersonales de suma cero, donde cada jugador conoce de
antemano la estrategia de su oponente y sus consecuencias, existe una estrategia que
permite a ambos jugadores minimizar la pérdida máxima esperada.
Elección del mejor movimiento para cada jugador, suponiendo que el contrincante
escogerá el peor
Es de aprendizaje lento, pues por cada jugada realizada y el conjunto de las que
tiene almacenadas lo obliga a implementar algoritmos de comparación, búsqueda,
inserción, etc.
Posición inicial.
Conjunto de operadores o reglas del juego (definen movimientos legales).
Estado terminal.
Función de utilidad. Por ejemplo: gana, pierde o empata.
Funcionamiento de MinMax
Deberá existir una función de evaluación heurística que devuelva valores elevados para
indicar buenas situaciones, y valores negativos para indicar situaciones favorables al
oponente.
Identificaremos a cada jugador como el jugador MAX y el jugador MIN. MAX será el
jugador que inicia el juego, el cual supondremos que somos nosotros, y nos marcaremos
como objetivo encontrar el conjunto de movimientos que proporcionen la victoria a
MAX (nosotros) independientemente de lo que haga el jugador MIN.
Pasos del Algoritmo MinMax
1. Generación del árbol de juego: Se generarán todos los nodos hasta llegar a un estado
terminal o determinando una profundidad concreta (poda o corte). Se considera el nodo
raíz como la situación actual del juego.
2. Cálculo de los valores de la función de utilidad para cada nodo terminal: Para cada
resultado final, cómo de beneficioso me resulta si estamos en MAX o cuanto me
perjudicará si estamos en MIN.
3. Calcular el valor de los nodos superiores a partir del valor de los inferiores:
Alternativamente se elegirán los valores mínimos y máximos 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 asignándoles un valor numérico mediante
una función de utilidad, empezando por los nodos terminales y subiendo hacia la
raíz.
Un valor positivo indica la ventaja de un jugador y uno negativo la ventaja del otro.
Nivel MIN
El maximizador:
O O X
O X O
O X X
Existe la posibilidad de empate
Espacio de estados para el juego
del gato
Procedimiento
Se desarrolla una búsqueda por niveles, generando los nodos del cada nivel
Poda Alfa-beta: Para juegos con un factor de ramificación elevado, esta profundidad no
podrá ser muy grande, ya que el cálculo necesario para cada decisión será prohibitivo.
Su tiempo de exploración será muy grande. Produce la misma jugada que se obtendría
con MiniMax, pero elimina todas las ramas que posiblemente no influirán en la decisión
final.
Búsqueda Sesgada: Clasifica cada nodo hijo según los resultados que prometa
un movimiento, se buscarán más o menos siguientes situaciones más allá de
éste.
Bajada Progresiva: Consiste en ir recorriendo todos los nodos por niveles hasta
que nos llegue la petición de jugada(fin del tiempo), y entonces devolveremos
la solución encontrada en el último nivel procesado por completo.
Ejemplo de Baja Progresiva:
Nivel
Nivel
Nivel
Petición de jugada
Para mas información y ejemplos
visitar los siguientes enlaces