La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Métodos óptimos de búsqueda El costo de RECORRIDO del camino debe ser minimizado (aún a expensas de mec. de BÚSQUEDA más complicados) : Costo Uniforme.

Presentaciones similares


Presentación del tema: "Métodos óptimos de búsqueda El costo de RECORRIDO del camino debe ser minimizado (aún a expensas de mec. de BÚSQUEDA más complicados) : Costo Uniforme."— Transcripción de la presentación:

1 Métodos óptimos de búsqueda El costo de RECORRIDO del camino debe ser minimizado (aún a expensas de mec. de BÚSQUEDA más complicados) : Costo Uniforme Branch and Bound Introducción de Subestimaciones Borrado de caminos A*

2 2 Reintroducción de costos de arcos en la RED A D B E C F G S 3 444 5 543 2 S AD BDEA CEEBBF DFBFCEACG GCGF G 3 33 3 3 2 2 2 4 4 44 4 4 4 4 4 4 4 4 55 55 5 5

3 3 Algoritmo de costo uniforme = primero el mejor uniforme SA D B D A E E BBF B FC E A C G G G FC 3 4 4 5 5 5 2 5 4 3 3 4 7 8 9 6 1011 C E D F G 4 5 111213 13 13 4  En cada paso, seleccionar el nodo con el costo acumulado más bajo.

4 4 Algoritmo de costo uniforme : (POR COSTO ACUMULADO) 1. COLA <-- camino que solo contiene la raiz; 2. WHILE COLA no vacía AND objetivo no alcanzado AND objetivo no alcanzado DO remover el primer camino de la COLA; DO remover el primer camino de la COLA; crear nuevos caminos (a todos los hijos); crear nuevos caminos (a todos los hijos); rechazar los nuevos caminos con ciclos; rechazar los nuevos caminos con ciclos; agreg. los nuevos caminos y ordenar toda la COLA; agreg. los nuevos caminos y ordenar toda la COLA; 3. IF objetivo alcanzado THEN éxito; THEN éxito; ELSE falla; ELSE falla;

5 5 Problema: NO siempre óptimo! G 100 5 D510 E 5 15 F 5 20 S A C 1 5 5 1 B12  Costo uniforme devuelve el camino con costo 102, habiendo un camino con costo 25.

6 6 El principio Branch-and-Bound  Usar cualquier método de búsqueda (completo) para encontrar un camino.  Remover todos los caminos parciales que tengan un costo acumulado mayor o igual que el camino hallado.  Continuar la búsqueda para el próximo camino.  Iterar. 3.5 S B D C G A 5 5 E 6 Primerobjetivoalcanzado 2 3 3 2 3 0.5 G XignorarXignorar

7 7 Una integración débil de branch and bound en costo uniforme:  Cambiar la condición de terminación:  terminar sólo cuando un camino a un nodo objetivo SE HA CONVERTIDO EN EL MEJOR CAMINO. G 100 B 5 S A C 1 1 5 1 2 102 F 5 D E55 5 10 15 20 25

8 8 Versión de costo uniforme óptimo: (por costo acumulado) 1. COLA <-- camino que sólo contiene la raiz; 2. WHILE COLA no vacía AND el primer camino no ha alcanzado AND el primer camino no ha alcanzado el objetivo el objetivo remover el primer camino de la COLA; remover el primer camino de la COLA; crear nuevos caminos (a todos los hijos); crear nuevos caminos (a todos los hijos); rechazar los nuevos caminos con ciclos; rechazar los nuevos caminos con ciclos; agregar los nuevos caminos y ordenar la COLA; agregar los nuevos caminos y ordenar la COLA; 3. IF objetivo alcanzado THEN éxito; THEN éxito; ELSE falla; ELSE falla;

9 9 Ejemplo: S AD 4 S A BD 78 D S AD BD 78 A E 9 AD 34 S A BD 78 D A E 96 E BF 11 10

10 10 S AD B D 8 A E 9 B F 1110 S AD B D A E 9 B F 1110 CE 11 12 S AD B D A E B F 1110 CE 11 12 E 10 S AD B D A E B F 1110 CE 11 12 EB 13 B CE 11 12 D E 10 A B 13 E BF 1514

11 11 S AD B D A E B F 11 CE 11 12 EB 13 BF 1514 S AD B D A E B F CE 11 12 EB 13 BF 1514 G 13 S AD B D A E B F CE EB 13 BF 15 14 G 13 AC 1515 F G 13 ¡No parar todavía! B AC 1515 E FD 14 16 ¡PARAR!

12 12 Propiedades de costo uniforme extendido :  Camino óptimo:  If existe un número  > 0, tal que todo arco tiene costo  , y si el factor de ramificación es finito,  Then costo uniforme extendido encuentra el camino óptimo (si existe).  Memoria y velocidad:  En el peor caso, al menos tan malo como en primero en amplitud:  ¡necesita pasos de ordenamiento adicional luego de la expansión de cada camino!  ¿Cómo mejorarlo?

13 13 Extensión con estimaciones heurísticas:  Reemplazar el ‘costo acumulado’ en el algoritmo ‘costo uniforme extendido’ por una función: f(camino) = costo(camino) + h(T) costo(camino) = el costo acumulado del camino parcial h(T) = una estimación heurística del costo desde T al objetivo objetivo f(camino) = una estimación del costo de un camino que ex- tienda el camino actual para alcanzar el objetivo. tienda el camino actual para alcanzar el objetivo.+  where:

14 14 Ejemplo: Reconsiderar la distancia en linea recta:  h(T) = la distancia en linea recta desde T hasta G D E G S A B C F 4 4 4 4 3 3 2 5 5 DE G S ABC F 4 6.710.411 8.9 6.9 3

