Lecture 12:匹配
1. 匹配的基本定义
定义: 图
定义: 极大匹配是不能再加入任何边的匹配(加入任何未选边都会产生冲突)。
定义: 最大匹配是边数最多的匹配。
极大匹配 ≠ 最大匹配。极大匹配不一定是边数最多的。
定义: 若匹配包含
应用场景: 婚恋配对、任务分配到服务器、航班机组排班等。
2. 加权匹配
定义: 加权图是
定义: 匹配
最小权重匹配问题: 在加权图中找一个权重最小的完美匹配。
最大匹配和最小权重匹配都有高效的多项式时间算法(超出本课程范围)。
3. 稳定匹配问题
设置: 二部图,左侧
定义: 匹配
定义: 若匹配中不存在私奔情侣,则称该匹配为稳定匹配。
目标: 找到一个完美稳定匹配。
非二部图情形: 若图不是二部图(任意两人可配对),稳定匹配可能不存在(三元环的例子可证明)。
4. Gale-Shapley 算法
由 David Gale 和 Lloyd Shapley 于 1962 年提出,Alvin Roth 于 1980 年代推广应用。2012 年获诺贝尔经济学奖。
又称:稳定匹配算法、延迟接受算法、求婚-拒绝算法。
算法流程(按"天"迭代执行):
- 每个申请方
向其偏好列表中尚未拒绝过自己的评估方中排名最高的那位求婚。 - 每个收到多份求婚的评估方,保留其中最偏好的那位(暂时持有),拒绝其余所有人。
- 被拒绝的申请方将该评估方从偏好列表中划掉。
- 若没有任何偏好列表发生变化(即无人被拒绝),则将每位评估方与其当前持有的申请方正式配对,算法终止。
正确性证明
定理: G-S 算法在第
证明: 令
引理 1: 每位评估方持有的申请方随时间只会变好,不会变差。
证明: 若今天
引理 2: 每位申请方当前对应的评估方随时间只会变差,不会变好。
证明: 每次被拒绝,申请方转向偏好列表中排名更低的评估方。
定理: G-S 算法将每个人都配对。
反证法: 若某申请方
定理: G-S 算法不产生私奔情侣。
反证法: 设
- 若
曾拒绝过 :由引理 1, 最终的配对对象比 更好,故 并不更偏好 ,矛盾。 - 若
从未拒绝过 :则 从未向 求婚(否则就被拒绝了),说明 最终配对的评估方排名比 更高,故 并不更偏好 ,矛盾。
5. 公平性:申请方最优
定义: 若存在某个稳定匹配将
定义:
定义:
定理: G-S 算法将每位申请方配对到其最优可行对象。
定理: G-S 算法将每位评估方配对到其最劣可行对象。
在申请方主动求婚的 G-S 算法中,申请方掌握所有主动权。评估方只能被动接受,结果是所有稳定匹配中对其最不利的那个。若改为评估方主动求婚,则结果互换。