欢迎来到天天文库
浏览记录
ID:53054051
大小:84.50 KB
页数:5页
时间:2020-03-31
《物流中心选址重心法程序设计S.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、单一物流中心选址重心法程序设计图供应地和需求地分布情况重心法是一种模拟方法。这种方法将物流系统中的需求点和资源点看成是分布在某一平面范围内的物流系统,各点的需求量和资源量分别看成是物体的重量,物体系统的重心作为物流网点的最佳设置点,利用求物体系统重心的方法来确定物流网点的位置。(1)式中:Vi—i点运输量;Ri—待定物流中心到i点的运输费率;di—待定物流中心到i点的距离。求解算法—数值分析法(重心法)1)设供应点和需求点所在地的坐标为(Xi,Yi),待定物流中心的位置坐标为(X0,Y0)则(2)2)将(2)式代入(1)
2、式,然后求运输总费用TC对X0和Y0的偏导数,并令其等于零。5(3)(4)上述两式中仍含有未知数di,因此一次不能求得X0和Y0(解析解),需要通过迭代收敛法得到数值解。迭代收敛法具体步骤:1、先用重心公式估算初始选址点(大致位置):(5)(6)2、将X0和Y0代入公式2,计算di(i=1,2,…,m+n);3、将di代入公式3和4,解出修正值X0和Y0;4、根据修正值X0和Y0,再重新计算di;5、重复步骤3和4,直至X0和Y0的值在连续迭代过程中不再变化,即△X0≈0,△Y0≈0,即得到精确仓库选址位置,继续计算无意
3、义。程序设计具体步骤:Step1:利用几何重心公式(5)和(6)估算初始点X0,Y0Step2:将X0,Y0代入距离公式(2),计算di(i=1,2,…,5)5Step3:将di(i=1,2,…,5)代入公式3和公式4,修正值X0和Y0Step4:重复步骤2和3,直至修正值X0和Y0的值在连续迭代过程中不再变化。(用C++程序进行编译),程序如下所示:#include#include#includevoidmain(){intn;float*X,*Y,*V,*R
4、;cout<<"请输入需求点和供应点总个数:";cin>>n;X=newfloat[n];Y=newfloat[n];V=newfloat[n];R=newfloat[n];cout<<"请输入各结点的横坐标:";for(inti=0;i>X[i];cout<<"请输入各结点的纵坐标:";for(i=0;i>Y[i];cout<<"请输入各结点的供货量或需求量:";for(i=0;i>V[i];cout<<"请输入各结点的内/外向运输费率:";for(i
5、=0;i>R[i];floatsumx=0.0,sumy=0.0,sumqr=0.0;floatavex,avey;for(i=0;i6、x=0.0,xzsumy=0.0,xzsumqr=0.0;floatxzavex,xzavey;intj=0;while(1){for(i=0;i7、vey=xzsumy/xzsumqr;if(j==50)break;else{cout<<"第"<
6、x=0.0,xzsumy=0.0,xzsumqr=0.0;floatxzavex,xzavey;intj=0;while(1){for(i=0;i7、vey=xzsumy/xzsumqr;if(j==50)break;else{cout<<"第"<
7、vey=xzsumy/xzsumqr;if(j==50)break;else{cout<<"第"<
此文档下载收益归作者所有