La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Curso 2012-2013 José Ángel Bañares 17/10/2013. Dpto. Informática e Ingeniería de Sistemas. Inteligencia Artificial (30223) Problemas resueltos.

Presentaciones similares


Presentación del tema: "Curso 2012-2013 José Ángel Bañares 17/10/2013. Dpto. Informática e Ingeniería de Sistemas. Inteligencia Artificial (30223) Problemas resueltos."— Transcripción de la presentación:

1 Curso José Ángel Bañares 17/10/2013. Dpto. Informática e Ingeniería de Sistemas. Inteligencia Artificial (30223) Problemas resueltos

2 Índice Problema del laberinto Puzzle de dos dimensiones Misioneros y caníbales A* en grafo Minimax y poda alfa-beta

3 Problema del laberinto Una búsqueda informada puede resolver este laberinto, encontrando un camino desde la localización inicial hasta la final. Las posibles acciones son: arriba, abajo, izquierda, derecha, que son sólo válidas si hay una línea de puntos entre las celdas del laberinto. Considerar que la heurística utilizada es la distancia en línea recta entre la posición actual y la final del laberinto. 1.La heurística propuesta ¿es admisible?¿es consistente?, y ¿La distancia al cuadrado? 2. Muestra que la búsqueda en escalada (ascenso de la colina) no podrá encontrar una solución óptima con la heurística de la distancia en línea recta. 3. ¿Qué algoritmo de búsqueda garantizaría encontrar una solución óptima con estas heurísticas heurísticas (distancia y cuadrado distancia)? 4. Indica los cuadrados buscados en el laberinto utilizando A * con la heurística dada y un coste unitario por cada movimiento.

4 Problema del laberinto (heurística) heurística: distancia en línea recta hasta el objetivo. Es admisible (subestima) y consistente (por la desigualdad triangular)

5 Problema del laberinto (heurística) heurística: distancia en línea recta hasta el objetivo. Es admisible ( subestima ) y consistente (por la desigualdad triangular ) 1,41 6,08 7 <= 1,41+6,08

6 Problema del laberinto (heurística) heurística: cuadrado de la distancia en línea recta hasta el objetivo. Ni admisible (sobreestima) ni consistente

7 Problema del laberinto (escalada) heurística: cuadrado de la distancia en línea recta hasta el objetivo. Ni admisible ( sobreestima ) ni consistente 2 37 ¡49 > !

8 Problema del laberinto (escalada) heurística: distancia en línea recta hasta el objetivo. El laberinto tiene dos soluciones

9 Problema laberinto (A*) Laberinto con dos soluciones Coste del camino óptimo desde el estado inicial ( g ) Algoritmo A * ( f = g + h ) ¡ENCUENTRA EL ÓPTIMO! No encuentra el óptimo

10 Puzzle de dos dimensiones Las figuras a) y b) muestran los estados inicial y final respectivamente de un puzzle de dos dimensiones con tres piezas (A, B y C) que pueden moverse en las cuatro direcciones, siempre y cuando los límites del tablero, las casillas negras (obstáculos que no se mueven) y las otras dos piezas no se lo impidan. Se pide: 1. Establecer las acciones y encontrar una heurística admisible 2.Dibujar el espacio de estados que se genera al aplicar el algoritmo A* explorando en un grafo. Póngase especial interés en indicar claramente los distintos valores que forman la información que permite valorar cada nodo. Estado Inicial Estado Objetivo

11 0: f =8, g=0, h=8 1: f =8, g=1, h=7

12

13

14

15 Problema misionero y caníbales En la orilla de un río hay 3 misioneros y 3 caníbales y todos ellos pretenden cruzar al otro lado. La barca que se utiliza para cruzarlo solo tiene capacidad para dos personas, con lo que alguien ha de estar volviendo siempre a la orilla inicial mientras quede gente sin cruzar. Además, si en alguna ocasión y en cualquiera de las orillas se encuentran un número mayor de caníbales que de misioneros, los primeros se comerán a los segundos. 1.¿Cómo representarías los estados? 2.¿Cuáles serian los operadores? 3.¿Qué heurísticas existen para este problema? ¿Son admisibles?

