Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Algorithm 将均匀分布的点放在有孔的网上_Algorithm_Math_Linear Algebra_Distance_Differential Equations - Fatal编程技术网

Algorithm 将均匀分布的点放在有孔的网上

Algorithm 将均匀分布的点放在有孔的网上,algorithm,math,linear-algebra,distance,differential-equations,Algorithm,Math,Linear Algebra,Distance,Differential Equations,给定N个需要放置在黑蓝色地图上的黄色点。 红色箭头表示沿街道到您可以访问的下一个黄点的距离。 黄色的点不能放在蓝色的街道上,但是距离还是很重要的 我的问题是最小化sqrt(sum(distance_xy^2)),因此黄点具有最大的相等分布。 数字空间是N(自然数),因此点不能放在10.23上,只能放在10或11上 这张图片显示了一个解决方案,这显然不是完美的,也不是最坏的解决方案 我的方法 到目前为止,我还没有找到任何O(N)解,但如果我想象磁铁会相互抵消,它们会自行分配。但它可能取决于启动条

给定N个需要放置在黑蓝色地图上的黄色点。 红色箭头表示沿街道到您可以访问的下一个黄点的距离。 黄色的点不能放在蓝色的街道上,但是距离还是很重要的

我的问题是最小化sqrt(sum(distance_xy^2)),因此黄点具有最大的相等分布。 数字空间是N(自然数),因此点不能放在10.23上,只能放在10或11上

这张图片显示了一个解决方案,这显然不是完美的,也不是最坏的解决方案

我的方法

到目前为止,我还没有找到任何O(N)解,但如果我想象磁铁会相互抵消,它们会自行分配。但它可能取决于启动条件,但启动条件可能是O(N)

我可以把地图切成一棵树,我可以模拟磁力,但我不确定这一切是否会以完美的解决方案结束。 到目前为止,我只得到了一个遗传算法来提供一个好的结果,但也许有人知道“这是XY问题,这是解决方案”之一


非常感谢您的帮助:-)

您为什么不把所有的黄点都放在右边的矩形上呢?以点为单位的矩形的大小是多少?如果我把所有的都放在右边,那么在左边的矩形周围会有一个很长的距离。换言之,这甚至不会被分发。点的大小为零,外部矩形将为例如25x20个单位。这是对k-中心问题的修正,假设你有一条直线,100米和两个黄点。如果你想要离黄点的最大距离的最小值,那就是25,因为你把点放在25和75,你可以放在0,50和100。这个想法现在投射到上面的地图上。