TSP 1d approssimativo con confronti lineari?


21

Il problema del percorso del venditore ambulante unidimensionale è, ovviamente, la stessa cosa dell'ordinamento, e quindi può essere risolto esattamente mediante confronti nel tempo , ma è formulato in modo tale che l'approssimazione e l'esatta la soluzione ha un senso. In un modello di calcolo in cui gli input sono numeri reali ed è possibile arrotondare a numeri interi, è facile approssimarsi all'interno di un fattore , per qualsiasi costante , nel tempo : trova min e max, arrotonda tutto a un numero entro la distanza del suo valore originale, quindi usa l'ordinamento radix. Ma i modelli con arrotondamento hanno una teoria della complessità problematica e questo mi ha portato a chiedermi, che dire dei modelli di calcolo più deboli?O(nlogn)1+O(nc)cO(n)(maxmin)n(c+1)

Quindi, con quale precisione può essere approssimato il TSP unidimensionale, in un modello di calcolo lineare dell'albero di confronto (ogni nodo di confronto verifica il segno di una funzione lineare dei valori di input), da un algoritmo la cui complessità temporale è o(nlogn) ? Lo stesso metodo di arrotondamento consente di ottenere qualsiasi rapporto di approssimazione della forma n1o(1) (utilizzando ricerche binarie per eseguire l'arrotondamento e arrotondando molto più grossolanamente per renderlo abbastanza veloce). Ma è possibile ottenere anche un rapporto di approssimazione come O(n1ϵ) per alcuni ϵ>0 ?


Non ho familiarità con 1D TSP. Puoi definirlo?
Tyson Williams,

4
@Tyson Williams: il problema del percorso del venditore ambulante 1D è il caso speciale del problema del percorso del venditore ambulante euclideo in cui tutte le città si trovano sull'asse x. O formalmente, ti vengono dati n numeri reali a_1, ..., a_n e il tuo obiettivo è generare una permutazione π: {1, ..., n} → {1, ..., n} tale che ∑_ {i = 1} ^ {n − 1} | a_ {π (i)} - a_ {π (i + 1)} | è ridotto al minimo.
Tsuyoshi Ito,

Risposte:


10

EDIT (AGGIORNAMENTO): Il limite inferiore nella mia risposta di seguito è stato dimostrato (da una prova diversa) in "Sulla complessità dell'approssimazione dei tour dei venditori ambulanti euclidei e degli alberi minimi", di Das et al; Algorithmica 19: 447-460 (1997).


è possibile ottenere anche un rapporto di approssimazione come per un po 'di tempo in usando un algoritmo basato sul confronto?ϵ > 0 o ( n registro n )O(n1ϵ)ϵ>0o(nlogn)

No. Ecco un limite inferiore.

Richiesta. Per qualsiasi , ogni algoritmo di approssimazione basato sul confronto richiede confronti nel peggiore dei casi.n 1 - ϵ Ω ( ϵ n registro n )ϵ>0n1ϵΩ(ϵnlogn)

Per "basato sul confronto" intendo qualsiasi algoritmo che interroga solo l'input con query binarie (Vero / Falso).

Ecco un tentativo di dimostrazione. Spero non ci siano errori. FWIW il limite inferiore sembra estendersi agli algoritmi randomizzati.


Correggi qualsiasi e qualsiasi arbitrariamente piccolo ma costante .ϵ > 0nϵ>0

