1 / 30

Паросочетания в двудольных графах

Паросочетания в двудольных графах. Лекция 8. Паросочетание. Паросочетанием в графе G называется множество попарно несмежных ребер. Задача «Максимальное Паросочетание». Дан граф G . Найти паросочетание в G максимальной мощности. Совершенное паросочетание. Определение 8 .1.

Download Presentation

Паросочетания в двудольных графах

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Паросочетанияв двудольных графах Лекция 8

  2. Паросочетание • Паросочетанием в графеG называетсямножество попарно несмежныхребер.

  3. Задача «Максимальное Паросочетание» • ДанграфG. • Найтипаросочетание вGмаксимальной мощности.

  4. Совершенное паросочетание Определение8.1. • Пусть G ―граф и M ―паросочетание в G. Будем говорить, чтовершина v покрыта M,если v  e для некоторого e  M . • M называетсясовершеннымпаросочетанием, если все вершины покрыты M.

  5. Биразбиение • БиразбиениемграфаG называетсяразбиение множества вершин на два подмножества, V(G)=A⋃B, такоечто подграфыиндуцированные на A и B―оба пустые. • Граф называется двудольным, если он имеет биразбиение.

  6. Паросочетаниев двудольном графе • Для графаG, пусть(G) обозначает мощность максимального паросочетания, а(G) ―мощностьминимальноговершинного покрытия в G. Теорема 8.2 (König [1931]) ЕслиG ― двудольный, то(G) = (G).

  7. Доказательство • G' = (V(G)⋃{s,t}, E(G)⋃{{s,a}: a  A}⋃ {{b,t}: b  B}) • (G) –максимальное число вершинно-непересекающихся s-t-путей. • (G) – минимальное число вершин удаление которых разделяет вершины sиt.

  8. Вторая Теорема Менгера Theorem 7.2 (Menger [1927] ) Пусть G ―граф(ориентированный илинеориентированный), пусть s и tдве несмежные вершиныи k N. Тогда существует k вершинно-непересекающихся s-t-путей,тогда и только тогда, когдапослеудалениялюбых k – 1 вершин (отличных от s и t) t остается достижима из s.

  9. Доказательство • G' = (V(G)⋃{s,t}, E(G)⋃{{s,a}: a  A}⋃ {{b,t}: b  B}) • (G) –максимальное число вершинно-непересекающихся s-t-путей. • (G) – минимальное число вершин удаление которых разделяет вершины sиt. • 2-я теорема Менгера  (G) = (G).

  10. Теорема Холла Теорема8.3 (Hall [1935] ) Пусть G ―двудольный граф сбиразбиениемV(G) = A⋃B. Тогда G имеетпаросочетание,покрывающее A,тогда и только тогда, когда|(X)| ≥ |X| для всех X  A. (G(X)– множество вершин соседних с X.)

  11. Доказательство (достаточность) • Пусть G не имеетпаросочетание,покрывающее A((G) < |A|). • Теорема 8.2  (G) < |A|. • Рассмотрим A'  Aи B'  B,такие что A' ⋃ B'покрывают все ребра и | A' ⋃ B' | < | A |. • Тогда G(A/A' )  B'. •  | G(A/A' ) | ≤ |B'| < | A | – | A' | = |A/A' |, что противоречит условию теоремы.

  12. Теоремао бракосочетаниях Теорема8.4 (Frobenius [1917] ) Пусть G ―двудольныйграф сбиразбиением V(G) = A⋃B. Тогда G имеетсовершенноепаросочетание,тогда и только тогда, когда|A| = |B| и |(X)| ≥ |X| для всехX  A.

  13. Паросочетание в двудольном графе Теорема8.5 Задача «Максимальное Паросочетание»вдвудольномграфе G может быть решеназа время O(nm), где n = |V(G)| и m = |E(G)|.

  14. Справка • Используя идею о кратчайшем увеличивающем пути можно получить алгоритм с трудоемкостью O(n0.5(m+ n)) (Hopcroft & Karp 1973).

  15. M- увеличивающий путь • Определение8.6 Пусть G ―граф, и M ―паросочетание вG. Путь P называетсяM-чередующимся путем, если E(P) \ M являетсяпаросочетанием. Чередующийся путьназывается M-увеличивающим, еслиего граничные точкине покрываются M, то есть | E(P) \ M | > | E(P) ∩ M |.

  16. Пример M-увеличивающего пути M P: E(P)\ M

  17. Паросочетание и увеличивающий путь Theorem 8.7 (Berge [1957] ) Пусть G ―граф, и M ―паросочетание вG. Тогда M является максимальнымтогда и только тогда, когдане существует M-увеличивающего пути.

  18. Доказательство • Если M-увеличивающий путь P существует, то симметрическая разность M∆E(P)будетпаросочетанием большей мощности. • Если существует паросочетание | M'| > | M |, то M∆M' является вершинно-непересекающимся объединением путей и циклов, один из которых является увелличивающим.

  19. Алгебраический подход • Пусть Gпростой граф и пусть G' орграф, полученный из G произвольной ориентацией ребер. • Для произвольного вектора xопределимматрицу Татта.

  20. Матрица Татта

  21. Паросочетание иматрица Татта Теорема8.8 (Tutte [1947] ) Граф G имеетсовершенноепаросочетаниетогда и только тогда, когдаdet TG(x) ≠ 0.

  22. Доказательство • V(G) = {v1,…,vn} • Пусть Sn множество всех перестановок {1,…, n}. • Каждая перестановка π S'nсоответствует орграфу Hπ =( V(G),{(vi,vπ(i)): i = 1,…, n}), где ровно одна дуга входит в каждую вершину и ровно одна дуга выходит из нее. (HπĞ').

  23. ПримерHπ M Hπ vi vj π(i)=j, π(j)=i.

  24. Доказательство • Если существует перестановка π S'nтакая что Hπсостоит только из четных циклов, то в G есть совершенное паросочетание. • Пусть это не так. То есть для каждой π S'nсуществует нечетный цикл. • Тогда r(π) S'nтакая, что Hr(π) получается из Hπобратной ориентацией дуг в первом нечетном цикле (r(r(π)) = π).

  25. ПримерHπи Hr(π) Hπ Hr(π) vi vj vj vi vk vk π(i)=j, π(j)=k, π(k)=i. π(i)=k, π(j)=i, π(k)=j.

  26. sgn(π)= sgn(r(π)) Hπ Hr(π) w2 w1 w1 w2 w2k+1 w2k+1 w1,w2,w3, …, w2k,w2k+1 w2,w3,w4, …, w2k+1,w1 w1, w2,w3, …, w2k,w2k+1 w2k+1,w1,w2, …, w2k-1,w2k Одна перестановка получается из другой за 2к транспозиций.

  27. Доказательство • Следовательно, два соответствующих этим перестановкам слагаемые в сумме взаимно сокращаются. Так как это выполняется для всех пар π и r(π), то det TG(x)≡0.

  28. ВероятностныйАлгоритм Следствие8.9 (Lovász [1979] ) Пусть x = (xe)eE(G)―случайный вектор, каждая координата которого равномерно распределенав[0,1]. Тогда с вероятностью1рангTG(x) в точности равен 2(G).

  29. Упражнение 8.1 • Пусть Gпроизвольный граф, M1и M2 два максимальных паросочетания в нем. Доказать, что | M1 | ≤ | M2|.

  30. Упражнение 8.2 • Доказать, что k-регулярный двудольный граф имеет kпопарно не пересекающихся совершенных паросочетаний.

More Related