实验二利用Lingo求解整数规划及非线性规划问题实用教案_第1页
实验二利用Lingo求解整数规划及非线性规划问题实用教案_第2页
实验二利用Lingo求解整数规划及非线性规划问题实用教案_第3页
实验二利用Lingo求解整数规划及非线性规划问题实用教案_第4页
实验二利用Lingo求解整数规划及非线性规划问题实用教案_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、变量定界(dn ji)函数:bin(x): 限制(xinzh) x 为 0 或 1.gin(x): 限制(xinzh) x 为整数.实验二 利用Lingo求解整数规划及非线性规划问题第1页/共22页第一页,共22页。例 1 用Lingo软件(run jin)求解0-1规划问题12341234123412341234max253440242411,01zxxxxxxxxxxxxxxxxxxxx 或或max=2*x1+5*x2+3*x3+4*x4;-4*x1+x2+x3+x4=0;-2*x1+4*x2+2*x3+4*x4=1;x1+x2-x3+x4=1;bin(x1);bin(x2);bin(x3

2、);bin(x4);Lingo 程序(chngx):一、用Lingo 求解(qi ji)规划问题第2页/共22页第二页,共22页。例 2 用Lingo软件求解整数规划(guhu)问题123123123123min25340242220,1,2,3izxxxxxxxxxxxxxi 且取整数且取整数min=2*x1+5*x2+3*x3;-4*x1-x2+x3=0;-2*x1+4*x2-2*x3=2;x1-x2+x3=2;gin(x1);gin(x2);gin(x3);Lingo 程序(chngx):第3页/共22页第三页,共22页。例 3 用Lingo软件求解非线性规划(guhu)问题 22122

3、11212min121,2,0,0.zxxxxxxxx min=(x1-1)2+(x2-2)2;x2-x1=1;x1+x2=2;Lingo 程序(chngx):第4页/共22页第四页,共22页。注意(zh y):Lingo 默认(mrn)变量的取值从0到正无穷大,变量定界函数可以改变默认(mrn)状态.free(x): 取消对变量x的限制(即x可取任意实数值)例 4 求函数 的最小值. 2222zxy第5页/共22页第五页,共22页。解: 编写(binxi)Lingo 程序如下: min=(x+2)2+(y-2)2;free(x);例 4 求函数 的最小值. 2222zxy求得结果(ji gu

4、): x=-2, y=2第6页/共22页第六页,共22页。二、Lingo 循环(xnhun)编程语句(1) 集合(jh)的定义包括如下(rxi)参数:1) 集合的名称.命名规则: 以字母开头, 后面是字母或下划线.字母不区分大小写.2) 集合包含的元素(可选).3) 集合中元素的所有属性(可选).例4 Math,English,totalsets:endsetsstudentsJohn, Jill, Rose, Mikesets:students/John, Jill, Rose, Mike/:Math,English,total;endsets第7页/共22页第七页,共22页。(2) 数据(

5、shj)赋值例4 data:enddatadata:Math=80,85,90,70;English=75,80,72,60;enddata格式(g shi):(1) 集合(jh)的定义例4 sets:students/John, Jill, Rose, Mike/:Math,English,total;endsets第8页/共22页第八页,共22页。(3) 集合的循环(xnhun)函数集合的循环函数可以使所有的元素(yun s)重复完成一些操作.函数函数函数功能函数功能for形成集合形成集合所有元素所有元素需满足的约束条件需满足的约束条件sum计算集合中元素所在表达式的计算集合中元素所在表达

6、式的和和min计算集合中元素所在表达式的计算集合中元素所在表达式的最小值最小值max计算集合中元素所在表达式的计算集合中元素所在表达式的最大值最大值maxM=max(students(i):Math);maxE=max(students(i):English);averageM=sum(students(i):Math)/4;for(students(i):total(i)=Math(i)+English(i);例4 !数学(shxu)的最高分;!英语的最高分;!数学的平均分;!每个学生数学与英语分数之和.第9页/共22页第九页,共22页。(4) 衍生集合(jh)的定义.包括(boku)如下参

7、数:1) 衍生集合(jh)的名称.3) 衍生集合包含的元素(可选).4) 集合中元素的所有属性(可选).例5 link2) 衍生集合的父集合名称.sets:ren/A,B,C,D/: rent;job/1.5/: jobt;link(ren,job): time;endsetsrenjobtime注: 若没有指明元素列表, LINGO将用父集合元素的所有组合作为衍生集合的元素.(A,1), (A,2),(A,3),(A,4)(A,5)(B,1), (B,2),(B,3),(B,4)(B,5)(C,1), (C,2),(C,3),(C,4)(C,5)(D,1), (D,2),(D,3),(D,4

8、)(D,5)第10页/共22页第十页,共22页。(5) Lingo 内部(nib)的数学函数及其返回值abs(x): 返回(fnhu)x的绝对值sin(x): 返回(fnhu)x的正弦值cos(x): 返回x的余弦值tan(x): 返回x的正切值log(x): 返回x的自然对数值exp(x): 返回ex的值sqr(x): 返回x的平方值. 该函数可以用表达式x2代替sqrt(x): 返回x的正的平方根. 可以用表达式x(1/2)代替第11页/共22页第十一页,共22页。三、Lingo 循环(xnhun)编程举例例5 现有(xin yu)五名工人甲, 乙, 丙, 丁, 戊, 完成五项工作A, B

