优化问题-“列生成,行生成”

https://zhuanlan.zhihu.com/p/49752900
https://blog.csdn.net/u011561033/article/details/96895023
https://blog.csdn.net/Treasureashes/article/details/118098304

行生成(constraint generation)

行生成,又称为“割平面法”,在线性规划中等同于约束,又称为“延迟约束生成法”。可用于求解大规模线性求解规划问题。

行生成条件下,先考虑一部分约束子集下的最优解。

将该最优解带入整个线性规模模型中,判断其是否为可行解。如果是,该解便是最优解;如果不是可行解,判断其是违反了什么约束,再将违反的约束加入约束集中,再次迭代求解。

因此行生成解法的重点在于选择的割平面是否合适。

列约束

这篇文章对列约束的讲解特别详细,大家可以看看:

https://xijunlee.github.io/2017/10/12/%E4%BB%8E%E5%8D%95%E7%BA%AF%E5%9E%8B%E6%B3%95%E5%88%B0%E5%88%97%E7%94%9F%E6%88%90%E7%AE%97%E6%B3%95/

先把原问题(master problem)restrict到一个规模更小(即变量数比原问题少的)的restricted master problem,在restricted master problem上用单纯型法求最优解,但是此时求得的最优解只是restricted master problem上的,并不是master problem的最优解。此时,就需要通过一个subproblem去check在那些未被考虑的变量中是否有使得reduced cost rate小于零的呢(其具体的做法就是通过求解一个线性最大化问题,即求未被考虑的变量中的reduced cost rate的最大值)?如果有,那么我就把这个变量的相关系数列加入到restricted master problem的系数矩阵中。经过这样反复的迭代,直到subproblem中的reduced cost rate大于等于零,那么master problem就求到了最优解。

Column-and-row Generation(CRG)

column-dependent-rows(CDR)problem是一类特定的LP问题:

(1)生成列的同时也可能会生成相关的约束(linking constraints)(行),即存在与行和列同时相关的变量。
(2)相关联的约束太多,无法将这些约束直接包含在公式中。完整的约束集的显性描述只在整个变量集存在时可用。约束不全是显性的,也就是说,行的个数不可能在一开始就知道。

针对该类问题,可以采用Benders或者Dantzig–Wolfe方法分解成子问题,进行求解。

Benders分解算法通常对应行生成,而Dantzig-Wolfe分解算法对应列生成。

https://blog.csdn.net/kittyzc/article/details/81712257

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值