中国高校课件下载中心 》 教学资源 》 大学文库

《运筹学》课程教学资源(参考资料)4 多期规划模型

文档信息
资源类别:文库
文档格式:DOC
文档页数:15
文件大小:124KB
团购合买:点击进入团购
内容简介
《运筹学》课程教学资源(参考资料)4 多期规划模型
刷新页面文档预览

4多期规划模型 4.1引言 在多期规划制定过程中,最优化也有着重要的应用。我们到目前为止所涉及的大多数 问题都是单期的规划问题。本附录陈述的模型具有这样的特点:一个时期的决策多多少少 会影响下一个时期。例如,在一个时期里生产的产品超过了这一时期的需求,就会产生多 余的产品。在这个时期,这些多余的产品没有价值,但是,它们却可以为下一个时期所使 用。 这种在各个时期之间的交互作用可以用最优化模型简单地描述出来。事实上,现实问 题中的多数线性规划模型都是多期模型。与多期等价的同义词是“动态”(例如,一个多 期LP也可以说成是一个动态规划模型)。 在一些实际应用问题中,需求表现为多期是显而易见的。例如,为干酪产品的生产而 建立的LP模型就是一个多期模型,它的生产可能涉及数年的时间。每月,甚至每周就要 做一次生产决定。许多干酪的生产需要数月的时间。例如,用脱脂乳制成的坚硬的意大利 干酪就需要存储10个月以上。美国人称之为瑞士干酪产品的生产也要2到4个月。英国 切达干酪的级别就取决于它存储的时间。一个高档的切达干酪需要存储一年以上。显然, 对于这样的实际应用问题,多期应该是这类模型的重要特征。 为了建立模型,我们要将时间分解为若干个时期。整个模型就被分解为若干个相关的 单个时期的模型的组合。这些单个时期的模型(静态模型)是通过下面的方式进行连接的: 1) 对每一种物品和每一个时期,有一个存储变量(或一个连接变量)。存储变量表 示从一个时期到下一个时期物品传输的数量。 2) 对于每一种物品和每一个时期来说,有一个“来源量=使用量”约束(物质平 衡约束)。这一约束最简单的形式为:“开始存货量+生产量=期末存货量+需求 量”。 多期模型通常以一种滚动的或滑动的形式出现。在每一个时期的开始的时候求解模 型。当第一个时期的解答被执行后,便可以获得更多的数据和预测,模型就转向下一个时 期。这是第二个时期就变成了第一个时期,等等,整个过程重复进行。 在多期问题中,每个时期的长度也未必相等。例如,一个石油公司在为下一年做生产 计划的时候,很显然应该按季节来划分。一种可行的划分是:冬季从12月1日到3月15 日:春季从3月16日到5月15日:夏季从5月16日到9月15日:秋季从9月16日到 11月30日。 有一些公司,例如林木生产公司或矿产公司,它们的计划要长达50年以上。头两期 可能是一年一期,接下来可能是两年一期,再接下来可能是三年一期,最后三期可能是10 年一期。 各个时期之间的相互作用是通过引入存储变量来实现的。这些变量连接着邻近的时

1 4 多期规划模型 4.1 引言 在多期规划制定过程中,最优化也有着重要的应用。我们到目前为止所涉及的大多数 问题都是单期的规划问题。本附录陈述的模型具有这样的特点:一个时期的决策多多少少 会影响下一个时期。例如,在一个时期里生产的产品超过了这一时期的需求,就会产生多 余的产品。在这个时期,这些多余的产品没有价值,但是,它们却可以为下一个时期所使 用。 这种在各个时期之间的交互作用可以用最优化模型简单地描述出来。事实上,现实问 题中的多数线性规划模型都是多期模型。与多期等价的同义词是“动态”(例如,一个多 期 LP 也可以说成是一个动态规划模型)。 在一些实际应用问题中,需求表现为多期是显而易见的。例如,为干酪产品的生产而 建立的 LP 模型就是一个多期模型,它的生产可能涉及数年的时间。每月,甚至每周就要 做一次生产决定。许多干酪的生产需要数月的时间。例如,用脱脂乳制成的坚硬的意大利 干酪就需要存储 10 个月以上。美国人称之为瑞士干酪产品的生产也要 2 到 4 个月。英国 切达干酪的级别就取决于它存储的时间。一个高档的切达干酪需要存储一年以上。显然, 对于这样的实际应用问题,多期应该是这类模型的重要特征。 为了建立模型,我们要将时间分解为若干个时期。整个模型就被分解为若干个相关的 单个时期的模型的组合。这些单个时期的模型(静态模型)是通过下面的方式进行连接的: 1) 对每一种物品和每一个时期,有一个存储变量(或一个连接变量)。存储变量表 示从一个时期到下一个时期物品传输的数量。 2) 对于每一种物品和每一个时期来说,有一个“来源量=使用量”约束(物质平 衡约束)。这一约束最简单的形式为:“开始存货量+生产量=期末存货量+需求 量”。 多期模型通常以一种滚动的或滑动的形式出现。在每一个时期的开始的时候求解模 型。当第一个时期的解答被执行后,便可以获得更多的数据和预测,模型就转向下一个时 期。这是第二个时期就变成了第一个时期,等等,整个过程重复进行。 在多期问题中,每个时期的长度也未必相等。例如,一个石油公司在为下一年做生产 计划的时候,很显然应该按季节来划分。一种可行的划分是:冬季从 12 月 1 日到 3 月 15 日;春季从 3 月 16 日到 5 月 15 日;夏季从 5 月 16 日到 9 月 15 日;秋季从 9 月 16 日到 11 月 30 日。 有一些公司,例如林木生产公司或矿产公司,它们的计划要长达 50 年以上。头两期 可能是一年一期,接下来可能是两年一期,再接下来可能是三年一期,最后三期可能是 10 年一期。 各个时期之间的相互作用是通过引入存储变量来实现的。这些变量连接着邻近的时

