量子网络流与匹配:增广路框架中的 Grover 加速¶
最大匹配与最大流都由“反复寻找增广结构”驱动。量子算法不会改变 Berge 定理或 max-flow min-cut,而是在 residual graph 中用 Grover/minimum finding 加速邻接扫描、最短增广路和 blocking-flow 子程序。复杂度取决于顶点数 \(n\)、边数 \(m\) 与整数容量上界 \(U\),不同参数区域由不同算法占优。
1. 匹配与增广路¶
匹配 \(M\subseteq E\) 中每个顶点至多关联一条边。\(M\)-augmenting path 的边在
间交替,两个端点未匹配。沿路径翻转边状态
使匹配大小增加 1。Berge 定理:\(M\) 为最大基数匹配当且仅当不存在增广路。
这里“maximum”不是“maximal”:maximal 只表示再加单边会冲突,可能远小于最优。Zoo/早期摘要偶有措辞混用,算法目标是最大匹配。
2. 二分图分层增广¶
Hopcroft--Karp 思路每阶段:
在 alternating residual graph 中 BFS 找最短增广路长度;
构造只含正确层间边的 layered graph;
找一个 maximal set 的顶点不交最短增广路并同时翻转;
最短增广路长度严格增加,所以阶段数受控。
量子版本对“当前顶点是否还有 admissible 邻边”做 Grover 搜索。已检查失败的邻接区间要缓存/删去,否则同一空列表会重复付费。分层、路径删除和匹配更新用可逆或经典控制数据结构实现。
Ambainis--Špalek 的结果为
时间。\(m\gg n\) 时主项约 \(n\sqrt m\);\(m=O(n)\) 时约 \(n^{3/2}\)。该界是早期量子增广框架的结果,并非声称在所有现代参数区间胜过最佳经典匹配算法。
3. 非二分图与 blossom¶
一般图的奇环会使简单 alternating BFS 失效;Edmonds blossom 把某些奇环收缩为超级顶点,在收缩图中寻找增广路,再展开。量子算法必须让邻接搜索适应动态 blossom 与多层标签,成本上升为
前项来自在大量 blossom/森林状态中搜索边,后项处理数据结构与分阶段放大。量子查询减少不能删除 blossom 正确性证明;收缩、base 顶点和路径提升仍按经典算法维护。
4. 从 matching 到 residual network¶
网络有源点 \(s\)、汇点 \(t\) 与整数容量
当前流 \(f\) 的 residual capacity 为正向 \(c_e-f_e\) 和反向 \(f_e\)。只要 residual graph 有 \(s\)--\(t\) 路,沿其瓶颈
增广。没有路径时,可达集给出与当前流同值的 cut,证明最大。
单位容量二分网络把左--右边容量置 1,并连接超级源汇,maximum flow 值就是 maximum matching 大小。因此匹配子程序也是流算法的特殊尺度。
5. 量子 residual 搜索的两种平衡¶
整数容量允许 capacity scaling:只看 residual capacity 至少某阈值的边,逐级减半阈值。每级需要:
量子搜索 admissible residual edge;
找增广路/阻塞流;
更新受影响的边并删除饱和边;
用 cut/剩余 deficit 控制阶段数。
一条算法偏向批量 blocking-flow:用分层结构限制顶点重访,并在每层量子扫描边。另一条偏向逐次较大增广:容量整数性保证总增广次数由 \(nU\) 控制,量子搜索每条路径的候选边。
对内部容量阈值/批大小做优化,得到两项上界
取较小者。原论文重点陈述 \(U\le n^{1/4}\) 等容量区域;若 \(U\) 很大,二进制编码长度虽只有 \(\log U\),上述多项式 \(U\) 依赖可能失去优势,应采用其他 scaling/经典算法比较。
6. 正确性证书仍是经典的¶
量子子程序可能有 bounded error,但输出流可经典验证:
对 \(v\ne s,t\)。若同时输出 residual 不可达形成的 cut \(S\),并验证
则由 max-flow min-cut 得到零错误最优性证书。算法可在每个量子搜索子程序上放大失败率,使整体错误逆多项式,再以证书兜底。
7. 小例子¶
网络
先沿 \(s-a-t\) 增广 2,再沿 \(s-b-t\) 增广 2,总流 4;随后可沿 \(s-a-b-t\) 增广 1,总流 5。源点出边总容量也是 5,cut \(\{s\}\) 证明最优。
量子算法只加速在大 residual graph 中寻找这些 admissible 边/路径;增广量与 cut 证明完全相同。
8. 小结与习题¶
最大匹配由不存在 augmenting path 刻画;二分图分层批量找最短增广路。
一般图还需 blossom 收缩,量子搜索不能绕开组合结构。
最大流在 residual network 上增广,整数容量与 scaling 控制阶段数。
两种量子平衡给出依 \(n,m,U\) 不同的上界,应按参数取最小并与经典算法比较。
证明沿 augmenting path 翻转使匹配大小增加 1。
把二分 matching 写成单位容量 flow 网络。
验证小例子的流守恒与最小 cut。
分别在 \(m=n,n^2\)、\(U=1,n^{1/4}\) 时比较 \(T_1,T_2\) 指数。
参考文献¶
Zoo 编号 168:Andris Ambainis 与 Robert Špalek, Quantum Algorithms for Matching and Network Flows.