| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1766 人关注过本帖
标题:邮局选址问题 给个思路吧
只看楼主 加入收藏
baobaoyuan
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2009-4-13
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
邮局选址问题 给个思路吧
邮局选址问题(变化后)
实验任务
在一个按照东西和南北方向划分成规整街区的城市里,n个居民点散乱地分布在不同的街区中。用x坐标表示东西向,用y坐标表示南北向。各居民点的位置可以由其x坐标和y坐标来表示。居民们希望在城市中选择一个恰当的位置(x,y)建立一个邮局。由于地理位置不同,街区中不同居民点到邮局的费用也不相同。如果居民点(xi,yi)沿东西向和南北向前进单位距离的费用分别是ai和bi,1≤i≤n,则从居民点(xi,yi)到邮局(x,y)的费用是ai|xi-x|+bi|yi-y|。全部居民点到邮局的总费用就是

niiiiyybxxa1i。
如何选择邮局的最佳位置才能使n个居民点到邮局的总费用最小。
给定n个居民点的位置以及每个居民点沿东西向和南北向前进单位距离的费用,计算n个居民点到邮局的最小总费用。
数据输入
输入数据的第1行是居民点数n,1≤n≤100000。接下来的n行是居民点的位置坐标以及每个居民点沿东西向和南北向前进单位距离的费用。每行有4个数。前2个是整数x和y,-100000≤x,y≤100000,表示居民点的位置坐标。后2个是实数a和b,0<a,b≤100,分别表示居民点沿东西向和南北向前进单位距离的费用。
数据输出
将计算出的n个居民点到邮局的最小总费用输出,计算结果保留2位小数。
输入示例
输出示例
5
1 2 1.0 2.0
2 8 1.0 2.0
5 3 1.5 2.0
4 -2 2.0 1.0
3 -3 1.0 2.5
38.00
搜索更多相关主题的帖子: 邮局 思路 选址 
2010-04-22 16:23
cnfarer
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:179
帖 子:3330
专家分:21157
注 册:2010-1-19
收藏
得分:6 
类似背包问题!可参考下背包问题的解决方案(网上搜索下,很多)

★★★★★为人民服务★★★★★
2010-04-22 18:00
mywaylgh
Rank: 8Rank: 8
来 自:厨房
等 级:蝙蝠侠
威 望:5
帖 子:188
专家分:729
注 册:2010-3-10
收藏
得分:6 
典型的单纯型极值(simplex minimization)问题。
由于最后的函数有绝对值,所以应采用 Nelder-Mead simplex minimization方法(不知道怎么翻译成中文)
这种方法还很多软件里面已经内置,一些c/c++库里面也有
如 matlab,octave 等的 fminsearch函数
GNU的gsl库也包含了这个方法

人生就像茶几 上面放着许多杯具

人生也像厨房 里面总有一些洗具
2010-04-22 18:18
自欺欺人
Rank: 5Rank: 5
等 级:职业侠客
帖 子:71
专家分:370
注 册:2010-4-14
收藏
得分:6 
极限值问题?
2010-04-23 07:31
快速回复:邮局选址问题 给个思路吧
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027033 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved