基于重心法的中转站选址问题 -*- 某企业有2个生产厂(P1,P2)服务于三个目标市场(M1,M2,M3),地理坐标如图所示。各节点的运输总量及运输费率如表所示。 (1)如果要修建一个中转仓库,请用重心法为该仓库选址。 (2)如果需要使用2个中转仓库,试确定最优的仓库选址。 M2 M1 M3 P1 P2 问题描述 问题一:单中转站选址 解题方法: 重心法 解题思路:第一步,利用总费用最小的思想,通过极值求 解,解出中转站坐标的表达式: 第二步:给定中转站坐标初始值,进行迭代求解 (迭代过程见P112,P113) 问题一:单中转站选址 function T=TotalCost x0=0; y0=0; x1=0; y1=0; a=[0.04,0.04,0.095,0.095,0.095]; w=[5000,7000,3500,3000,5500]; x=[3,8,2,6,8]; y=[8,2,5,4,8]; d=[0,0,0,0,0]; T0=200; T1=100; 利用MATLAB编程求解: while(T1-T0<=0) T0=0; T1=0; a1=0; a2=0; b1=0; b2=0; x0=x1; y0=y1; for i=1:5 d(i)=sqrt((x0-x(i))^2+(y0-y(i))^2); T0=T0+a(i)*w(i)*d(i); end 问题一:单中转站选址 for i=1:5 a1=a1+a(i)*w(i)*x(i)/d(i); a2=a2+a(i)*w(i)/d(i); b1=b1+a(i)*w(i)*y(i)/d(i); b2=b2+a(i)*w(i)/d(i); end x1=a1/a2; y1=b1/b2; for i=1:5 d(i)=sqrt((x(i)-x1)^2+(y(i)-y1)^2); T1=T1+a(i)*w(i)*d(i); end T0 T1 end x1 y1 答案:x1 =5.9393;y1 =5.3170 问题一:单中转站选址 问题二:两中转站选址 解题方法:聚类分析+重心法 解题思路:第一步,利用聚类分析对目标点进行分类 (本题根据题意分为两类) 第二步:对每一单独群体,用重心法求解 解题软件:MATLAB,SPSS 问题二:两中转站选址 答案: (1)聚类分析答案: 问题二:两中转站选址 第一组 第二组 P2 P1 M2 M1 M3 重心法答案: 问题二:两中转站选址 x1 =7.4582;y1 = 5.9418 x2=2;y2 =5.0000