2 期。作为一个例子,假设我们对每一个时期有一个明确的决策变量。也就是产品的生产量。 P表示第j期的生产量。更进一步,假设我们有一个合同,规定第j时期的产品销售量为 d。定义I表示第j期末的存储量。根据这个定义,第j期开始的存储量为I1。对于每一 个时期,按照LP设计,应该有“产品的来源=产品的使用”的约束。对于第二期,产品的 来源是第一期的存储量I1和本期的生产量P2。产品的使用量是本期的需求d2和本期末的 存储量量I2。例如,如果d2=60和d=40,对于第二期,约束是: I1+P2=60+2或I1+P2-I260 第三期的约束是: I2+P3-I3=40 注意:两个时期是如何通过I2进行何连接的(就是I2出现在第二期和第三期的约束之 中)。 在一些实际问题中,本时期的流出量并不需要一定等于下一期的流入量。例如,如果 产品是现金,连接变量是短期借贷。对于第二期借贷的每一美元来说,如果每期的利率为 5%,那么进入第三期就变为$1.05。 另一方面,如果产品是劳动力,那么每期估计会有10%的损耗。这样上面的两个约束 就变为: 0.90I1+P2-I2=60 0.90I2+P3-I3=40 这里,P是第I期租用的劳动力人数。 通过下面的例子可以对于单期计划和多期计划做一个简单的说明。 4.2一个多期生产规划问题 假设某一个公司生产一种产品,4个季度对该产品的需求预测如下: Spring Summer Autumn Winter 20 30 50 60 假设所有的需求都要满足,有下面两种极端的决策可以执行: 1)由需求来决定产量,没有存储: 2)每期生产40个单位,允许有存储,可以用它来满足需求。 存储会产生成本。改变生产水平也会产生成本。所以人们希望的成本最低的方案应该 是(1)和(2)某种组合(就是存储一定的产品,同时适当地改变生产水平)。 假设公司估计:从一个时期到下一个时期如果改变生产水平,则单位产品需要$600成 本,这些成本称为“租用和开张”成本:如果存储单位产品,则需要$700成本。初始的存 储量为0。每一个季度的生产水平是40个单位。我们在冬季结束的时候要恢复这一水平。 我们可以计算出在无存储情况下,改变生产水平而产生的成本如下: $600×(20+10+20+10+20)=$48,000 另一方面,在固定生产水平的情况下,存储成本如下: $700×(20+30+20+0)=$49.000 最低的成本决策可能是上面两个极端决策的某种结合。借助于LP,我们可以找到成

