ETA: все ниже в статье « О максимальном разбросе TSP », Arkin et al, SODA 1997.
Я не знаю точных ответов, но вот другой подход, который немного отличается от предложения Суреша о кластеризации Гонсалеса:
Предположим для простоты, что четно. Для каждой вершины найдите медиану из расстояний . Сформируйте неориентированный граф, в котором каждая вершина соединена с другими вершинами, которые находятся на расстоянии, по меньшей мере, среднего расстояния. Минимальная степень в этом графе не менее , поэтому по теореме Дирака в этом графе можно найти гамильтонов цикл.p n - 1 d ( p , q ) p n / 2Nпn - 1d( р , д)пн / 2
С другой стороны, в диске есть вершин с центром в точке с радиусом , их слишком много, чтобы образовать независимое множество в цикле, поэтому любой гамильтонов цикл должен иметь ребро, соединяющее некоторые две из этих вершин длиной не более . Следовательно, гамильтонов цикл, найденный этим алгоритмом, в худшем случае является 2-приближением цикла максимума узкого места.p d ( p , q ) 2 d ( p , q )н / 2 + 1пd(p,q)2d(p,q)
Это будет работать в любом метрическом пространстве и дает оптимальный коэффициент аппроксимации среди алгоритмов, которые работают в любом метрическом пространстве. Ибо, если бы вы могли приблизиться лучше, чем с точностью до двух, то вы могли бы точно решить задачи о гамильтоновом цикле, сведя входной граф к задаче о гамильтоновом цикле в метрическое пространство с расстоянием 2 для каждого ребра графа и расстоянием 1 для каждого не -Станок.
Вероятно, с некоторой осторожностью вы можете втирать это в алгоритм приближения для путей вместо циклов.