Está en la página 1de 8

SISTEMAS INFORMTICOS

FUNDAMENTOS INFORMTICOS

INTEGRANTES:
Jordy R. Sarango
Junior B. Vsquez

TEMA:
ALGORITMO DE MIN Y MAX
EN EL LENGUAJE DE PROGRAMACIN
JAVA

INGENIERO:
GUIDO RIOFRIO

2016 -2017

INTRODUCCIN
Se poseen 2 jugadores: MAX y MIN, primero jugar MAX y as seguir el flujo hasta
acabar el juego. Existe un rbol de juegos que los programas utilizan para calcular los
Movimientos Legales (Permitidos). El valor MIN y MAX ser un valor que determine el
estado final del juego. En algunos juegos este valor MIN y MAX puede ser muy alto.
Incluso el TicTacToe (3 en Raya), es complejo para armar el rbol de juegos. A los
niveles del rbol se les llama capas.
Para determinar la estrategia ptima a seguir se usan valores MIN y MAX. MAX
adoptar el valor mximo y MIN el mnimo. La decisin MIN y MAX supone que los 2
jugadores son ptimos, si uno es un novato ser fcilmente derrotado por esta
decisin.
El Algoritmo MINIMAX es la forma computacional en la que se calcula el valor MINI y
MAX de cada estado de sucesos. Lo interesante del Algoritmo MIN y MAX es que no
calcula todo el rbol de juegos, sino que calcula solo un horizonte de k niveles. Un
clculo detallado del rbol de juegos perdera tiempo, el objetivo de MAX aqu es
ganar a MIN tomando alguna decisin sobre la mejor jugada que se puede hacer. El
Algoritmo MIN y MAX no se usa como tal en la Industria de Juegos, ya que es en
algunas ocasiones lento, en vez de este se usan versiones optimizadas que veremos a
continuacin.

MIN Y MAX
El algoritmo Min y Max es un procedimiento recursivo y su corte de la recursin
est dado por alguna de estas condiciones:
Gana cualquier jugador, o se declara empate,
Se explora n jugadas, siendo n nmero de combinaciones posibles,
Se termina el tiempo de anlisis,
Llega a una situacin donde no hay salida y el juego termina.
1. Algoritmo MIN y MAX Representacin de Juegos (Tres en raya)

Posicin inicial.
Reglas del juego que definen los movimientos posibles y legales.
Estado terminal.
Estado: GANA, PIERDE o EMPATE

1.1.

Pasos del Algoritmo MIN y MAX

1. Crear rboles de juegos, se genera nodos hasta llegar al estado final,


2. Calcular los valores de la funcin de utilidad para cada nodo terminal,
3. Calcular el valor de cada nodo Superior con los inferiores, se elegirn
valores mnimos o mximos segn los movimientos del jugador,
4. Elegir el valor tomando en cuenta los valores que han llegado como
mximos.
El algoritmo MIN y MAX recorrer los nodos del rbol asignando valores
numricos mediante la funcin de utilidad, colocando 0 o 1 en cada nodo
terminal dependiendo si gana MIN o MAX, la funcin de utilidad ser quien
defina si la posicin que da el jugador es buena o mala., para legar al estado
terminal se va a requerir estrategia independientemente de lo que haga el
oponente, los valores positivo o negativo ser el indicador del tipo de ventaja
que tenga el oponente.

CLCULO DE LOS VALORES DE LA FUNCIN DE UTILIDAD

JUEGO TRES EN RAYA: APLICACIN:


1.
2.
3.
4.

Tendremos dos jugadores (MIN y MAX)


Los jugadores colocaran sus fichas en un tablero de n x n (3 x 3)
MAX usara X
MIN usara O

REGLAS
1. Al iniciar siempre estar el tablero o mesa vaco
2. MAX empezar con el primer movimiento y le seguir MIN
En caso que MAX gane
3. Deber obtener o tener una lnea de X
En caso que MIN gane
4. Deber obtener o tener una lnea de O
Caso contrario
5. Existe la posibilidad quedar en el estado EMPATE
ESPACIOS PARA LOS ESTADOS DEL JUEGO

PROCEDIMIENTO
1. Se la bsqueda de movimientos por niveles generando nodos por cada
nivel,
2. Se aplica una funcin de evaluacin a cada uno de los nodos,
3. La funcin de evaluacin considerara lo siguiente:
a. Nmero de casillas restantes
b. Posicin de casillas vacas
4. La funcin de evaluacin va a devolver los siguientes valores:
a. Positivos altos
b. Negativos altos
c. Cero
FUNCIN DE EVALUACIN DEL JUEGO
Definimos la funcion de evaluacin:

ETAPAS DE LOS ESTADOS DE LOS ESPACIOS