应用LINDO软件求解整数规划
- 格式:doc
- 大小:90.50 KB
- 文档页数:7
运用Lindo 与Lingo 解规划问题【实验目的】1.了解Lindo 与Lingo 的基本使用方法。
2.熟悉掌握运用Lindo 与Lingo 求解规划问题。
【实验内容】(一) 运用Lindo 求解规划问题Lindo 示例1:线性规划问题1212121127264..5012848031000,0Max z x x s t x x x x x x x =++≤+≤≤≥≥在Lindo 环境下,打开一个新文件,直接输入: max 72x1+64x2 st2) x1+x2<50 3) 12x1+8x2<480 4) 3x1<100 end说明: ①第1行是目标函数,2),3),4)是为了标示各约束条件,便于从输出结果中查找相应信息.②每行行尾不用标点符号,程序最后以"end"结束. ③Lindo 中已规定所有决策变量均为非负.④乘号省略,式中不能有括号,右端不能有数学符号. ⑤符号,≤≥与<,>等效. Lindo 示例2:整数规划问题123123123123123234..1.535600280250400600000,0,0,,Max z x x x s t x x x x x x x x x x x x =++++≤++≤≥≥≥均为整数对应的程序是:max 2x1+3x2+4x3 st1.5x1+3x2+5x3<600 280x1+250x2+400x3<60000 end gin 3说明: 最后一行 "gin 3"是说明"3个变量均为整数". Lindo 示例3:0-1变量规划问题123123123111222333123123234..1.53560028025040060000801000801000801000,,,,Max z x x x s t x x x x x x y x y y x y y x y x x x y y y =++++≤++≤≤≤≤≤≤≤均为整数均为0-1变量对应的程序是:max 2x1+3x2+4x3st1.5x1+3x2+5x3<600 280x1+250x2+400x3<60000 x1-1000y1<0 x1-80y1>0 x2-1000y2<0 x2-80y2>0 x3-1000y3<0 x3-80y3>0 end gin 3 int y1 int y2 int y3说明: 最后3行是说明"123,,y y y 均为0-1变量". (二) 运用Lingo 求解规划问题Lingo 示例:非线性规划问题11211222123111221221121122212312231234.8() 5.6()(1086)..5001000015000.50.500.40.60(500)0(500)00,,500Max z x x x x x x x s t x x x x x x x x x x x x x x x x x x x x x =+++-+++≤++≤≤≤-≥-≥=++-=-=≤≤在Lingo 环境下,打开一个新文件,直接输入: Model:max=4.8*x11+4.8*x21+5.6*x12+5.6*x22-10*x1-8*x2-6*x3; x11+x12<x+500; x21+x22<1000; 0.5*x11-0.5*x21>0; 0.4*x12-0.6*x22>0; x=x1+x2+x3; (x1-500)*x2=0; (x2-500)*x3=0; x1<500; x2<500; x3<500; end说明: ①程序以"Model:"开始,每行最后加";",并以"end "结束.②乘号*不能省略,符号,≤≥与<,>等效. ③式中可有括号,右端可有数学符号. ④Lingo 中已规定所有决策变量均为非负.作业1: 用Lingo 或Lindo 软件求6.4中提出的线性规划模型. 作业2:用Lingo 软件求非线性规划模型123123123123112233234..1.53560028025040060000,,(80)0(80)0(80)0.Max z x x x s t x x x x x x x x x x x x x x x =++++≤++≤≥-≥-≥-≥0作业3:分别用Lindo 或Lingo 软件对下题进行求解某广告公司想在电视、广播上做宣传广告,其目的是争(1)受广告影响的女顾客数超过200万;(2)电视广告的费用不超过45万元;(3)电视广告白天至少播出4次,最佳时段至少播出2次;(4)通过网络媒体、杂志做广告各自要重复5到8次。
LINDO软件求线性规划、整数规划和0-1规划LINDO软件简介/求解线性规划问题LINDO是⼀种专门⽤于求解数学规划问题的软件包。
由于LINDO执⾏速度很快、易于⽅便输⼊、求解和分析数学规划问题。
因此在数学、科研和⼯业界得到⼴泛应⽤。
LINDO/GO主要⽤于解线性规划、⾮线性规划、⼆次规划和整数规划等问题。
也可以⽤于⼀些⾮线性和线性⽅程组的求解以及代数⽅程求根等。
LINDO/GO中包含了⼀种建模语⾔和许多常⽤的数学函数(包括⼤量概论函数),可供使⽤者建⽴规划问题时调⽤。
⼀般⽤LINDO(Linear Interactive and Discrete Optimizer)解决线性规划(LP—Linear Programming)。
整数规划(IP—Integer Programming)问题。
其中LINDO 6 .1 学⽣版⾄多可求解多达300个变量和150个约束的规划问题。
其正式版(标准版)则可求解的变量和约束在1量级以上。
LINGO则⽤于求解⾮线性规划(NLP—NON—LINEAR PROGRAMMING)和⼆次规则(QP—QUARATIC PROGRAMING)其中LINGO 6.0学⽣版最多可版最多达300个变量和150个约束的规则问题,其标准版的求解能⼒亦在10^4量级以上。
虽然LINDO和LINGO 不能直接求解⽬标规划问题,但⽤序贯式算法可分解成⼀个个LINDO和LINGO能解决的规划问题。
要学好⽤这两个软件最好的办法就是学习他们⾃带的HELP⽂件。
下⾯拟举数例以说明这两个软件的最基本⽤法。
(例⼦均选⾃张莹《运筹学基础》)例1.(选⾃《运筹学基础》P54.汽油混合问题,线性规划问题)⼀种汽油的特性可⽤两个指标描述:其点⽕性⽤“⾟烷数”描述,其挥发性⽤“蒸汽压⼒”描述。
某炼油⼚有四种标准汽油,设其标号分别为1,2,3,4,其特性及库存量列于下表1中,将上述标准汽油适量混合,可得两种飞机汽油,某标号为1,2,这两种飞机汽油的性能指标及产量需求列于表2中。
lindoapi数学软件介绍LINDO是一种专门用于求解数学规划问题的软件包。
由于LINDO执行速度很快、易于方便输入、求解和分析数学规划问题。
因此在数学、科研和工业界得到广泛应用。
LINDO主要用于解线性规划、非线性规划、二次规划和整数规划等问题。
也可以用于一些非线性和线性方程组的求解以及代数方程求根等。
LINDO中包含了一种建模语言和许多常用的数学函数(包括大量概论函数),可供使用者建立规划问题时调用。
LINDO 6.1是求解线性、整数和二个规划问题的多功能工具。
LINDO6.1互动的环境可以让你容易得建立和求解最佳化问题,或者你可以将LINDO的最佳化引擎挂在您己开发的程序内。
而另一方面,LINDO也可以用来解决一些复杂的二次线性整数规划方面的实际问题。
如在大型的机器上,LINDO被用来解决一些拥有超过50,000各约束条件和200,000万个变量的大规模复杂问题LINGO则用于求解非线性规划(NLP—NON—LINEAR PROGRAMMING)和二次规则(QP—QUARATICPROGRAMING)其中LINGO6.0学生版最多可版最多达300个变量和150个约束的规则问题,其标准版的求解能力亦再10^4量级以上。
虽然LINDO 和LINGO不能直接求解目标规划问题,但用序贯式算法可分解成一个个LINDO和LINGO能解决的规划问题。
什么是LINDO在这里有必要先让大家知道什么是运筹学。
运筹学是近四十年来发展起来的一门新兴学科。
它的目的是为行政管理人员在作决策时提供科学的依据。
因此,它是实现管理现代化的有力工具。
运筹学在生产管理、工程技术、军事作战、科学试验、财政经济以及社会科学中都得到了极为广泛的应用。
讲到这里,你已经被运筹学深深吸引了吧,至于你会怎么去学不是我们讨论的问题,在这里我们只说学运筹学要用到的工具。
应用运筹学去处理问题有两个重要特征:一是从全局的观点出发;二是通过建立模型如数学模型或模拟模型,对于要求解的问题得到最合理的决策。
Lindo 和Lingo 数学软件的简单使用方法一、Lindo最新版本:6.1版(注册版)限制:4000个约束、8000个变量、800个整型变量功能:可以求解线性规划、整数规划、混合整数规划、二次规划、目标规划。
我们主要用它来求解整数规划或混合整数规划。
特点:执行速度非常快 例1:求解整数规划问题12121212max 58..65945,0z x x s t x x x x x x =++≤+≤≥且整解:在lindo 的运行窗口中输入 max 5x1+8x2 stx1+x2<6 5x1+9x2<45 end gin 2然后按Solve 菜单或快捷键得运行结果。
OBJECTIVE FUNCTION V ALUE (目标函数最优值) 1) 40.00000VARIABLE V ALUE REDUCED COST (变量增加1时目标函数改变量) X1 0.000000 -5.000000 X2 5.000000 -8.000000ROW SLACK OR SURPLUS DUAL PRICES (行) (松弛变量值) (对偶价格,表示约束右边常数增加1时目标函数改变量)) 2) 1.000000 0.000000 3) 0.000000 0.000000RANGES IN WHICH THE BASIS IS UNCHANGED (灵敏度分析) OBJ COEFFICIENT RANGES (目标函数中变量的系数的变动范围,在此范围内最优解不变) V ARIABLE CURRENT ALLOWABLE ALLOWABLECOEF (当前系数) INCREASE (增加量) DECREASE (减少量) X1 5.000000 0.000000 INFINITY X2 8.000000 0.000000 INFINITYRIGHTHAND SIDE RANGES (约束条件右边常数的变化范围,在此范围内最优基不变) ROW CURRENT ALLOWABLE ALLOWABLERHS (当前系数)INCREASE (增加量) DECREASE (减少量) 2 6.000000 INFINITY 1.000000 (第一个约束) 3 45.000000 INFINITY 0.000000 (第二个约束)注意:1. 软件中已经假设所以的变量是非负的,所以非负约束不必输入; 2. 可以用 FREE 变量 来取消变量的非负限制; 3. 不区分大小写; 4. 约束条件“<=”、“>=”可以用“<”、“>”代替; 5. 变量名不能超过8个字符;6. 变量与系数间可以有空格,但不能有任何运算符号(如*等); 7. 不允许变量出现在一个约束条件的右端; 8. 输入中不能有“()”和“,”;比如4(x1+x2)应写成4x1+4x2等;9. 在一个式中同一变量不能出现一次以上,比如2x1+3x2-x1应简化为x1+3x2;gin 变量 变量为整数变量 gin nint n 模型中的前n 个变量为0/1整数变量,关于变量的顺序可由输出结果查证! 整数变量申明须放在最后(即end 后)例2:集合覆盖问题设有一集合S={1,2,3,4,5},及S 的一个子集簇P={{1,2},{1,3,5},{2,4,5},{3},{1},{4,5}},假设选择P 中各个元素的费用为1、1.5、1.5、0.8、0.8、1,试从P 中选一些元素使之覆盖S 且所选元素费用之和最小。
Lindo软件求解管理领域中的各种问题实验总结一、引言Lindo软件是一款经典的数学规划软件,广泛应用于管理领域中的各种问题的求解。
本文将以Lindo软件为工具,对管理领域中的各种问题进行实验,并总结实验结果和经验教训。
二、线性规划问题求解2.1 问题描述线性规划是管理领域中常见的一种问题求解方法,其目标是寻找一组决策变量的最优值,使得目标函数达到最大或最小值,同时满足一系列线性约束条件。
2.2 实验步骤1.定义决策变量:根据问题的需求和约束条件,定义相关的决策变量。
2.构建目标函数和约束条件:根据问题的目标和约束条件,构建数学模型。
3.输入模型:使用Lindo软件将模型输入到软件中进行求解。
4.分析结果:分析Lindo软件求解的结果,得出最优解和相应的决策变量取值。
5.可行性分析:对结果进行可行性分析,判断解的合理性和可行性。
2.3 实验总结•Lindo软件可以高效地求解线性规划问题,快速得出最优解。
•在构建模型时,需要确保目标函数和约束条件的准确性和合理性。
•对结果进行可行性分析时,需要结合实际情况进行合理判断。
三、整数规划问题求解3.1 问题描述整数规划是线性规划的一种扩展,其决策变量取值限定为整数。
在管理领域中,很多问题需要求解整数规划模型,例如生产调度问题、旅行商问题等。
3.2 实验步骤1.定义决策变量:根据问题的需求和约束条件,定义相关的决策变量,并确定变量的取值范围为整数。
2.构建目标函数和约束条件:根据问题的目标和约束条件,构建整数规划模型。
3.输入模型:使用Lindo软件将整数规划模型输入到软件中进行求解。
4.分析结果:分析Lindo软件求解的结果,得出最优解和相应的决策变量取值。
5.灵敏度分析:对结果进行灵敏度分析,了解目标函数系数和约束条件的变化对结果的影响。
3.3 实验总结•在求解整数规划问题时,需要确定决策变量的取值范围为整数,以确保结果的可行性和合理性。
•Lindo软件在求解整数规划问题时需要更多的计算资源和时间,但仍能得到较好的求解效果。
运用Lindo求解整数规划问题
实验名称:整数规划问题的Lindo建模和求解
实验目的:运用Lindo求解整数规划问题
实验内容: 求解如下的整数规划问题: max y = 1.93x1+1.91x2+1.87x3+1.86x4+1.80x5+1.85x6 约束条件如下: x1+x2+x3+x4+x5+x6=3 x5+x6>=1 x2+x5<=1 x1+x2<=1 x2+x6<=1 x4+x6<=1 所有变量均为0-1变量[试验步骤]:
1.建模打开lindo并输入模型, 如图
2..1所示;lindo规定xi 是非负的,所以输入方式与文本
形式基本一致.
图2.1 建模
2.依次单击"Solve"→"Solve",进行求解
图2.2 求解
3.输出结果
图2.3 结果报告框
注意事项: 需要指定变量为0-1整数变量,用"integer 变量名称",如图2.1所示, 或integer n (n 指前n 个变量标识为0-1整数); 解混合型整数规划则用GIN 来标识.整数。
LINDO软件包(学生版) 使用手册目录第一节简介与安装第二节用LINDO求解线性规划(LP) 问题第三节用LINDO求解整数规划(IP) 和二次规划(QP) 问题第一节简介与安装1·1简介本文主要面向大中专学生, 研究生, 及掌握一定的高等代数知识的读者,介绍LINDO软件包(学生版)的基本使用方法。
该软件包(学生版)主要功能在于帮助使用者较快地输入一个优化问题的式子, 求解并分析该优化问题, 然后可做些较小的改动, 并重复上述的过程.该软件包(学生版)在微机上DOS环境下运行。
其使用界面不是图形式的,而是字符式的;不是菜单式的, 而是面向具体的命令(Command). 它有许多的命令, 每一个命令都可随时执行, 由系统检查该命令是否在上下文中起作用. 它采用一种对用户友好的交互使用方式, 包括了所有的使用过程指导. 基于使用的具体情况, 它会向使用者询问下一步将做什么, 或等待使用者输入下一个命令.LINDO软件包(学生版)包括LINDO,GINO,LINGO和LINGO NL(LINGO2)等优化软件的学生版以及相应的例子文件。
由于LINDO程序执行速度很快,易于方便地输入、求解和分析优化问题,LINDO在教学、科研和工业界得到广泛应用。
这里用LINDO软件包作为LINDO,GINO,LINGO和LINGO NL等的统称,包含五种组件,下面分别介绍如下:(1)LINDO是Linear INteractive and Discrete Optimizer字首的缩写形式,是由Linus Schrage 于1986年开发的优化计算软件包, 可以用来求解线性规划(LP----Linear Programming), 整数规划(IP----Integer Programming) 和二次规划(QP----Quadratic Programming) 问题. LINDO易于规划问题的输入、求解和分析,程序执行速度很快。
2012——2013学年第一学期合肥学院数理系实验报告课程名称:运筹学实验项目:应用LINDO软件求解整数规划实验类别:综合性□设计性□√验证性□专业班级:10级数学与应用数学(1)班姓名:汪勤学号:1007021004 实验地点:35-612实验时间:2012-11-29指导教师:管梅老师成绩:一.实验目的1、熟悉LINDO软件的求解整数规划功能。
2、学习应用LINGO软件求解整数规划问题。
3、熟练掌握LINGO软件的操作。
二.实验内容1、某班有男同学30人,女同学20人,星期天准备去植树。
根据经验,一天中,男同学平均每人挖坑20个,或栽树30棵,或给25棵树浇水,女同学平均每人挖坑10个,或栽树20棵,或给15棵树浇水。
问应怎样安排,才能使植树(包括挖坑、栽树、浇水)最多。
建立该问题的数学模型,并求其解。
2、求解线性规划:121212212max2251228 ..010,z x xx xx xs txx x=++≥⎧⎪+≤⎪⎨≤≤⎪⎪⎩为整数3、在高校篮球联赛中,我校男子篮球队要从8名队员中选择平均身高最高的出场阵容,队员的号码、身高及擅长的位置如下表:同时,要求出场阵容满足以下条件:⑴中锋最多只能上场一个。
⑵至少有一名后卫。
⑶如果1号队员和4号队员都上场,则6号队员不能出场⑷2号队员和6号队员必须保留一个不出场。
问应当选择哪5名队员上场,才能使出场队员平均身高最高?试写出上述问题的数学模型,并求解。
三. 模型建立1、()3612345625143625max 2515302030202010..2515302001,...,6iz x x x x x x x x x x x x s t x x x x x i =+++≤⎧⎪++≤⎪⎪+≤+⎨⎪+≤+⎪≥=⎪⎩且为整数 2、121212212max 2251228..010,z x x x x x x s t x x x =++≥⎧⎪+≤⎪⎨≤≤⎪⎪⎩为整数 3、()()123456781267814626811max 1.92 1.9 1.88 1.86 1.85 1.83 1.8 1.7851121..5011,2, (8)j j j z x x x x x x x x x x x x x x x x x x s t x x j = =++++++++≤⎧⎪++≥⎪⎪++≤⎪+≤⎨⎪⎪=⎪⎪==⎩∑或四. 模型求解(含经调试后正确的源程序)1、编写程序如下:2、编写程序如下:model : model : max =25*x3+15*x6; max =x1+2*x2; x1+x2+x3<=30; 2*x1+5*x2>=12; x4+x5+x6<=20; x1+2*x2<=8; 30*x2+20*x5<=20*x1+10*x4; x2>=0; 25*x3+15*x6<=30*x2+20*x5; x2<=10; @gin (x1); @gin (x1);@gin(x2); @gin(x2);@gin(x3); end@gin(x4);@gin(x5);@gin(x6);end3、编写程序如下:model:max=(1.92*x1+1.9*x2+1.88*x3+1.86*x4+1.85*x5+1.83*x6+1.8*x7+1.78* x8)/5;x1+x2<=1;x6+x7+x8>=1;x1+x4+x6<=2;x2+x6<=1;x1+x2+x3+x4+x5+x6+x7+x8=5;@bin(x1);@bin(x2);@bin(x3);@bin(x4);@bin(x5);@bin(x6);@bin(x7);@bin(x8);end五.结果分析1、结果为:Global optimal solution found.Objective value: 345.0000 Objective bound: 345.0000 Infeasibilities: 0.000000 Extended solver steps: 2 Total solver iterations: 45 Variable Value Reduced CostX3 12.00000 -25.00000X6 3.000000 -15.00000X1 17.00000 0.000000X2 1.000000 0.000000X4 1.000000 0.000000X5 16.00000 0.000000Row Slack or Surplus Dual Price1 345.0000 1.0000002 0.000000 0.0000003 0.000000 0.0000004 0.000000 0.0000005 5.000000 0.000000 2、结果为:Global optimal solution found.Objective value: 8.000000 Objective bound: 8.000000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 1 Variable Value Reduced Cost X1 0.000000 -1.000000X2 4.000000 -2.000000Row Slack or Surplus Dual Price1 8.000000 1.0000002 8.000000 0.0000003 0.000000 0.0000004 4.000000 0.0000005 6.000000 0.0000003、结果为:Global optimal solution found.Objective value: 1.862000 Objective bound: 1.862000Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost X1 1.000000 -0.3840000 X2 0.000000 -0.3800000 X3 1.000000 -0.3760000 X4 1.000000 -0.3720000 X5 1.000000 -0.3700000 X6 0.000000 -0.3660000 X7 1.000000 -0.3600000 X8 0.000000 -0.3560000 Row Slack or Surplus Dual Price 1 1.862000 1.000000 2 0.000000 0.000000 3 0.000000 0.000000 4 0.000000 0.000000 5 1.000000 0.000000 6 0.000000 0.000000六.实验总结1、该整数规划问题最优解为:***12317,1,12x x x ===***4561,16,3x x x ===最优值为:*345z =即:17个男生和1个女生挖坑,1个男生和16个女生栽树,12个男生和3个女生浇水,这样能使植树最多,最多可以植345棵。
用LINGO求解整数规划| [<<][>>]LINGO软件用于线性或非线性规划(无论是连续规划还是整数规划),因此包含了LINDO的功能。
在LINGO中,输入总是以model:开始,以end结束;中间的语句之间必须以“;”分开;目标函数用MAX=…;或MIN=…;给出(注意有等号“=”)。
在LINDO中所有的函数均以“@”符号开始,如约束中@gin(x1)表示x1为整数,用bin (x1)表示x1为0-1整数。
在现在的LINDO中,默认设置假定所有变量非负。
例如,例2中的整数规划模型在LINDO中可以如下输入:model:x1+x2<=6; !约束条件和目标函数可以写在model:与end 之间的任何位置Max=5*x1+8*x2;!*号不能省略5*x1<=45-9*x2;@gin(x1);@gin(x2);!和LINDO不同,不能写在end之后end运行后同样得到最优解为x1=0,x2=5,最优值为40。
说明,即使是线性规划,在LINDO中书写格式非常严格,约束也只能一个一个输入,因此输入一个大规模的模型是比较困难的。
而L INGO不仅能解非线性模型,书写格式相当自由,而且有一个非常大的优点,即LINGO实际上提供了数学规划模型的一种建模描述语言,输入一个大规模的模型也是很方便的。
LINGO中还包括相当丰富的数学函数和控制语句,并可以直接利用其他应用系统提供的数据文件或数据库。
钢管下料问题(1)的求解将式(1),式(3)~(6)构成的线性整数规划模型输入LIND O如下:min 3x1+x2+3x3+3x4+x5+x6+3x7s.t4x1+3x2+2x3+x4+x5>=50x2+2x4+x5+3x6>=20x3+x5+2x7>=15ENDgin7求解可以得到最优解如下:OBJECTIVE FUNCTION VALUE1) 27.00000VARIABLE VALUE REDUCED COSTX1 0.000000 3.000000X2 12.000000 1.000000X3 0.000000 3.000000X4 0.000000 3.000000X5 15.000000 1.000000X6 0.000000 1.000000X7 0.000000 3.000000即按照模式2切割12根原料钢管,按照模式5切割15根原料钢管,共27根,总余料量27m。
2012——2013学年第一学期
合肥学院数理系
实验报告
课程名称:运筹学
实验项目:应用LINDO软件求解整数规划
实验类别:综合性□设计性□√验证性□
专业班级: 10级数学与应用数学(1)班
姓名:汪勤学号: 1007021004 实验地点: 35-612 实验时间: 2012-11-29 指导教师:管梅老师成绩:
一.实验目的
1、熟悉LINDO软件的求解整数规划功能。
2、学习应用LINGO软件求解整数规划问题。
3、熟练掌握LINGO软件的操作。
二.实验内容
1、某班有男同学30人,女同学20人,星期天准备去植树。
根据
经验,一天中,男同学平均每人挖坑20个,或栽树30棵,或给
25棵树浇水,女同学平均每人挖坑10个,或栽树20棵,或给
15棵树浇水。
问应怎样安排,才能使植树(包括挖坑、栽树、
浇水)最多。
建立该问题的数学模型,并求其解。
2、求解线性规划:
12
12
12
2
12
max2
2512
28 ..
010
,
z x x
x x
x x
s t
x
x x
=+
+≥
⎧
⎪+≤
⎪
⎨
≤≤
⎪
⎪⎩为整数
3、在高校篮球联赛中,我校男子篮球队要从8名队员中选择平均身高最高的出场阵容,队员的号码、身高及擅长的位置如下表:
同时,要求出场阵容满足以下条件:
⑴ 中锋最多只能上场一个。
⑵ 至少有一名后卫 。
⑶ 如果1号队员和4号队员都上场,则6号队员不能出场 ⑷ 2号队员和6号队员必须保留一个不出场。
问应当选择哪5名队员上场,才能使出场队员平均身高最高? 试写出上述问题的数学模型,并求解。
三. 模型建立
1、()36
12345625143625max 2515302030202010..2515302001,...,6i
z x x x x x x x x x x x x s t x x x x x i =+++≤⎧⎪++≤⎪⎪+≤+⎨⎪+≤+⎪≥=⎪⎩且为整数 2、12
1212212max 2251228..010,z x x x x x x s t x x x =++≥⎧⎪+≤⎪⎨≤≤⎪⎪⎩为整数 3、 ()()123456781267814626811max 1.92 1.9 1.88 1.86 1.85 1.83 1.8 1.78511
21..5011,2,...8j j j
z x x x x x x x x x x x x x x x x x x s t x x j = =
++++++++≤⎧⎪++≥⎪⎪++≤⎪+≤⎨
⎪⎪=⎪⎪==⎩∑或 四. 模型求解(含经调试后正确的源程序)
1、编写程序如下:
2、编写程序如下:
model: model:
max=25*x3+15*x6; max=x1+2*x2;
x1+x2+x3<=30; 2*x1+5*x2>=12;
x4+x5+x6<=20; x1+2*x2<=8;
30*x2+20*x5<=20*x1+10*x4; x2>=0;
25*x3+15*x6<=30*x2+20*x5; x2<=10;
@gin(x1); @gin(x1);
@gin(x2); @gin(x2);
@gin(x3); end
@gin(x4);
@gin(x5);
@gin(x6);
end
3、编写程序如下:
model:
max=(1.92*x1+1.9*x2+1.88*x3+1.86*x4+1.85*x5+1.83*x6+1.8*x 7+1.78*x8)/5;
x1+x2<=1;
x6+x7+x8>=1;
x1+x4+x6<=2;
x2+x6<=1;
x1+x2+x3+x4+x5+x6+x7+x8=5;
@bin(x1);
@bin(x2);
@bin(x3);
@bin(x4);
@bin(x5);
@bin(x6);
@bin(x7);
@bin(x8);
end
五.结果分析
1、结果为:
Global optimal solution found.
Objective value: 345.0000
Objective bound: 345.0000
Infeasibilities: 0.000000
Extended solver steps: 2
Total solver iterations: 45
Variable Value Reduced Cost
X3 12.00000 -25.00000
X6 3.000000 -15.00000
X1 17.00000 0.000000
X2 1.000000 0.000000
X4 1.000000 0.000000
X5 16.00000 0.000000
Row Slack or Surplus Dual Price
1 345.0000 1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 5.000000 0.000000
2、结果为:
Global optimal solution found.
Objective value: 8.000000 Objective bound: 8.000000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 1 Variable Value Reduced Cost
X1 0.000000 -1.000000
X2 4.000000 -2.000000
Row Slack or Surplus Dual Price
1 8.000000 1.000000
2 8.000000 0.000000
3 0.000000 0.000000
4 4.000000 0.000000
5 6.000000 0.000000
3、结果为:
Global optimal solution found.
Objective value: 1.862000 Objective bound: 1.862000 Infeasibilities: 0.000000 Extended solver steps: 0 Total solver iterations: 0 Variable Value Reduced Cost
X1 1.000000 -0.3840000
X2 0.000000 -0.3800000
X3 1.000000 -0.3760000
X4 1.000000 -0.3720000
X5 1.000000 -0.3700000
X6 0.000000 -0.3660000
X7 1.000000 -0.3600000
X8 0.000000 -0.3560000
Row Slack or Surplus Dual Price
1 1.862000 1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 1.000000 0.000000
6 0.000000 0.000000
六.实验总结
1、该整数规划问题最优解为:***12317,1,12x x x ===
***4561,16,3x x x ===
最优值为:*345z = 即:17个男生和1个女生挖坑,1个男生和16个女生栽树,12个男生和3个女生浇水,这样能使植树最多,最多可以植345棵。
2、该整数规划问题最优解为:**120,4x x ==
最优值为:*8z =
3、该整数规划问题最优解为: ****12341,0,1,1x x x x ====
****56781,0,1,0x x x x ====
最优值为:*
1.862z =
即:1号、3号、4号、5号、7号五名队员上场,能使出场队员平均身高最高,平均身高最高为1.862米。
学生签名: 2012年 月 日。