Formulé el siguiente problema hoy mientras jugaba con mi GPS. Aquí está :
Supongamos que sea un gráfico dirigido, de modo que si entonces (v, u) \ notin E , es decir, G es una orientación del gráfico subyacente no dirigido. Considere las siguientes operaciones:e = ( u , v ) ∈ EG
- : Reemplace un borde con un borde
- : haga que el borde no esté dirigido
Deje ser dos vértices especiales. Considere los siguientes problemas de optimización:
- Min-Flip st-conectividad: Dado y dos vértices encuentra el número mínimo de aristas que deben invertirse para hacer una ruta dirigida de a .
- Min-Flip fuerte-conectividad: dado encuentre el número mínimo de bordes que se deben voltear para que G esté fuertemente conectado. Si no es posible hacer que G esté fuertemente conectado volteando los bordes, entonces envíe NO.
- Conectividad fuerte mínimamente indirecta: dado encuentre el número mínimo de bordes que deben estar sin direccionar para que G esté fuertemente conectado.
Tenga en cuenta que no puede agregar bordes "nuevos". Solo está modificando los bordes existentes utilizando las operaciones anteriores. Es este problema conocido en la literatura. Si es así, ¿cuáles son los resultados conocidos?
ds.algorithms
graph-algorithms
Shiva Kintali
fuente
fuente
Respuestas:
Resumen: Los problemas se pueden resolver en tiempo polinómico al encontrar una orientación fuertemente conectada de costo mínimo.
Más detalles: un teorema de Robbins dice que los bordes de un gráfico no dirigido pueden orientarse para que el gráfico dirigido resultante esté fuertemente conectado si y solo si el gráfico no dirigido está conectado a 2 bordes. Hay varias extensiones, y una de ellas dice que usando un algoritmo de flujo submodular de tiempo polinómico, podemos resolver el siguiente problema en tiempo polinómico: Dada una gráfica no dirigida con costo de borde (para ambas direcciones), encuentre una orientación de costo mínimo que haga El gráfico está fuertemente conectado. Por ejemplo, ver el artículo de Frank . Iwata y Kobayashi proporcionan un algoritmo más reciente .
Este resultado debería ser útil para resolver los problemas planteados. El primer problema puede resolverse mediante el método propuesto por Tomek . Entonces nos concentraremos en los otros problemas.
Para el segundo problema, usamos la misma construcción de un gráfico ponderado de borde que Tomek, y encontramos una orientación fuertemente conectada de costo mínimo en tiempo polinómico.
Para el tercer problema, para permitir ambas direcciones para cada borde, duplicamos cada borde y luego aplicamos la misma construcción y el mismo algoritmo. Esta es una reducción válida ya que usar la misma dirección para bordes duplicados no afecta la fuerte conexión.
fuente
Esta es una respuesta para el primer problema:G′=(V,E′) E′={(u,v,0)|(u,v)∈E}∪{(v,u,1)|(u,v)∈E} G s t
considere un nuevo gráfico ponderado , donde (los pesos de todos los bordes que están en son 0, y los pesos de los bordes 'invertidos' son 1). Ahora solo tiene que encontrar el camino más corto de a .E ′ = { ( u , v , 0 ) | ( u , v ) ∈ E } ∪ { ( v , u , 1 ) | ( u , v ) ∈ E } G s t
fuente
La conectividad de Min-Flip st es NL-complete si expresa el problema de decisión como "¿Hay una ruta st que requiera voltear en la mayoría de los bordes?". Es NL-hard porque contiene conectividad st como un caso especial para , y está en NL porque puedes adivinar una ruta de a que usa algunos bordes invertidos y atravesar un borde a la vez, manteniendo un contador a asegúrese de que no se atraviesen más de bordes hacia atrás.k = 0 s t kk k=0 s t k
fuente
En mi libro reciente, Connections in Combinatorial Optimization (Oxford University Press, 2011), un tema central son los problemas de orientación gráfica, incluidas las variaciones discutidas anteriormente. Se sabe que un gráfico conectado al borde 2k tiene una orientación conectada al borde k (este es un teorema de Nash-Williams). Si el gráfico no está conectado al borde 2k, uno puede estar interesado en decidir si un subconjunto dado F de bordes es bueno (en el sentido de que F tiene una orientación para que el gráfico mixto resultante esté conectado al borde k). En el libro describí cómo se puede resolver este problema en tiempo polinómico. Pero no sé cómo encontrar un buen conjunto de cardinalidad mínima.
Andras Frank
fuente
Base de conectividad st Min-Flip: calcule todos los vértices a los que se puede acceder desde s (T). si t está en T, pare. Inductivo: considere todos los vértices que no están en T que son adyacentes a T con una sola vuelta y llame a esto U. Calcule los vértices accesibles desde U llame a este V. Si t es V, deténgase, de lo contrario agregue V a T y continúe.
Min-Flip fuerte-conectividad Debe significar indirecto porque tendría un problema con: A -> B
fuente