В математической дисциплине теории графов набор независимых ребер в неориентированном графе — это набор ребер без общих вершин . [1] Другими словами, подмножество ребер является набором, если каждая вершина появляется не более чем в одном ребре этого набора. Поиск набора в двудольном графе можно рассматривать как задачу сетевого потока .
Для данного графа G = ( V , E ) паросочетание M в G представляет собой набор попарно несмежных ребер, ни одно из которых не является петлей ; то есть никакие два ребра не имеют общих вершин.
Вершина соответствует (или насыщена ), если она является конечной точкой одного из ребер в сопоставлении. В противном случае вершина не соответствует (или ненасыщена ).
Максимальное паросочетание — это паросочетание M графа G , которое не является подмножеством какого-либо другого паросочетания. Паросочетание M графа G является максимальным, если каждое ребро в G имеет непустое пересечение хотя бы с одним ребром в M. На следующем рисунке показаны примеры максимальных паросочетаний (красные) в трех графах.
Максимальное паросочетание (также известное как паросочетание с максимальной мощностью [2] ) — это паросочетание, которое содержит наибольшее возможное количество ребер. Максимальных паросочетаний может быть много. Число паросочетаний графа G — это размер максимального паросочетания. Каждое максимальное паросочетание является максимальным, но не каждое максимальное паросочетание является максимальным паросочетанием. На следующем рисунке показаны примеры максимальных паросочетаний в тех же трех графах.
Идеальное паросочетание — это паросочетание, которое соответствует всем вершинам графа. То есть паросочетание является идеальным, если каждая вершина графа инцидентна ребру паросочетания. Паросочетание является идеальным, если . Каждое идеальное паросочетание является максимальным и, следовательно, максимальным. В некоторой литературе используется термин полное паросочетание . На приведенном выше рисунке только часть (b) показывает идеальное паросочетание. Идеальное паросочетание также является минимальным по размеру ребровым покрытием . Таким образом, размер максимального паросочетания не больше размера минимального по размеру ребрового покрытия: . Граф может содержать идеальное паросочетание только в том случае, если граф имеет четное число вершин.
Почти идеальное паросочетание — это такое, в котором ровно одна вершина не совпадает. Очевидно, что граф может содержать только почти идеальное паросочетание, когда граф имеет нечетное число вершин, а почти идеальные паросочетания являются максимальными паросочетаниями. На рисунке выше часть (c) показывает почти идеальное паросочетание. Если каждая вершина не совпадает с некоторым почти идеальным паросочетанием, то граф называется факторно-критическим .
При наличии паросочетания M чередующийся путь — это путь, который начинается с непарной вершины [3] и чьи ребра попеременно принадлежат паросочетанию и не принадлежат паросочетанию. Увеличивающий путь — это чередующийся путь, который начинается со свободных (непарных) вершин и заканчивается ими. Лемма Берже утверждает, что паросочетание M является максимальным тогда и только тогда, когда не существует увеличивающего пути относительно M .
Индуцированное сопоставление — это сопоставление, которое является множеством ребер индуцированного подграфа . [4]
В любом графе без изолированных вершин сумма числа совпадений и числа покрытия рёбер равна числу вершин. [5] Если имеется совершенное паросочетание, то и число совпадений, и число покрытия рёбер равны | V | / 2 .
Если A и B — два максимальных паросочетания, то | A | ≤ 2| B | и | B | ≤ 2| A | . Чтобы увидеть это, заметим, что каждое ребро в B \ A может быть смежным не более чем с двумя ребрами в A \ B, поскольку A — паросочетание; более того, каждое ребро в A \ B смежно с ребром в B \ A по максимальности B , следовательно
Далее мы делаем вывод, что
В частности, это показывает, что любое максимальное паросочетание является 2-аппроксимацией максимального паросочетания, а также 2-аппроксимацией минимально максимального паросочетания. Это неравенство является узким: например, если G — путь с 3 ребрами и 4 вершинами, размер минимального максимального паросочетания равен 1, а размер максимального паросочетания равен 2.
Спектральная характеристика числа совпадений графа дана Хассани Монфаредом и Малликом следующим образом: Пусть будет графом на вершинах, и будут различными ненулевыми чисто мнимыми числами , где . Тогда число совпадений равно тогда и только тогда, когда (a) существует действительная кососимметричная матрица с графиком и собственными значениями и нулями, и (b) все действительные кососимметричные матрицы с графиком имеют не более чем нулевые собственные значения . [6] Обратите внимание, что (простой) граф действительной симметричной или кососимметричной матрицы порядка имеет вершины и ребра, заданные ненулевыми недиагональными элементами .
Производящая функция числа k -сопоставлений ребер в графе называется многочленом сопоставления. Пусть G — граф, а m k — число k -сопоставлений ребер. Один многочлен сопоставления G — это
Другое определение дает соответствующий многочлен как
где n — количество вершин в графе. Каждый тип имеет свое применение; для получения дополнительной информации см. статью о сопоставлении многочленов.
Фундаментальной проблемой комбинаторной оптимизации является нахождение максимального паросочетания . Эта задача имеет различные алгоритмы для различных классов графов.
В невзвешенном двудольном графе задача оптимизации заключается в поиске максимального кардинального соответствия . Задача решается алгоритмом Хопкрофта-Карпа за время O ( √ V E ) , и существуют более эффективные рандомизированные алгоритмы , аппроксимационные алгоритмы и алгоритмы для специальных классов графов, таких как двудольные планарные графы , как описано в основной статье.
В взвешенном двудольном графе задача оптимизации заключается в поиске паросочетания с максимальным весом; двойственная задача заключается в поиске паросочетания с минимальным весом. Эту задачу часто называют двудольным паросочетанием с максимальным весом или задачей назначения . Венгерский алгоритм решает задачу назначения и был одним из начальных этапов комбинаторных алгоритмов оптимизации. Он использует модифицированный поиск кратчайшего пути в алгоритме увеличивающегося пути. Если для этого шага используется алгоритм Беллмана-Форда , время работы венгерского алгоритма становится , или стоимость ребра может быть смещена с потенциалом достижения времени работы с алгоритмом Дейкстры и кучей Фибоначчи . [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: несколько имен: список авторов ( ссылка )