Está en la página 1de 18

BUSQUEDA CON ADVERSARIOS

ALGORITMO PODA ALFA-BETA

Los entornos competitivos, en los cuales los objetivos del agente estn en conflicto, dan ocasin a problemas de bsqueda entre adversarios, a menudo conocido como juegos.

La manera natural de responder un juego es mediante un rbol de juegos que es un tipo especial de rbol semntico en los que los nodos representan configuraciones de tableros existe un giro especial en el hecho de que las decisiones son tomadas por dos adversarios que toman una decisin a la vez.

Bsqueda con adversarios

COMPONENTES
El estado inicial
Que devuelve una lista de pares (movimiento, estado), indicando un movimiento legal y el estado que resulta.

Una funcin sucesor


Que incluye la posicin del tablero e identifica al jugador que mueve.

En los juegos, el resultado es un triunfo, prdida o empate, con valores +1, -1 o 0.

Una funcin de utilidad

Que determina cuando se termina el juego. A los estados donde el juego se ha terminado se les llama estados terminales.

Un test Terminal

ALGORITMO MINIMAX
Calcula la decisin minimax del estado actual. Usa un clculo simple recurrente de los valores minimax de cada estado sucesor. La recursin avanza hacia las hojas del rbol. Los valores minimax retroceden por el rbol cuando la recursin se va deshaciendo.

ALGORITMO MINIMAX (2)


A

Primero utiliza la funcin Utilidad para descubrir que sus valores son 3, 12 y 8. Entonces toma el mnimo de estos valores, 3, y lo devuelve como el valor del nodo B.

ALGORITMO PODA ALFA -BETA

ALGORITMO PODA ALFA -BETA

El algoritmo poda alfa-beta es una tcnica mejorada del algoritmo minimax, que consiste en dividirlo en la mitad.

La jugada es que es posible calcular la decisin mnima correcta sin mirar todos los nodos en el rbol de juegos.

La poda puede aplicarse a rboles de cualquier profundidad y tambin subrbol alfa-beta es enteros

ALGORITMO PODA ALFA -BETA


La estrategia de poda del algoritmo Minimax es llamada poda alfa-beta, puesto que dado que existen dos jugadores maximizador y minimizador, existen dos valores umbral alfa y beta para acotar la bsqueda de cada uno respectivamente.

Utilidad en el aumento de la velocidad de la bsqueda sin producir prdida de la informacin El valor alfa representa la cota inferior del valor que puede asignarse en ltimo trmino a un nodo maximizante. El valor beta representa la cota superior del valor que puede asignarse en ltimo trmino a un nodo minimizante.

MAX a1

A a2 a3 2 D

MIN 3

B b3

b1 b2

c1

c2

c3

d1 d2

d3

12

14

El mejor movimiento de MAX en la raz es a1, porque conduce al sucesor con el valor minimax mas alto, y la mejor respuesta de MIN es b1, por que conduce al sucesor con el valor minimax mas bajo.

(a)

[-, +]

[-, 3]

(a) La primera hoja debajo de B tiene el valor 3. De ah B, que es un nodo MIN, tiene un valor de cmo mximo 3.

(b)

[-, +]

[-, 3]

12

(b) La segunda hoja debajo de B tiene el valor 12; MIN evitara este movimiento, entonces el valor de B es todava como mximo 3.

(c)

[3, +]

[3, 3]

12

(c) La tercera hoja debajo de B tiene el valor 8; hemos visto a todos los sucesores de B, entonces el valor de B es exactamente 3. Ahora, podemos deducir que el valor de la raz es al menos 3., por que MAX tiene una opcin digna de 3 en la raz.

(d)

[3, +]

[3, 3]

[- , 2]

12

(d) La primera hoja debajo de C tiene el valor 2. De ah, C que es un nodo MIN, tiene un valor de cmo mximo 2. Pero sabemos que B vale 3, entonces MAX nunca elegira C. Por lo tanto, no hay ninguna razn en mirar a los otros sucesores de C. Este es un ejemplo de la poda Alfa-Beta.

(e)

[3, 14]

[3, 3]

[- , 2]

[- , 14]

12

14

(e) La primera hoja debajo de D tiene el valor 14,entonces D vale como mximo 14. Este todava es mas alto que la mejor alternativa de MAX (es decir, 3), entonces tenemos que seguir explorando a los sucesores de D. Note tambin que ahora tenemos lmites sobre todos los sucesores de la raz, entonces el valor de la raz es como mximo 14.

(f)

[3, 3]

[3, 3]

[- , 2]

[2,2]

12

14

(f) El segundo sucesor de D vale 5, as que otra vez tenemos que seguir explorando. El tercer sucesor vale 2, as que ahora D vale exactamente 2. La decisin de MAX en la raz es moverse a B, dando un valor de 3.

APLICACIONES

PROGRAMASDEJUEGOS: AJEDREZ
Tiene unas reglas claramente definidas y unos objetivos inequvocos. DeepBlue fue clasificado como el mejor jugador de ajedrez de ordenador en el mundo, adems de ser el primero en batir al maestro del ajedrez Garry Kasparov. La bsqueda que utiliza la alfa-beta estndar de profundidad iterativa, con capacidad de generar extensiones mas all de su limite.

PROGRAMAS DE JUEGOS: DAMAS


Chinook (J.Schaffer) es probablemente el mejor programa de ordenador de Damas, ya que fue el primero en ganar un campeonato del mundo contra humanos. Este programa usa la bsqueda alfa-beta. Chinook usa una base de datos pre calculados de 444 billones de posiciones con 8 o menos piezas sobre el tablero para as hacer la fase final del juego de foma impecable.

También podría gustarte