2 期。作为一个例子,假设我们对每一个时期有一个明确的决策变量。也就是产品的生产量。 Pj 表示第 j 期的生产量。更进一步,假设我们有一个合同,规定第 j 时期的产品销售量为 dj。定义 Ij 表示第 j 期末的存储量。根据这个定义,第 j 期开始的存储量为 Ij-1。对于每一 个时期,按照 LP 设计,应该有“产品的来源=产品的使用”的约束。对于第二期,产品的 来源是第一期的存储量 I1 和本期的生产量 P2。产品的使用量是本期的需求 d2 和本期末的 存储量量 I2。例如,如果 d2=60 和 d3=40,对于第二期,约束是: I1+P2=60+I2 或 I1+P2-I2=60 第三期的约束是: I2+P3-I3=40 注意:两个时期是如何通过 I2 进行何连接的(就是 I2 出现在第二期和第三期的约束之 中)。 在一些实际问题中,本时期的流出量并不需要一定等于下一期的流入量。例如,如果 产品是现金,连接变量是短期借贷。对于第二期借贷的每一美元来说,如果每期的利率为 5%,那么进入第三期就变为$1.05。 另一方面,如果产品是劳动力,那么每期估计会有 10%的损耗。这样上面的两个约束 就变为: 0.90I1+P2-I2=60 0.90I2+P3-I3=40 这里,Pi 是第 I 期租用的劳动力人数。 通过下面的例子可以对于单期计划和多期计划做一个简单的说明。 4.2 一个多期生产规划问题 假设某一个公司生产一种产品,4 个季度对该产品的需求预测如下: Spring Summer Autumn Winter 20 30 50 60 假设所有的需求都要满足,有下面两种极端的决策可以执行: 1) 由需求来决定产量,没有存储; 2) 每期生产 40 个单位,允许有存储,可以用它来满足需求。 存储会产生成本。改变生产水平也会产生成本。所以人们希望的成本最低的方案应该 是(1)和(2)某种组合(就是存储一定的产品,同时适当地改变生产水平)。 假设公司估计:从一个时期到下一个时期如果改变生产水平,则单位产品需要$600 成 本,这些成本称为“租用和开张”成本;如果存储单位产品,则需要$700 成本。初始的存 储量为 0。每一个季度的生产水平是 40 个单位。我们在冬季结束的时候要恢复这一水平。 我们可以计算出在无存储情况下,改变生产水平而产生的成本如下: $600 × (20 + 10 + 20 + 10 + 20) = $48,000 另一方面,在固定生产水平的情况下,存储成本如下: $700 × (20 + 30 + 20 + 0) = $49,000 最低的成本决策可能是上面两个极端决策的某种结合。借助于 LP,我们可以找到成

3 本最低的决策。 4.2.1描述 定义下面的变量: P=第i期的生产量,i=1,2,3,4: I=第i期末的存储量,i=1,2,3,4: U=从第i-1期到i期生产水平的增加量,i=1,2,3,4: D=从第i-1期到i期生产水平的减少量,i=1,2,3,4。 变量P:是决策变量。利用变量I、U:和D,我们可以计算出每个时期的成本。 为了使得一年的成本达到最小,我们要将要使下面的成本之和(存储成本和生产变动 成本)达到最小: (存储成本) $7001+$700I2+$700I3+$700I4+ (生产水平变动成本)$600U1+$600U2+$600U3+$600U4+S600U5 +$600D1+$600D2+$600D3+$600D4+S600D5 为了将第4期结束后生产水平恢复到40个单位,我们增加了变量U5和D5。 4.2.2约束 在每一个多期问题中,对于每一种产品和每一个时期都会有“来源=使用”约束(物 质平衡约束)。这类约束用语言来说就是: 开始时的存储+生产量结束时的存储=需求量。具体写出来就是: P1-I1 =20 I1+P2-I2=30 2+P3-I3=50 I3+P4 =60 注意:4和1并没有在第一个约束和最后一个约束出现,这是因为在最初和结束时的 存储要求是零。 如果现在就求解上面的模型,没有什么东西可以迫使U1、D1等等大于0。这样,解答 只能是极端策略。也就是,P1=20,P=30,P3=50,P4=60。这一解答暗示在每个时期结束 的时候,产量都要增加(最后一个时期除外)。当生产量增加时,我们用下面的约束来迫 使U1、U2、U3和U4取相应的的值: U1=>P1-40 U2=>P2-P1 U3=>P3-P2 U4=>P4-P3 当产量下降时,我们给出4个类似的约束: D1=>40-P1

3 本最低的决策。 4.2.1 描述 定义下面的变量: Pi = 第 i 期的生产量,i = 1, 2, 3, 4; Ii = 第 i 期末的存储量,i = 1, 2, 3, 4; Ui = 从第 i – 1 期到 i 期生产水平的增加量,i = 1, 2, 3, 4; Di = 从第 i – 1 期到 i 期生产水平的减少量,i = 1, 2, 3, 4。 变量 Pi 是决策变量。利用变量 Ii、Ui 和 Di,我们可以计算出每个时期的成本。 为了使得一年的成本达到最小,我们要将要使下面的成本之和(存储成本和生产变动 成本)达到最小: (存储成本) $700 Il + $700 I2 + $700 I3 + $700 I4+ (生产水平变动成本)$600 U1 + $600U2 + $600 U3 + $600 U4 + $600 U5 + $600 D1 + $600 D2 + $600 D3 + $600 D4 + $600 D5. 为了将第 4 期结束后生产水平恢复到 40 个单位,我们增加了变量 U5 和 D5。 4.2.2 约束 在每一个多期问题中,对于每一种产品和每一个时期都会有“来源=使用”约束(物 质平衡约束)。这类约束用语言来说就是: 开始时的存储+生产量-结束时的存储=需求量。具体写出来就是: P1 – I1 =20 I1 + P2 –I2 =30 I2 + P3 –I3 =50 I3 + P4 =60 注意:I4 和 I0 并没有在第一个约束和最后一个约束出现,这是因为在最初和结束时的 存储要求是零。 如果现在就求解上面的模型,没有什么东西可以迫使 U1、D1 等等大于 0。这样,解答 只能是极端策略。也就是,P1 = 20, P2 = 30, P3 =50, P4 = 60。这一解答暗示在每个时期结束 的时候,产量都要增加(最后一个时期除外)。当生产量增加时,我们用下面的约束来迫 使 U1、U2、U3 和 U4 取相应的的值: U1=> P1 - 40 U2=> P2 - P1 U3=> P3 - P2 U4=> P4 - P3. 当产量下降时,我们给出 4 个类似的约束: D1=> 40 - P1

