Аноним

Триангуляция с минимальным весом: различия между версиями

Материал из WEGA
м
Строка 17: Строка 17:
'''Квази-жадный алгоритм триангуляции для аппроксимации задачи MWT'''
'''Квази-жадный алгоритм триангуляции для аппроксимации задачи MWT'''


Левкопулос и Кржнарик [7] показали, что триангуляция, полная длина которой отличается от длины MWT не более чем на константный множитель, может быть вычислена за полиномиальное время для произвольных множеств точек. Этот результат достигается при помощи модификации так называемой жадной триангуляции. Жадная триангуляция начинается с пустого множества диагоналей и последовательно добавляет кратчайшую диагональ, не пересекающую уже добавленные ранее диагонали, до тех пор, пока не будет достигнута полная триангуляция. Было показано, что жадная триангуляция способна аппроксимировать задачу триангуляции с минимальным весом с точностью до константного коэффициента за исключением специального случая, когда «жадные» диагонали вставляются особым, крайне несбалансированным образом вдоль достаточно длинной вогнутой цепи, содержащей много вершин, рядом с которой находится большое пустое пространство, и при этом нет возможности «увидеть» противоположную вогнутую цепь из большого количества вершин. Было показано, что в подобных «плохих» случаях наихудшее соотношение между длинами жадной триангуляции и триангуляции с минимальным весом составляет &(*/n). Для получения триангуляции, всегда аппроксимирующей задачу MWT с константным коэффициентом, достаточно обратить внимание на этот специальный случай и избегать несбалансированного добавления диагоналей вдоль одной цепи, заменив его более сбалансированным подъемом вдоль обеих цепей. Каждое ребро, вставленное по этой технологии, оказывается почти таким же коротким, как кратчайшая диагональ, превосходя ее не более чем в 1,2 раза. Эта модифицированная триангуляция, всегда аппроксимирующая задачу MWT, была названа квази-жадной триангуляцией. Как и у исходной жадной триангуляции, ее время выполнения составляет O(n log n) [8]. Гудмундссон и Левкопулос [5] позже показали возможность распараллеливания варианта этого похода, в результате чего достигается аппроксимация MWT с константным коэффициентом за время O(log n), использующая O(n) процессоров по модели CRCW PRAM. Еще она побочная возможность алгоритма квази-жадной триангуляции заключается в том, что за линейное время можно легко выбрать подмножество ребер, чтобы получить выпуклое разбиение, не более чем на константный коэффициент отличающееся от выпуклого разбиения минимальной длины для входного множества точек. Последнее свойство исключительно важно для доказательства того, что квази-жадная триангуляция аппроксимирует задачу MWT. При доказательстве также используется уже известный результат, гласящий, что исходная, немодифицированная жадная триангуляция любого выпуклого многоугольника аппроксимирует задачу о триангуляции с минимальным весом [9]. Некоторые из результатов работ [7] и [8] можно объединить в следующей теореме:
Левкопулос и Кржнарик [7] показали, что триангуляция, полная длина которой отличается от длины MWT не более чем на константный множитель, может быть вычислена за полиномиальное время для произвольных множеств точек. Этот результат достигается при помощи модификации так называемой жадной триангуляции. Жадная триангуляция начинается с пустого множества диагоналей и последовательно добавляет кратчайшую диагональ, не пересекающую уже добавленные ранее диагонали, до тех пор, пока не будет достигнута полная триангуляция. Было показано, что жадная триангуляция способна аппроксимировать задачу триангуляции с минимальным весом с точностью до константного коэффициента за исключением специального случая, когда «жадные» диагонали вставляются особым, крайне несбалансированным образом вдоль достаточно длинной вогнутой цепи, содержащей много вершин, рядом с которой находится большое пустое пространство, и при этом нет возможности «увидеть» противоположную вогнутую цепь из большого количества вершин. Было показано, что в подобных «плохих» случаях наихудшее соотношение между длинами жадной триангуляции и триангуляции с минимальным весом составляет &(*/n). Для получения триангуляции, всегда аппроксимирующей задачу MWT с константным коэффициентом, достаточно обратить внимание на этот специальный случай и избегать несбалансированного добавления диагоналей вдоль одной цепи, заменив его более сбалансированным подъемом вдоль обеих цепей. Каждое ребро, вставленное по этой модифицированной технологии, оказывается почти таким же коротким, как кратчайшая диагональ, превосходя ее не более чем в 1,2 раза. Эта модифицированная триангуляция, всегда аппроксимирующая задачу MWT, была названа квази-жадной триангуляцией. Как и у исходной жадной триангуляции, ее время выполнения составляет O(n log n) [8]. Гудмундссон и Левкопулос [5] позже показали возможность распараллеливания варианта этого подхода, в результате чего достигается аппроксимация MWT с константным коэффициентом за время O(log n), использующая O(n) процессоров по модели CRCW PRAM. Еще она побочная возможность алгоритма квази-жадной триангуляции заключается в том, что за линейное время можно легко выбрать подмножество ребер, чтобы получить выпуклое разбиение, не более чем на константный коэффициент отличающееся от выпуклого разбиения минимальной длины для входного множества точек. Последнее свойство исключительно важно для доказательства того, что квази-жадная триангуляция аппроксимирует задачу MWT. При доказательстве также используется уже известный результат, гласящий, что исходная, немодифицированная жадная триангуляция любого выпуклого многоугольника аппроксимирует задачу о триангуляции с минимальным весом [9]. Некоторые из результатов работ [7] и [8] можно объединить в следующей теореме:




