0
点赞
收藏
分享

微信扫一扫

随机规划 | 两阶段随机规划背包问题(附Python代码)




关键字:COPT,Gurobi,Benders Decomposition,Integer-L-shaped Algorithm, stochastic program

摘要:本文提供了两阶段随机规划背包问题的数学模型和4种求解方法,方法1:python + COPT;方法2:python + COPT + Benders Cut + L-Shaped;方法3:python + Gurobi;方法4:python + Gurobi + Benders Cut + L-Shaped。

不知道大家是否和小编一样,在学习数学模型求解方面的知识时,找到的资料要么太简单无法拓展,要么太难无法深入,要么………

今天的推文极有可能正中大家下怀,它相比简单问题进了1个台阶,比复杂问题退了不止5个台阶,今天继续为大家带来两阶段随机规划的推文,想想距离上次随机规划的推文还是在…………上次。

我们之前​​MATLAB数学建模(十二) | 随机规划​​这篇推文初步介绍了随机规划,今天我们在此基础上讲解随机规划的其中一部分研究内容——期望值模型。后续的推文我们将围绕本篇推文以及本篇的参考文献以视频的方式进一步介绍随机规划,欢迎大家前来学习。

问题描述

疫情结束后,仪同学计划背着他的好几个极地背包开心的去骑行,他准备在背包里装一些物品以保证骑行所需,待装的每个物品都具有一定的重量以及骑行收益,但有一部分物品的收益是随机的,且概率已知,于是他计划分两个阶段将物品装进他的极地背包,且要保证在不超过背包容量的前提下使骑行收益最大,问他都需要装哪些物品

随机规划模型


其中,各个变量的含义如下所示:

随机规划 | 两阶段随机规划背包问题(附Python代码)_参考文献

随机规划模型的拓展形式


随机规划模型转化为拓展形式的本质就是对期望转化为可以求解的形式,即

对应论文中的


算法步骤

随机规划 | 两阶段随机规划背包问题(附Python代码)_优化算法_02

学习步骤推荐

Step1: 结合本推文通读参考文献-->论文比较简单;

Step2: 调试跟踪代码-->10分钟即可掌握;

Step3: 无论步骤2调试的是哪一个版本的代码-->花5分钟即可将其转化为另一个版本的代码,如python + COPT + Benders Cut + L-Shaped转python + Gurobi + Benders Cut + L-Shaped。

参考文献

1.https://github.com/HosseinTohidi/L-shaped-Decomposition(该地址论文中的代码有问题,可自行修改)

OK,今天就到这里啦,各位可点击下方图片留言。

​​

随机规划 | 两阶段随机规划背包问题(附Python代码)_参考文献_03

​​




举报

相关推荐

0 条评论