Duality and Complementarity Slackness of Min-Cost Perfect Matching
令 G=(A∪B,E) 是带有边权 c:E→R 的二分图。我们想要找到一个有最小费用 ∑e∈Mce 的完美匹配 M。
令 xe 为表示是否选了边 e 的变量,xe=1 表示边 e 在匹配中,xe=0 表示边 e 不在匹配中。 在一个完美匹配中,每一个点恰有一条邻边。于是我们可以写出这个问题的线性规划:
MinimizeSubject to:e∈E∑xeceb∈B:(a,b)∈E∑xab=1a∈A:(a,b)∈E∑xab=1xe≥0∀a∈A∀b∈B∀e∈E
在之前的笔记中,已经证明了这样的线性规划的极点是整数解。所以我们可以通过求解上述线性规划来求解最小费用问题。
为了取得上述 LP 的对偶,我们首先将它写成之前常见的不等式形式。对于每个等式,我们考虑用两个不等式来替换它,这样仍然只有交点(等于的情况)满足条件。于是我们可以得到以下等价的线性规划:
MinimizeSubject to:e∈E∑xeceb∈B:(a,b)∈E∑xab≥1b∈B:(a,b)∈E∑xab≤1a∈A:(a,b)∈E∑xab≥1a∈A:(a,b)∈E∑xab≤1xe≥0∀a∈A∀a∈A∀b∈B∀b∈B∀e∈E
适当调整符号得到
MinimizeSubject to:e∈E∑xeceb∈B:(a,b)∈E∑xab≥1−b∈B:(a,b)∈E∑xab≥−1a∈A:(a,b)∈E∑xab≥1−a∈A:(a,b)∈E∑xab≥−1xe≥0∀a∈A∀a∈A∀b∈B∀b∈B∀e∈E
对于每个 a∈A,我们将一个变量 ua+ 关联到 a 的第一个约束 (∑b∈B:(a,b)∈Exab≥1) 上,将变量 ua− 关联到 a 的第二个约束 (−∑b∈B:(a,b)∈Exab≥−1) 上。同样地,我们有 vb+ 和 vb−。
所以我们现在有了对偶 LP
MaximizeSubject to:a∈A∑(ua+−ua−)+b∈B∑(vb+−vb−)(ua+−ua−)+(vb+−vb−)≤c(e)ua+,ua−,vb+,vb−≥0∀e=(a,b)∈E∀a∈A,b∈B
笔者注:这部分推广得太快了。学习的时候很难理解这个关联(原文为associate)的意思,所以打算更仔细地写一下。
Complementarity Slackness 告诉我们如果 x,(u+,u−,v+,v−) 是可行解,那么当且仅当下面条件成立的时候,它们是最优的。
xe>0ua+>0ua−>0vb+>0vb−>0⇒⇒⇒⇒⇒(ua+−ua−)+(vb+−vb−)b∈B:(a,b)∈E∑xab−b∈B:(a,b)∈E∑xaba∈A:(a,b)∈E∑xab−a∈A:(a,b)∈E∑xab=c(e)=1=−1=1=−1∀e=(a,b)∈E∀a∈A∀a∈A∀b∈B∀b∈B
我们用 ua 代替 (ua+−ua−),用 vb 代替 (vb+−vb−)。
原始线性规划:
MinimizeSubject to:e∈E∑xeceb∈B:(a,b)∈E∑xab=1a∈A:(a,b)∈E∑xab=1xe≥0∀a∈A∀b∈B∀e∈E
对偶线性规划:
MaximizeSubject to:a∈A∑ua+b∈B∑vbua+vb≤c(e)∀e=(a,b)∈E
在这种简化方式下,互补松弛告诉我们,如果 x,(u,v)) 是可行的,那么他们当且仅当下式成立的时候最优。
xe>0ua=0vb=0⇒ua+vb=c(e)⇒b∈B:(a,b)∈E∑xab=1⇒a∈A:(a,b)∈E∑xab=1∀e=(a,b)∈E,∀a∈A,∀b∈B
最后,我们发现后两个等式总是成立,因为他们直接源于 x 是原始可行的事实(回顾原始的线性规划,我们的表达形式恰为这样的等式)。因此,我们总结以上内容
引理
一个完美匹配 M 的成本是最小的,当且仅当存在一个可行的对偶解 u,v 使得
ua+vb=c(e)∀e∈(a,b)∈M.
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/