¿Aproximadamente 1d TSP con comparaciones lineales?

21

O(nlogn)1+O(nc)cO(n)(maxmin)n(c+1)de su valor original, y luego use la clasificación de radix. Pero los modelos con redondeo tienen una teoría de complejidad problemática y esto me llevó a preguntarme, ¿qué pasa con los modelos de computación más débiles?

Entonces, ¿con qué precisión se puede aproximar el TSP unidimensional, en un modelo de cálculo de árbol de comparación lineal (cada nodo de comparación prueba el signo de una función lineal de los valores de entrada), mediante un algoritmo cuya complejidad temporal es ? El mismo método de redondeo permite lograr cualquier relación de aproximación de la forma (mediante el uso de búsquedas binarias para hacer el redondeo y redondear mucho más grueso para que sea lo suficientemente rápido). Pero, ¿es posible lograr incluso una relación de aproximación como para algunos ?o(nlogn)n1o(1)O(n1ϵ)ϵ>0

David Eppstein
fuente
No estoy familiarizado con 1D TSP. ¿Puedes definirlo?
Tyson Williams el
44
@Tyson Williams: El problema de la ruta del vendedor ambulante 1D es el caso especial del problema de la ruta del vendedor itinerante euclidiano donde todas las ciudades están en el eje x. O formalmente, se le dan n números reales a_1, ..., a_n, y su objetivo es generar una permutación π: {1, ..., n} → {1, ..., n} tal que ∑_ {i = 1} ^ {n − 1} | a_ {π (i)} - a_ {π (i + 1)} | se minimiza
Tsuyoshi Ito

Respuestas:

10

EDITAR (ACTUALIZACIÓN): El límite inferior en mi respuesta a continuación se demostró (por una prueba diferente) en "Sobre la complejidad de aproximar recorridos de vendedores ambulantes euclidianos y árboles de expansión mínima", por Das et al; Algorithmica 19: 447-460 (1997).


¿Es posible lograr incluso una relación de aproximación como para algún en el tiempo usando un algoritmo basado en la comparación?O(n1ϵ)ϵ>0o(nlogn)

No. Aquí hay un límite inferior.

Reclamación. Para cualquier , cada algoritmo de aproximación basado en comparación requiere comparaciones en el peor de los casos.ϵ>0n1ϵΩ(ϵnlogn)

Por "basado en comparación" me refiero a cualquier algoritmo que solo consulta la entrada con consultas binarias (Verdadero / Falso).

Aquí hay un intento de prueba. Ojalá no haya errores. FWIW el límite inferior parece extenderse a algoritmos aleatorios.


Arregle cualquier arbitrariamente pequeño pero constante .nϵ>0

Considere solo lainstancias de entrada de "permutación" que son permutaciones de . La solución óptima para cualquier caso tiene un costo .n!(x1,x2,,xn)[n]n1

Defina el costo de una permutación para que sea. Modele el algoritmo tomando como entrada una permutación , generando una permutación y pagando el costo .πc(π)=i|π(i+1)π(i)|ππd(π,π)=c(ππ)

Defina como el número mínimo de comparaciones para cualquier algoritmo basado en comparación para lograr una relación competitiva en estos casos. Como opt es , el algoritmo debe garantizar el costo como máximo .Cn1ϵn1n2ϵ

Mostraremos .CΩ(ϵnlogn)

Defina que sea, para cualquier salida posible , la fracción de entradas posibles para la cual la salida alcanzaría el costo como máximo . Esta fracción es independiente de .Pππn2ϵπ

P también es igual a la probabilidad de que, para una permutación aleatoria , su costo sea ​​como máximo . (Para ver por qué, tome como la permutación de identidad Entonces es la fracción de las entradas para las cuales como máximo , pero .)πc(π)n2ϵπIPd(π,I)n2ϵd(π,I)=c(π)

Lema 1. .Clog21/P

Prueba. Arregle cualquier algoritmo que siempre use menos de comparaciones. El árbol de decisión para el algoritmo tiene una profundidad menor que , por lo que hay menos de hojas y, para alguna permutación de salida , el algoritmo da como salida para más de una fracción de las entradas. Por definición de , para al menos una de esas entradas, la salida da un costo mayor que . QEDlog21/Plog21/P1/PππPPπn2ϵ

Lema 2. .Pexp(Ω(ϵnlogn))

Antes de dar la prueba del Lema 2, tenga en cuenta que los dos lemas juntos dan la afirmación:

C  log21P = log2exp(Ω(ϵnlogn)) = Ω(ϵnlogn).

Prueba de lema 2. Sea una permutación aleatoria. Recuerde que es igual a la probabilidad de que su costo sea ​​como máximo . Digamos que cualquier par es una ventaja con costo, entonces es la suma de los costos de borde.πPc(π)n2ϵ(i,i+1)|π(i+1)π(i)|c(π)

Supongamos que .c(π)n2ϵ

Entonces, para cualquier , a lo sumo de los bordes tiene un costo o más. Digamos que los bordes de costo menores que son baratos .q>0n2ϵ/qqq

Arreglo . Sustituyendo y simplificando, a lo sumo de los bordes no son baratos.q=n1ϵ/2n1ϵ/2

Por lo tanto, al menos de los bordes son baratos. Por lo tanto, hay un conjunto contiene aristas baratas.nn1ϵ/2n/2Sn/2

Reclamación. Para cualquier conjunto de aristas, la probabilidad de que todas las aristas en sean baratas es como máximo .Sn/2Sexp(Ω(ϵnlogn))

Antes de probar el reclamo, tenga en cuenta que implica el lema de la siguiente manera. Según la afirmación, y la unión ingenua ligada, la probabilidad de que exista tal conjunto es como máximo S

(nn/2)exp(Ω(ϵnlogn))  2nexp(Ω(ϵnlogn))
  exp(O(n)Ω(ϵnlogn))  exp(Ω(ϵnlogn)).

Prueba de reclamación. Elija por el siguiente proceso. Elija uniformemente de , luego elija uniformemente de , luego elija uniformemente de , etc.ππ(1)[n]π(2)[n]{π(1)}π(3)[n]{π(1),π(2)}

Considere cualquier borde en . Considere el tiempo justo después de que se haya elegido , cuando se va a elegir . Independientemente de las primeras opciones (para para ), hay al menos opciones para , y como máximo de esas las opciones le darán al borde costo menor que (haciéndolo barato).(i,i+1)Sπ(i)π(i+1)iπ(j)jiniπ(i+1)2n1ϵ/2(i,i+1)n1ϵ/2

Por lo tanto, condicionado a las primeras elecciones , la probabilidad de que el borde sea barato es como máximo . Por lo tanto, la probabilidad de que todas las aristas en sean baratas es como máximo Desde , hay al menos aristas en con . Por lo tanto, este producto es como máximo i2n1ϵ/2nin/2S

(i,i+1)S2n1ϵ/2ni.
|S|n/2n/4Snin/4
(2n1ϵ/2n/4)n/4  (8nϵ/2)n/4 = exp(O(n)Ω(ϵnlogn)) = exp(Ω(ϵnlogn)).

QED

Neal Young
fuente
66
PD: Recibí una solicitud para que esto se pueda citar, así que lo puse en arvix.org aquí .
Neal Young