EDIT (UPDATE): O limite inferior da minha resposta abaixo foi comprovado (por uma prova diferente) em "Sobre a complexidade de aproximar os passeios euclidianos dos vendedores ambulantes e as árvores mínimas", de Das et al; Algorithmica 19: 447-460 (1997).
é possível atingir uma taxa de aproximação como por algum in usando um algoritmo baseado em comparação?ϵ > 0 o ( n log n )O(n1−ϵ)ϵ>0o(nlogn)
Não. Aqui está um limite inferior.
Afirmação. Para qualquer , todo algoritmo de aproximação baseado em comparação
requer comparações no pior dos casos.n 1 - ε ohms ( ε n log n )ϵ>0n1−ϵΩ(ϵnlogn)
Por "baseado em comparação", quero dizer qualquer algoritmo que apenas consulta a entrada com consultas binárias (Verdadeiro / Falso).
Aqui está uma tentativa de prova. Espero que não haja erros. FWIW, o limite inferior parece provável se estender a algoritmos aleatórios.
Corrija qualquer e qualquer arbitrariamente pequeno, mas constante .nϵ>0
Considere apenas oinstâncias de entrada "permutação"
que são permutações de . A solução ideal para qualquer uma dessas instâncias custou .n!(x1,x2,…,xn)[n]n−1
Defina o custo de uma permutação
para ser. Modele o algoritmo como tendo como entrada uma permutação , produzindo uma permutação e pagando o custo .c ( π ) = ∑ i | π ( i + 1 ) - π ( i ) | π π ′ d ( π , π ′ ) = c ( π ′ ∘ π )πc(π)=∑i|π(i+1)−π(i)|ππ′d(π,π′)=c(π′∘π)
Defina como o número mínimo de comparações para qualquer algoritmo baseado em comparação, para obter uma razão competitiva nessas instâncias. Como opt é , o algoritmo deve garantir o custo no máximo .n 1 - ε n - 1 n 2 - εCn1−ϵn−1n2−ϵ
Mostraremos .C≥Ω(ϵnlogn)
Defina como, para qualquer saída possível , a fração de entradas possíveis para a qual a saída
alcançaria um custo no máximo . Essa fração é independente de .π ′ π ′ n 2 - ϵ π ′Pπ′π′n2−ϵπ′
π c ( π ) n 2 - ε π ' I P d ( π , I ) n 2 - ε d ( π , I ) = C ( π )P também é igual à probabilidade de que, para uma permutação aleatória , seu custo seja no máximo . (Para ver por que, considere como permutação de identidade Então é a fração de entradas para a qual
no máximo , mas .)πc(π)n2−ϵπ′IPd(π,I)n2−ϵd(π,I)=c(π)
Lema 1. .C≥log21/P
Prova. Corrija qualquer algoritmo que sempre use comparações inferiores aA árvore de decisão do algoritmo possui profundidade menor que , portanto, existem menos de folhas e, para alguma permutação de saída , o algoritmo fornece como saída para mais de um fração das entradas. Por definição de , para pelo menos uma dessas entradas, a saída custa mais que . QEDlog 2 1 / P 1 / P π ′ π ′ P P π ′ n 2 - ϵlog21/Plog21/P1/Pπ′π′PPπ′n2−ϵ
Lema 2. .P≤exp(−Ω(ϵnlogn))
Antes de apresentarmos a prova do Lema 2, observe que os dois lemas juntos apresentam a afirmação:
C ≥ log21P = log2exp(Ω(ϵnlogn)) = Ω(ϵnlogn).
Prova de lema 2.
Seja uma permutação aleatória. Lembre-se de que é igual à probabilidade de seu custo ser no máximo . Digamos que qualquer par seja uma aresta
com custo, então é a soma dos custos de borda.P c ( π ) n 2 - ϵ ( i , i + 1 ) | π ( i + 1 ) - π ( i ) | c ( π )πPc(π)n2−ϵ(i,i+1)|π(i+1)−π(i)|c(π)
Suponha que .c(π)≤n2−ϵ
Então, para qualquer , no máximo das arestas custam ou mais. Digamos que bordas de custo menores que sejam baratas .n 2 - ϵ / q q qq>0n2−ϵ/qqq
Corrija . Substituindo e simplificando, no máximo das arestas não são baratas. n 1 - ϵ / 2q=n1−ϵ/2n1−ϵ/2
Assim, pelo menos das arestas são baratas. Assim, existe um conjunto contendo arestas baratas.S n / 2n−n1−ϵ/2≥n/2Sn/2
Afirmação. Para qualquer conjunto de arestas, a probabilidade de que todas as arestas em sejam baratas é no máximo .N / 2 S exp ( - Ω ( ε N log N ) )Sn/2Sexp(−Ω(ϵnlogn))
Antes de provarmos a afirmação, observe que ela implica o lema da seguinte forma. Pela alegação e pelo limite da união ingênua, a probabilidade de que exista esse conjunto
é no máximo
( nS≤exp(S(n)-Ω(εNlogN))≤exp(-Ω(εNlogN)).
(nn/2)exp(−Ω(ϵnlogn)) ≤ 2nexp(−Ω(ϵnlogn))
≤ exp(O(n)−Ω(ϵnlogn)) ≤ exp(−Ω(ϵnlogn)).
Prova de reivindicação.
Escolha pelo seguinte processo. Escolha uniformemente entre , escolha uniformemente entre e escolha uniformemente entre etc.π ( 1 ) [ n ] π ( 2 ) [ n ] - { π ( 1 ) } π ( 3 ) [ n ] - { π ( 1 ) , π ( 2 ) }ππ(1)[n]π(2)[n]−{π(1)}π(3)[n]−{π(1),π(2)}
Considere qualquer borda em . Considere o tempo logo após a escolha de , quando está prestes a ser escolhido. Independentemente das primeiras escolhas (para para ), há pelo menos opções para e no máximo daquelas as opções darão ao limite
custo menor que (tornando-o barato).S π ( i ) π ( i + 1 ) i π ( j ) j ≤ i n - i π ( i + 1 ) 2 n 1 - ϵ / 2 ( i , i + 1 ) n 1 - ϵ / 2(i,i+1)Sπ(i)π(i+1)iπ(j)j≤in−iπ(i+1)2n1−ϵ/2(i,i+1)n1−ϵ/2
Assim, condicionado nas primeiras escolhas, a probabilidade de que a borda é barato, é, no máximo, . Portanto, a probabilidade de que todas as
arestas em sejam baratas é no máximo
Como , há pelo menos arestas em
com . Portanto, este produto é no máximo
2 n 1 - ϵ / 2i n/2S∏(i,i+1)∈S2n 1 - ϵ / 22n1−ϵ/2n−in/2S| S| ≥n/2n/4Sn-i≥n/4(2n 1 - ϵ / 2
∏(i,i+1)∈S2n1−ϵ/2n−i.
|S|≥n/2n/4Sn−i≥n/4(2n1−ϵ/2n/4)n/4 ≤ (8n−ϵ/2)n/4 = exp(O(n)−Ω(ϵnlogn)) = exp(−Ω(ϵnlogn)).
QED