Jump to content

Соответствие максимальной мощности

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

Важный частный случай проблемы сопоставления максимальной мощности — это случай, когда G двудольный граф , вершины которого V разделены между левыми вершинами в X и правыми вершинами в Y , а ребра в E всегда соединяют левую вершину с правой вершиной. В этом случае задачу можно эффективно решить с помощью более простых алгоритмов, чем в общем случае.

Алгоритмы для двудольных графов

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

Потоковый алгоритм

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

Самый простой способ вычислить сопоставление максимальной мощности — следовать алгоритму Форда–Фалкерсона . Этот алгоритм решает более общую задачу вычисления максимального потока . Двудольный граф ( X + Y , E ) можно преобразовать в потоковую сеть следующим образом.

  • Добавьте исходную вершину s ; добавьте ребро из s в каждую вершину в X .
  • Добавьте вершину стока t ; добавьте ребро из каждой вершины в Y в t .
  • Назначьте емкость 1 каждому ребру.

Поскольку каждое ребро в сети имеет целую пропускную способность, существует максимальный поток, в котором все потоки являются целыми числами; эти целые числа должны быть либо 0, либо 1, поскольку все пропускные способности равны 1. Каждый целочисленный поток определяет паросочетание, в котором ребро входит в паросочетание тогда и только тогда, когда его поток равен 1. Это паросочетание, потому что:

  • Входящий поток в каждую вершину в X не превышает 1, поэтому исходящий поток также не превышает 1, поэтому не более одного ребра, смежного с каждой вершиной в X. присутствует
  • Исходящий поток из каждой вершины в Y не превышает 1, поэтому входящий поток также не превышает 1, поэтому не более одного ребра, смежного с каждой вершиной в Y. присутствует

Алгоритм Форда – Фулкерсона многократно находит увеличивающий путь от некоторого x X к некоторому y Y и обновляет сопоставление M , беря симметричную разность этого пути с M (при условии, что такой путь существует). Поскольку каждый путь может быть найден за время O ( E ) , время выполнения равно O ( VE ) , а максимальное совпадение состоит из ребер E которые переносят поток от X к Y. ,

Расширенные алгоритмы

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

Улучшением этого алгоритма является более сложный алгоритм Хопкрофта-Карпа , который ищет несколько путей увеличения одновременно. Этот алгоритм работает в время.

Алгоритм Чандрана и Хохбаума [2] для двудольных графов выполняется во времени, которое зависит от размера максимального паросочетания k , что для | Х | < | Ю | является

Использование логических операций со словами большого размера сложность дополнительно улучшена до [2]

Существуют более эффективные алгоритмы для особых видов двудольных графов:

  • Для разреженных двудольных графов задача максимального соответствия может быть решена в с алгоритмом Мэдри, основанным на электрических потоках. [3]
  • Для плоских двудольных графов задача может быть решена за время O ( n log 3 n ), где n — количество вершин, путем сведения задачи к максимальному потоку с несколькими источниками и стоками. [4]

Алгоритмы для произвольных графов

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

Алгоритм цветения находит совпадение максимальной мощности в общих (не обязательно двудольных) графах. Он работает во времени . Лучшая производительность O ( VE на ) для общих графов, соответствующая производительности алгоритма Хопкрофта – Карпа двудольных графах, может быть достигнута с помощью гораздо более сложного алгоритма Микали и Вазирани. [5] Такая же граница была достигнута с помощью алгоритма Блюма [ de ] [6] и алгоритм Габоу и Тарьяна . [7]

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

Другие алгоритмы для этой задачи рассмотрены Дуаном и Петти. [9] (см. Таблицу I). Что касается алгоритмов аппроксимации , они также отмечают, что алгоритм цветения и алгоритмы Микали и Вазирани можно рассматривать как алгоритмы аппроксимации, работающие за линейное время для любой фиксированной границы ошибки.

Приложения и обобщения

