Los caminos más cortos que deshabilitan cada borde

9

Agradecería cualquier sugerencia o término que pudiera ayudarme a comenzar en la dirección correcta.

Tenemos un gráfico dirigido y longitudes para cada borde que se puede suponer positivo. Hay un nodo inicial especial nodo final .l i j i j s tG=(V,E)lijijst

Para cada borde , nos gustaría calcular la longitud de la ruta más corta desde hasta que no usa el borde .s t i jijstij

Un algoritmo simple de fuerza bruta es ejecutar un algoritmo de ruta más corta para cada borde, eliminando cada vez un borde diferente del gráfico original. ¿Existe un algoritmo más eficiente que aproveche el hecho de que hay muchos cálculos repetidos en este algoritmo de fuerza bruta?

Gracias por adelantado.

dan_x
fuente

Respuestas:

18

El problema que menciona se llama "rutas de reemplazo". Aquí hay algunas referencias:

  1. Gotthilf y Lewenstein, Algoritmos mejorados para las k rutas más cortas simples y los problemas de rutas de reemplazo. Inf. Proc. Cartas, 109 (7): 352–355, 2009. Este documento ofrece el algoritmo exacto más rápido hasta la fecha para el problema de las rutas de reemplazo, ejecutándose en el tiempo en gráficos con nodos y bordes.n mO(mn+n2loglogn)nm
  2. A. Bernstein. Un algoritmo casi óptimo para aproximar rutas de reemplazo y k rutas simples más cortas en gráficos generales. En proc. SODA, páginas 742–755, 2010. Este documento ofrece sorprendentemente un esquema de aproximación de tiempo cuasilineal para el problema.
  3. J. Hershberger, S. Suri y A. Bhosle. Sobre la dificultad de algunos problemas de camino más corto. En proc. STACS, páginas 343–354, 2003. Este documento muestra que cualquier algoritmo de comparación de rutas que resuelva exactamente el problema de las rutas de reemplazo debe tomar al menos tiempo.Ω(mn)
  4. V.Vassilevska W., R. Williams. Equivalencias subcúbicas entre problemas de trayectoria, matriz y triángulo. En proc. FOCS, páginas 645-654, 2010. Mostramos que si obtiene un algoritmo exacto de tiempo para rutas de reemplazo para cualquier constante , entonces esto puede convertirse en un algoritmo de tiempo para todos los pares de rutas más cortas para constante . Este algoritmo verdaderamente subcúbico para todos los pares de rutas más cortas es un problema abierto de larga data.ε > 0 O ( n 3 - ε ) ε > 0O(n3ε)ε>0O(n3ε)ε>0
  5. O. Weimann, R. Yuster. Rutas de reemplazo a través de la multiplicación de matriz rápida. En proc. FOCS, páginas 655-662, 2010. y V. Vassilevska W. Rutas de reemplazo más rápidas. En proc. SODA, páginas 1337-1346, 2011. Estos documentos muestran cómo usar la multiplicación rápida de matrices para encontrar rutas de reemplazo en gráficos con pesos de bordes enteros en el intervalo . El último artículo ofrece el tiempo de ejecución más conocido hasta ahora, .˜ O ( M n ω ){M,,M}O~(Mnω)
virgi
fuente
8

Si desea asociar a cada borde de la longitud de una ruta más corta entre y , se puede comenzar con el cálculo de una ruta más corta de todo el gráfico, y asociar a cada borde no en el camino más corto que acaba calculado la longitud de la corriente ruta más corta. Después de eso, tiene como máximo bordes para los que no sabe la respuesta.t n - 1stn1

Nathann Cohen
fuente
Gracias. Acepté la otra respuesta, porque brinda más del contexto que estaba buscando, pero probablemente usaré este enfoque para la implementación del primer paso que necesito.
dan_x