
드넓은 황야에 위치한 초원 대학교의 컴퓨터과학과 소속 폰가젤 교수는 2인 조별 과제를 내는 것을 좋아합니다. 혼자서 해결하기에는 벅찬 문제를 두 명이서 협력하여 해결한다면 학생들에게 협동심은 물론 위기에 굴복하지 않는 능력을 기를 수 있다고 굳게 믿기 때문이죠. 물론 '조별과제 잔혹사'라는 말을 언젠간 들어 봤을 정도로 학생들의 원성이 자자하다는 사실도 잘 알고 있습니다. 그가 개설했던 알고리즘 수업의 강의 평가를 보면 쉽게 유추할 수 있었죠. 그동안은 학생들이 자율적으로 조를 편성하도록 놔두었는데, 이러니 어떤 학생들은 전혀 마음이 맞지 않는 사람과 조를 이루어야 하는 불상사가 발생했었죠. 이 부분이 바로 학생들이 가장 불편을 느낀 부분이었습니다.
이번 학기에 가젤 교수는 이러한 학생들의 원성을 잠재우고자 한 가지 묘수를 냈습니다. 학기 초에 모든 학생들에게 함께 조를 이루어도 괜찮은 사람의 명단을 제출하라고 하는 것이죠. 그러고는 서로가 서로를 괜찮다고 하는 경우에 한해 조를 지어주는 것입니다. 과연 가젤 교수는 모든 학생들을 본인이 원하는 학생과 조를 맺어줄 수 있을까요? 이를 알 수 있다면 가젤 교수에게는 명분이 생길 겁니다. 만일 모든 학생들이 각자 원하는 사람과 조를 이룬다면 원만하게 한 학기를 보낼 수 있을 것이고, 반대로 불가능하다면 학생들에게 "저는 최대한 노력하였지만, '이론적으로' 불가능합니다, 학생 여러분."이라며 나름의 변명을 할 수는 있겠죠.(물론, 그냥 조별 과제를 하지 않는게 학생들 입장에서는 가장 좋은 선택이지만요.)
위 문제는 다음과 같은 방식으로 정의할 수 있습니다. 학생들을 정점의 집합
어떤 그래프가 주어졌을 때, 모든 정점이 참여하는 매칭, 다시 말해, 완전 매칭(perfect matching)이 존재하는가?
정리 1. 이분 그래프에서 완전 매칭이 존재할 필요충분조건
어떤 이분 그래프
이는 홀의 정리(Hall's theorem)를 통해 쉽게 유도할 수 있습니다. 더 자세한 내용이 궁금하시면 이전 포스트를 참조하세요.
2019/01/28 - [조합론적 최적화/Matching] - 홀의 정리 (Hall's Theorem)
홀의 정리 (Hall's Theorem)
여러분이 어떤 단체의 인사 담당자라고 하죠. 총 다섯 명의 직원이 새로이 자리를 배치 받아야 하는 상황입니다. 고맙게도 충원되어야 하는 자리도 총 다섯 개입니다. 자애로운 여러분은 모든 ��
gazelle-and-cs.tistory.com
하지만 안타깝게도 가젤 교수가 직면한 문제에서는 이분 그래프를 가정하기 힘들죠. 학생들이 자신의 '사랑의 작대기'를 어디에 어떻게 보낼지 모르기 때문입니다. 과연 이렇게 일반적인 그래프에 대해서도 완전 매칭이 존재할 필요충분조건이 있을까요? 놀랍게도 존재합니다.(없었다면 이 글을 적을리가 없었으니 그다지 놀랍지는 않겠군요.) 바로 텃의 정리(Tutte's theorem)입니다. 이번 포스트에서는 이 정리에 대해 함께 알아보도록 하겠습니다.
직관적으로 이해하기
어떤 그래프에 완전 매칭이 존재하기 위해서는 반드시 만족해야 하는 조건이 있습니다. 바로, 정점의 개수가 짝수라는 것이죠. 그렇지 않으면 정점을 어떻게 짝짓더라도 적어도 하나의 정점은 매칭에 참여하지 못하게 되기 때문이죠. 이는 매우 자명한 사실이지만, 이를 다음과 같이 확장하면 텃의 정리를 이해하는데 큰 도움이 됩니다.
그래프에 다음과 같은 장난을 쳐보겠습니다. 주어진 그래프

여기서 흥미로운 점은 정점 개수가 짝수인 연결 성분들은 그 내부에서 완전 매칭을 형성할 수 있겠지만, 정점 개수가 홀수인 연결 성분들은 분명 최소한 하나의 정점은 매칭에 참여하지 못한 채 쓸쓸히 남아있게 된다는 점입니다. 따라서 원래 그래프에 완전 매칭이 존재하려면, 정점 개수가 홀수인 연결 성분들은 분명
텃의 정리 (Tutte's Theorem)
위에서 확인한 바를 수학 기호와 함께 엄밀히 표현하면 다음과 같습니다. 어떤 그래프
어떤 그래프에 완전 매칭이 존재하기 위해서는 임의의 에 대해 를 만족해야 한다.
과연 그 역도 참일까요? 놀랍게도 그렇습니다. 그리고 그것이 바로 텃의 정리입니다.
정리 2. 텃의 정리(Tutte's theorem)
어떤 그래프
역 증명
따라서 남은 것은 다음의 역 명제를 보이는 것입니다.
어떤 그래프에서 만약 임의의 에 대해 를 만족하면 에는 완전 매칭이 존재한다.
이는
따라서 이제부터는 어떤 그래프
정리 3. 와 의 홀짝성(parity)
임의의 그래프
[증명] 우리는 정점 집합
에 속하는 경우 에서 홀수의 정점 개수를 갖는 연결 성분에 속하는 경우 에서 짝수의 정점 개수를 갖는 연결 성분에 속하는 경우
이때, 항목 2의 홀짝성은
증명을 시작해 보겠습니다. 먼저 우리는 일반성을 잃지 않고
이제부터
정리 4. 의 성질 1
[증명] 만약

이제
다음은
정리 5. 의 성질 2
[증명] 똑같이 귀류법으로 보이도록 합시다. 만약 어떤 정점

이제
그러면 식 1에 의해 다음의 부등식을 이끌어낼 수 있습니다.
이는
이제
에는 의 각 연결 성분 에 대해 를 만든다. 는 와 동일하다.- 만약
위에서 어떤 연결 성분 의 한 정점이 의 한 정점 와 인접(adjacent)하다면 이다.
만약


만약
텃-베르주 공식 (Tutte-Berge Formula)
이것으로 임의의 일반적인 그래프에 완전 매칭이 존재하는 필요충분조건인 텃의 정리에 대해서 모두 알아보았습니다. 마치기 전에 텃의 정리의 일반화된 형태인 텃-베르주 공식(Tutte-Berge formula)을 소개하겠습니다. 텃의 정리는 그래프에 완전 매칭이 존재하는지 하지 않는지에 대한 정보만을 알려줍니다. 따라서, 만약 완전 매칭이 존재하지 않는다면, 최대 매칭(maximum matching)의 크기는 얼마큼 될지는 정리의 명제만을 통해서는 알 수 없습니다. 흥미롭게도 텃의 정리가 최대 매칭을 구하는 데도 큰 도움을 준다는 사실이 잘 알려져 있습니다.
정리 6. 텃-베르주 공식 (Tutte-Berge formula)
어떤 그래프
[증명] 먼저 좌변이 우변보다 작거나 같다는 것을 보이겠습니다. 직관적으로 이해하기 절에서 살펴 보았듯이, 임의의
임을 알 수 있습니다. 위 식은 임의의

반대의 경우를 보이겠습니다. 먼저
개의 새로운 정점의 집합 을 만든다. 이다. 은 와 함께, 의 각 정점은 의 모든 정점과 인접한다. 다시 말해, 을 만족한다. 의 정점들 끼리는 인접하지 않는다.
이제,

게다가,

따라서 우리는
로 표현할 수 있고,
를 이끌어낼 수 있습니다. 그러면

따라서
를 만족하게 됩니다. 이는 곧 식 2에서 좌변이 우변보다 작지 않다는 사실을 증명합니다. ■
마치며
이번 시간에는 일반적인 그래프에서 완전 매칭이 존재할 필요충분조건을 논의한 텃의 정리와 최대 매칭의 크기를 정확히 규명한 텃-베르주 공식에 대해서 공부하였습니다. 이 결과들은 주로 이분 그래프에서만 깊이 연구되어 온 매칭 이론의 저변을 일반적인 그래프로 확장시키는데 큰 공헌을 하였습니다. 다만, 아쉬운 점은 빠른 시간에 최대 매칭을 실제로 구하는 방법에 대해서 알려 주지는 못한다는 것입니다. 실지로 텃의 정리에 의거하여 완전 매칭이 존재하는지를 판단하기 위해서는 모든 정점의 부분집합
글에 오류가 있거나, 궁금하신 점이 있다면 언제든 알려주시기 바랍니다. 고맙습니다. :0
참조
[1] Bernhard Korte, Jens Vygen. Combinatorial optimization. 3rd ed. Springer, 2005.
'조합론적 최적화 > Matching' 카테고리의 다른 글
경제학으로 해석한 헝가리안 알고리즘 (0) | 2021.12.25 |
---|---|
세제곱 시간 헝가리안 알고리즘 (Hungarian Algorithm in Cubic Time) (4) | 2021.10.16 |
헝가리안 알고리즘 시간 복잡도 분석 (7) | 2020.03.18 |
호프크로프트-카프 알고리즘 (Hopcroft-Karp Algorithm) (11) | 2020.02.22 |
할당 문제 & 헝가리안 알고리즘 (Assignment Problem & Hungarian Algorithm) (38) | 2019.08.07 |