[ редактировать ]
  1. ^ Уэст, Дуглас Брент (1999), Введение в теорию графов (2-е изд.), Прентис Холл, глава 3, ISBN  0-13-014400-2
  2. Перейти обратно: Перейти обратно: а б с Чандран, Бала Г.; Хохбаум, Дорит С. (2011), Практические и теоретические улучшения для двустороннего сопоставления с использованием алгоритма псевдопотока , arXiv : 1105.1569 , Bibcode : 2011arXiv1105.1569C , перечисленные выше теоретически эффективные алгоритмы, как правило, плохо работают на практике .
  3. ^ Мэдри, А. (2013), «Навигация по центральному пути с помощью электрических потоков: от потоков к сопоставлениям и обратно», Основы компьютерных наук (FOCS), 54-й ежегодный симпозиум IEEE 2013 г. , стр. 253–262, arXiv : 1307.2205 , Bibcode : 2013arXiv1307.2205M
  4. ^ Боррадейл, Гленкора; Кляйн, Филип Н.; Мозес, Шей; Нуссбаум, Яхав; Вульф – Нильсен, Кристиан (2017), «Максимальный поток с несколькими источниками и множеством стоков в направленных плоских графах в почти линейном времени», SIAM Journal on Computing , 46 (4): 1280–1303, arXiv : 1105.2228 , doi : 10.1137 /15М1042929 , МР   3681377 , С2КИД   207071917
  5. ^ Микали, С .; Вазирани, В.В. (1980), «Ан Алгоритм поиска максимального соответствия в общих графах», Proc. 21st IEEE Symp. Foundations of Computer Science , стр. 17–27, doi : 10.1109/SFCS.1980.12 , S2CID   27467816 .
  6. ^ Блюм, Норберт (1990), «Новый подход к максимальному сопоставлению в общих графах» (PDF) , в Патерсоне, Майке (редактор), «Автоматы, языки и программирование», 17-й международный коллоквиум, ICALP90, Уорикский университет, Англия, Великобритания, 16–20 июля 1990 г., Труды , Конспекты лекций по информатике, том. 443, Springer, стр. 586–597, doi : 10.1007/BFb0032060.
  7. ^ Габоу, Гарольд Н ; Тарьян, Роберт Э (1 октября 1991 г.). «Алгоритмы более быстрого масштабирования для общих задач сопоставления графов» (PDF) . Журнал АКМ . 38 (4): 815–853. дои : 10.1145/115234.115366 . S2CID   18350108 .
  8. ^ Муха, М.; Санковски, П. (2004), «Максимальные совпадения посредством исключения по Гауссу» (PDF) , Proc. 45-й симпозиум IEEE. Основы информатики , стр. 248–255.
  9. ^ Дуан, Ран; Петти, Сет (01 января 2014 г.). «Приближение линейного времени для согласования максимального веса» (PDF) . Журнал АКМ . 61 : 1–23. дои : 10.1145/2529989 . S2CID   207208641 .
  10. ^ Карп, Ричард М. (1972), Миллер, Раймонд Э.; Тэтчер, Джеймс В.; Болингер, Джин Д. (ред.), «Сводимость комбинаторных задач», Сложность компьютерных вычислений: материалы симпозиума по сложности компьютерных вычислений, состоявшегося 20–22 марта 1972 г. в Исследовательском центре IBM Томаса Дж. Уотсона. , Йорктаун-Хайтс, Нью-Йорк, и спонсируется Управлением военно-морских исследований, математической программой, Всемирной торговой корпорацией IBM и Отделом математических наук IBM , серия исследовательских симпозиумов IBM, Бостон, Массачусетс: Springer US, стр. 85–103. , doi : 10.1007/978-1-4684-2001-2_9 , ISBN  978-1-4684-2001-2
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 35f0b9fbd1d164b1368fa8fbe0d420b8__1721157060
URL1:https://arc.ask3.ru/arc/aa/35/b8/35f0b9fbd1d164b1368fa8fbe0d420b8.html
Заголовок, (Title) документа по адресу, URL1:
Maximum cardinality matching - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)