La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

1 Heuristicas Secciones 4.2 a 4.5 Diapositivas de C H v d Becke parcialmente sobre ideas de los prof. Stuart Russell, Peter Norvig y Jeff Thomson.

Presentaciones similares


Presentación del tema: "1 Heuristicas Secciones 4.2 a 4.5 Diapositivas de C H v d Becke parcialmente sobre ideas de los prof. Stuart Russell, Peter Norvig y Jeff Thomson."— Transcripción de la presentación:

1 1 Heuristicas Secciones 4.2 a 4.5 Diapositivas de C H v d Becke parcialmente sobre ideas de los prof. Stuart Russell, Peter Norvig y Jeff Thomson

2 2 SECCIÓN 4.2 Funciones Heurísticas

3 3 4.2 Funciones heurísticas Sea el caso del juego de los 8 tejos. Mi problema es encontrar una heurística para saber o adivinar cuánto me falta por llegar a la meta. Miro mi posición actual y cuento cuántos tejos están mal ubicados con respecto a la meta. Tengo h1. Cuento cuál es la distancia en línea recta DLR de cada tejo con respecto a la posición deseada en la meta. Sumo para los 8. Tengo h2 Miro mi posición actual y cuento cuántos pasos debe dar cada tejo, usando diagonales si es necesario, para llegar a su posición meta. Sumo. Tengo h3. Parto de nuevo de la posición presente. Cuento para cada tejo las cuadras de Manhattan que deben recorrer (usando rutas ortogonales y ya no diagonales). Tengo h4. Mi heurística óptima hasta este último invento es la máxima entre h1,...,h4. Todas son estrategias admisibles optimistas nunca sobreestiman la distancia

4 4 Funciones heurísticas Inventar heurísticas por relajamiento de las restricciones del problemas combinar con max(h1,h2,...) la evaluación heurística debviiera ser eficiente. -seleccionar una variable variable más restrictora (la que tiene menor número de valores posibles) variable már rerstringidora (involucrada con la mayoría de las restricciones) seleccionar un valor el valor menos restringidor (el que descarta el menor número de valores de las otras variables)

5 5 Función heurística Juego de los 8 con factor de ramificación 3 - una solución típica requiere 20 pasos una función heurística admisible nunca sobreestima el número de etapas hacia la meta. h1 - el número de tejos en posición errónea h2 - la suma de las distancias de Manhattan desde sus posiciones hasta las posiciones de meta

6 6 Heurísticas Admisibles Problema de los 8 tejos h1(n) =número de tejos fuera de orden h2(n) = suma de distancias de Manhattan, o sea el número de cuadrados que apartan a un tejo de su posición según la meta estado iniciae Estado meta

7 7 Calidad de la heurística Factor de ramificación efectivo b* N = 1+b*+(b*^n)^2+...+(b*)^d – forma de caracterizar la calidad de la heurística h2 está más informada que h1 si para cualquier nodo n, h2(n)>=h1(n) y ambos son admisibles h2 domina a h1 - entonces A* al usar h2 va a expandir menos nodos que usando h1 siempre será mejor usar una función heurística con números mayores, por supuesto, sin pasarse a la sobreestimación.

8 8 Comparación Ver figura 4.8, pag tabla de comparación de tres métodos, óptimo A*(h2)

9 9 Inventar funciones heurísticas Problema relajado - menos restricciones impuestas a los operadores.- El costo de una solución exacta a un problema relajado es a menudo una buena heurística para el problema original. Un tejo se puede mover del cuadrado A al B si A es adyacente a B y B está vacío. un tejo se puede mover desde el cuadrado A al B si A está adyacente a B un tejo se puede mover del cuadrado A al B si B está vacío un tejo se puede mover del cuadrado A al B.

10 10 Inventar funciones heurísticas Definici ó n del problema - un lenguaje formal relajaci ó n autom á tica falla en dar claramente mejor heur í stica heur í stica compuesta - h(n) = max(h 1 (n),..., h m (n)), usa la funci ó n que sea la m á s precisa informaci ó n estad í stica aprender cu á l es mejor coeficiente para cada estado con sus propias caracter í sticas. Costo de b ú squeda hay que considerar tambien el costo de usar h en un nodo

