Рассмотрим проблему нахождения максимального непересекающегося множества - максимального набора непересекающихся геометрических фигур из заданного набора кандидатов. Это NP-полная проблема, но во многих случаях следующий жадный алгоритм дает приближение с постоянным множителем:
- Для каждой подходящей фигуры x вычислите ее непересекающееся число пересечений = наибольшее количество непересекающихся фигур, пересекающих x .
- Продолжайте, пока больше не останется кандидатов.
Например, рассмотрим следующий рисунок со страницы Википедии:
Зеленый диск пересекает 5 других дисков, но его DIN равен 3 (3 красных диска не пересекаются). Самые верхние и самые нижние красные диски пересекаются с 2 другими дисками, но сами они пересекаются, поэтому их DIN равен 1. Желтые диски имеют DIN 2. Таким образом, жадный алгоритм выбирает самый верхний или самый нижний красный диск.
Если минимальный DIN может быть ограничен константой, то жадный алгоритм является полиномиальным приближением с постоянным множителем.
Например, если все возможные формы являются единичными дисками, Марате и др. (1995) показывают, что диск с DIN не более 3 всегда существует: крайний левый диск (диск с наименьшей координатой x) пересекает не более 3 других непересекающихся дисков. , Следовательно, жадный алгоритм дает 3-аппроксимацию, поскольку он получает 1 диск на каждые (не более) 3 диска в оптимальном решении.
Точно так же, если все возможные формы являются дисками произвольного размера, жадный алгоритм дает 5-аппроксимацию, потому что самый маленький диск пересекает не более 5 других непересекающихся дисков, то есть минимальный DIN составляет не более 5.
Пока все хорошо, но достаточно ли этих факторов 3 и 5? Я не уверена.
Посмотрите на рисунок выше. Выбор крайнего левого диска (зеленого цвета) найдет непересекающийся набор размера 1, который действительно является 3-приближением максимального максимального непересекающегося набора размера 3 (красного цвета), но жадный алгоритм не выберет зеленый диск - он выберет верхний / нижний красный диск, DIN которого равен 1. В этом случае жадный алгоритм найдет оптимальное решение.
Я не смог найти контрпример для общего , в котором жадный алгоритм находит непересекающееся множество с единичными дисками, в то время как максимальное непересекающееся множество имеет . На самом деле, я даже не смог построить общий контрпример, в котором минимальный DIN действительно равен 3. Лучшее, что я мог бы придумать, это следующее, в котором каждый диск устройства пересекается не более чем с двумя другими непересекающимися дисками (т.е. минимальный DIN это 2). Но даже здесь жадный алгоритм находит оптимальное решение, а не 2-приближение:
Мои вопросы:
- Каков фактический максимальный минимальный DIN в коллекциях дисков? Диски произвольного размера?
- Каков фактический коэффициент аппроксимации жадного алгоритма для наборов юнит-дисков? Для дисков произвольного размера? (этот коэффициент не более, чем max min DIN, но может быть меньше).
ОБНОВЛЕНИЕ: Для каждого набора k фигур определите = наибольшее количество непересекающихся фигур, пересекаемых их объединением . Определите как минимальный DIN для всех k наборов непересекающихся форм.
Например, в ответе Юрия ниже , потому что каждый круг пересекает 3 других круга. , потому что можно выбрать 2 непересекающихся окружности, один из внешнего круга и один из внутреннего круга, которые вместе пересекают только 4 других круга. Для каждого , .
Я думаю, что коэффициент аппроксимации жадного алгоритма может быть ограничен , потому что для каждого фигуры в оптимальном решении у нас есть по крайней мере фигур в выходных данных алгоритма. Это верно?
РЕДАКТИРОВАТЬ: Я сейчас читаю превосходную книгу Исследования проблем в дискретной геометрии . Хотя я не нашел этой точной проблемы, я нашел проблему, которая выглядит связанной. В разделе «2.5 тонких упаковки со многими соседями» приведены примеры упаковок кругов, в которых каждый круг касается 5 других кругов. Интересно, может ли такая упаковка дать конфигурацию окружностей с DIN = 5.