1 / 27

Métodos óptimos de búsqueda

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

Download Presentation

Métodos óptimos de búsqueda

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. 4 4 3 5 5 4 3 2 4 4 3 S 4 A D 2 5 5 A B C B D A E 4 5 S 5 2 4 4 G C E E B B F 2 4 5 4 4 5 4 4 D E F 3 D F B F C E A C G 3 4 3 4 G C G F 3 G Reintroducción de costos de arcos en la RED

  3. S 3 4 4 3 A D 5 4 5 2 6 9 B 7 A 8 D E 5 4 5 4 5 4 11 10 11 12 13 C B 13 B F E E 3 B 13 F F C A C D E G C F G G G Algoritmo de costo uniforme = primero el mejor uniforme • En cada paso, seleccionar el nodo con el costo acumulado más bajo.

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

  5. S 1 1 5 5 A C 1 2 5 B 10 D 5 15 E 100 5 F 20 G 5 Problema: NO siempre óptimo! • Costo uniforme devuelve el camino con costo 102, habiendo un camino con costo 25.

  6. S 2 3 A B 0.5 3.5 3 2 D 3 5 C 5 G 6 X ignorar E G X ignorar Primer objetivo alcanzado 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.

  7. S 1 1 5 5 A C 1 2 5 B 10 D 5 15 E 100 5 F 20 G 5 102 25 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.

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

  9. S 3 4 A D S 4 A A D 7 8 B D S A D D 7 8 9 6 A B D E S A D 9 7 8 A E E B D 10 11 B F Ejemplo:

  10. S A D 9 8 A D B B E 11 10 B F 11 12 C E S A D 9 A D D B E 11 10 B F 11 12 10 C E E S A D A A D B E 11 10 B F 11 13 12 10 C E E B S A D A D B E 11 10 B F 11 13 12 C E E E B 15 14 B F

  11. S A D A D B E 11 B F F 11 13 12 C E E B 15 14 13 B F G S A D A D B E B B F 11 13 12 C E E B 15 14 15 15 13 B F A C G S A D A D B E B F 13 C E E E B 14 15 15 15 13 16 B F 14 D F A C G ¡No parar todavía! ¡PARAR!

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

  14. G 3 C F 4 4 B 5 E 4 2 10.4 6.7 A B C 4 5 D A 11 S 4 G 8.9 3 F 6.9 S 3 D E Ejemplo: Reconsiderar la distancia en linea recta: • h(T) = la distancia en linea recta desde T hasta G

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

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

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

  18. 2 3 1 1 3 2 1 1 Costos restantes reales A B C 1 1 Sobre- estima 1 5 2 4 1 1 1 S D E G 3 2 1 1 3 1 4 2 1 1 F H I 1+3 2+2 3+1 A A B B C C 1+5 4 S D G 1+4 ¡No es el camino óptimo! F Más sobre subestimación: • Ejemplo: • Si h NO es una subestimación:

  19. 2 3 0 1 1 0 1 1 Costos restantes reales A B C 1 1 Sub- Estimac. 1 2 2 1 1 1 1 S D E G 3 2 1 1 2 1 3 1 1 1 F H I 1+1 2+0 3+0 A A B B C C 1+2 4 3 ! E E G S D D G 1+3 F Más sobre subestimación: • Ejemplo: • Si h es una subestimación: 2+1 Las malas subestimaciones siempre son corregidas por el costo acumulado increm.

  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. S 3 4 A A D 7 8 B D Distancia acumulada • Principio: • la mínima distancia desde S a Gvia I = (min. dist. desde S a I) + (min. dist. desde I a G) Una extensión ortogonal :borrado de camino • Descartar caminos redundantes: • en el ‘branch and bound extended uniform cost’ : X ¡ descartar !

  22. S A D Q P 7 8 9 6 A B D E 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 X

  23. S 3 4 A D S 4 A D 7 8 B D X S A D 7 9 6 A B D E X X S A D 7 A E B D X X 10 11 B F X

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

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

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

More Related