11 11 Inventar funciones heurísticas - caso restricto Sea el problema de colorear mapas con m í nimo n ú mero de colores. Seleccionar una variable para su uso, eligiendo un valor para la variable. Variable m á s restringida (con menos grados de libertad) revisaci ó n por adelantado - qu é valores a ú n no son tab ú para cada variable. Seleccionar aquella variable con menores posibles valores el factor de ramificaci ó n tiende a ser m í nimo el tama ñ o factible del problema para las n-reinas aumenta desde 30 con revisaci ó n por adelantado hasta cerca de 100 sin ella.

12 12 Inventar funciones heurísticas - caso restricto Variable m á s restringida (menor gl) seleccione cu á l es la variable involucrada en el m á ximo de restricciones con respecto a otra variable sin asignar. Es la que tiene menos valores posibles Intentar una reducci ó n del factor de ramificaci ó n en las elecciones futuras. Valor menos restringidor elegir un valor que descarta el menor n ú mero de valores en variables conectadas a la variable en estudio por restricciones (el valor menos molesto para los vecinos) Dejar mayor grado de libertad para selecciones futuras.

13 13 Heurísticas Admisibles Encontrar una buena heurística para un problema relajar las restricciones en general, el costo de una solución exacta obtenida al relajar un problema sirve como una buena heurística para el problema original - se menciona de nuevo la distancia de Manhattan como ejemplo usar información estadística obtenidos durante entrenamiento con ejemplos para la predicción de valores heurísticos para los nodos, con el riesgo de generar funciones heurísticas inadmisibles.

14 14 (2) 2 (3) 1 (4) 1 (5) 1 (6) 1 (7) goal 3 (1) 4 1 Buscando una solución subóptima Las etiquetas de los nodos son su valor heurístico k y los números entre paréntesis son el orden de prioridad para expandir. El valor k de un nodo significa que esperamos que esté a k pasos de la meta. El método siempre expande nodos con min distancia esperada del nodo meta, así que el subárbol de la derecha nunca tiene turno para expandir. (Es una cola que privilegia a la ruta izquierda, primero en profundidad) Problema: no tratamos de encontrar algun nodo que esté a una profundidad más chata. Las etiquetas de los nodos son su valor heurístico k y los números entre paréntesis son el orden de prioridad para expandir. El valor k de un nodo significa que esperamos que esté a k pasos de la meta. El método siempre expande nodos con min distancia esperada del nodo meta, así que el subárbol de la derecha nunca tiene turno para expandir. (Es una cola que privilegia a la ruta izquierda, primero en profundidad) Problema: no tratamos de encontrar algun nodo que esté a una profundidad más chata.

15 15 (2) 1+2 (3) 2+1 (4) 3+1 (5) goal 0+3 (1) 1+4 (6) 2+1 (7) Buscar la Solución Optima Las etiquetas de los nodos son aquí valor heurístico + profundidad. Números entre paréntesis son orden de expansión. Para A* no hay diferencia real entre (5) y (6) No se puede garantir que se pueda encontrar la solución óptima. Por ejemplo, qué pasa si (5) fuese el nodo meta? Problema: con pesimismo se ha etiquetado al primer nodo de la rama derecha como 4 (hemos sobreestimado su distancia a la meta) Es imperiosa una heurística optimista. Las etiquetas de los nodos son aquí valor heurístico + profundidad. Números entre paréntesis son orden de expansión. Para A* no hay diferencia real entre (5) y (6) No se puede garantir que se pueda encontrar la solución óptima. Por ejemplo, qué pasa si (5) fuese el nodo meta? Problema: con pesimismo se ha etiquetado al primer nodo de la rama derecha como 4 (hemos sobreestimado su distancia a la meta) Es imperiosa una heurística optimista. 3+0 (8)

