Приблизительный 1d TSP с линейными сравнениями?

21

O(nlogn)1+O(nc)cO(n)(maxmin)n(c+1)его первоначального значения, а затем используйте основную сортировку. Но модели с округлением имеют проблематичную теорию сложности, и это заставило меня задуматься, а как насчет более слабых моделей вычислений?

Итак, насколько точно может быть аппроксимирован одномерный TSP в модели вычисления с линейным деревом сравнения (каждый узел сравнения проверяет знак линейной функции входных значений) алгоритмом, сложность которого по времени равна ? Тот же метод округления позволяет достичь любого отношения аппроксимации в форме (с помощью бинарного поиска для округления и округления гораздо более грубого, чтобы сделать его достаточно быстрым). Но возможно ли достичь даже отношения аппроксимации, такого как для некоторого ?o(nlogn)n1o(1)O(n1ϵ)ϵ>0

Дэвид Эппштейн
источник
Я не знаком с 1D TSP. Вы можете это определить?
Тайсон Уильямс
4
@ Тайсон Уильямс: проблема пути 1D коммивояжера является частным случаем евклидовой задачи о пути коммивояжера, когда все города находятся на оси х. Или формально вам дано n действительных чисел a_1,…, a_n, и ваша цель - вывести перестановку π: {1,…, n} → {1,…, n} так, чтобы ∑_ {i = 1} ^ {n − 1} | a_ {π (i)} - a_ {π (i + 1)} | сводится к минимуму
Tsuyoshi Ito

Ответы:

10

РЕДАКТИРОВАТЬ (ОБНОВЛЕНИЕ): Нижняя граница в моем ответе ниже была доказана (другим доказательством) в «О сложности приближения евклидовых туров коммивояжера и минимального охвата деревьев», Das et al; Algorithmica 19: 447-460 (1997).


Можно ли достичь даже отношения аппроксимации, например, для некоторого за времени, используя алгоритм сравнения?O(n1ϵ)ϵ>0o(nlogn)

Нет. Вот нижняя граница.

Запрос. Для любого каждого алгоритма аппроксимации на основе сравнения требуется сравнение в худшем случае.ϵ>0n1ϵΩ(ϵnlogn)

Под «сравнением» я подразумеваю любой алгоритм, который запрашивает входные данные только с помощью двоичных (True / False) запросов.

Вот попытка доказательства. Надеюсь, ошибок нет. Впрочем, нижняя граница, вероятно, распространяется на рандомизированные алгоритмы.


Зафиксируйте любое и любое сколь угодно маленькое, но постоянное .ϵ > 0nϵ>0

Рассмотрим тольковходные экземпляры "перестановки" которые являются перестановками . Оптимальное решение для любого такого случая имеет стоимость .( x 1 , x 2 , , x n ) [ n ] n - 1n!(x1,x2,,xn)[n]n1

Определите стоимость перестановки как, Смоделируйте алгоритм так, чтобы он принимал в качестве входных данных перестановку , выводил перестановку и оплачивал стоимость .c ( π ) = i | π ( i + 1 ) - π ( i ) | π π d ( π , π ) = c ( π π )πc(π)=i|π(i+1)π(i)|ππd(π,π)=c(ππ)

Определите как минимальное количество сравнений для любого алгоритма, основанного на сравнении, для достижения конкурентного отношения в этих случаях. Поскольку opt равен , алгоритм должен гарантировать стоимость не более .n 1 - ϵ n - 1 n 2 - ϵCn1ϵn1n2ϵ

Мы покажем .CΩ(ϵnlogn)

Определите чтобы для любого возможного вывода доля возможных входов, для которых выход достиг бы стоимости, не превышала . Эта фракция не зависит от .π π n 2 - ϵ π Pππn2ϵπ

π cP также равняется вероятности того, что для случайной перестановки ее стоимость не превосходит . (Чтобы понять почему, в качестве тождественной перестановки примем . Тогда - это доля входных данных, для которых не более , но .)πп 2 - & epsi ; л ' Я Р д ( л , я ) п 2 - & epsi ; г ( л , я ) = C ( л )c(π)n2ϵπIPd(π,I)n2ϵd(π,I)=c(π)

Лемма 1. .Clog21/P

Доказательство. Исправьте любой алгоритм, который всегда использует меньше чем сравнений. Дерево решений для алгоритма имеет глубину меньше , поэтому число листов меньше , и для некоторой выходной перестановки алгоритм выдает качестве выходных данных для более чем доля входов. По определению , по крайней мере для одного такого входа, вывод дает стоимость, превышающую . QEDlog 2 1 / P 1 / P π π P P π n 2 - ϵlog21/Plog21/P1/PππPPπn2ϵ

Лемма 2. .Pexp(Ω(ϵnlogn))

Прежде чем дать доказательство леммы 2, обратите внимание, что две леммы вместе дают утверждение:

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

Доказательство леммы 2. Пусть - случайная перестановка. Напомним, что равно вероятности того, что его стоимость не превосходит . Скажем, что любая пара является ребром со стоимостью, поэтому - сумма затрат на ребро.P c ( π ) n 2 - ϵ ( i , i + 1 ) | π ( i + 1 ) - π ( i ) | с ( π )πPc(π)n2ϵ(i,i+1)|π(i+1)π(i)|c(π)

Предположим, что .c(π)n2ϵ

Тогда для любого не более ребер будут стоить или больше. Скажите , что края стоимости меньше , чем являются дешево .n 2 - ϵ / q q qq>0n2ϵ/qqq

Исправьте . Подстановка и упрощение не более ребер недешевы. n 1 - ϵ / 2q=n1ϵ/2n1ϵ/2

Таким образом, по крайней мере ребер дешевы. Таким образом, существует множество содержащее дешевых ребер.S n / 2nn1ϵ/2n/2Sn/2

Запрос. Для любого заданного множества из ребер вероятность того, что все ребра в дешевые, не .п / 2 S ехр ( - Ω ( ε п войти п ) )Sn/2Sexp(Ω(ϵnlogn))

Прежде чем доказать утверждение, отметим, что оно подразумевает следующую лемму. По претензии и наивным союза , связанного, вероятность того, что какие -то там существует такое множество самое большее ( нSехр ( О ( п ) - Ω ( ε п войти п ) ) ехр ( - Q , ( ε п лог п ) ) .

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

Доказательство претензии. Выберите следующим процессом. Выберите равномерно из , затем выберите равномерно из , затем выберите равномерно из и т. д.π ( 1 ) [ n ]ππ(1)[n]π(2)[n]{π(1)}π(3)[n]{π(1),π(2)}

Рассмотрим любое ребро в . Рассмотрим время сразу после того, как было выбрано, когда собирается быть выбранным. Независимо от первого выбора (для для ), существует по крайней мере вариантов для и не более из них. выбор даст стоимость края меньше, чем (что делает его дешевым).S π ( i ) π ( i + 1 ) i π ( j ) j i(i,i+1)Sπ(i)π(i+1)iπ(j)jiniπ(i+1)2n1ϵ/2(i,i+1)n1ϵ/2

Таким образом, при условии первого выбора вероятность того, что ребро дешево, не превосходит . Таким образом, вероятность того, что все ребра в дешевые, не Поскольку , в есть не менее ребер с . Таким образом, этот продукт не более i2n1ϵ/2nin/2S| S

(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

Нил Янг
источник
6
PS Я получил запрос, чтобы сделать это цитируемым, поэтому я положил его на arvix.org здесь .
Нил Янг