16 Problema misioneros - ESTADO ESTADO: Se podría indicar la posición de la barca, junto con el número de misioneros y caníbales que hay en cada lado. Se podría pensar que, dado que el número de personas en el extremo nal puede calcularse a partir de los que hay en el inicial, basta con indicar la posición de la barca y los misioneros y caníbales que quedan en el extremo inicial. Sin embargo, la primera aproximación permite describir más fácilmente las precondiciones y efectos de los operadores, por lo que mantenemos la representación inicial. Además, el espacio de estados tiene el mismo tamaño e idéntica semántica con ambas representaciones. Formalmente, un estado será representado por una terna (M i, C i, B, M f,C f ) en la que: B [i, f] indica la posición de la barca, por lo que toma el valor i si está en el extremo inicial, o f si está en el nal Mi, Ci, Mf, Cf [0,..., 3] indican el número de misioneros y caníbales que quedan en el extremo inicial y nal del río, respectivamente De esta manera, el estado inicial se representa como (3, 3, i, 0, 0) y el estado nal como (0, 0, f, 3, 3)

17 Problema misioneros - ACCIONES Se dispone de 5 acciones que transportan personas de la orilla x a la orilla y: Mover1C(x, y) transporta 1 caníbal desde la orilla x hasta la orilla y Mover2C(x, y) transporta 2 caníbales desde la orilla x hasta la orilla y Mover1M(x,y) transporta 1 misionero desde la orilla x hasta la orilla y Mover2M(x,y) transporta 2 misioneros desde la orilla x hasta la orilla y Mover1M1C(x,y) transporta 1 misionero y un cabinal desde x hasta y El modelo de transiciones debe representar las precondiciones de cada acción y sus efectos.

18 Modelo transiciones La persona debe estar en la orilla para moverse La barca debe estar en la orilla Evitamos movimientos que llevan a que haya Mas caníbales que misioneros en una orilla grupos de precondiciones

19 Misioneros y caníbales (heurísticas) Vamos a obtener las heurísticas por relajación del problema original. Para dicha relajación, partimos de las precondiciones expuestas. Eliminar primer grupo de precondiciones. Si eliminamos ese primer grupo de condiciones, se obtiene un problema relajado que no parece ser mucho más fácil de resolver que el problema original, por lo que no tiene mucho sentido. Eliminar segundo grupo de precondiciones. Se puede asumir que hay infinitas barcas tanto en un lado como en otro. Este problema tiene una solución muy sencilla, que es asumir que siempre viajan un caníbal y un misionero juntos, con la acción Mover1M1C(i,f). Por tanto, la heurística resultante de este problema relajado es: asumiendo que en el estado n se cumplen los requisitos definidos por el grupo de precondiciones 3. ?

20 Misioneros y caníbales (heurísticas) Vamos a obtener las heurísticas por relajación del problema original. Para dicha relajación, partimos de las precondiciones expuestas. Al eliminar el tercer grupo de condiciones, obtenemos un problema relajado en el que los caníbales nunca se comen a los misioneros. Entonces, en cada viaje de ida y vuelta, podemos transportar a una persona (dado que la otra tendrá que volver para llevar la barca). Por tanto, la heurística resultante es: donde orilla(n) = 1 si en el estado n la barca está en la orilla i (B = i), y orilla(n) = 0 si la barca la orilla final (B = f). Si eliminamos el grupo de precondiciones 2 y 3 a la vez es equivalente a eliminar solo la precondición 2.

21 Misioneros y caníbales (heurísticas) Las dos heurísticas son admisibles, puesto que son resultado de relajar el problema original. Para decidir qué heurística elegir, h1 o h2, estudiamos cuál es la más informada, puesto que será la que, siendo admisible, tendrá un valor más cercano a h. Se observa fácilmente que la más informada es h 2, puesto que h 1 (n) h 2 (n), sea cual sea el valor de C i y de M i para el estado n. Por tanto, elegimos h 2 (n).

