#!/usr/bin/env python
# coding: utf-8
import math
# ## 重力法求仓库最佳选址# w:物流量
# h:运输费率
# p:仓库坐标
w = [2000, 3000, 2500, 1000, 1500]
h = [0.05, 0.05, 0.075, 0.075, 0.075]
p = [[3, 8], [8, 2], [2, 5], [6, 10], [8, 8]]# 计算x0,y0
sum_x0 = 0
sum_x0_y = 0
for i in range(len(w)):sum_x0 += h[i] * w[i] * p[i][0]sum_x0_y += h[i] * w[i]
x0 = sum_x0 / sum_x0_ysum_y0 = 0
sum_y0_y = 0
for i in range(len(w)):sum_y0 += h[i] * w[i] * p[i][1]sum_y0_y += h[i] * w[i]
y0 = sum_y0 / sum_y0_y
print(x0, y0)# 终止迭代条件
condition = 0.3
num = 1
while True:# 储存上一次计算结果x_pre = x0y_pre = y0# 计算当前xsum_x0 = 0sum_x0_y = 0for i in range(len(w)):# 计算dd1 = math.sqrt((x0 - p[i][0]) ** 2 + (y0 - p[i][1]) ** 2)sum_x0 += h[i] * w[i] * p[i][0] / d1sum_x0_y += h[i] * w[i] / d1# 计算当前ysum_y0 = 0sum_y0_y = 0for i in range(len(w)):d2 = math.sqrt((x0 - p[i][0]) ** 2 + (y0 - p[i][1]) ** 2)sum_y0 += h[i] * w[i] * p[i][1] / d2sum_y0_y += h[i] * w[i] / d2x0 = sum_x0 / sum_x0_yy0 = sum_y0 / sum_y0_yprint("第{}次迭代结果如下:".format(num))print("仓库坐标为:", x0, y0)error = math.sqrt((x_pre - x0) ** 2 + (y_pre - y0) ** 2)print("误差为:", error)# 终止条件if error < condition:breaknum += 1

重力法求仓库选址问题相关推荐

  1. C++描述 104.仓库选址

    C++描述 104.仓库选址   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官劼的 ...

  2. 仓库选址问题.Python实例操作

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一.题目 二.解题思想 2.1 问题1 2.2  问题2 2.3  问题3 总结 先更新部分~~需要数据集可以私信我 前言 ...

  3. 仓库选址 matlab,仓库选址的基本方法.ppt

    第2章 仓库选址规划布局;[学习内容]: 第一节 仓库规模和数量的决策 第二节 仓库选址 第三节 仓库选址的基本方法(单设施选址) 第四节 多设施选址 第五节 仓库选址决策分析方法 第六节 仓库的平面 ...

  4. HIT ACM 1005高速公路快餐店仓库选址(动态规划)

    Problem Description 在一条高速公路上有 n 个快餐店(0<n<=200),现在要在这 n 个快餐店位置里面选区 k 个位置作为仓库的位置(0<k<=30) ...

  5. 牛客 - 仓库选址(中位数+思维)

    题目链接:点击查看 题目大意:给出一个 n * m 的矩阵,每个格子中都有一个数字,代表需要运货的次数,现在需要选出一个点作为仓库,使得累计运货的路程最短 题目分析:真没想到数据水到能让 n^4 的算 ...

  6. git重命名远程仓库名字 同步fork代码

    $ git remote -v 查看现有远程 origin https://github.com/OWNER/REPOSITORY.git (fetch) origin https://github. ...

  7. AcWing仓库选址

    题目描述 问题来源:https://www.acwing.com/problem/content/description/106/ 分析 这道题涉及到一个数学知识(想要算法好,数学不能差).**在数轴 ...

  8. OR-Tools求解仓库选址和钢材取料问题

  9. 单仓库设施选址决策方法(重心法,C语言代码)

    下面是大二的时候仓储老师布置的一个作业,是关于单仓库选址的问题,要我们用C语言写代码,编一个程序! 这只是一个作业!!! 单仓库设施选址决策方法        单设施选址模型有不同的名称,如:精确重心 ...

最新文章

  1. 结对编程-Core 第12组 [pb15061359+pb15061351]
  2. Appstore|IPA
  3. 【编译原理】构建一个简单的解释器(Let’s Build A Simple Interpreter. Part 8.)(笔记)一元运算符正负(+,-)
  4. js function理解
  5. 做最好的自己——读书笔记
  6. ActiveMQ(07):ActiveMQ结合Spring开发--建议
  7. 9、C语言 —— 指针的用处
  8. .describe() python_python的apply应用:一般性的“拆分-应用-合并”,附加详细讲解
  9. 【转载】浏览器测试工具有哪些 浏览器安全性能内核兼容测试工具推荐
  10. cmder 神器 +curl
  11. 【UOJ 275】最短路径问题
  12. 如果奇迹有颜色,那么一定是暴力or模拟比较6
  13. python最小生成树算法_最小生成树:Kruskal算法及python实现
  14. 计算机重启打印服务关闭,电脑打印机消失print spooler服务启动后自动停止
  15. FAT32文件系统详解
  16. 关于 Windows 设置tomcat开机自动启动
  17. 使用工具清理Windows的winsxs目录
  18. 基于python-django的neo4j人民的名义关系图谱查询系统
  19. 2020/11/05随记 基于jini的C++和Java交互
  20. MVC4中ajax分页技术实例

热门文章

  1. 关于CATEGORY_BROWSABLE的使用(很NB的一个运用)
  2. matlab bp归一化,bp网络样本归一化处理
  3. 微信登录(网站应用)ASP.NET
  4. 一个 android 萤火虫飞舞的粒子效果
  5. 遥感图像计算机自动分类原理,遥感图像计算机自动识别ppt课件.ppt
  6. 每个程序员都需要知道一些游戏网络知识
  7. Python selenium之css_selector定位
  8. android 状态栏占位_Android关于沉浸式状态栏的一些总结
  9. Qt模仿酷狗音乐的播放图标
  10. Nginx配置cros跨域以及遇到401响应的问题