16 16 (2) 1+2 (3) 2+1 (4) 3+1 (5) goal 0+3 (1) 1+2 (6) 2+1 (7) Buscar la Solución Optima Admisibilidad h - la función heurística - es optimista si para todo n, h(n) h* (costo actual de llegar al nodo meta) con eso no se sobreestima al costo. Una heurística optimista se llama admisible Casos especiales h(n) = h(n)* (la heurística perfecta) h(n) = 0 ? Admisibilidad h - la función heurística - es optimista si para todo n, h(n) h* (costo actual de llegar al nodo meta) con eso no se sobreestima al costo. Una heurística optimista se llama admisible Casos especiales h(n) = h(n)* (la heurística perfecta) h(n) = 0 ? 3+0 (8)

17 17 SECCIÓN 4.3 Búsqueda restricta por la capacidad de memoria

18 Búsqueda Restricta por la Memoria - A* con Profundización Iterativa (IDA*) [Fig4.10] - BPP por todos los nodos cuyos f sean menores o iguales al f límite el nuevo f límite siempre será el menor f de los nodos expandidos más allá del f límite el número de las iteraciones de este método es proporcional al número de los diferentes valores de f podría usarse un incremento e fijo para f límite pero no sería ADMISIBLE (e-admisible) que e |opt – soln|

19 Búsqueda restringida por Memoria - IDA* ¿ Gran problema de A*? mucho requisito de memoria. ¿ Cu á l es lo mejor para econom í a de memoria? BPP (DFS) ¿ De qu é forma se mejoraban los defectos de BPP sin empeorar m á s que un poco sus requisitos de memoria? PI De all í : iterative deepening A* search (IDA* o A*PI) cada iteraci ó n es una b ú squeda en profundidad, ahorrativa, usando un l í mite basado en el costo f y no en l (l í mite de profundidad) Estudiemos cinco iteraciones t í picas donde f va creciendo. La ú ltima fila es la conclusi ó n de la iteraci ó n terminada. Ciudad meta D Otras: B,C,E,F,G,H,I,J,K

20 20 Ejemplo de IDA* o A*PI iteraci ó n 1 DFS-CONTOUR(A, 12) DFS-CONTOUR(B, 12) f-cost(B) = 15 > 12 new-f = 15 next-f = 15 f-cost(G) = 13 > 12 new-f = 13 next-f = 13 f-limit = 13

21 21 Ejemplo de IDA* o A*PI iteraci ó n 2 DFS-CONTOUR(A, 13) DFS-CONTOUR(B, 13) f-cost(B) = 15 > 13 next-f = 15 DFS-CONTOUR(G, 13) DFS-CONTOUR(H, 13) f-cost(H) = 18 > 13 DFS-CONTOUR(I, 13) f-cost(I) = 24 > 13 f-limit = 15

22 22 Ejemplo de IDA* o A*PI iteraci ó n 3 DFS-CONTOUR(A, 15) DFS-CONTOUR(B, 15) DFS-CONTOUR(C, 15) next-f = 25 DFS-CONTOUR(D, 15) next-f = 20 DFS-CONTOUR(G, 15) DFS-CONTOUR(H, 15) next-f = 18 DFS-CONTOUR(I, 15) f-limit = 18

23 23 Ejemplo de IDA* o A*PI iteraci ó n 4 DFS-CONTOUR(A, 18) DFS-CONTOUR(B, 18) DFS-CONTOUR(C, 18) DFS-CONTOUR(D, 18) next-f = 20 DFS-CONTOUR(G, 18) DFS-CONTOUR(H, 18) DFS-CONTOUR(J, 18) DFS-CONTOUR(K, 18) DFS-CONTOUR(I, 18) f-limit = 20

24 24 Ejemplo de IDA* o A*PI iteraci ó n 5 DFS-CONTOUR(A, 20) DFS-CONTOUR(B, 20) DFS-CONTOUR(C, 20) DFS-CONTOUR(D, 20) soluci ó n = D