22 Misioneros y caníbales (exploración) Aplicar el algoritmo de búsqueda A* sobre la representación del problema de los misioneros y los caníbales. Especifica cuándo un nodo del árbol de búsqueda es expandido y cuándo es sólo generado. Utiliza la heurística resultante de relajar el tercer grupo de precondiciones.

23 A* en grafo Aplicar el algoritmo de búsqueda A* en grafo al siguiente grafo de estados. El nodo inicial es A y hay un solo nodo objetivo, que en este caso es Z. A cada arco se le ha asociado un coste y a cada nodo la estimación de la menor distancia de ese nodo al nodo objetivo (hay que asumir que se trata de una heurística admisible). Se pide el orden en que los nodos son expandidos y el orden de la solución. Justifica tu solución dibujando en la siguiente página el árbol que se genera en la búsqueda indicando: f, g y h, así como el nº de orden en que los nodos son visitados 80 A 27 B 60 C 70 E 65 D 50 F H G 0 Z

24 80 A 27 B 60 C 70 E 65 D 50 F H G 0 Z A B C D E F G F F F H H Z Sería correcto si añadiéramos la restricción de que sólo Se pueden aplicar acciones para ir hacia abajo y no volver Hacia arriba.

25 80 A 27 B 60 C 70 E 65 D 50 F H G 0 Z A B C D E F G F F F* H H Z A* A* A* B* C D E A* F* *Nodos expandidos previamente, no haría falta calcular coste

26 Minimax / Poda alfa-beta Búsqueda en juegos [7 mi] Considerar el árbol de juego mostrado abajo. Asumir que el nodo de arriba es un nodo max. Las etiquetas de los arcos son los movimientos. Los números en el nivel de abajo son los valores heurísticos de esas posiciones. Completa el árbol de juego utilizando una búsqueda mini-max Indica las ramas podadas con una poda alfa-beta con una búsqueda de izquierda a derecha. Indica los valores que van tomando alfa y beta en cada nodo Reordena las hojas de los nodos de forma que resultara en el máximo número de nodos podados en una poda alfa-beta de izquierda a derecha (indica también las ramas podadas). Reordena los hijos pero preserva las relaciones padre-hijo.

27 Minimax /Poda Alfa-beta max min <= max min <=2 <= max min max min

28 Minimax y Poda alfa-beta Dado el árbol de la figura 1. Señala las estrategia ganadoras, si las hubiera, para un jugador MAX y para un jugador MIN. Se considera que un nodo terminal es ganador para MAX si su valor es superior o igual a 6. Contrariamente, es ganador para MIN si es inferior a 6. MAX

29 Minimax y Poda alfa-beta Dado el árbol de la figura Señala las estrategia ganadora, si las hubiera, para un jugador MAX y para un jugador MIN. Se considera que un nodo terminal es ganador para MAX si su valor es superior o igual a 6. Contrariamente, es ganador para MIN si es inferior a 6. MAX MIN MAX MIN MAX MAX tiene dos estrategias ganadoras => MIN no.

30 Minimax y Poda alfa-beta Dado el árbol de la figura Señala las estrategia ganadora, si el nodo inicial fuera MIN. Se considera que un nodo terminal es ganador para MAX si su valor es superior o igual a 6. Contrariamente, es ganador para MIN si es inferior a 6. MIN MAX MIN MAX MIN MIN no tiene estrategia ganadora

31 Minimax y Poda alfa-beta Dado el árbol de la figura 2.Recorre el árbol de izquierda a derecha, siguiendo el método de poda alfa-beta, indicando claramente (tachando con una x) los nodo en que se produce poda. Encuadra /marca los nodos terminales que no ha sido necesario recorrer. Señala el valor de la decisión más acertada para MAX. MAX