9、, C, D, E, 所需时间列表如下 工作工作 时间时间(小时小时)工人工人ABCDE甲甲10.521.754乙乙2131.53.5丙丙1.751.52.513丁丁2.521.50.54戊戊11.5223(2) 求每份工作最短的用时.(1) 求每个人的最短工作时间;问题:第12页/共22页第十二页,共22页。三、Lingo 循环(xnhun)编程举例例5 sets:ren/A,B,C,D,E/:rent;job/1.5/:jobt;link(ren,job):time;endsetsdata:time=1,0.5,2,1.75,4 2,1,3,1.5,3.5 1.75,1.5,2.5,1,3

10、 2.5,2,1.5,0.5,4 1,1.5,2,2,3;enddataS=sum(link(i,j):time(i,j);for(ren(i):rent=min(job(j):time(i,j);for(job(j):jobt=min(ren(i):time(i,j);!定义(dngy)集合;!数据(shj)赋值;!所有工作时间求和;!求每个人的最短工作时间;!求每份工作最短的用时;第13页/共22页第十三页,共22页。三、Lingo 循环(xnhun)编程举例例5 用Lingo循环编程语句求解线性规划模型12max7264zxx 121211250,128480,3100,0,0.xxxx

11、xxx 第14页/共22页第十四页,共22页。三、Lingo 循环(xnhun)编程举例sets:bliang/1,2/:x,a;yshu/1,2,3/:b;xshu(yshu,bliang):c;endsetsdata:a=72,64;b=50,480,100;c=1,1 12,8 3,0;enddatamax=sum(bliang(i):a(i)*x(i);for(yshu(j):sum(bliang(i):x(i)*c(j,i)=b(j);!定义(dngy)集合;!数据(shj)赋值;!目标函数;!约束条件;12max7264zxx 121211250,128480,3100,0,0.x

12、xxxxxx 例5 用Lingo循环编程语句求解线性规划模型第15页/共22页第十五页,共22页。例6、指派(zhpi)问题公司在各地有4项业务,选定了4位业务员去处理。由于业务能力、经验和其它情况不同,4业务员去处理4项业务的费用(fi yong)(单位:元)各不相同,见下表: 应当怎样分派任务,才能(cinng)使总的费用最小? 业务1234111008001000700260050030080034008001000900411001000500700业务员第16页/共22页第十六页,共22页。4141minijijijxaZ4 , 3 , 2 , 1,104 , 3 , 2 , 114

13、 , 3 , 2 , 11. .4141jixixjxtsijjijiij或这是一个最优指派(zhpi)问题。引入如下变量: 项业务个人做第若不分派第项业务个人做第若分派第jijixij01设矩阵a(4,4)为指派矩阵,其中a(i,j)为第i个业务员做第j项业务的业务费。则可以(ky)建立如下模型:第17页/共22页第十七页,共22页。MODEL:SETS:person/A,B,C,D/;task/1.4/;assign(person,task):a,x;ENDSETSDATA:a=1100,800,1000,700, 600,500,300,800,400,800,1000,900,1100

14、,1000,500,700;ENDDATAmin=sum(assign:a*x);for(person(i):sum(task(j):x(i,j)=1);for(task(j):sum(person(i):x(i,j)=1);for(assign(i,j):bin(x(i,j);ENDLINGO程序(chngx)如下:第18页/共22页第十八页,共22页。 1、某游泳队拟选用甲, 乙, 丙, 丁 四名游泳运动员组成(z chn)一个 4100 m 混合泳接力队, 参加今年的锦标赛. 他们的 100 m 自由泳, 蛙泳, 蝶泳, 仰泳的成绩如表所示乙丙丁56成绩自由泳 / s甲63575574蛙泳 / s69777661蝶泳 / s65636263仰泳 / s716762 甲, 乙, 丙, 丁 四名队员各自游什么姿势 , 才最有可能取得(qd)好成绩?第19页/共22页第十九页,共22页。2、某旅馆每日至少需要下列数量的服务员每班服务 员从开始上

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论