English 中文(简体)
尽可能少摘要:优化问题
原标题:Minimizing Sum of Distances: Optimization Problem

实际问题是:

麦克唐纳人正计划沿着一条直线公路开放一些联合体(say n)。 这些联合体要求仓库储存他们的粮食。 仓库可以储存任何数量的联合食品,但只能存放在一家联合公司。 McD拥有数量有限的仓库(sayk),希望将其安置在尽可能缩小其最近仓库的联运平均距离。

鉴于联合体的坐标阵列(单位)和分类股,退回一系列的单位,负责协调仓库的最佳定位。

自我从记忆中写下这一字以来,我没有任何实例。 任何方面,一个样本可以是:

array={1,3,4,5,7,7,8,10,11} (n=9)
k=1

说明:{7}

这就是我的想法: 对于k=1,我们只能找到一套中位数,这可给仓库的最佳位置。 但是,对于“k>”而言,1 定购单应当分为(联合)和超级集市的毗连部分)子集,每个子集的中位将给仓库地点。 然而,我不理解应该根据什么基础组建这些子集。 提前感谢。

EDIT:对这一问题也有不同之处: 而不是总额/零,将联合仓库与最接近的仓库之间的最大距离降至最低。 我也没有这样做。

最佳回答

公路直线使这一活动成为动态的节目,从左边到公路上。 部分解决办法可以用最合适的仓库的地点和所安置的仓库数量来说明。 部分解决办法的成本将是与最接近的仓库完全距离(对于固定的最低限度,这种距离与最小的平均值相同)或迄今为止距离最接近的仓库的最大距离。

在每一阶段,你们都为最左的N联合公司制定了答案,并按所使用的仓库数目和最合适的仓库的位置加以指数化——你们只需要节省最好的费用。 现在审议下一份联合文件,并利用你为N+1号联合体储存的答案加快这一进展,为N+1号联合体和所有可能的价值找到最佳解决办法。 一旦你们制定了涵盖所有联合企业的最佳成本解决方案,你知道其最合适的仓库在哪里,这使你有一个仓库。 回到这一解决办法,即把该仓库作为最合适的共同点,并找出基于什么解决办法。 这给你带来了另一个最合适的仓库,因此,你可以回到所有仓库的位置,找到最佳解决办法。

我往往要付出代价来消除这种错误,但是,由于N公司和K仓库,你可以采取N级步骤,每个步骤都以考虑不超过Nk以前的解决办法为基础,因此,我认为,费用是KN^2。

问题回答

这是NOT的一个集群问题,是一个设施所在地问题的特殊案例。 你们可以采用普通的分类账/线式方案规划一揽子方案来解决这个问题,但由于问题已步入正轨,可能会有效率更高(而且软件成本低)的算法。 你们可以考虑动态的方案拟订,因为可能有多种设施可以迅速消除。 查阅P-Median problem 用于更多的信息。





相关问题
How to add/merge several Big O s into one

If I have an algorithm which is comprised of (let s say) three sub-algorithms, all with different O() characteristics, e.g.: algorithm A: O(n) algorithm B: O(log(n)) algorithm C: O(n log(n)) How do ...

Grokking Timsort

There s a (relatively) new sort on the block called Timsort. It s been used as Python s list.sort, and is now going to be the new Array.sort in Java 7. There s some documentation and a tiny Wikipedia ...

Manually implementing high performance algorithms in .NET

As a learning experience I recently tried implementing Quicksort with 3 way partitioning in C#. Apart from needing to add an extra range check on the left/right variables before the recursive call, ...

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

Enumerating All Minimal Directed Cycles Of A Directed Graph

I have a directed graph and my problem is to enumerate all the minimal (cycles that cannot be constructed as the union of other cycles) directed cycles of this graph. This is different from what the ...

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签