его первоначального значения, а затем используйте основную сортировку. Но модели с округлением имеют проблематичную теорию сложности, и это заставило меня задуматься, а как насчет более слабых моделей вычислений?
Итак, насколько точно может быть аппроксимирован одномерный TSP в модели вычисления с линейным деревом сравнения (каждый узел сравнения проверяет знак линейной функции входных значений) алгоритмом, сложность которого по времени равна ? Тот же метод округления позволяет достичь любого отношения аппроксимации в форме (с помощью бинарного поиска для округления и округления гораздо более грубого, чтобы сделать его достаточно быстрым). Но возможно ли достичь даже отношения аппроксимации, такого как для некоторого ?
ds.algorithms
approximation-algorithms
sorting
tsp
Дэвид Эппштейн
источник
источник
Ответы:
РЕДАКТИРОВАТЬ (ОБНОВЛЕНИЕ): Нижняя граница в моем ответе ниже была доказана (другим доказательством) в «О сложности приближения евклидовых туров коммивояжера и минимального охвата деревьев», Das et al; Algorithmica 19: 447-460 (1997).
Нет. Вот нижняя граница.
Запрос. Для любого каждого алгоритма аппроксимации на основе сравнения требуется сравнение в худшем случае.ϵ>0 n1−ϵ Ω(ϵnlogn)
Под «сравнением» я подразумеваю любой алгоритм, который запрашивает входные данные только с помощью двоичных (True / False) запросов.
Вот попытка доказательства. Надеюсь, ошибок нет. Впрочем, нижняя граница, вероятно, распространяется на рандомизированные алгоритмы.
Зафиксируйте любое и любое сколь угодно маленькое, но постоянное .ϵ > 0n ϵ>0
Рассмотрим тольковходные экземпляры "перестановки" которые являются перестановками . Оптимальное решение для любого такого случая имеет стоимость .( x 1 , x 2 , … , x n ) [ n ] n - 1n! (x1,x2,…,xn) [n] n−1
Определите стоимость перестановки как, Смоделируйте алгоритм так, чтобы он принимал в качестве входных данных перестановку , выводил перестановку и оплачивал стоимость .c ( π ) = ∑ i | π ( i + 1 ) - π ( i ) | π π ′ d ( π , π ′ ) = c ( π ′ ∘ π )π c(π)=∑i|π(i+1)−π(i)| π π′ d(π,π′)=c(π′∘π)
Определите как минимальное количество сравнений для любого алгоритма, основанного на сравнении, для достижения конкурентного отношения в этих случаях. Поскольку opt равен , алгоритм должен гарантировать стоимость не более .n 1 - ϵ n - 1 n 2 - ϵC n1−ϵ n−1 n2−ϵ
Мы покажем .C≥Ω(ϵnlogn)
Определите чтобы для любого возможного вывода доля возможных входов, для которых выход достиг бы стоимости, не превышала . Эта фракция не зависит от .π ′ π ′ n 2 - ϵ π ′P π′ π′ n2−ϵ π′
π cP также равняется вероятности того, что для случайной перестановки ее стоимость не превосходит . (Чтобы понять почему, в качестве тождественной перестановки примем . Тогда - это доля входных данных, для которых
не более , но .)π п 2 - & epsi ; л ' Я Р д ( л , я ) п 2 - & epsi ; г ( л , я ) = C ( л )c(π) n2−ϵ π′ I P d(π,I) n2−ϵ d(π,I)=c(π)
Лемма 1. .C≥log21/P
Доказательство. Исправьте любой алгоритм, который всегда использует меньше чем сравнений. Дерево решений для алгоритма имеет глубину меньше , поэтому число листов меньше , и для некоторой выходной перестановки алгоритм выдает качестве выходных данных для более чем доля входов. По определению , по крайней мере для одного такого входа, вывод дает стоимость, превышающую . QEDlog 2 1 / P 1 / P π ′ π ′ P P π ′ n 2 - ϵlog21/P log21/P 1/P π′ π′ P P π′ n2−ϵ
Лемма 2. .P≤exp(−Ω(ϵnlogn))
Прежде чем дать доказательство леммы 2, обратите внимание, что две леммы вместе дают утверждение:
Доказательство леммы 2. Пусть - случайная перестановка. Напомним, что равно вероятности того, что его стоимость не превосходит . Скажем, что любая пара является ребром со стоимостью, поэтому - сумма затрат на ребро.P c ( π ) n 2 - ϵ ( i , i + 1 ) | π ( i + 1 ) - π ( i ) | с ( π )π P c(π) n2−ϵ (i,i+1) |π(i+1)−π(i)| c(π)
Предположим, что .c(π)≤n2−ϵ
Тогда для любого не более ребер будут стоить или больше. Скажите , что края стоимости меньше , чем являются дешево .n 2 - ϵ / q q qq>0 n2−ϵ/q q q
Исправьте . Подстановка и упрощение не более ребер недешевы. n 1 - ϵ / 2q=n1−ϵ/2 n1−ϵ/2
Таким образом, по крайней мере ребер дешевы. Таким образом, существует множество содержащее дешевых ребер.S n / 2n−n1−ϵ/2≥n/2 S n/2
Запрос. Для любого заданного множества из ребер вероятность того, что все ребра в дешевые, не .п / 2 S ехр ( - Ω ( ε п войти п ) )S n/2 S exp(−Ω(ϵnlogn))
Прежде чем доказать утверждение, отметим, что оно подразумевает следующую лемму. По претензии и наивным союза , связанного, вероятность того, что какие -то там существует такое множество самое большее ( нS ≤ ехр ( О ( п ) - Ω ( ε п войти п ) ) ≤ ехр ( - Q , ( ε п лог п ) ) .
Доказательство претензии. Выберите следующим процессом. Выберите равномерно из , затем выберите равномерно из , затем выберите равномерно из и т. д.π ( 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) j≤i n−i π(i+1) 2n1−ϵ/2 (i,i+1) n1−ϵ/2
Таким образом, при условии первого выбора вероятность того, что ребро дешево, не превосходит . Таким образом, вероятность того, что все ребра в дешевые, не Поскольку , в есть не менее ребер с . Таким образом, этот продукт не болееi 2n1−ϵ/2n−i n/2 S | S
QED
источник