Agregue una coincidencia a un camino hamiltoniano para reducir la distancia máxima entre pares de vértices dados


14

¿Cuál es la complejidad del siguiente problema?

Entrada :

  • H un camino hamiltoniano en Kn
  • R[n]2 un subconjunto de pares de vértices
  • un entero positivo k

Consulta : ¿hay una M coincidente tal que para cada ( v , u ) R , d G ( v , u ) k ? (donde G = ( [ n ] , M H ) )M(v,u)RdG(v,u)k
G=([n],MH)

He estado discutiendo con un amigo sobre este problema. Mi amigo piensa que el problema está en el tiempo polinómico. Creo que es NP-completo.


11
Puede simplificar esto aún más, al menos en términos de presentación. Te dan , un camino con n vértices y una colección R de pares de estos vértices. Desea aumentar la ruta con una coincidencia para que la distancia entre cualquier par en R sea ​​como máximo k . knRRk
Sasho Nikolov

Creo que esta formulación puede ser confusa después de mi última edición para eliminar cierta ambigüedad.
pfim

1
Mi interpretación es correcta, ¿no es así?
Sasho Nikolov

Hice una edición para hacer la declaración del problema más rigurosa. Creo que esto se puede simplificar aún más, ya que simplemente puede suponer que H es el camino hamiltoniano 1-2-3-4-5 ...- n sin pérdida de generalidad. Entonces solo necesitas . n
Kaveh

Respuestas:


1

Esta respuesta es incorrecta .

Tu amigo tiene razón. Su problema (tal como lo interpreta Sasho) no impone ninguna restricción a la cardinalidad de la coincidente . Por lo tanto, elegir C ser un juego entre los pares en R . Entonces, para cualquier entero positivo k , la distancia entre cada par en R es menor que k .CCRkRk

Su problema se vuelve interesante si se fuerza caminos para tener bordes tanto de la coincidencia de y la trayectoria P .CP


¿Qué quieres decir con "emparejamiento entre los pares en "? R
Emil Jeřábek apoya a Monica el

@ EmilJeřábek Significa conectar los nodos de cada par en por un borde. Entonces C es solo R con un borde que conecta cada par. Esto es equivalente a aumentar la trayectoria P con una marcha perfecta en los pares de R . RCRPR
Mohammad Al-Turkistany

1
Eso no parece tener mucho sentido para mí. ¿Qué pasa si no es una coincidencia? Digamos, si R contiene los pares ( 1 , 2 ) y ( 1 , 3 ) , ¿cómo eliges C ? RR(1,2)(1,3)C
Emil Jeřábek apoya a Monica el

@ EmilJeřábek Sí. Tu punto es válido. Editaré mi respuesta.
Mohammad Al-Turkistany

@pfim ¿Se puede formar la ruta más corta utilizando solo bordes de ? C
Mohammad Al-Turkistany

0

ACTUALIZACIÓN: la respuesta a continuación no es correcta, porque supuse erróneamente que la ruta hamiltoniana está en un gráfico arbitrario, no en . Lo dejo sin borrar, tal vez pueda arreglarlo o dará algunas pistas para otra respuesta.Kn

Creo que es NP-completo. Esta es una idea de reducción muy informal / rápida de 3SAT

Para todas las variables añadir un "artilugio variable" con:xi

  • tres nodos Xi,+Xi,Xi
  • dos aristas variables y ( X i , - X i )(Xi,+Xi)(Xi,Xi)

Agregue un nodo de origen y conéctelo a todas las variables X i .SXi

Para cada cláusula agregue un nodo C j y conéctelo a las variables correspondientes + X i o - X i que forman la cláusula.CjCj+XiXi

La siguiente imagen representa: (+x1x2x3)(x2x3x4)

ingrese la descripción de la imagen aquí

El conjunto (nodos que deben ser vinculados) contiene ( S , C 1 ) , ( S , C 2 ) , . . .R(S,C1),(S,C2),...

La ruta simple debe incluir todos los bordes "AZUL" excepto los bordes variables ( X i , + X i ) y ( X i , - X i ) (en la imagen de arriba los bordes azules representan los bordes que incluimos en P ).P(Xi,+Xi)(Xyo,-Xyo)PAG

En este punto, la fórmula inicial es satisfactoria si y solo si la ruta más corta desde hasta cada nodo de la cláusula C j no es mayor que tres. De hecho, para alcanzar una cláusula desde S en tres pasos, debemos atravesar al menos una variable X i : S X i± X iC j . Por lo tanto, debemos atravesar uno de los dos bordes: X i+ X i o X i- X i ) e incluirlo en CSCjSXyoSXyo±XyoCjXyo+XyoXyo-Xyo)C(porque por construcción no es parte de ). Pero no se pueden incluir ambos, porque comparten un vértice.PAG

Pero no estamos seguros de poder construir una ruta simple que incluya todos los bordes azules porque algunos nodos tienen más de un borde azul incidente.PAG

Para solucionar esto, reemplazamos cada nodo con múltiples bordes azules incidentes, con un árbol que contiene solo pares de bordes azules incidentes que se incluirán en y bordes que los separan y que deberían incluirse en C para llegar a los nodos de la cláusula:PAGC

ingrese la descripción de la imagen aquí

El gráfico original se convierte en:

ingrese la descripción de la imagen aquí

KCjS

C

PAG

ingrese la descripción de la imagen aquí


Intentar construir una ruta que contenga todos los bordes azules me preocupa: algunos vértices tienen más de 2 bordes azules incidentes sobre ellos, por lo que no puede haber una ruta simple que incluya todos los bordes azules.
Mikhail Rudoy

Ok, gracias ... Olvidé por completo lo que es un camino simple :-( ... ahora debería solucionarse.
Marzio De Biasi

Esta publicación sobre matemáticas. SE sugiere que el problema puede no ser NP-completo. Podría ser intratable pero tienen solución en el tiempo quasipolynomial math.stackexchange.com/questions/2218929/...
Mohammad Al-Turkistany

@ MohammadAl-Turkistany: ¿ves una falla en la versión actual de la respuesta?
Marzio De Biasi

No, no veo ningún defecto obvio.
Mohammad Al-Turkistany
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.