目录
Q:
- 拿到一个问题问自己难不难,以后。。。
- max matching
- min covering
- 哪个是np难/polynomial time
4 Matchings and Assignments
4.1 Augmenting Paths and Optimality
在一些组合算法中会用到的两个重要的想法:
- 从一个可行解移动到另一个更好的解(primal algorithm)
- 利用LP互补条件在primal和dual问题之间迭代
定义matching和covering:
- 由2.5节可知,matching和covering存在弱对偶关系,也即对于任意matching M M M和covering R R R有 ∣ M ∣ ≤ ∣ R ∣ |M|\le |R| ∣M∣≤∣R∣。
考虑Maximum Cardinality Matching Problem。我们首先研究如何构建越来越大的matching。
- 定义alternating path和augmenting path
- augmenting path可以帮助我们找到一个更大的matching:
- 找不到augmenting path就意味着我们已经找到了最大的matching:
注意:maximal matching和maximum matching定义不同;maximal matching指,再加入任何一条边都不再是一个matching,而maximum matching指,包含边的数量最多的matching。
4.2 Bipartite Maximum Cardinality Matching
定义二分图:
我们尝试系统地检查所有的增广路径:
- 算法
- 理论保证