15 15 AD 3 + 10.4 = 13.4 4 + 8.9 = 12.9 S S AD 13.4 S AD A E 13.4 19.4 S AD A E B F 13.4 19.4 17.7 D A E 9 + 10.4 = 19.4 6 + 6.9 = 12.9 E B F 10 + 3.0 = 13.0 11 + 6.7 = 17.7 F G 13 + 0.0 = 13.0 ¡PARAR!

16 16 Algoritmo de Estimación de costo uniforme extendido: (por f = costo + h) 1. COLA <-- camino que sólo contiene la raiz; 2. WHILE COLA no vacía AND el primer camino no alcanza el objet. AND el primer camino no alcanza el objet. remover el primer camino de la COLA; remover el primer camino de la COLA; crear nuevos caminos (a todos los hijos); crear nuevos caminos (a todos los hijos); rechazar los nuevos caminos con ciclos; rechazar los nuevos caminos con ciclos; agregar los nuevos caminos y ordenar la COLA; agregar los nuevos caminos y ordenar la COLA; 3. IF objetivo alcanzado THEN éxito; THEN éxito; ELSE falla; ELSE falla;

17 17 Óptimo  Con la misma condición en los costos de arcos y el factor de ramificación: S AD A E B F 13.4 19.4 17.7 G 13  IF para todo T: h(T) es una SUBestimación del costo restante al nodo objetivo  THEN estimate-extended uniform cost es óptimo.  Intuición: incluyesubestimación del costo restante G con costo restante real, este camino debe ser al menos 13.4

18 18 Más sobre subestimación:  Ejemplo: S A D F B E H C G I 1 11 1 1 1 1 1 1 1 1 Costosrestantesreales 321 2 1 32 1 3215 4 4 3 2 Sobre-estima  Si h NO es una subestimación: S A D F1+31+5 1+4 B2+2AB C3+1 C G 4 ¡No es el camino óptimo !

19 19 Más sobre subestimación:  Ejemplo: 32S A D F B E H C G I 1 11 1 1 1 1 1 1 1 1 3 2 2 1 1 1 Costosrestantesreales  Si h es una subestimación: S A D F1+11+2 1+3 1002 3 1 2 1 Sub-Estimac. A B2+0C3+0B G 4 G C DE E 3 ! Las malas subestimaciones siempre son corregidas por el costo acumulado increm. 2+1

20 20 Velocidad y memoria  En el peor caso: no hay mejora respecto de ‘branch and bounded extended uniform cost’  Tomando h = 0 en todas partes.  Para buenas funciones heurísticas: la búsqueda puede expandir mucho menos nodos!  Ver nuestro ejemplo.  PERO: el costo de computar estas funciones puede ser alto  Solución de compromiso

21 21 Una extensión ortogonal : borrado de camino  Descartar caminos redundantes:  en el ‘branch and bound extended uniform cost’ :  Principio:  la mínima distancia desde S a G via I = (min. dist. desde S a I) + (min. dist. desde I a G) S A D 4 3 A B D 78 Distancia acumulada X ¡ descartar !

22 22 Más precisamente:  IF la COLA contiene:  un camino P que termina en I, con costo costo_P  un camino Q conteniendo I, con costo costo_Q  costo_P  costo_Q  THEN  borrar P S A D BD 78 A E 96 X Q P

23 23 AD 34 S S A D 4 B D 78 X S A D BD 7 A E 96 XX S AD B D 7 A E B F 11 10 X XX

24 24 S AD B D A E B F 10 C E 11 12 X X X X S AD B D A E B F CE 11 G 13 X X X X Notar como esta optimización reduce el número de expansiones MUCHO, comparada con ‘branch and bound extended uniform cost’. ¡ 5 expansiones menos !

25 25 Búsqueda A*  ES:  Branch and bound extended,  Heuristic Underestimate extended,  Redundant path deletion extended,  Uniform Cost Search.  Notar que el borrado de caminos redundantes se basa sólo en los costos acumulados, de tal manera que no hay problemas en combinarlo con subestima- ciones heurísticas.

26 26 algoritmo A* : 1. COLA <-- camino que sólo contiene la raiz; 2. WHILE COLA no vacía AND el primer camino no alcanza el objet. AND el primer camino no alcanza el objet. remover el primer camino de la COLA; remover el primer camino de la COLA; crear nuevos caminos (a todos los hijos); crear nuevos caminos (a todos los hijos); rechazar los nuevos caminos con ciclos; rechazar los nuevos caminos con ciclos; agregar los nuevos caminos y ordenar la COLA; agregar los nuevos caminos y ordenar la COLA; IF COLA contiene un camino AND IF COLA contiene un camino P terminando en I, con costo costo_P, y camino Q conteniendo I, con costo costo_Q AND costo_P  costo_Q THEN THEN borrar P 3. IF objetivo alcanzado THEN éxito; ELSE falla; ELSE falla; (por f = costo + h)

27 27 AD 3 + 10.4 = 13.4 4 + 8.9 = 12.9 S S AD A E 13.4 9 + 10.4 = 19.4 6 + 6.9 = 12.9 X S AD A E B F 13.4 11 + 6.7 = 17.7 10 + 3.0 = 13.0 X S AD A E B F 13.4 17.7 G 13 + 0.0 = 13.0 ¡PARAR! X La única dif. está aquí.


Descargar ppt "Métodos óptimos de búsqueda El costo de RECORRIDO del camino debe ser minimizado (aún a expensas de mec. de BÚSQUEDA más complicados) : Costo Uniforme."

Presentaciones similares


Anuncios Google