“设 $G=(L\dot\cup R,E)$ 是有限简单二分图,记 $p= L $、$q= R $、$n=p+q$、$m= E $。本页求无权最大基数匹配,并判断能否饱和指定的左侧。输入显式列…”
形式陈述
设
匹配有三种常被混淆的最优性:
是极大匹配,若不存在严格包含 的匹配; 是最大匹配,若 在所有匹配中最大; 是完美匹配,若每个顶点都被 饱和。
最大匹配的大小记为
最大匹配一定极大,完美匹配一定最大;两个反向命题一般都不成立。完美匹配含
相对于匹配
仍是匹配,而且
证明反方向时,把
直觉
匹配选择若干条互不争用端点的边,每个顶点最多参与一次配对。直接添加一条边只会检测当前还有没有两个同时空闲的端点,这对应极大性;增广路允许先解除部分旧配对、再沿交替链重新安排,因而能发现被局部选择遮住的全局改进。
对称差翻转为何保持可行,可以逐点查看。增广路内部每个顶点失去一条旧匹配边,同时获得一条新匹配边;两个端点原本未饱和,各自只获得一条边。冲突没有增加,匹配规模却净增一。
例子与边界
在四点路径
相对于该匹配交替且两端未饱和。翻转后得到
任取一个极大匹配
四点路径的中间边达到这个界,说明“随便取极大匹配”只保证二分之一近似,不能冒充精确算法。
空集总是匹配。孤立点不妨碍普通匹配,却会阻止完美匹配。最大匹配可能有多个,
普通匹配要求每个顶点容量为一。任务可由多台相同机器承接时需要
推论与应用
增广路把最大性转化为可搜索的证书。二分图的交替搜索没有奇圈干扰,Hopcroft–Karp 算法可按最短增广路分层并批量推进;一般图中的奇交替圈需要Edmonds blossom 算法收缩后再展开。
另一条代数路线是Tutte矩阵:为每条无向边放入一个反对称变量,形式行列式非零当且仅当存在完美匹配;随机代入后的非零值给存在性证据。配合隔离引理及整数二幂代入,可由删两端点的主子式筛出实际边集,再逐端点验真;随机失败不等于确定不存在,也没有替代本页的一般最大匹配目标。
在二分图中,Hall 定理刻画饱和指定一侧的匹配何时存在,Kőnig 定理给出
其中
二分匹配的网络流归约把每条可选配对设为单位容量弧,适合无权最大基数目标。匈牙利算法处理带成本的二分指派,并利用对偶势寻找最优完美匹配;它不能直接替代一般非二分图匹配。
匹配还为顶点覆盖给出下界,并为边覆盖、路径覆盖与拟阵交提供交换结构。把应用归约到匹配之前,应先确认端点容量、图是否二分、是否要求完美以及目标是基数还是权重。
参考资料
- Reinhard Diestel, Graph Theory, 5th ed., Springer, 2017, §2.1.
- Douglas B. West, Introduction to Graph Theory, 2nd ed., Prentice Hall, 2001, Chapter 3.
- László Lovász and Michael D. Plummer, Matching Theory, AMS Chelsea, 2009, Chapter 1.