D2=>P1-P2 D3=>P2-P3 D4=>P3-P4 为了达到在冬季结束时的生产水平回到40个单位的目的,我们引进了变量U5和D5, 以测定最后一个时期结束时生产量的变化水平。U5和D应该满足下面的约束: U5=>40-P4 D5=>P4-40 在运行模型之前,我们可以将上面关于产量变化约束由10个减少到5个。我们观察 下面两个约束: U2=>P2-P1 D2=>P1-P2 可以用下面一个约束取代: U2-D2=P2-P1 这样做非常经济。上面公式的目的就是迫使:当PB-P1=>0时,U2=P2-P1:当P1-P2 =>0时,D2=P1-P2。从经济的角度来看,在最优解答中,D2和P2最多只有一个大于0。 这是因为如果它们两个都大于0,则可以同时减去一个常数,使得变量既满足约束,又使 目标成本有所下降。 下面就是完整的模型: MODEL: !Minimize存储+生产水平变动成本; MIN 700*工1+700*工2+700*工3 +700*工4 +600*01+600*02+600*03 +600*04 +600*D1+600*D2+600*D3+600*,D4 +600*05+600*D5; !生产及存储的初始条件: [CNDBI]I0 0; [CNDBP]PO 40; !初始存储+生产=需求+期末存储: [INV1]I0+P1=20+I1: [INV2] I1+P2=30+I2: [INV3]I2+P3=50+I3: [INV4]I3 P4 60+工4: !上变化量-下变化量=这一时期的产量-前一时期的产量; [cHG1】01-D1=P1-P0: [CHG2] 02-D2=P2-P1; [CHG3]03-D3=P3-P2: [CHG4]04-D4=P4-P3: [CHG5]05-D5=P5-P4; !结束条件: [CNDEI]I4 0;

4 D2=> P1 –P2 D3=> P2 –P3 D4=> P3 –P4. 为了达到在冬季结束时的生产水平回到 40 个单位的目的,我们引进了变量 U5和 D5, 以测定最后一个时期结束时生产量的变化水平。U5 和 D5 应该满足下面的约束: U5=> 40 – P4 D5=> P4 - 40 在运行模型之前,我们可以将上面关于产量变化约束由 10 个减少到 5 个。我们观察 下面两个约束: U2=> P2 – P1 D2=> P1 - P2 可以用下面一个约束取代: U2 - D2 = P2 - P1 这样做非常经济。上面公式的目的就是迫使:当 P2 - P1 => 0 时,U2 = P2 - P1;当 P1 - P2 => 0 时,D2 = P1 - P2。从经济的角度来看,在最优解答中,D2 和 P2 最多只有一个大于 0。 这是因为如果它们两个都大于 0,则可以同时减去一个常数,使得变量既满足约束,又使 目标成本有所下降。 下面就是完整的模型: MODEL: !Minimize 存储 + 生产水平变动成本; MIN = 700 * I1 + 700 * I2 + 700 * I3 + 700 * I4 + 600 * U1 + 600 * U2 + 600 * U3 + 600 * U4 + 600 * D1 + 600 * D2 + 600 * D3 + 600 * D4 + 600 * U5 + 600 * D5; !生产及存储的初始条件; [CNDBI] I0 = 0; [CNDBP] P0 = 40; !初始存储+生产=需求+期末存储; [INV1] I0 + P1 = 20 + I1; [INV2] I1 + P2 = 30 + I2; [INV3] I2 + P3 = 50 + I3; [INV4] I3 + P4 = 60 + I4; !上变化量-下变化量 = 这一时期的产量- 前一时期的产量; [CHG1] U1 - D1 = P1 - P0; [CHG2] U2 - D2 = P2 - P1; [CHG3] U3 - D3 = P3 - P2; [CHG4] U4 - D4 = P4 - P3; [CHG5] U5 - D5 = P5 - P4; !结束条件; [CNDEI] I4 = 0;

5 [CNDEP]P5 40; END 解答是: Global optimal solution found at step: 15 Objective value: 43000.00 Variable Value Reduced Cost I1 5.000000 0.0000000 I2 0.0000000 200.0000 I3 5.000000 0.0000000 I4 0.0000000 0.0000000 01 0.0000000 1200.000 U2 0.0000000 250.0000 U3 30.00000 0.0000000 04 0.0000000 250.0000 D1 15.00000 0.0000000 D2 0.0000000 950.0000 D3 0.0000000 1200.000 D4 0.0000000 950.0000 05 0.0000000 1200.000 D5 15.00000 0.0000000 I0 0.0000000 0.0000000 PO 40.00000 0.0000000 P1 25.00000 0.0000000 P2 25.00000 0.0000000 P3 55.00000 0.0000000 P4 55.00000 0.0000000 P5 40.00000 0.0000000 Row slack or Surplus Dual Price 1 43000.00 -1.000000 CNDBI 0.0000000 -950.0000 CNDBP 0.0000000 -600.0000 INV1 0.0000000 950.0000 INV2 0.0000000 250.0000 INV3 0.0000000 -250.0000 INV4 0.0000000 -950.0000 CHG1 0.0000000 600.0000 CHG2 0.0000000 -350.0000 CHG3 0.0000000 -600.0000 CHG4 0.0000000 -350.0000 CHG5 0.0000000 600.0000

5 [CNDEP] P5 = 40; END 解答是: Global optimal solution found at step: 15 Objective value: 43000.00 Variable Value Reduced Cost I1 5.000000 0.0000000 I2 0.0000000 200.0000 I3 5.000000 0.0000000 I4 0.0000000 0.0000000 U1 0.0000000 1200.000 U2 0.0000000 250.0000 U3 30.00000 0.0000000 U4 0.0000000 250.0000 D1 15.00000 0.0000000 D2 0.0000000 950.0000 D3 0.0000000 1200.000 D4 0.0000000 950.0000 U5 0.0000000 1200.000 D5 15.00000 0.0000000 I0 0.0000000 0.0000000 P0 40.00000 0.0000000 P1 25.00000 0.0000000 P2 25.00000 0.0000000 P3 55.00000 0.0000000 P4 55.00000 0.0000000 P5 40.00000 0.0000000 Row Slack or Surplus Dual Price 1 43000.00 -1.000000 CNDBI 0.0000000 -950.0000 CNDBP 0.0000000 -600.0000 INV1 0.0000000 950.0000 INV2 0.0000000 250.0000 INV3 0.0000000 -250.0000 INV4 0.0000000 -950.0000 CHG1 0.0000000 600.0000 CHG2 0.0000000 -350.0000 CHG3 0.0000000 -600.0000 CHG4 0.0000000 -350.0000 CHG5 0.0000000 600.0000

6 CNDEI 0.0000000 -1650.000 CNDEP 0.0000000 600.0000 我们的混合决策是: P1=P2=25: P3=P4=55. 由LP得到的混合决策相应的成本比最好的极端决策相应的成本还要少$5,000。 4.2.3用绝对值函数进行替换 你可以用下面的表达式替换模型中的产品变动成本: 600 *(@ABS(PI-P0)+@ABS(P2-Pl)+.+@ABS(P5-P4)); 这在数学上是可行的,但是并不是很聪明。这是因为,它将一个线性模型变成了一个 非线性模型。与线性模型相比,非线性模型求解起来总是要花更多的时间。为了将上面的 非线性表达式变成一个线性表达式,我们介绍下面的结论。只要满足一定的条件,下面的 替换就是等价的:对于 @ABS (expression) 只要我们增加下面的约束: U -D=expression; 就可以用“U+D”替换上面的表达式。 这里“一定的条件”是:对于@ABS(expression)的不同的值,模型倾向于选择较小的 值。结果是:如果“expression”是正数,则U将等于“expression'”的值:如果“expression” 是负数,则D将等于“expression”的值。 下面就是上面模型的集合版本: MODEL: sets: a/1.4/:I,X: !周期数为4,工为期末存储量,X为需求量: b/1.5/:U,D,P:!P为生产量,0和D分别为正、负偏差量; endsets data: X=20,30,50,60: enddata s=@size(a);!计算周期数: !生产及存储的初始条件: I0=0; P0=40: !生产及存储的结束条件: [CNDEI]I(s)=0; [CNDEP]P(s+1)=40; !Minimize(存储+生产水平变动成本); min=700*@sum(a:I)+600*@sum(b:U+D);

6 CNDEI 0.0000000 -1650.000 CNDEP 0.0000000 600.0000 我们的混合决策是: P1 = P2 = 25; P3 = P4= 55. 由 LP 得到的混合决策相应的成本比最好的极端决策相应的成本还要少$5,000。 4.2.3 用绝对值函数进行替换 你可以用下面的表达式替换模型中的产品变动成本: 600 *(@ABS( Pl – P0) + @ABS( P2 – Pl) + . +@ABS(P5 – P4)); 这在数学上是可行的,但是并不是很聪明。这是因为,它将一个线性模型变成了一个 非线性模型。与线性模型相比,非线性模型求解起来总是要花更多的时间。为了将上面的 非线性表达式变成一个线性表达式,我们介绍下面的结论。只要满足一定的条件,下面的 替换就是等价的:对于 @ABS (expression) 只要我们增加下面的约束: U - D = expression; 就可以用“U+D”替换上面的表达式。 这里“一定的条件”是:对于@ABS (expression)的不同的值,模型倾向于选择较小的 值。结果是:如果“expression”是正数,则 U 将等于“expression”的值;如果“expression” 是负数,则 D 将等于“expression”的值。 下面就是上面模型的集合版本: MODEL: sets: a/1.4/:I,X; !周期数为4,I为期末存储量,X为需求量; b/1.5/:U,D,P; !P为生产量,U和D分别为正、负偏差量; endsets data: X=20,30,50,60; enddata s=@size(a);!计算周期数; !生产及存储的初始条件; I0=0; P0=40; !生产及存储的结束条件; [CNDEI] I(s) = 0; [CNDEP] P(s+1) = 40; !Minimize (存储 + 生产水平变动成本); min=700*@sum(a:I)+600*@sum(b:U+D);

!初始存储+生产=需求+期末存储; [INV1] I0+p(1)=x(1)+I(1): @for(a(k)|k#gt#1: [INV] I(k-1)+p(k)=x(k)+I(k)): !上变化量-下变化量=这一时期的产量-前一时期的产量: [CHG1] 0(1)-D(1)=P(1)-P0; @for(b(k)|k#gt#1: [CHG] U(k)-D(k)=P(k)-P(k-1)); END 4.3案例及参考解答 4-1.东京Izza钢铁公司预计未来4个周期将分别有3,000、6,000、5,000和2000吨钢材的 订单需求。现在每期的生产水平是4000吨。一开始有500吨的库存,z2a公司希望结束时的 库存水平也是500吨。正常时间生产每吨钢材的劳动力成本是$100。无论何时,加班生产 每吨钢材的劳动力成本是$140。如果从一个时期到下一个时期正常时间劳动力的规模有所 变化,每增加一吨生产能力的成本是$300,而每减少一吨生产能力节省的成本是$80。对 于每期期末库存量每吨收取$5的管理费用。Izz公司希望在4个周期结束的时候,正常时间 劳动力水平维持在3000吨的水平。 a)建立Izza问题的线性规划模型。 b)对于闲置的劳动力,你有什么设想? 参考解答: a Model: !Minimize生产成本+生产水平变动成本+库存成本; MIN=100*P1+40*U1+100*P2+40*02+100*P3+40*03+100*P4+40*04 +100*P5+40*05!生产成本: +300*U1+300*U2+300*U3+300*U4+300*U5!增加生产能力成本: +80*D1+80*D2+80*D3+80*D4+80*D5!减少生产能力成本; +5*I1+5*I2+5*I3+5*I4!库存成本; I0=500;!初始库存量: I4=500;1结束库存量: P0=4000;1初始生产能力: P5=3000:!结束生产能力: !初始存储+生产=需求+期末存储: !周期1;I0+P1=3000+I1;!周期2;I1+P2=6000+I2: !周期3;I2+P3=5000+I3:!周期4;I3+P4=2000+I4: !上变化量-下变化量=这一时期的产量-前一时期的产量: !期初1;U1-D1=P1-P0;!期初2;U2-D2=P2-P1;

7 !初始存储+生产=需求+期末存储; [INV1] I0+p(1)=x(1)+I(1); @for(a(k)|k#gt#1: [INV] I(k-1)+p(k)=x(k)+I(k) ); !上变化量-下变化量 = 这一时期的产量- 前一时期的产量; [CHG1] U(1)-D(1)=P(1)-P0; @for(b(k)|k#gt#1: [CHG] U(k)-D(k)=P(k)-P(k-1) ); END 4.3 案例及参考解答 4-1. 东京Izza钢铁公司预计未来4个周期将分别有3,000、6,000、5,000和2000吨钢材的 订单需求。现在每期的生产水平是4000吨。一开始有500吨的库存,Izza公司希望结束时的 库存水平也是500吨。正常时间生产每吨钢材的劳动力成本是$100。无论何时,加班生产 每吨钢材的劳动力成本是$140。如果从一个时期到下一个时期正常时间劳动力的规模有所 变化,每增加一吨生产能力的成本是$300,而每减少一吨生产能力节省的成本是$80。对 于每期期末库存量每吨收取$5的管理费用。Izza公司希望在4个周期结束的时候,正常时间 劳动力水平维持在3000吨的水平。 a) 建立Izza问题的线性规划模型。 b) 对于闲置的劳动力,你有什么设想? 参考解答: a) Model: !Minimize 生产成本+生产水平变动成本+库存成本; MIN =100*P1+40*U1+100*P2+40*U2+100*P3+40*U3+100*P4+40*U4 +100*P5+40*U5!生产成本; +300*U1+300*U2+300*U3+300*U4+300*U5!增加生产能力成本; +80*D1+80*D2+80*D3+80*D4+80*D5!减少生产能力成本; +5*I1+5*I2+5*I3+5*I4!库存成本; ; I0 = 500; !初始库存量; I4 = 500; !结束库存量; P0 = 4000;!初始生产能力; P5 = 3000;!结束生产能力; !初始存储+生产=需求+期末存储; !周期1; I0 + P1 = 3000 + I1;!周期2; I1 + P2 = 6000 + I2; !周期3; I2 + P3 = 5000 + I3;!周期4; I3 + P4 = 2000 + I4; !上变化量-下变化量 = 这一时期的产量 - 前一时期的产量; !期初1; U1 - D1 = P1 - P0;!期初2; U2 - D2 = P2 - P1;

8 !期初3:U3-D3=P3-P2;!期初4;04-D4=P4-P3: !期末4;U5-D5=P5-P4: End b)解答: Variable Value Reduced Cost P1 4500.000 0.0000000 P2 4500.000 0.0000000 P3 4500.000 0.0000000 P4 2500.000 0.0000000 P5 3000.000 0.0000000 最后一期闲置的劳动力产量提高了500吨,主要是为了满足未来生产的需要。 4-2.一家航空公司预计在未来的5个季度里对飞行员的需求人数是:80、90、110、120、 110。现在有90名飞行员。主要的问题是在未来5个季节里要租用多少飞行员?租用的飞行 员一定要经过一个季节的培训才可以执行飞行任务。公司的培训设备有限,一次最多只能 同时培训15名飞行员。而且,培训飞行员还需要有经验的飞行员进行指导。指导的比例是 51(例如,培训5个飞行员就要一个有经验的飞行员进行指导)。一个被指派担任培训的飞 行员就不能再担任日常的飞行任务。租用和培训一名飞行员的成本估计是$20,000,这不包 括对飞行员的指导费用。一名有经验的飞行员每季度的工资是$25,000。公司的这项政策不 适用于租用的飞行员。 a)什么是决策变量? b)建立一个模型来决定每个季度租用多少飞行员。 参考解答: )租用和培训飞行员的人数(用c表示)是决策变量。 b) Model: sets: a/1.5/:×,c,z,r:!x表示需求,c表示租用人数,z表示指导人数,x表示可用人数: endsets data: X= 8090110120110: enddata @for(a:@gin(c));@for(a:@gin(z)); R(1)=90-z(1):R(1)>x(1): !第1季度: R(2)=90+C(1)-z(2):R(2)>x(2): !第2季度; R(3)=90+c(1)+c(2)-z(3):R(3)>x(3); !第3季度; R(4)=90+c(1)+c(2)+c(3)-z(4):R(4)>x(4): !第4季度; R(5)=90+c(1)+c(2)+c(3)+c(4);R(5)>x(5); !第5季度: @for(a:c<5*z);

