“Hungarian algorithm解决二分图完美匹配/指派的加权特例,依顶点势与增广结构。拟阵交算法把“同时独立于两个拟阵”作为更一般接口,二分匹配可编码为两个分割拟阵的交;这并不让 H…”
Oracle 模型与目标 ​
给定同一有限底集
以及独立性 oracle:输入
算法从
次独立性查询和同阶的附加图搜索工作;若一次 oracle 成本为
交换有向图的方向 ​
固定当前公共独立集
源集合与汇集合为
因此一条
最短增广路与对称差 ​
若
其中
外部顶点比内部顶点多一个,所以
每条弧只保证一次单元素交换保持某个拟阵独立,不能把这些局部保证无条件串联。最短性排除了能由基本回路消去产生的“捷径”:若最终
无增广路时的最优性证书 ​
若从
直观上,若
取
另一方面,任意公共独立集
所以当前
具体例子:二分匹配 ​
给二分图
要求每个左端点至多关联一条已选边; 要求每个右端点至多关联一条已选边。
公共独立集恰是匹配。交换图中的外部边若能替换一条冲突的已匹配边,就对应沿交替路翻转端点占用;从两端都可直接加入的外部边之间找到增广路,正恢复普通 匹配增广路。拟阵交算法把“端点冲突”推广成任意两套拟阵独立性 oracle。
失败边界与近邻算法 ​
单拟阵最大权基由贪心解决;两个拟阵的无权公共独立集需要交换图增广。加权拟阵交还必须给弧赋 reduced cost、维护势并找最短路径,不能把本页 BFS 中的“最短”简单改成按元素权排序。
三个 partition matroid 的交已经能表达三维匹配,一般为 NP-hard;“两个”是该多项式算法的结构边界。共同独立集族自身通常不是拟阵,因此不能对
参考资料
- Jack Edmonds, “Matroid Intersection,” Annals of Discrete Mathematics 4, 1979, 39–49.
- William H. Cunningham, “Improved Bounds for Matroid Partition and Intersection Algorithms,” SIAM Journal on Computing 15(4), 1986.
- Alexander Schrijver, Combinatorial Optimization: Polyhedra and Efficiency, Springer, 2003, chapters 39–41.