两阶段随机规划模型简介

@[TOC]两阶段随机规划模型简介

两阶段随机规划模型简介

本文是作者学习两阶段随机规划的一个记录,对所用外文文献进行了一定的翻译。在涉及到不确定性的问题中,两阶段随机规划应用越来越广泛,在此对 两阶段随机规划 的基本概念,示例做了解读,并附上GAMS求解代码以便大家通过示例实现自己的建模需求。


前言

交通专业在读研究生一枚。在研究过程中,应用到了两阶段随机规划模型,由于资料大部分是英文的,啃下来比较艰难,在这里做一个记录,也算是一个分享。

从外文原著翻译而来,加上了自己的一部分理解和思考,会用颜色区分开。
参考资料:
Introduction to Stochastic Programming,
John R. Birge • Franc¸ois Louveaux,
Second Edition

一、随机规划是什么?

上个世纪五十年代,G.Dantzig[1]在研究航班最优次数的问题中发现某些航线上的航次的需求是随机的,因而提出了随机规划,在六七十年代,随着随机规划在各个领域中应用越来越广泛,其理论研究也进入了一个快速发展的阶段。康托罗维奇、查纳斯(A.Charnes)和库伯(W.W.Cooper)、刘宝碇教授分别提出了期望值模型、机会约束规划以及相关机会规划,这是随机规划问题的三个重要的研究方向。
两阶段随机规划问题是随机规划问题的一个分支,是特殊的期望值模型。
在观察到随机变量实现之前便作决策,一般是先制定一个初始决策x,使得目标函数f (x)极小化,待随机变量实现后,仍有机会采取应急策略y,这就导致了一个额外费用,通常称为补偿函数。
初始决策x通常称为第一阶段决策,在农场问题中,对应于决策每种作物各种多少亩的土地。
决策之后,获得了随机变量ξ 的实现的完整信息,然后采取第二阶段决策,也就是应急策略或补偿策略。
书中举了两个例子来说明,一个是农场问题,一个是报童问题。
随后我会附上gams和cplex求解农场问题的代码。

二、举例

1.农场问题

在农场问题中,农夫需要决策他每种作物的播种数量,作物产量会受到今年的天气的影响。农场主拥有500acres的土地,目前有三种作物可供选择,其产量和价格见表1。由于牧场养殖需要,对小麦和谷物的需求量分别为200t和240t。这部分需求可以由农场种植来满足,超过部分会卖出。也可以通过向供应商购买来满足,采买价格由于包括供应商的运输和仓储成本,因而比农场自己出售的价格高出40%。

属性 小麦 谷物 甜菜
产量(T/acre) 2.5t 3t 20t
播种成本($/acre) 150 230 260
出售价格($/T) 170 150 36小于6000t;10超过6000t
采买价格($/T) 238 210
最小需求量(T) 200 240

对于甜菜,受限售令的影响,农场主出售量超过限定的6000t后,超出部分价格会降低至10$/T。

据此构建模型
x1 = acres of land devoted to wheat,
x2 = acres of land devoted to corn,
x3 = acres of land devoted to sugar beets,
w1 = tons of wheat sold,
y1 = tons of wheat purchased,
w2 = tons of corn sold,
y2 = tons of corn purchased,
w3 = tons of sugar beets sold at the favorable price,
w4 = tons of sugar beets sold at the lower price.

m i n   150 x 1 + 230 x 2 + 260 x 3 + 238 y 1 − 170 w 1 + 210 y 2 − 150 w 2 − 36 w 3 − 10 w 4 , s . t .   x 1 + x 2 + x 3 ≤ 500 , 2.5 x 1 + y 1 − w 1 ≥ 200 , 3 x 2 + y 2 − w 2 ≥ 240 w 3 + w 4 ≤ 20 x 3 , w 3 ≤ 6000 , x 1 , x 2 , x 3 , y 1 , y 2 , w 1 , w 2 , w 3 , w 4 ≥ 0 , (1.1) min\, 150x1+230x2+ 260x3+238y1−170w1+210y2−150w2−36w3−10w4,\\s.t. \,x1+x2+x3 ≤ 500,\\ 2.5 x1+y1−w1 ≥ 200, \\ 3 x2+y2−w2 ≥ 240 \\w3 +w4 ≤ 20x3,w3 ≤ 6000,\\ x1,x2,x3, y1,y2, w1,w2,w3,w4 ≥ 0 ,\tag{1.1} min150x1+230x2+260x3+238y1170w1+210y2150w236w310w4,s.t.x1+x2+x3500,2.5x1+y1w1200,3x2+y2w2240w3+w420x3,w36000,x1,x2,x3,y1,y2,w1,w2,w3,w40,(1.1)
求解后得到结果为表2
表2
也即