25 25 Algoritmo IDA* Un problema inherente a A* es su malgasto de meoria cuando h = 0 se reduce a BPA con lo cual usa memoria exponencial con la profundidad en que se encuentra el nodo meta óptimo la profundización iterativa puede ayudar - ahora podamos los nodos cuyo nodo meta más cercano se puede mostrar que está por debajo de la profundidad de corte. Las s iteraciones individuales realizan una BPP. La función heurística tiene como misión podar nodos, sin llegar a determinar el orden de la expansión. Sketch of IDA* Algorithm: 1. Set c = 1; this is the current cutoff value. 2. Set L to be the list of initial nodes. 3. Let n be the first node on L. If L is empty, increment c and return to step If n is a goal node, stop and return the path from initial node to n. 5. Otherwise, remove n from L. Add to front of L every child node n of n for which f(n) c. Return to step 3. Sketch of IDA* Algorithm: 1. Set c = 1; this is the current cutoff value. 2. Set L to be the list of initial nodes. 3. Let n be the first node on L. If L is empty, increment c and return to step If n is a goal node, stop and return the path from initial node to n. 5. Otherwise, remove n from L. Add to front of L every child node n of n for which f(n) c. Return to step 3.

26 26 Algoritmo IDA* (3,5,10) 1+1 (6,11) 2+1 (12) goal 0+2 (1,2,4,9) 1+2 (7,13) 2+1 (8,14) Para c = 1, solo se examina el nodo inicio para c = 2, examinar dos nodos, inicio y su hijo izquierdo. Notar que el hijo derecho es podado pues su valor de f > c = 2 las iteraciones individuales se realizan mediante BPP (el nodo 12 se expande antes que el 14, pese a que el valor de f es menor) Para c = 1, solo se examina el nodo inicio para c = 2, examinar dos nodos, inicio y su hijo izquierdo. Notar que el hijo derecho es podado pues su valor de f > c = 2 las iteraciones individuales se realizan mediante BPP (el nodo 12 se expande antes que el 14, pese a que el valor de f es menor) 3+1 (15) 4+0 (16)

27 27 Búsqueda Restricta por Memoria A* Simplificada y Limitada por Memoria (SMA*) [Fig4.12] - según exigencias de memoria, descarta nodos de ella que tengan valores de f altos. -los valores de f descartados quedan memorizados en ancestros - mecanismo de regeneración de nodos descartados que regenera lo faltante solo si todo el resto de rutas son peores. - óptima y completa si la solución más chata cupo en la memoria. En el otro caso, entrega la mejor solución alcanzable - ejemplo [Fig4.11]

28 28 En qué consiste SMA* o A*SRM IDA* emplea demasiado poca memoria y no la llena, con lo cual se malgasta esfuerzo SMA* usa en cambio toda la memoria M disponible para realizar la b ú squeda evita estados repetidos dentro de la dispònibilidad de M completa si M >= d, optima si M >= d* optima en eficiencia si M >= b m la limitaci ó n de la memoria hace que no se pueda rastrear cu á l ser á el tiempo de c ó mputo (pendula entre candidatos) optimalidad cae.

29 29 SECCIÓN 4.4 Algoritmos de Mejoramiento Iterativo

30 30 Algoritmos de Mejoramiento Iterativo La lista de los principales ejemplos es: 1) Arrancar con la configuración completa e ir modificando hasta llegar a una solución. Por ejemplo, las 8 reinas [Fig4.16] 2) Ascenso a la Cima o Descenso por Gradientes [Fig4.14] 3) Endurecimento (FORJADO) Simulado [Fig4.15] Se transige con el empeoramiento transitorio

31 31 Ascenso a la Cima (Hill-Climbing Search) Descenso por gradiente - continuamente se desplaza en la direcci ó n de valor que m á s crece - elegir el mejor siguiente estado inmediato) no mantiene un á rbol de b ú squeda descarta informaci ó n de ruta rearranque de ascenso basado en azar tres motivos de falla reconocidos m á ximos locales - caminata al azar mesas - caminata al azar riscos - oscilaciones y poco progreso ascenso a la cima aleatorio con rearranque la estructura de la superficie del espacio de estados