8 !期初3; U3 - D3 = P3 - P2;!期初4; U4 - D4 = P4 - P3; !期末4; U5 - D5 = P5 - P4; End b) 解答: Variable Value Reduced Cost P1 4500.000 0.0000000 P2 4500.000 0.0000000 P3 4500.000 0.0000000 P4 2500.000 0.0000000 P5 3000.000 0.0000000 最后一期闲置的劳动力产量提高了500吨,主要是为了满足未来生产的需要。 4-2. 一家航空公司预计在未来的5个季度里对飞行员的需求人数是:80、90、110、120、 110。现在有90名飞行员。主要的问题是在未来5个季节里要租用多少飞行员?租用的飞行 员一定要经过一个季节的培训才可以执行飞行任务。公司的培训设备有限,一次最多只能 同时培训15名飞行员。而且,培训飞行员还需要有经验的飞行员进行指导。指导的比例是 5/1(例如,培训5个飞行员就要一个有经验的飞行员进行指导)。一个被指派担任培训的飞 行员就不能再担任日常的飞行任务。租用和培训一名飞行员的成本估计是$20,000,这不包 括对飞行员的指导费用。一名有经验的飞行员每季度的工资是$25,000。公司的这项政策不 适用于租用的飞行员。 a) 什么是决策变量? b) 建立一个模型来决定每个季度租用多少飞行员。 参考解答: a) 租用和培训飞行员的人数(用c表示)是决策变量。 b) Model: sets: a/1.5/:x,c,z,r;!x表示需求,c表示租用人数,z表示指导人数,r表示可用人数; endsets data: x= 80 90 110 120 110; enddata @for(a:@gin(c));@for(a:@gin(z)); R(1)=90-z(1);R(1)>x(1); !第1季度; R(2)=90+c(1)-z(2);R(2)>x(2); !第2季度; R(3)=90+c(1)+c(2)-z(3);R(3)>x(3); !第3季度; R(4)=90+c(1)+c(2)+c(3)-z(4);R(4)>x(4); !第4季度; R(5)=90+c(1)+c(2)+c(3)+c(4);R(5)>x(5); !第5季度; @for(a:c<5*z);