Теорема 2. Пусть S – входной набор из n точек на плоскости. Длина квази-жадной триангуляции S, представляющей собой слегка модифицированный вариант жадной триангуляции, не более чем на константный множитель отличается от длины MWT (триангуляции с минимальным весом) S; эта квази-жадная триангуляция может быть вычислена за время O(n log n). Более того, длина немодифицированной жадной триангуляции S не более чем в O(pn) раз превышает длину MWT для S, и в наихудшем случае эта граница является асимптотически плотной.
Теорема 2. Пусть S – входной набор из n точек на плоскости. Полная длина квази-жадной триангуляции S, представляющей собой слегка модифицированный вариант жадной триангуляции, не более чем на константный множитель отличается от длины MWT (триангуляции с минимальным весом) S; эта квази-жадная триангуляция может быть вычислена за время O(n log n). Более того, длина немодифицированной жадной триангуляции S не более чем в O(pn) раз превышает длину MWT для S, и в наихудшем случае эта граница является асимптотически плотной.




'''Вычисление точной триангуляции с минимальным весом'''
'''Вычисление точной триангуляции с минимальным весом'''
Вкратце обсудим три подхода к вычислению точной триангуляции. При их выполнении предполагается возможным эффективное численное сравнение полной длины наборов прямолинейных отрезков для выбора набора с минимальным весом. Это предположение слишком упрощает картину, поскольку такое сравнение само по себе является открытым вопросом. Тем не менее, задача вычисления точной аппроксимации остается NP-полной даже при принятии этого предположения [11]. Эти три подхода различаются в части создания и выбора подзадач, которые затем решаются методами динамического программирования.
Вкратце обсудим три подхода к вычислению точной триангуляции. При их выполнении предполагается возможным эффективное численное сравнение полной длины наборов прямолинейных отрезков для выбора набора с минимальным весом. Это предположение слишком упрощает картину, поскольку такое сравнение само по себе является открытым вопросом. Тем не менее, задача вычисления точной аппроксимации остается NP-полной даже при принятии этого предположения [11]. Вышеупомянутые три подхода различаются в части создания и выбора подзадач, которые затем решаются методами динамического программирования.




Строка 30: Строка 30:




Второй подход использует алгоритмы с фиксированными параметрами. Скажем, если во внутренней части выпуклой оболочки множества S находятся всего O(log n) точек, то триангуляция с минимальным весом для S может быть вычислена за полиномиальное время [ ]. Этот поход также можно расширить для вычисления триангуляции с минимальным весом с учетом следующего ограничения: внешняя граница не обязательно является выпуклой оболочкой входных вершин, а может быть произвольным многоугольником. Некоторые из этих алгоритмов были реализованы (см. Грантсон и др. [ ]) для целей сравнения. Время выполнения методов динамического программирования обычно оказывается кубическим относительно количества точек на границе и экспоненциальным – относительно количества остальных точек. Таким образом, например, если во внутренней части выпуклого многогранника границы имеется k точек, то реализованный алгоритм вычисления точной триангуляции с минимальным весом требует O(n3 ■ 2k ■ k) времени [2].
Второй подход использует алгоритмы с фиксированными параметрами. Скажем, если во внутренней части выпуклой оболочки множества S находятся всего O(log n) точек, то триангуляция с минимальным весом для S может быть вычислена за полиномиальное время [ ]. Этот подход также можно расширить для вычисления триангуляции с минимальным весом с учетом следующего ограничения: внешняя граница не обязательно является выпуклой оболочкой входных вершин, а может быть произвольным многоугольником. Некоторые из этих алгоритмов были реализованы (см. Грантсон и др. [ ]) для целей сравнения. Время выполнения методов динамического программирования обычно оказывается кубическим относительно количества точек на границе и экспоненциальным – относительно количества остальных точек. Таким образом, например, если во внутренней части выпуклого многогранника границы имеется k точек, то реализованный алгоритм вычисления точной триангуляции с минимальным весом требует O(n3 ■ 2k ■ k) времени [2].




4446

правок