运筹学 整数规划案例
- 格式:ppt
- 大小:212.00 KB
- 文档页数:19
第六章整数规划6.1 用图形将一下列线性规划问题的可行域转换为纯整数问题的可行域(在图上用“×”标出)。
1、 max z=3x1+2x2S.T. 2x1+3x2≤122x1+x2≤9x1、x2≥0解:2、 min f=10x1+9x2S.T. 5x1+3x2≥45x1≥8x2≤10x1、x2≥06.2 求解下列整数规划问题1、 min f=4x1+3x2+2x3S.T. 2x1-5x2+3x3≤44x1+x2+3x3≥3x2+x3≥1x1、x2、x3=0或1解:最优解(0,0,1),最优值:22、 min f=2x1+5x2+3x3+4x3S.T. -4x1+x2+x3+x4≥2-2x1+4x2+2x2+4x2≥4x1+x2-x2+x2≥3x1、x2、x3、x3=0或1解:此模型没有可行解。
3、max Z=2x1+3x2+5x3+6x4S.T. 5x1+3x2+3x3+x4≤302x1+5x2-x2+3x2≤20-x1+3x2+5x2+3x2≤403x1-x2+3x2+5x2≤25x1、x2、x3、x3=正整数解:最优解(0,3,4,3),最优值:474、min z =8x1 +4 x2+3 x3+5 x4+2 x5+3 x6+4 x7+3 x8+4 x9+9 x10+7 x11+5 x12 +10 x13+4 x14+2 x15+175 x16+300 x17+375 x18 +500 x19约束条件x1 + x2+x3≤30x4+ x5+x6-10 x16≤0x7+ x8+x9-20 x17≤0x10+ x11+x12-30 x18≤0x13+ x14+x15-40 x19≤0x1 + x4+ x7+x10+ x13=30x2 + x5+ x8+x11+ x14=20x3 + x6+ x9+x12+ x15=20x i为非负数(i=1,2…..8)x i为非负整数(i=9,10…..15)x i为为0-1变量(i=16,17…..19)解:最优解(30,0,0,0,0,0,0,0,0,0,0,0,0,20,20,0,0,0,1),最优值:8606.3 一餐饮企业准备在全市范围内扩展业务,将从已拟定的14个点中确定8个点建立分店,由于地理位置、环境条件不同,建每个分店所用的费用将有所不同,现拟定的14个店的费用情况如下表:公司办公会决定选择原则如下:(1)B5、B3和B7只能选择一个。
实验六、用EXCEL 求解整数规划用单纯形法求解线性规划问题,最优解可能是整数,也可能不是整数,但在很多实际问题中,要求全部或部分变量的取值必须是整数,如所求的解是安排上班的人数,按某个方案裁剪钢材的根数,生产设备的台数等等。
对于整数解的线性规划问题,不是用四舍五入或去尾法对线性规划的非整数解加以处理都能解决的,而要用整数规划的方法加以解决,如分枝定界法和割平面算法。
这些算法比单纯形法更为复杂,因此,一般的学习者要想掌握整数规划的数学算法有一定的困难。
然而事实上,由于Excel 的[工具][规划求解]可以求解整数规划问题,所以,对于一个真正有志于运用运筹学方法解决生产经营中问题的管理者来说,算法将不是障碍因素。
一、实验目的1、 掌握如何建立整数线性规划模型,特别是0~1逻辑变量在模型中的应用。
2、 掌握用Excel 求解整数线性规划模型的方法。
3、 掌握如何借助于Excel 对整数线性规划模型进行灵敏度分析,以判断各种可能的变化对最优方案产生的影响。
4、 读懂Excel 求解整数线性规划问题输出的运算结果报告和敏感性报告。
二、 实验内容1、 整数规划问题模型该问题来自于《运筹学基础及应用》(第四版)胡运权主编P126习题4.13,题目如下: 需生产2000件某种产品,该种产品可利用A 、B 、C 、D 设备中的任意一种加工,已知每种设备的生产准备结束费用、生产该产品时的单件成本以及每种设备限定的最大加工数量(件)如表1所示,问企业应该如何安排设备生产该产品才能使得总的生产成本最少,试建立该问题的数学模型并求解。
该产品可以利用四种不同的设备加工,由于采用不同的设备加工需要支付不同的准备结束费用,而如果不采用某种设备加工,是不需要支付使用该设备的准备结束费用的,所以必须借助于逻辑变量来鉴定准备结束费用的支付。
再设,种设备加工的产品数量为利用第设;4,3,2,1=j j x j⎪⎩⎪⎨⎧=>=)种设备生产(即,若不使用第)种设备生产(即若使用第000,1j j i x j x j y 4,3,2,1=j则问题的整数规划模型为:43214321281624207008009801000min x x x x y y y y z +++++++=⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧==≥≤≤≤≤=+++4,3,2,110,01600120010009002000..443322114321j y x y x y x y x y x x x x x t s j j,或2、 [工具][规划求解]命令求解下面我们用Excel 中的[工具][规划求解]对该问题进行求解。
2018-2019学年第一学期《运筹学》实验报告(四)班级:交通运输171学号: 1000000000姓名: *****日期: 2018.11.22实验一:用Lingo 软件求解下列整数规划问题(要求附程序和结果)12121212max 25062210,1,2i z x x x x x x x x x i =++≤⎧⎪-+≤⎪⎨+≤⎪⎪≥=⎩且取整数12312323123123123max 232452244,,01z x x x x x x x x x x x x x x x x x =+-++≤⎧⎪+≤⎪⎪+-≤⎨⎪+-≤⎪=⎪⎩或解:例题(左)解题程序及运行结果如下:sets :bliang/1,2/:x,a; yshu/1,2,3/:b;xshu(yshu,bliang):c; endsets data : a=2,1; b=5,0,21; c=1,1 -1,1 6,2; enddatamax =@sum (bliang(i):a(i)*x(i));@for (yshu(j):@sum (bliang(i):x(i)*c(j,i))<=b(j)); @for(bliang(i):@gin(x(i)));Global optimal solution found.Objective value: 7.000000 Objective bound: 7.000000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0Variable Value Reduced CostX( 1) 3.000000 -2.000000X( 2) 1.000000 -1.000000A( 1) 2.000000 0.000000A( 2) 1.000000 0.000000B( 1) 5.000000 0.000000B( 2) 0.000000 0.000000B( 3) 21.00000 0.000000C( 1, 1) 1.000000 0.000000C( 1, 2) 1.000000 0.000000C( 2, 1) -1.000000 0.000000C( 2, 2) 1.000000 0.000000C( 3, 1) 6.000000 0.000000C( 3, 2) 2.000000 0.000000Row Slack or Surplus Dual Price1 7.0000001.0000002 1.000000 0.0000003 2.000000 0.0000004 1.000000 0.000000例题(右)解题程序及运行结果如下:sets:bliang/1,2,3/:x,a;yshu/1,2,3,4/:b;xshu(yshu,bliang):c;endsetsdata:a=2,1,-1;b=2,5,2,4;c=1,3,10,4,11,2,-11,4,-1;enddatamax=@sum(bliang(i):a(i)*x(i));@for(yshu(j):@sum(bliang(i):x(i)*c(j,i))<=b(j));@for(bliang(i):@bin(x(i)));Global optimal solution found.Objective value: 2.000000Objective bound: 2.000000Infeasibilities: 0.000000Extended solver steps: 0Total solver iterations: 0Variable Value ReducedCostX( 1) 1.000000 -2.000000X( 2) 0.000000 -1.000000X( 3) 0.000000 1.000000A( 1) 2.000000 0.000000A( 2) 1.000000 0.000000A( 3) -1.000000 0.000000B( 1) 2.000000 0.000000B( 2) 5.000000 0.000000B( 3) 2.0000000.000000B( 4) 4.000000 0.000000C( 1, 1) 1.000000 0.000000C( 1, 2) 3.000000 0.000000C( 1, 3) 1.000000 0.000000C( 2, 1) 0.000000 0.000000C( 2, 2) 4.000000 0.000000C( 2, 3) 1.000000 0.000000C( 3, 1) 1.000000 0.000000C( 3, 2) 2.000000 0.000000C( 3, 3) -1.000000 0.000000C( 4, 1) 1.000000 0.000000C( 4, 2) 4.000000 0.000000C( 4, 3) -1.000000 0.000000Row Slack or Surplus Dual Price1 2.0000001.0000002 1.000000 0.0000003 5.000000 0.0000004 1.000000 0.0000005 3.000000 0.000000实验二:一、问题重述某学校规定,运筹学专业的学生毕业时必须至少学习过两门数学课、三门运筹学课和两门计算机课。