资源预览内容
第1页 / 共7页
第2页 / 共7页
第3页 / 共7页
第4页 / 共7页
第5页 / 共7页
第6页 / 共7页
第7页 / 共7页
亲,该文档总共7页全部预览完了,如果喜欢就下载吧!
资源描述
物流系统规划课程设计- 1 -1、 (选址)某企业有五个供应商,他们的位置分别是(4+i,4+i) , (12+i,4+i) , (2+i,7+i) ,(11+i,11+i) , (7+i,14+i) ,该企业从这五个供应商处的采购量每年为4+i、3+i、2+i、4+i、1+i,假设运输费率相同,i 为学号的末位数。请用计算机编写一个通用程序,完成下面的题目。(1)用城市距离为该企业推荐一个地址,使该企业的费用最省。(2)将第 1 问中的结果作为一个初始解,用欧氏距离进行重新优化,推荐一个最优的位置。要求:(1)前后两次结果之差小于 0.001;(2)程序的通用性高,可以满足任何多个供应商;(3)程序的可读性强;(4)操作界面友好;(5)在手册中要记录所有的程序、运行结果及相关界面图形。解:(1)由题意知供应商 P1 P2 P3 P4 P5及坐标X1 Y1 X2 Y2 X3 Y3 X4 Y4 X5 Y5坐标 4+i 4+i 12+i 4+i 2+i 7+i 11+i 11+i 7+i 14+i权重 4+i 3+i 2+i 4+i 1+i物流系统规划课程设计- 2 -)1(4)2(3)4( )1(47)(4 )1(4)2(3)4( )1(712)(45151 iii iiWY iii iiXiiisiiis 令 i=6,得73.1)61(4)62(3)64( )6(47)(644.)()()( )1(761263612)(5151 iiisiiisWYX所以,要使该企业的费用最省,地址应为:(13.34,13.73)根据程序计算结果可得运用欧氏距离,最佳地址为(13.28,13.67) 。(2)选址程序主页面登录界面:操作界面:物流系统规划课程设计- 3 -程序代码如下:物流系统规划课程设计- 4 -登录界面代码:thisform.releasedo form 表单 2数据录入代码:if this.caption=输入数据thisform.text1.enabled=.t.thisform.text2.enabled=.t.thisform.text3.enabled=.t.Thisform.text4.enabled=.t.this.caption=确定thisform.command2.enabled=.t.elseif len(trim(thisform.text1.value)=0 or len(trim(thisform.text2.value)=0 or len(trim(thisform.text3.value)=0 or len(trim(thisform.text4.value)=0 messagebox(请输入所有项,0)elseinsert into 表 1 values(trim(thisform.text1.value),trim(thisform.text2.value),trim(thisform.text3.value),trim(thisform.text4.value)this.caption=输入数据thisform.text1.enabled=.f.thisform.text2.enabled=.f.thisform.text3.enabled=.f.Thisform.text4.enabled=.f.thisform.text1.value=thisform.text2.value=thisform.text3.value=Thisform.text4.value=thisform.command2.enabled=.f.thisform.refreshendifendif数据取消代码:Thisform.text1.value=Thisform.text2.value=Thisform.text3.value=Thisform.text4.value=物流系统规划课程设计- 5 -Thisform.text1.enabled=.f.Thisform.text2.enabled=.f.Thisform.text3.enabled=.f.Thisform.text4.enabled=.f.thisform.command1.caption=输入数据输出城市距离:x0=0y0=0x0_top=0x0_bottom=0y0_top=0y0_bottom=0aa=reccount()go topfor i=1 to aa step 1go ixi=val(alltr(x)yi=val(alltr(y)wi=val(alltr(w)x0_top=x0_top+wi*xix0_bottom=x0_bottom+wiy0_top=y0_top+yi*wiy0_bottom=y0_bottom+wix0=x0_top/x0_bottomy0=y0_top/y0_bottomendforthisform.text5.value=x0thisform.text6.value=y0输出迭代 欧式距离代码:x0=0y0=0x0_top=0x0_bottom=0y0_top=0y0_bottom=0aa=reccount()go topfor i=1 to aa step 1go ixi=val(alltr(x)物流系统规划课程设计- 6 -yi=val(alltr(y)wi=val(alltr(w)x0_top=x0_top+wi*xix0_bottom=x0_bottom+wiy0_top=y0_top+yi*wiy0_bottom=y0_bottom+wix0=x0_top/x0_bottomy0=y0_top/y0_bottomendforxt=0.001yt=0.001xd=100yd=100xs_old=x0ys_old=y0*calculate_time=0xs_top=0xs_bottom=0ys_top=0ys_bottom=0do while (xd=xt and yd=yt) for j=1 to aa step 1 go jxj=val(alltr(x)yj=val(alltr(y)wj=val(alltr(w) xs_top=xs_top+wj*xj/sqrt(xj-xs_old)2+(yj-ys_old)2)xs_bottom=xs_bottom+wj/sqrt(xj-xs_old)2+(yj-ys_old)2)ys_top=ys_top+wj*yj/sqrt(xj-xs_old)2+(yj-ys_old)2)ys_bottom=ys_bottom+wj/sqrt(xj-xs_old)2+(yj-ys_old)2)endforxs_new=xs_top/xs_bottom ys_new=ys_top/ys_bottomxd=xs_new-xs_oldyd=ys_new-ys_oldxs_old=xs_new物流系统规划课程设计- 7 -ys_old=ys_new* calculate_time=calculate_time+1enddothisform.text7.value=xs_oldthisform.text8.value=ys_old退出代码:thisform.release
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号