属性 小麦 谷物 甜菜
种植量(acres) 120 80 300
产量(T) 300 240 6000
出售量(T) 100 - 6000
采买量(T) - - -
总利润($):118600

但考虑到天气不同对作物产量的影响,农场主并不确定播种后的天气是什么情况,因而本次的最优决策结果可能并不适用。

随机情景

简单地假设接下来的一年有可能出现三种情况:风调雨顺收成好的good year,正常average year,旱涝不均收成差的bad year。以上一部分给出的收成正常的年份产量为参照,三种情况对应作物产量分别为120%,100%,80%。并且假设价格不变。
考虑收成好和差的年份的最佳决策,结果如下:
表3 good year(产量above average 20%)表3
表4 bad year(产量below average 20%)
表4
结果表明,最优策略受产量影响较大。总收益在59950到167667之间变动。显然,在不知道这一年的天气状况的时候,并不存在一个完美的方案能够在各种状况下都达到最优。因而一个较为长期的天气预报是有必要但难以获取的。因而农场主只能在缺乏天气信息的状况下先做出种植分配的决策。做出一个决策时,农场主会想要知道,在每个不同的收成情境下,他的决策所带来的收益或损失是多少,从而决定采取哪种决策方案。
土地分配作物的决策变量(x1,x2,x3)需要现在得出,但卖出多少,采购多少 (wi, i = 1, . . . ,4, yj , j = 1,2) 的决策则受到作物产量的影响。 对于后者,用情景index s=1,2,3 对其进行标记和区分,分别代表above,average,below三种不同的收成可能下该变量的值。
假设农场主想要追求其长期的收益,他可能会考虑采取一种决策使得期望收益最大化。(该假设意味着该农场主是风险中性投资者)假设不同情景出现可能性均为三分之一。
则新的模型建立为
m i n   150 x 1 + 230 x 2 + 260 x 3 − 1 / 3 ( 170 w 11 − 238 y 11 + 150 w 21 − 210 y 21 + 36 w 31 + 10 w 41 ) − 1 / 3 ( 170 w 12 − 238 y 12 + 150 w 22 − 210 y 22 + 36 w 32 + 10 w 42 ) − 1 / 3 ( 170 w 13 − 238 y 13 + 150 w 23 − 210 y 23 + 36 w 33 + 10 w 43 ) s . t .     x 1 + x 2 + x 3 ≤ 500 , 3 x 1 + y 11 − w 11 ≥ 200 , 3.6 x 2 + y 21 − w 21 ≥ 240 , w 31 + w 41 ≤ 24 x 3 , w 31 ≤ 6000 , 2.5 x 1 + y 12 − w 12 ≥ 200 , 3 x 2 + y 22 − w 22 ≥ 240 , w 32 + w 42 ≤ 20 x 3 , w 32 ≤ 6000 , 2 x 1 + y 13 − w 13 ≥ 200 , 2.4 x 2 + y 23 − w 23 ≥ 240 , w 33 + w 43 ≤ 16 x 3 , w 33 ≤ 6000 , x , y , w ≥ 0. (1.2) min\,150x1+230x2+260x3 \\− 1/3(170w11−238y11+150w21−210y21+36w31+10w41) \\− 1/3(170w12−238y12+150w22−210y22+36w32+10w42) \\− 1/3(170w13−238y13+150w23−210y23+36w33+10w43) \\s.t. \,\ x1+x2+x3 ≤ 500 , \\3x1+y11−w11 ≥ 200 , \\3.6x2+y21−w21 ≥ 240 , \\w31+w41 ≤ 24x3 , \\w31 ≤ 6000 , \\2.5x1+y12−w12 ≥ 200 , \\3x2+y22−w22 ≥ 240 , \\w32+w42 ≤ 20x3 , \\w32 ≤ 6000 ,\\ 2x1+y13−w13 ≥ 200, \\2.4x2+y23−w23 ≥ 240,\\ w33 +w43 ≤ 16x3 , \\w33 ≤ 6000,\\ x,y,w ≥ 0 .\tag{1.2} min150x1+230x2+260x31/3(170w11238y11+150w21210y21+36w31+10w41)1/3(170w12238y12+150w22210y22+36w32+10w42)1/3(170w13238y13+150w23210y23+36w33+10w43)s.t. x1+x2+x3500,3x1+y11w11200,3.6x2+y21w21240,w31+w4124x3,w

  • 44
    点赞
  • 148
    收藏
    觉得还不错? 一键收藏
  • 26
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值