32 Marcado de una Poda alfa-beta Datos a marcar Los valores de alfa y beta con los que se hace cada llamada recursiva desde cada nodo. Convenio Si las llamadas se hacen desde un nodo MAX, alfa (a) será un valor que puede ir aumentando, hasta igualar o superar a beta (b), en cuyo caso se producirá una poda alfa. Estas llamadas las marcaremos con (a=valor 1, valor 2 ), para reslatar que es el cambio de a el que determina el que haya poda o no. Si las llamadas se hacen desde un nodo MIN, beta(b) será un valor que puede ir disminuyendo, hasta igualar o quedar por debajo de alfa (a), en cuyo caso se producirá una poda beta. Estas llamadas las marcaremos con (valor 1, b=valor 2 ). EL segundo dato relacionado con el nodo a marcar, es el resultado que se devuelve al nodo padre.

33 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-, b= )

34 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 46 (-, b= ) (-,b= 4)

35 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 46 (-, b= ) (-,b= 4) 4 (a=4, )

36 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 46 (-, b= ) (-,b= 4) 4 (a=4, ) (4, b=) 7

37 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 46 (-, b= ) (-,b= 4) 4 (a=4, ) (4, b=) 7 6 (4, b=7)

38 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6

39 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) 8

40 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) 8

41 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) 8 9

42 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) 8 9 6

43 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6

44 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6

45 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, )

46 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) 6

47 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) 6 7

48 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) 6 7 7

49 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7)

50 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8

51 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x

52 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7

53 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7

54 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, )

55 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8

56 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8 (7,b= 8) (a=7, 8)

57 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8 (7,b= 8) (a=7, 8) 4

58 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8 (7,b= 8) (a=7, 8) 4 7

59 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8 (7,b= 8) (a=7, 8)

60 Marcado de una Poda alfa-beta MAX MIN MAX MIN MAX 4 (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a (a=-, ) (-,b= ) (a=-, ) 4 (-,b= 4) 6 (a=4, ) (4, b=) 7 (4, b=7) 6 (-, b= ) 6 6 (-, b= 6) (a=-, 6) (-, b=6) x Poda a: a(=6)=6 6 6 (a=6, ) (6, b=) (a=6, ) (6, b=7) (a=6, 7) 8 Poda a: a(=8)>7 x 7 7 (a=7, ) (7,b= ) (a=7, ) 8 8 (7,b= 8) (a=7, 8) ¡Cuidado!

61 Valor con Poda alfa-beta MAX MIN MAX MIN MAX (a=valor 1, valor 2 ), alfa puede crecer y marca poda cuando se cruza con b (valor 1, b=valor 2 ), beta puede decrecer y marca poda cuando se cruza con a x Poda a: a(=6)=6 Poda a: a(=8)>7 x 7 ¡Cuidado! MIN

62 Marcado de una Poda alfa-beta Poda del árbol comenzando por MIN MIN MAX MIN MAX MIN

63 Marcado de una Poda alfa-beta MIN MAX MIN MAX MIN 6 Poda del árbol comenzando por MIN (-,b= ) (a=-, ) (-, b= ) 4 (a=4,b= ) 6 (-, b=6) (a=-, 6) 7 (a=-, ) 6 6 (a=6, ) (6,b= ) (a=6,) 8 (a=8,) (-,b= 6) (a=-, 6) (a=6, 9) 6 (-, b=6) 7 6 Poda a: a(=6)=6 6 (-,b= 6) (a=-,6) Poda a: a(=7)>6 x (6,b= 9) (a=6, 9) (-,b= 6) Poda a: a(=6)=6 x x

64 Valor con Poda alfa-beta MIN MAX MIN MAX MIN Poda del árbol comenzando por MIN Poda a: a(=6)=6 Poda a: a(=7)>6 x Poda a: a(=6)=6 x x

65 Inteligencia Artificial (30223) Grado en Ingeniería Informática.


Descargar ppt "Curso 2012-2013 José Ángel Bañares 17/10/2013. Dpto. Informática e Ingeniería de Sistemas. Inteligencia Artificial (30223) Problemas resueltos."

Presentaciones similares


Anuncios Google