9 @for(a:c<15); min=90*2500*5+@sum(a(i):2000*(5-1+1)*c(i)) +500*@sum(a:z): End 解答: Objective value: 1366500. Variable Value Reduced Cost c(1) 7.000000 10000.00 c(2) 15.00000 8000.000 C(3) 8.000000 6000.000 c(4) 0.0000000 4000.000 c(5) 0.0000000 2000.000 4-3.Toute de Suite糖果公司可以用它的生产线生产各种不同坚果含量的糖果。Chalet 就是其中的一种,其坚果的含量是:花生不能超过25%,杏仁必须超过40%。 这个月,它们可使用的坚果的价格和数量如下: 坚果 价格(分币磅) 可用量(磅) 花生 20 400 胡桃 35 无限制 杏仁 50 200 每磅Chalet的售价是80分币,在问题(a)、(b)和(c),中,生产线每月最多能生产700磅的 产品。 a)建立这个问题的模型。 b)Toute de Suite公司现在要将第二个主要产品Hovel投入生产。Hovelf的成分要求是: 花生不能超过60%,杏仁必须超过20%。每磅Hovl的售价是40分币。适当地修改模型以适 应新的情况。 c)Toute de Suite公司现在要考虑下个月的需求。下个月的情况是: 坚果 价格(分币磅) 番求(可用量)(磅) 花生 19. 500 胡桃 36 无限制 杏仁 52 180 Chalet 81 Hovel 39 每磅坚果存贮一个月需要2分币的成本(原料或混合物)。根据合同规定,下个月至少要 销售200磅的Chalet。适当地修改模型以适应新的情况。 参考解答: a) Model:

9 @for(a:c<15); min=90*2500*5+@sum(a(i):2000*(5-i+1)*c(i)) +500*@sum(a:z); End 解答: Objective value: 1366500. Variable Value Reduced Cost C( 1) 7.000000 10000.00 C( 2) 15.00000 8000.000 C( 3) 8.000000 6000.000 C( 4) 0.0000000 4000.000 C( 5) 0.0000000 2000.000 4-3. Toute de Suite糖果公司可以用它的生产线生产各种不同坚果含量的糖果。Chalet 就是其中的一种,其坚果的含量是:花生不能超过25%,杏仁必须超过40%。 这个月,它们可使用的坚果的价格和数量如下: 坚果 价格(分币/磅) 可用量(磅) 花生 20 400 胡桃 35 无限制 杏仁 50 200 每磅Chalet的售价是80分币,在问题(a)、(b)和(c).中,生产线每月最多能生产700磅的 产品。 a) 建立这个问题的模型。 b) Toute de Suite公司现在要将第二个主要产品Hovel投入生产。Hovel的成分要求是: 花生不能超过60%,杏仁必须超过20%。每磅Hovel的售价是40分币。适当地修改模型以适 应新的情况。 c) Toute de Suite公司现在要考虑下个月的需求。下个月的情况是: 坚果 价格(分币/磅) 需求(可用量)(磅) 花生 19. 500 胡桃 36 无限制 杏仁 52 180 Chalet 81 Hovel 39 每磅坚果存贮一个月需要2分币的成本(原料或混合物)。根据合同规定,下个月至少要 销售200磅的Chalet。适当地修改模型以适应新的情况。 参考解答: a) Model:

