Jump to content

Проблема максимального покрытия

Проблема максимального покрытия является классическим вопросом в информатике , теории сложности вычислений и исследовании операций .Это проблема, которая широко изучается в алгоритмах аппроксимации .

В качестве входных данных вам даны несколько наборов и число . Наборы могут иметь некоторые общие элементы. Вы должны выбрать максимум из этих наборов так, чтобы охватить максимальное количество элементов, т.е. объединение выбранных множеств имеет максимальный размер.

Формально (невзвешенное) Максимальное покрытие

Экземпляр: число и коллекция наборов .
Цель: найти подмножество. наборов, таких, что и количество покрытых элементов максимизируется.

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

формулировка ILP

[ редактировать ]

Задачу максимального покрытия можно сформулировать в виде следующей целочисленной линейной программы .

максимизировать (максимизация суммы покрытых элементов)
при условии (не более наборы выбраны)
(если тогда хотя бы один набор выбрано)
(если затем покрыто)
(если затем выбран для обложки)

Жадный алгоритм

[ редактировать ]

Жадный алгоритм максимального покрытия выбирает множества по одному правилу: на каждом этапе выбирают множество, содержащее наибольшее количество непокрытых элементов. Можно показать, что этот алгоритм достигает коэффициента аппроксимации . [2] Результаты ln-аппроксимируемости показывают, что жадный алгоритм по сути является наилучшим из возможных алгоритмов полиномиальной аппроксимации для максимального покрытия, если только . [3]

Известные расширения

[ редактировать ]

Результаты о неаппроксимируемости применимы ко всем расширениям проблемы максимального покрытия, поскольку они рассматривают проблему максимального покрытия как особый случай.

Задача максимального покрытия может быть применена к дорожно-транспортным ситуациям; Одним из таких примеров является выбор того, какие автобусные маршруты в сети общественного транспорта следует оборудовать детекторами выбоин, чтобы максимизировать охват, когда доступно только ограниченное количество датчиков. Эта проблема является известным расширением проблемы максимального покрытия и впервые была исследована в литературе Джунаде Али и Владимиром Дьо. [4]

Взвешенная версия

[ редактировать ]

В взвешенной версии каждый элемент имеет вес . Задача состоит в том, чтобы найти максимальное покрытие, имеющее максимальный вес. Базовая версия представляет собой особый случай, когда все веса .

максимизировать . (максимизация взвешенной суммы покрытых элементов).
при условии ; (не более наборы выбраны).
; (если тогда хотя бы один набор выбран).
; (если затем покрыто)
(если затем выбран для обложки).

Жадный алгоритм взвешенного максимального покрытия на каждом этапе выбирает набор, содержащий максимальный вес непокрытых элементов. Этот алгоритм достигает коэффициента аппроксимации . [1]

Запланированный максимальный охват

[ редактировать ]

В бюджетной версии максимального покрытия не только каждый элемент иметь вес , но и каждый набор имеет стоимость . Вместо что ограничивает количество наборов в рамках бюджета дано. Этот бюджет ограничивает общую стоимость покрытия, которое можно выбрать.

максимизировать . (максимизация взвешенной суммы покрытых элементов).
при условии ; (стоимость выбранных наборов не может превышать ).
; (если тогда хотя бы один набор выбран).
; (если затем покрыто)
(если затем выбран для обложки).

Жадный алгоритм больше не будет давать решения с гарантией производительности. А именно, поведение этого алгоритма в худшем случае может быть очень далеко от оптимального решения. Алгоритм аппроксимации расширяется следующим образом. Сначала определим модифицированный жадный алгоритм, который выбирает множество который имеет наилучшее соотношение взвешенных непокрытых элементов и стоимости. Во-вторых, среди покрытий мощности , найдите лучший чехол, не нарушающий бюджет. Назовите это покрытие . В-третьих, найдите все покрытия мощности. которые не нарушают бюджет. Использование этих покрытий мощности в качестве отправной точки примените модифицированный жадный алгоритм, сохраняя лучшее найденное на данный момент укрытие. Назовите это покрытие . В конце процесса приблизительным лучшим покрытием будет либо или . Этот алгоритм достигает коэффициента аппроксимации для значений . Это наилучший возможный коэффициент аппроксимации, если только . [5]

Обобщенный максимальный охват

[ редактировать ]

В обобщенной версии максимального покрытия каждый набор имеет стоимость , элемент имеет различный вес и стоимость в зависимости от того, в какой комплект он входит.А именно, если покрыт набором вес является и его стоимость . Бюджет указывается общая стоимость решения.

максимизировать . (максимизация взвешенной суммы покрытых элементов в множествах, в которых они покрыты).
при условии ; (стоимость выбранных наборов не может превышать ).
; (элемент может быть охвачено не более чем одним набором).
; (если тогда хотя бы один набор выбран).
; (если затем покрыт набором )
(если затем выбран для обложки).

Обобщенный алгоритм максимального покрытия

[ редактировать ]

Алгоритм использует концепцию остаточной стоимости/веса. Остаточная стоимость/вес измеряется относительно предварительного решения и представляет собой разницу стоимости/веса от стоимости/веса, полученного при использовании предварительного решения.

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

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Jump up to: а б Г.Л. Немхаузер , Л.А. Уолси и М.Л. Фишер. Анализ приближений для максимизации субмодулярных функций множества I, Mathematical Programming 14 (1978), 265–294.
  2. ^ Хохбаум, Дорит С. (1997). «Аппроксимация задач покрытия и упаковки: покрытие множеств, покрытие вершин, независимый набор и связанные проблемы». В Хохбауме, Дорит С. (ред.). Алгоритмы аппроксимации для NP-сложных задач . Бостон: Издательская компания PWS. стр. 94–143. ISBN  978-053494968-6 .
  3. ^ Файги, Уриэль (июль 1998 г.). «Порог ln n для аппроксимации покрытия множества» . Журнал АКМ . 45 (4). Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники: 634–652. дои : 10.1145/285055.285059 . ISSN   0004-5411 . S2CID   52827488 .
  4. ^ Али, Джунаде; Дё, Владимир (2017). «Покрытие и размещение мобильных датчиков для транспортных средств на заранее определенных маршрутах: жадный эвристический подход». Материалы 14-й Международной совместной конференции по электронному бизнесу и телекоммуникациям . Том. 2: ВИНСИС. стр. 83–88. дои : 10.5220/0006469800830088 . ISBN  978-989-758-261-5 .
  5. ^ Хуллер, Самир; Мосс, Анна; Наор, Джозеф (Сеффи) (1999). «Проблема запланированного максимального покрытия». Письма об обработке информации . 70 : 39–45. CiteSeerX   10.1.1.49.5784 . дои : 10.1016/S0020-0190(99)00031-9 .
  6. ^ Коэн, Реувен; Кацир, Лиран (2008). «Обобщенная проблема максимального покрытия». Письма об обработке информации . 108 : 15–22. CiteSeerX   10.1.1.156.2073 . дои : 10.1016/j.ipl.2008.03.017 .
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c942c66efc223cf779b2ba16e91fd4d1__1720023300
URL1:https://arc.ask3.ru/arc/aa/c9/d1/c942c66efc223cf779b2ba16e91fd4d1.html
Заголовок, (Title) документа по адресу, URL1:
Maximum coverage problem - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)