之三(Lingo中的基本集合与派生集合)_第1页
之三(Lingo中的基本集合与派生集合)_第2页
之三(Lingo中的基本集合与派生集合)_第3页
之三(Lingo中的基本集合与派生集合)_第4页
之三(Lingo中的基本集合与派生集合)_第5页
全文预览已结束

下载本文档

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

文档简介

Lingo的基本集合和派生集合例4 :材料场的选址问题6个建筑工地的位置(以平面坐标a、b表示,距离单位: km )和水泥的日用量(以d表示,单位: t )由下表给出工地位置(a,b )和水泥日量d-工地编号1 2 3 4 5 6a 1.25 8.75 0.5 5.75 3 7.25b 1.25 0.75 4.75 5 6.5 7.75d 3 5 4 7 6 11-目前,两个临时材料场位于p (5,1 )、q (2,7 ),每天提供水泥的最大能力分别为20t。 假设从材料场到各工地有直线道路相连,运输费用与距离、重量成正比。(1)请制定运输计划,尽量降低总运费。(二)进一步调整这两个临时材料场所的位置,使总运费最低。解:第I号施工现场:位置,水泥日量,I=1,2,3,4,5,6第j号场:位置,水泥日供给能力,j=1,2从j号场到I号工地的日运水泥量注意:在问题(1)中,由于是已知数据,所以决定变量共计为12个问题(2)中未定,所以决策变量共计16个。从j号场到I号现场,距离是送重量的水泥,两者的乘积是运费。目标函数:约束条件:满足需求供应能力:j=1,2不为负:这就是主题的优化模型。用Lingo试图解开这个模型,六个建筑工地是一个集合gdjh,两个材料场是一个集合lcjh。 其次变得困难:决定变量不仅是依赖于集合gdjh的属性,还是依赖于集合lcjh的属性。 这样的属性应该怎样定义根据两个基本集合gdjh和lcjh构建派生集合gdlcjh,并将其定义为该集合的属性。看看本问题第(1)题的Lingo步骤,然后看看评论model:型号sets:gdjh/1.6/:a,b,d;lcjh/1,2/: x,y,e;gdlcjh(gdjh,lcjh):c;endsetsdata:a=1.25、8.75、0.5、5.75、3、7.25;b=1.25,0.75,4.75,5,6.5,7.75;d=3,5,4,7,6,11;x,y=5,1,2,7; e=20,20;结束资料min=sum(gdlcjh(i,j):c(i,j ) * (x (j )-a (I ) ) 2(y (j )-b (I ) ) 2) 0. 5; for (gdjh (I ) : sum (lcjh (j ) : c (I,j)=d(i ); for (lcjh (j ) : sum (gdjh (I ) : c (I,j)=e(j );结束附注: (1)定义衍生集合及其属性的指令格式为派生集合名称(基本集合1、基本集合2 ) :属性(2)赋值语句“x,y=5,1,2,7”的赋值顺序不是“x(1),x(2),y(1),y(2)”,而是“x(1)=5,y(1)=1,x(2)=2,y(2)=7”的程序中,可以将该语句替换为“x=5,2”,y=1,7”,功能相同。(3)式中出现的下标符号有1个以上时,必须指定对哪个符号进行运算。执行结果:全局最佳解决方案发现atiteration:4对象值: 136.2275variablevalueredced成本c (1,1 )3. 0000000.000000c (1,2 )0. 0000003.852207c (2,1 )5. 0000000.00000c (2,2 )0. 0000007.252685c (3,1 )0. 0000001.341700c (3,2 )4. 000000.00000c (4,1 )7. 000000.00000c (4,2 )0. 0000001.992119c (5,1 )0. 0000002.922492c (5,2 )6. 000000.00000c (6,1 )1. 000000.000000c (6,2 ) 10.000000.00000a :从1号材料场往1、2、4、6号工地运送水泥3的5、7从二号材料场运输水泥四、六、十到三、五、六号工地能够使总输送量(质量积距离)为最小136.2275(t*km ) .进而,为了解决本问题的第(2)个问题,材料场的位置也是需要最优化的决定变量。 看看Lingo的步骤,然后看看评论model:型号sets:gdjh/1.6/:a,b,d;lcjh/1,2/: x,y,e;gdlcjh(gdjh,lcjh):c;endsetsdata:a=1.25、8.75、0.5、5.75、3、7.25;b=1.25,0.75,4.75,5,6.5,7.75;d=3,5,4,7,6,11;e=20,20;结束资料init:x,y=5,1,2,7;endinitmin=sum(gdlcjh(i,j):c(i,j ) * (x (j )-a (I ) ) 2(y (j )-b (I ) ) 2) 0. 5; for (gdjh (I ) : sum (lcjh (j ) : c (I,j)=d(i ); for (lcjh (j ) : sum (gdjh (I ) : c (I,j)=e(j );for(lcjh:free(x) free(y ) ) :结束注释: (创建Lingo程序时,请尽可能向决定变量提供初始值,节省机械的工作量。(2)初始值部分(“init:”到“endinit”) :内容对决策变量赋予初始值。 在本程序中,将原材料场位置(5,1 )、(2,7 )作为初始值。执行结果:localoptionolsolutionsolutionfounditeration :224对象值: 89.88350variablevalueredced成本x(1)7.249779-0.7840475e-08X(2) 5.695940 0.000000Y(1) 7.749998 0.1466927E-07Y(2) 4.928524 -0.1153356E-07c (1,1 )0. 0000001.76973c (1,2 )3. 000000.000000c (2,1 )0. 000000.6737681c (2,2 )5. 000000.000000c (3,1 )0. 000000.871430c (3,2 )4. 000000.00000c (4,1 )0. 0000001.733379c (4,2 )7. 000000.00000c (5,1 )5. 0000000.00000c (5,2 )1. 000000.00000c (6,1 ) 11.000000.00000c (6,2 )0. 000004.5353026这个结果只是“局部最优解”。 那么,如何求“全局最佳解”呢?我们没有正规的Lingo软件,在此只能适当变更初始值,寻找最佳解。 (略)新解前题3的“0-1计划”模式: (第I名选手的第j种游泳姿势成绩显示第I名选手参加了第j种游泳姿势比赛)。s.t方案包括:model:型号sets:dyjh/1.5/;yzjh/1.4/;cjjh(dyjh,yzjh):c,x;endsetsdata:c=66.8、75.6、87、58.6、57.2、66、66.4、53、78、67.8、84.6、59.4、70、74.2、69.6、57.2、67.4、71、83.8、62.4;结束资料min=sum(cjjh:c*x ) for (dyjh (I ) : sum (yzjh (j ) : x (I,j)=1; for (yzjh (j ) : sum (dyjh (I ) : x (I,j)=1;for(cjjh:bin(x );结束执行结果:全局最佳解决方案发现atiteration:对象值: 253.2000variablevalueredced成本x (1,1 )0. 00000

温馨提示

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

评论

0/150

提交评论