Bsqueda en Problemas de Juegos - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

Bsqueda en Problemas de Juegos

Description:

Dos agentes pueden tener en cuenta la acci n tomada por el otro agente ... el proceso de b squeda, se debe extraer del rbol de b squeda una estimaci n de ... – PowerPoint PPT presentation

Number of Views:93
Avg rating:3.0/5.0
Slides: 23
Provided by: gonzalovil
Category:

less

Transcript and Presenter's Notes

Title: Bsqueda en Problemas de Juegos


1
Búsqueda en Problemas de Juegos
  • Curso de Inteligencia Artificial
  • Gonzalo Villarreal Farah

2
Contenidos
  • Juegos de dos jugadores
  • El procedimiento minimax
  • El procedimiento alfa-beta

3
Juego de dos jugadores
  • Es una situación idealizada
  • Dos agentes pueden tener en cuenta la acción
    tomada por el otro agente
  • Estas acciones están entrelazadas, primero actúa
    un agente luego el otro
  • Estos métodos permiten encontrar acciones
    heurísticamente razonables
  • Siempre se tiene Un agente, después de haber
    decidido el primer movimiento, lo tiene que
    ejecutar, luego percibir lo que hace el otro
    agente y, posteriormente, tiene que repetir el
    proceso de planificación ciclo de
    percepción/planificación/actuación

4
Juego de dos jugadores
  • Se denominan juego de dos jugadores con
    información completa o de suma cero
  • Los jugadores realizan movimientos de forma
    alternativa hasta que uno de ellos gane o hasta
    que lleguen a una situación de empate
  • Cada jugador tiene un modelo completo y perfecto
    del entorno, de sus movimientos y los de su
    oponente y de los efectos de los mimos (sin saber
    lo que el otro hará)
  • Hacer una búsqueda completa para determinar
    directamente como ganar, perder o empatar es
    computacionalmente inabordable en la mayor parte
    de los juegos. Se estima que grafos completos
    juego de ajedrez es 1040 nodos

5
Juego de dos jugadores
  • Para definir formalmente un juego con dos
    jugadores se puede decir que el juego se compone
    de
  • Un estado inicial que incluye el estado del
    tablero y la indicación de quién debe jugar.
  • Un conjunto de operadores que definen las jugadas
    permitidas.
  • Una prueba terminal que define el término del
    juego. Los estados donde termina el juego se
    denominan estados terminales.
  • Una función de utilidad que asigna un valor
    numérico al resultado obtenido en un juego
  • Se pueden utilizar métodos en primero en anchura,
    primero en profundidad o heuríticos, pero se debe
    cambiar la condición de término (límite tiempo,
    espacio de almacenamiento, profundidad)

6
MINIMAX
  • Los dos jugadores se llaman MAX y MIN
  • La tarea consiste en encontrar el mejor
    movimiento para MAX
  • Se asume que MAX realiza el primer movimiento,
    luego se realizan movimientos alternativos
  • Los nodos con profundidad par son situaciones en
    las que MAX tiene que realizar el siguiente
    movimiento (nodos MAX)
  • Los nodos con profundidad impar se corresponden
    con situaciones en las que el siguiente
    movimiento tiene que ser realizado por MIN (nodos
    MIN)

7
MINIMAX
  • Una vez terminado el proceso de búsqueda, se debe
    extraer del árbol de búsqueda una estimación de
    cual puede ser el mejor movimiento
  • Esto se puede hacer aplicando una función de
    evaluación estática a los nodos hojas. Esta
    medirá el valor de la posición representada por
    el correspondiente nodo hoja
  • En estos casos, normalmente se adopta el convenio
    de que las posiciones favorables a MAX hagan que
    la función de evaluación tome valores positivos ,
    mientras que las favorables a MIN tomen valores
    negativos. Los valores cercanos a cero, se
    corresponderán con posiciones que no son
    favorables a ninguno de los jugadores

8
MINIMAX
  • Se puede determinar un buen siguiente
    movimiento
  • Se supone que si MAX tiene que elegir entre
    distintos nodos hojas, elegirá el de máxima
    evaluación en consecuencia, el valor que se le
    tiene que asignar a un nodo MAX padre de nodos
    hojas MIN es el máximo de todas las evaluaciones
    estáticas correspondientes a dichos nodos hojas
    MIN. Por el contrario si MIN tuviese que elegir
    entre distintos nodos hojas MAX, elegirá el que
    obtenga mínima evaluación. Por lo tanto, el nodo
    MIN padre de varios nodos hojas MAX se le debe
    asignar el mínimo de todas las evaluaciones
    estáticas correspondientes a dichos nodos hojas
    MAX

9
MINIMAX
  • Una vez realizado este proceso con todos los
    padres de los nodos hojas, se sigue propagando
    hacia atrás los valores de la evaluación,
    asumiendo que MAX elegirá el nodo sucesor MIN con
    mayor valor, mientras que MIN elegirá el nodo
    suceso de MAX con menor valor
  • El proceso continúa con la propagación hacia
    atrás de los valores evaluados, nivel por nivel,
    hasta que, finalmente, se asigne un valor a cada
    uno de los nodos sucesores del nodo inicial

10
MINIMAX
11
MINIMAX
12
(No Transcript)
13
(No Transcript)
14
MINIMAX
  • En un juego de dos, si bien se debe tener una
    función evaluadora, conviene pensar que esta
    función tendrá un valor estimado mas adecuado
    conforme se acerque más al final del juego. Sería
    bueno aplicarla cuando menos unas jugadas por
    delante y no directamente evaluar el nivel más
    próximo

15
MINIMAX
  • Ejemplo de definición de función evaluadora
  • Si p no es posición ganadora para ningún ganado,
    entonces
  • e(p) (el nº de filas, columnas y diagonales
    completas que todavía estan libres para MAX)
    (nº de filas, columnas, diagonales completas que
    todavía estan libres para MIN)
  • Si p es una posición ganadora para MAX, entonces
  • e(p) 8 (donde 8 indica un número positivo muy
    grande)
  • Si p es una posición ganadora para MIN, entonces
  • e(p) -8

16
MINIMAX
Se tiene que e(p)6 4 2
17
MINIMAX
  • El algoritmo Minimax es un procedimiento
    recursivo, y el corte de la recursión está dado
    por alguna de las siguientes condiciones
  • Gana algún jugador
  • Se han explorado N capas, siendo N el límite
    establecido
  • Se ha agotado el tiempo de exploración
  • Se ha llegado a una situación estática donde no
    hay grandes cambios de un nivel a otro

18
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 búsqueda de cada uno respectivamente.
  • El valor alfa representa la cota inferior del
    valor que puede asignarse en último término a un
    nodo maximizante.
  • El valor beta representa la cota superior del
    valor que puede asignarse en último término a un
    nodo minimizante.

19
Poda Alfa-Beta
  • El proceso MINIMAX separa el proceso de
    generación de nodos del árbol de búsqueda y la de
    evaluación de la posición
  • La evaluación de los nodos comienza cuando se ha
    generado el árbol de búsqueda.
  • Lo anterior hace que la estrategia seguida sea
    ineficiente en la mayoría de las situaciones
  • Se pueden conseguir reducciones importantes, en
    el esfuerzo requerido para la búsqueda, si la
    evaluación de los nodos hojas y la propagación de
    los valores se realiza simultáneamente con la
    generación del árbol

20
Poda Alfa-Beta
21
Poda Alfa-Beta
MINIMAX
22
Poda Alfa-Beta
Poda Alfa-Beta
Write a Comment
User Comments (0)
About PowerShow.com