重心法求中心matlab,两个中转站选址问题(重心法,metlab,spss)程序.ppt相关推荐

  1. matlab两曲面的交线,MATLAB里面求两相交三维曲面交线的画法

    问题描述: MATLAB里面求两相交三维曲面交线的画法 原题是这样的,将z1=x.^2+2*y.^2与z2=a的曲面图形和交线图形分别画在两张图上(用subplot) 我的程序是这样的: [x,y]= ...

  2. 用matlab计算稳态误差,利用Matlab求稳态误差的两种方法.

    利用Matlab求稳态误差的两种方法 摘要:稳态误差是系统控制精度或抗扰动能力的一种度量,它是稳态性能的一个重要指标.本文介绍利用Matlab的控制系统工具箱和Simulink工具箱求取系统误差稳态的 ...

  3. matlab求点,MATLAB求两点中点

    已知两点坐标,连接这两点,求线段的中点坐标.有没有什么公式啊? A(x1,y1).B(x2,y2),则AB中点是M((x1+x2)/2,(y1+y2)/2) 如何用MATLAB做出一个求两点间最短距离 ...

  4. matlab二元多项式求值,matlab多项式代入求值

    Matlab 多项式运算与方程求根 ? Matlab多项式运算无论是在线性代数中,还是信号处理.自动控制等理论 中,多项式运算都有着十分重要的地位,因此,MATLAB 为多项式的操作提供了相应的函数库 ...

  5. matlab根据根求多项式,matlab求解多项式的根

    因此牛顿法也称切线法,是非线性方程求根方法中收敛最快的方 法. 2. matlab 中方程求解的基本命令 roots(p):求多项式方程的根,其中 p 是多项式系数按降幂排列所形成的向量. solve ...

  6. matlab两幅图重叠,matlab两幅图叠在一起

    MATLAB中内建有cpselect函数,该函数允 许用户在将要拼接的两幅图像的重叠区域 中手工选取一定数量的匹配特征点对然后 自动给出两幅图像之间的初始变换矩阵. 优化...... MATLAB 数 ...

  7. Matlab三元隐函数求极值,matlab用三重循环求一个三元函数的最大值所对应的x1,x2,x3...

    用MATLAB实现for循环 t=2;whileS(t)>Pstrong&&t 求一个MATLAB循环语句表示这个矩阵200分 这样的,i和j是内部虚数变量,避免轻易使用.cle ...

  8. matlab两向量相乘,matlab如何使得两个向量对应项相乘

    matlab 一元二次方程求解得到两个根,但是如何如何对这两个根进行处理? x=solve('x^2+3*x-5=0','x');>>x1=x(1),x2=x(2) matlab如何实现行 ...

  9. 动态规划系列---求数组中两个元素差的最大值

    题目 求数组中两个元素差的最大值(后面的元素减去前面的元素):对应实际生活中的股票买卖,找出一只股票走势里面可能的最大收益: 思路 类似于求数组连续和的最大值:  保存最大差值和最小值,遍历数组,如果 ...

  10. Python语言学习:利用pandas对两列字段元素求差集(对比两列字段所有元素的异同)

    Python语言学习:利用pandas对两列字段元素求差集(对比两列字段所有元素的异同) 目录 利用pandas对两列字段元素求差集(对比两列字段所有元素的异同) 输出结果 实现代码 利用pandas ...

最新文章

  1. 软件构建之链接应用--链接脚本
  2. Hibernate框架的配置
  3. 广联达2018模板算量步骤_广联达GTJ2021操作教程:造价小白3天速成,计量效率翻倍...
  4. ARM的UART实验
  5. 二叉树的先序、中序、后序遍历等基本操作c++实现
  6. python php multiprocessing,Python多进程并发(multiprocessing)用法实例详解
  7. 不加载,手动实例化Service
  8. springcloud的中文文档地址和中国社区
  9. Python3爬虫(六) 解析库的使用之Beautiful Soup
  10. BP神经网络的数学原理及其算法实现
  11. 十分钟走进大数据世界
  12. 英文PDF怎么翻译成中文?两分钟让你学会翻译PDF
  13. 0day安全:软件漏洞分析技术 学习分析记录
  14. JavaScript:实现PigeonHoleSort鸽巢排序算法(附完整源码)
  15. 怎么用java程序控制步进电机_用单片机按键控制步进电机转动的程序怎么写
  16. Spring Cloud升级之路 - Hoxton - 10. 网关重试带Body的请求Body丢失的问题
  17. 小视频如何消重 视频剪切后md5值变了吗
  18. mysql查询某字段包含手机号
  19. doc和docx转换html,word转html (包含doc和docx),亲测有用
  20. 为什么HashTable的初始化因子是11,HashMap却是16

热门文章

  1. <笠翁对韵>全文及译文(上卷)
  2. 运动控制器的自定义G代码编程应用
  3. java 生辰八字五行计算,五行八字(生辰八字五行计算器)
  4. java基础 CAS算法的简单理解
  5. selenium+crop+chaojiying 之模拟登录超级鹰
  6. Just Speak 论文精读
  7. yum 报错:Another app is currently holding the yum lock; waiting for it to exit......
  8. 使用 TimeGAN 建模和生成时间序列数据
  9. 视频教程-以太坊区块链实战视频教程(全球同步升级)-区块链
  10. 无线ac配置dhcp服务器,华硕RT-AC86U路由器怎么设置DHCP功能