В математической дисциплине теории графов совпадающее или независимое множество ребер в неориентированном графе представляет собой множество ребер без общих вершин . [1] Другими словами, подмножество ребер является паросочетанием, если каждая вершина встречается не более чем в одном ребре этого паросочетания. Поиск соответствия в двудольном графе можно рассматривать как задачу сетевого потока .
Для данного графа G = ( V , E ) паросочетание M в G представляет собой набор попарно несмежных ребер, ни одно из которых не является петлей ; то есть никакие два ребра не имеют общих вершин.
Вершина считается сопоставленной (или насыщенной ), если она является конечной точкой одного из ребер сопоставления. В противном случае вершина несовпадающая (или ненасыщенная ).
Максимальное паросочетание — это паросочетание M графа G , которое не является подмножеством какого-либо другого паросочетания. Паросочетание M графа G является максимальным, если каждое ребро в G имеет непустое пересечение хотя бы с одним ребром из M . На следующем рисунке показаны примеры максимальных паросочетаний (красные) в трех графах.
Максимальное паросочетание (также известное как паросочетание максимальной мощности [2] ) — это паросочетание, которое содержит максимально возможное количество ребер. Максимальных совпадений может быть много. Число совпадений графа G — это размер максимального паросочетания. Каждое максимальное паросочетание является максимальным, но не каждое максимальное паросочетание является максимальным паросочетанием. На следующем рисунке показаны примеры максимальных совпадений на тех же трех графах.
Идеальное паросочетание — это паросочетание, которому соответствуют все вершины графа. То есть паросочетание является совершенным, если каждая вершина графа инцидентна ребру паросочетания. Паросочетание является совершенным, если |E|=|V|/2. Каждое совершенное паросочетание является максимальным и, следовательно, максимальным. В некоторой литературе используется термин полное совпадение . На приведенном выше рисунке только часть (b) показывает идеальное совпадение. Идеально сочетается также боковая крышка минимального размера . Таким образом, размер максимального паросочетания не больше размера минимального реберного покрытия: . Граф может содержать идеальное паросочетание только в том случае, если в графе четное число вершин.
Почти идеальное совпадение — это совпадение, при котором ровно одна вершина не совпадает. Очевидно, что граф может содержать почти идеальное паросочетание только в том случае, если граф имеет нечетное число вершин, а почти идеальные паросочетания являются максимальными паросочетаниями. На рисунке выше часть (c) показывает почти идеальное совпадение. Если каждой вершине не соответствует какое-то почти идеальное сопоставление, то граф называется факторно-критическим .
Для данного паросочетания M альтернативный путь — это путь, который начинается с несовпадающей вершины [3] и ребра которого попеременно принадлежат совпадающему, а не совпадающему. Дополняющий путь — это альтернативный путь, который начинается и заканчивается в свободных (несовпадающих) вершинах. Лемма Берджа утверждает, что паросочетание M является максимальным тогда и только тогда, когда не существует расширяющего пути относительно M .
Индуцированное паросочетание — это паросочетание, которое является множеством ребер индуцированного подграфа . [4]
В любом графе без изолированных вершин сумма числа совпадений и числа покрытия ребер равна количеству вершин. [5] Если существует идеальное паросочетание, то и число совпадений, и число покрытия ребер равны | В | / 2 .
Если A и B — два максимальных паросочетания, то | А | ≤ 2| Б | и | Б | ≤ 2| А | . Чтобы убедиться в этом, заметим, что каждое ребро в B \ A может быть смежным не более чем с двумя рёбрами в A \ B , поскольку A — паросочетание; при этом каждое ребро в A \ B смежно с ребром в B \ A по максимальности B , следовательно
Далее мы делаем вывод, что
В частности, это показывает, что любое максимальное паросочетание является 2-приближением максимального паросочетания, а также 2-приближением минимального максимального паросочетания. Это неравенство строгое: например, если G — путь с 3 ребрами и 4 вершинами, размер минимального максимального паросочетания равен 1, а размер максимального паросочетания равен 2.
Спектральная характеристика числа сопоставления графа дана Хассани Монфаредом и Малликом следующим образом: Пусть - граф на вершинах, а - различные ненулевые чисто мнимые числа, где . Тогда число совпадений равно тогда и только тогда, когда (а) существует действительная кососимметричная матрица с графиком , собственными значениями и нулями и (б) все действительные кососимметричные матрицы с графиком имеют не более чем ненулевые собственные значения . [6] Обратите внимание, что (простой) граф вещественной симметричной или кососимметричной матрицы порядка имеет вершины и ребра, заданные ненулевыми недиагональными элементами .
Производящая функция количества паросочетаний k -ребер в графе называется согласующим полиномом. Пусть G — граф, а m k — количество паросочетаний k -ребер. Один совпадающий полином G — это
Другое определение дает соответствующий полином как
где n — количество вершин в графе. Каждый тип имеет свое применение; дополнительную информацию см. в статье о сопоставлении полиномов.
Фундаментальной проблемой комбинаторной оптимизации является поиск максимального паросочетания . Эта задача имеет разные алгоритмы для разных классов графов.
В невзвешенном двудольном графе задача оптимизации состоит в нахождении соответствия максимальной мощности . Задача решается алгоритмом Хопкрофта-Карпа за время O ( √VE ) времени, и существуют более эффективные рандомизированные алгоритмы , алгоритмы аппроксимации и алгоритмы для специальных классов графов, таких как двудольные плоские графы , как описано в основной статье . .
Во взвешенном двудольном графе задача оптимизации состоит в том, чтобы найти паросочетание с максимальным весом; двойная задача — найти паросочетание с минимальным весом. Эту проблему часто называют максимальным взвешенным двусторонним сопоставлением или проблемой назначения . Венгерский алгоритм решает задачу назначения и положил начало алгоритмам комбинаторной оптимизации. Он использует модифицированный поиск кратчайшего пути в алгоритме увеличения пути. Если на этом этапе используется алгоритм Беллмана-Форда , время работы венгерского алгоритма становится равным , или стоимость ребра может быть смещена с возможностью достижения времени работы с алгоритмом Дейкстры и кучей Фибоначчи . [7]
В недвудольном взвешенном графе проблема сопоставления максимального веса может быть решена за время с помощью алгоритма Блума Эдмондса .
Максимальное соответствие можно найти с помощью простого жадного алгоритма . Максимальное паросочетание также является максимальным паросочетанием, и, следовательно, можно найти наибольшее максимальное паросочетание за полиномиальное время. Однако не известен ни один алгоритм с полиномиальным временем для поиска минимального максимального паросочетания , то есть максимального паросочетания, содержащего наименьшее возможное количество ребер.
Максимальное паросочетание с k ребрами — это множество с доминирующими ребрами, состоящее из k ребер. И наоборот, если нам задан минимальный набор доминирующих ребер с k ребрами, мы можем построить максимальное паросочетание с k ребрами за полиномиальное время. Следовательно, задача нахождения минимального максимального паросочетания по существу равна проблеме нахождения минимального доминирующего множества ребра. [8] Обе эти две задачи оптимизации известны как NP-трудные ; варианты решения этих задач являются классическими примерами NP-полных задач. [9] Обе задачи можно аппроксимировать с коэффициентом 2 за полиномиальное время: просто найдите произвольное максимальное паросочетание M . [10]
Количество паросочетаний в графе известно как индекс Хосоя графа. Вычислить эту величину #P-полно , даже для двудольных графов. [11] Также #P-полным подсчет идеальных паросочетаний , даже в двудольных графах , поскольку вычисление перманента произвольной матрицы 0–1 (еще одна #P-полная задача) — это то же самое, что вычисление количества идеальных паросочетаний в двудольный граф, имеющий данную матрицу в качестве матрицы двусмежности . Однако существует полностью полиномиальная рандомизированная по времени аппроксимационная схема для подсчета количества двудольных паросочетаний. [12] Замечательная теорема Кастелейна утверждает, что количество идеальных паросочетаний в плоском графе можно вычислить точно за полиномиальное время с помощью алгоритма FKT .
Количество идеальных паросочетаний в полном графе K n (с четным n ) определяется двойным факториалом ( n − 1)!!. [13] Число паросочетаний в полных графах, без ограничения на идеальность паросочетаний, задается телефонными номерами . [14]
Число идеальных паросочетаний в графе также известно как гафниан его матрицы смежности .
Одна из основных задач теории паросочетаний — найти в заданном графе все ребра, которые можно расширить до максимального паросочетания в графе (такие ребра называются максимально сопоставляемыми ребрами или разрешенными ребрами). Алгоритмы решения этой задачи включают в себя:
Проблема разработки онлайн-алгоритма сопоставления была впервые рассмотрена Ричардом М. Карпом , Умешем Вазирани и Виджаем Вазирани в 1990 году . [18]
В онлайн-режиме узлы на одной стороне двудольного графа поступают по одному и должны быть либо немедленно сопоставлены с другой стороной графа, либо отброшены. Это естественное обобщение задачи о секретаре , которое можно применить к онлайн-аукционам рекламы. Лучший онлайн-алгоритм для случая невзвешенной максимизации с моделью случайного поступления достигает коэффициента конкурентоспособности 0,696 . [19]
Теорема Кенига утверждает, что в двудольных графах максимальное паросочетание равно размеру минимального вершинного покрытия . Благодаря этому результату задачи минимального вершинного покрытия, максимального независимого множества и максимальной биклики вершин могут быть решены за полиномиальное время для двудольных графов.
Теорема Холла о браке дает характеристику двудольных графов, имеющих идеальное паросочетание, а теорема Тутта дает характеристику произвольных графов.
Каждый узел инцидентен не более чем одному ребру сопоставления. Говорят, что ребра независимы.
{{citation}}
: CS1 maint: несколько имен: список авторов ( ссылка )