丁晓漫,再探线性规划对偶在信息学竞赛中的应用
maxcTxAx≤bx≥0
等于
minbTyATy≥cy≥0
首先先认识 ∑aibi=c 这个限制怎么对偶,拆成:
∑aixi≤c∑−aixi≤−c
假设前者的对偶变量为 p,后者的为 p′,那么就是最小化 c(p−p′),令 φ=p−p′,那么 φ 可以取任意实数。所以干脆视 φ 作为 ∑aibi=c 的对偶变量,它的取值范围可以是任意实数。反过来同理,一个取值范围是任意实数的变量对偶后的限制应该是恰好等于。
费用流问题:
wu,v 费用,fu,v 流量,cu,v 容量,bu 出流量 − 入流量。
min∑(u,v)wu,vfu,vs.t.−fu,v≥−cu,v∑vfu,v−∑vfv,u=buwu,v≥0
令 zu,v 作为 −fu,v≥−cu,v 的对偶变量,pu 作为 ∑vfu,v−∑vfv,u=bu 的对偶变量。
这里列对偶的方法是,将原问题的所有限制设出其对偶变量。再根据根据原问题的每个限制列新问题的最优化的式子;根据原问题的每个变量列新问题的每个约束。
所以对偶后的问题为:
max{∑(u,v)−zu,vcu,v+∑upubu}s.t.−zu,v+pu−pv≤wu,vzu,v≥0
这里和原论文 p 的系数恰好相反,不过是等价的,因为 p 的取值范围是任意实数。
整理一下,考虑 pu−pv−wu,v≤zu,v 而 z 的贡献系数是负的要尽可能小,所以 zu,v 取的值就是 max(0,pu−pv−wu,v),一般 bu=0,从而现在就是最优化
min{∑(u,v)max(0,pu−pv−wu,v)cu,v}
把 pu−pv 写成 pv−pu 也行。
关于整数解的问题:有定理是 wu,v 均为整数则 p 存在全是整数的最优解。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?