Considera solo laistanze di input "permutazione" che sono permutazioni di . La soluzione ottimale per tale istanza ha un costo .(n![ n ] n - 1(x1,x2,,xn)[n]n1

Definire il costo di una permutazione per essere. Modella l'algoritmo come prendendo come input una permutazione , producendo una permutazione e pagando il costo .c ( π ) = i | π ( i + 1 ) - π ( i ) |πc(π)=i|π(i+1)π(i)|π d ( π , π ) = c ( π π )ππd(π,π)=c(ππ)

Definire come numero minimo di confronti per qualsiasi algoritmo basato sul confronto per ottenere un rapporto competitivo in questi casi. Poiché opt è , l'algoritmo deve garantire il costo al massimo .n 1 - ϵ n - 1 n 2 - ϵCn1ϵn1n2ϵ

Mostreremo .CΩ(ϵnlogn)

Definire come, per ogni possibile output , la frazione di possibili input per i quali output raggiungerebbe il costo al massimo . Questa frazione è indipendente da .Pπ n 2 - ϵ π ππn2ϵπ

π c ( π ) n 2 - ϵ π I P d ( π , I )P eguaglia anche la probabilità che, per una permutazione casuale , il suo costo sia al massimo . (Per capire perché, prendi come permutazione dell'identità Quindi è la frazione di input per cui al massimo , ma .)πc(π)n2ϵπIPd(π,I) d ( π , I ) = c ( π )n2ϵd(π,I)=c(π)

Lemma 1. .Clog21/P

Prova. Correggi qualsiasi algoritmo che utilizza sempre meno di confronti. L'albero decisionale per l'algoritmo ha una profondità inferiore a , quindi ci sono meno di foglie e, per alcune permutazioni di output , l'algoritmo fornisce come output per più di una frazione degli input. Per definizione di , per almeno uno di questi input, l'output fornisce un costo maggiore di . QEDlog 2 1 / P 1 / P π πlog21/Plog21/P1/Pπ P P π n 2 - ϵπPPπn2ϵ

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

Prima di dare la prova di Lemma 2, nota che i due lemmi insieme danno l'affermazione:

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

Proof of Lemma 2. Sia una permutazione casuale. Ricorda che uguale alla probabilità che il suo costo sia al massimo . Supponiamo che qualsiasi coppia sia un vantaggio con il costo, quindi è la somma dei costi del bordo.P c ( π ) n 2 - ϵ ( i , i + 1 ) |πPc(π)n2ϵ(i,i+1)c ( π )|π(i+1)π(i)|c(π)

Supponiamo che .c(π)n2ϵ

Quindi, per qualsiasi , al massimo dei bordi ha un costo o superiore. Supponiamo che i margini di costo inferiori a siano economici .q>0q qn2ϵ/qqq

Correzione . Sostituendo e semplificando, al massimo dei bordi non sono economici. n 1 - ϵ / 2q=n1ϵ/2n1ϵ/2

Pertanto, almeno dei bordi sono economici. Pertanto, esiste un set contenente bordi economici.Sn / 2nn1ϵ/2n/2Sn/2

Richiesta. Per ogni dato set di bordi, la probabilità che tutti i bordi in siano economici è al massimo .n / 2 SSn/2Sexp(Ω(ϵnlogn))

Prima di provare l'affermazione, nota che implica il lemma come segue. Secondo l'affermazione, e l'unione ingenua vincolata, la probabilità che esista un tale insieme è al massimo ( nSexp ( O ( n ) - Ω ( ϵ n log n ) )

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

Prova del reclamo. Scegli con il seguente processo. Scegli uniformemente da , quindi scegli uniformemente da , quindi scegli uniformemente da , ecc.π ( 1 ) [ n ] π ( 2 ) [ n ] - { π ( 1 ) } π ( 3 ) [ n ] - { π ( 1 ) , π ( 2 ) }ππ(1)[n]π(2)[n]{π(1)}π(3)[n]{π(1),π(2)}

Prendere in considerazione qualsiasi bordo in . Considera il tempo subito dopo che è stato scelto , quando sta per essere scelto. Indipendentemente dalle prime scelte (per per ), ci sono almeno scelte per , e al massimo di quelle le scelte daranno al bordo costo inferiore a (rendendolo economico).S π ( i ) π ( i +(i,i+1)Sπ(i)i π ( j ) j i n - i π ( i + 1 ) 2 n 1 - ϵ / 2 (π(i+1)iπ(j)jiniπ(i+1)2n1ϵ/2n 1 - ϵ / 2(i,i+1)n1ϵ/2

Pertanto, condizionata dalle prime scelte , la probabilità che il bordo sia economico è al massimo . Pertanto, la probabilità che tutti i bordi in siano economici è al massimo Poiché , ci sono almeno bordi in con . Pertanto, questo prodotto è al massimo 2 n 1 - ϵ / 2i n/2S(i,2n1ϵ/2nin/2S| S| n/2n/4Sn-in/

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

QED


6
ps Ho ricevuto una richiesta per renderlo citabile, quindi l'ho messo su arvix.org qui .
Neal Young,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.