32 32 Ascenso a la Cima Idea general si no podemos usar una descripción matemática para derivar e igualar a cero y con ello encontrar la ruta inteligente adecuada, recurrimos al ascenso a la cima. Exploramos localmente cerca del punto en que estamos, palpando la dirección del ascenso máximo o pendiente máxima. Dejamos así de lado un árbol de búsqueda. Avanzamos por la pendiente máxima con un paso arbitrario (no sabemos cuál usar). Un paso corto lleva a vagabundeo sin ganancia de información. Si el paso es muy largo nos sobrepasamos y ya no estamos dentro del método Cuando decae la mejora, estamos en la cima o en una mesa. Retomamos la búsqueda al azar.

33 33 FORJADO o Endurecimiento simulado En metalurgia y termodinámica se menciona el forjado o endurecimiento como el proceso de inicio a alta temperatura y enfriamiento gradual para obtener transiciones de fase más estables que las obtenidas por enfriamiento rápido. FORJADO o ENDURECIMIENTO SIMULADO proceso de búsqueda global u optimización global en sistemas de comportamiento estocástico, con alguna probabilidad que es función de una temperatura (un cierto parámetro que desciende por ejemplo hasta cero) con lo cual la conducta es diferente de una completamente determinística. La temperatura arranca siendo alta, el metal está blando y se va endureciendo al descender la temperatura con un programa preestablecido.

34 34 FORJADO o Endurecimiento simulado problemas difíciles, por ejemplo multimodales, basados en la metáfora de imitar el endurecimiento o forjado usado en metalurgia. Si el programa de enfriamiento es demasiado rápido, las transiciones de fase ocurren desordenadamente, mientras que si el programa de temperatura es suave, se logra mayor estabilidad, que aquí se interpreta como encontrando la más alta cima en lugar de cimas subóptimas. Pertenece a la familia de los métodos de búsqueda heurísticos, esto es, admite que haya pasos aparentemente en falso, que no mejoran la evaluación, pero esos pasos van disminuyendo en su probabilidad a lo largo del tiempo, cuando no se han encontrado otras cimas que la principal que se está ascendiendo. La tasa con que se admiten aparentes pasos en falso (decrecientes) está regulado por un programa de enfriamiento (cooling schedule), con lo cual se mantiene la vigencia de la metáfora. El método garante un óptimo global y no un subóptimo local si la temperatura baja con suavidad.

35 35 FORJADO o Endurecimiento Simulado Elegir un movimiento al azar si es mejor, ejecutarlo si es peor, ejecutarlo con probabilidad que decrezca exponencialmente con lo malo del movimiento y la temperatura la temperatura cambia de acuerdo con un programa si el programa hace descender la T en forma lenta, el algoritmo va a encontrar un ó ptimo global

36 36 Aplicaciones en Problemas con Satisfacción de Restricciones (CSP) Resolver los CSP por mejoramiento iterativo soluci ó n inicial - uso de todas las variables operador de modificaci ó n - asignar un valor diferente a una variable reparaci ó n heur í stica heur í stica de min-conflictos - seleccionar el valor que resulte en un n ú mero m í nimo de conflictos con otras variables

37 37 Satisfacción de Restricciones - elegir un valor para cada variable -luego usar reparación heurística (reparar las inconsistencias) un método frecuentemente muy exitoso elegir los valores que entren en min-conflictos con otras variables

38 38 SECCIÓN 4.5 Resumen y conclusiones razonadas

39 39 Resumen Búsqueda Primero por lo Mejor - parte de Búsqueda General y expande según COSTO MINIMO Avara COSTO MINIMO se interpreta como h, el que falta por satisfacer A* combina costo uniforme (g) con avara (h) - inconveniente - no ahorra espacio

40 40 Resumen (2) Una buena heurística, ahorra. A*PI = A* + PI (profundización iterativa). Al ser profundización, ahorra. A*SRM - si la memoria está llena, borrar el nodo de f más alto de la cola de espera (supresor) Mejoramiento iterativo: ascenso a la cima - evaluación por calidad gradiente mínimo - evaluación por costo forjado simulado - retroceder pasos

41 41 Resumen (3) PSR (constraint satisfaction) - se asignan valores a todas las variables y luego se modifican para conducir el proceso hacia buen éxito. Al reparar inconsistencias se llaman algoritmos PSR GSAT – algoritmo paradigmático en su uso en temas posteriores

