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]n−1
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−ϵn−1n2−ϵ
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. .C≥log21/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. .P≤exp(−Ω(ϵ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 / 2n−n1−ϵ/2≥n/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
( nS≤ exp ( 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)j≤in−iπ(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−ϵ/2n−in/2S| S| ≥n/2n/4Sn-i≥n/
∏(i,i+1)∈S2n1−ϵ/2n−i.
|S|≥n/2n/4S( 2 n 1 - ϵ / 2n−i≥n/4(2n1−ϵ/2n/4)n/4 ≤ (8n−ϵ/2)n/4 = exp(O(n)−Ω(ϵnlogn)) = exp(−Ω(ϵnlogn)).
QED