10 !设x1,x2,x3分别表示花生,胡桃和杏仁的数量: !质量约束; x10.40*(x1+x2+x3): !数量约束: x10.40*(x1+x2+×3): y10.20*(y1+y2+y3): !数量约束; x1+y1<400: x3+y3<200: x1+x2+x3+y1+y2+y3<700: !目标函数; max= 80*(x1+x2+x3)-(20*x1+35*×2+50*x3)+ 40*(y1+y2+y3)-(20*y1+35*y2+50*y3): End 解答: Objective value: 21375.00 Variable Value Reduced Cost X1 125.0000 0.0000000

10 !设x1,x2,x3分别表示花生,胡桃和杏仁的数量; !质量约束; x10.40*(x1+x2+x3); !数量约束; x10.40*(x1+x2+x3); y10.20*(y1+y2+y3); !数量约束; x1+y1<400; x3+y3<200; x1+x2+x3+y1+y2+y3<700; !目标函数; max= 80*(x1+x2+x3)-(20*x1+35*x2+50*x3)+ 40*(y1+y2+y3)-(20*y1+35*y2+50*y3); End 解答: Objective value: 21375.00 Variable Value Reduced Cost X1 125.0000 0.0000000

共15页,试读已结束,阅读完整版请下载
刷新页面下载完整文档
VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
相关文档