42 42 Conclusiones razonadas En nuestra conducta intelectual raramente resolvemos nuestros problemas con un ascenso contínuo hacia el buen éxito. Por eso es difícil de interpretar que un agente resolvedor de problemasvaya a servir en los casos generales de búsqueda. Probablemente necesitará un abanico de recursos de búsqueda. Quizás haya que disponerlos en una estructura jerárquica rica con estructuras complejas y recursivas.

43 43 Conclusiones razonadas Como contrapartida, es estupendo que una máquina se guíe por los gradientes de la superficie de respuesta. Me parece que los métodos de búsqueda se dividen en dos grupos: los DESINFORMADOS ACERCA DE DERIVADAS, globalmente lentos e ineficientes (en muchas casos) y los INFORMADOS y que usan inteligentemente esa información. El ascenso a la cima es un bello ejemplo de algoritmo informado y al serlo es muy rápido y eficiente. En el caso del humano, me hace recordar la teoría de la felicidad de Mihaly Csikszentmihalyi, acerca del desafío y la habilidad. Una habilidad orientada por derivadas, pendientes y tangentes me parece la mejor manera de enfrentar desafíos.

44 44 Conclusiones razonadas En la medida que no aparezca el FENOMENO DE MESA (the Mesa Phenomenon) - donde el espacio está compuesto primariamente por zonas sin pendientes - el método de ascenso a la cima me parece un buen ejemplo de las reflexiones estimuladas por el lema de la I.A., los aviones no aletean ( no hay que imitar temas secundarios de la biología, sino los principales – aquó trepar, errar y trapar es primario) Frente al efecto MESA apelar al ingenio de encontrar heurísticas adecuadas que complementen a la búsqueda de ascenso a la cima.

45 45 Conclusiones razonadas Estas heurísticas conducen a pensar en otra categoría de métodos de búsqueda mucho más afines a la mente humana. No han sido mencionados en este Capítulo 4. Son los que incorporan aprendizaje a la búsqueda tema por ver. La idea fundamental es aprendizaje por refuerzo (típico de los animales), un concepto tradicional de la psicología y de la IA. El clásico método de programación dinámica de Bellman es el único método que computa la mejor estrategia de control a lo largo del tiempo de búsqueda. Se podría hibridizar entonces entre aprendizaje por refuerzo y programación dinámica clásica, generando ADP (programación dinámica aproximada). Ese quizás sea el futuro.

46 46 Conclusiones razonadas Si no sabemos cómo obtener X, creemos un espacio de estados donde sepamos que va a estar incorporado X y luego busquemos a X dentro de ese espacio. Mérito de esta formulación siempre es posible encontrar un espacio donde esté contenida la respuesta o solución. Cuanto menos conocimiento tengamos, tanto más grande será el espacio. La inteligencia lo achica.

47 47 Conclusiones razonadas Quizás haya dos grandes temas fundamentales en IA. La búsqueda es uno de ellos. Los procesos de reconocimiento de patrones APRENDIZAJE, son el otro, igualmente fundamental. Permiten el contacto entre la estructura de memoria almacenada y la estructura de la tarea temporariamente disponible. La esencia de tener un problema es el de no saber qué hacer a continuación. Esto genera búsqueda - una búsqueda combinatoria.

48 48 Conclusiones razonadas Hay por lo menos tres búsquedas en cada tarea intelectual. Búsqueda clásica dentro del espacio de problema tradicional, a través de los nodos de un árbol o entre nodos, como el ascenso a la cima. Búsqueda de la receta intelectual para buscar Búsqueda de medir bien la aproximación a la meta (la heurística) Alguna de esas búsquedas podría ser encarada como reconocimiento de patrones o como búsqueda propiamente dicha. A esta altura lo que sabemos es buscar esa es la opción..

49 49 CONTINÚA BIBLIOGRAFIA DEL TEMA:


Descargar ppt "1 Heuristicas Secciones 4.2 a 4.5 Diapositivas de C H v d Becke parcialmente sobre ideas de los prof. Stuart Russell, Peter Norvig y Jeff Thomson."

Presentaciones similares


Anuncios Google