Algorithm 如何用固定的圆数部分覆盖给定的形状?

Algorithm 如何用固定的圆数部分覆盖给定的形状?,algorithm,geometry,computational-geometry,Algorithm,Geometry,Computational Geometry,我不确定在这里寻求算法方面的帮助是否合适,但谁能给我一些指导,或者告诉我在哪里可以找到这样的指导?非常感谢 问题是这样的:给定固定数量的圆,我需要一个算法来找到这些圆覆盖给定形状的最佳位置和半径集,因此误差区域(给定形状外的圆部分+这些圆未覆盖的形状部分)最小?圆可以重叠。这不是一个小问题,当然也没有简单的解析解。例如:即使是最简单的版本-一个圆和一个简单的连接区域也不一定容易根据区域的形状来求解。通常也会有许多错误的最小值 我认为模拟退火是找到一个好的(如果不是最优的)解决方案的合适技术。实际

我不确定在这里寻求算法方面的帮助是否合适,但谁能给我一些指导,或者告诉我在哪里可以找到这样的指导?非常感谢


问题是这样的:给定固定数量的圆,我需要一个算法来找到这些圆覆盖给定形状的最佳位置和半径集,因此误差区域(给定形状外的圆部分+这些圆未覆盖的形状部分)最小?圆可以重叠。

这不是一个小问题,当然也没有简单的解析解。例如:即使是最简单的版本-一个圆和一个简单的连接区域也不一定容易根据区域的形状来求解。通常也会有许多错误的最小值


我认为模拟退火是找到一个好的(如果不是最优的)解决方案的合适技术。实际上,对于n个圆,您正在探索3n个变量(每个圆的x、y和r)的广泛变化函数,模拟退火是探索这种环境的一种相当有效的方法

这些是什么形状的?多边形?图像中的像素?什么?只是任意形状。每个圆都有自己的半径吗?或者所有相同的半径?可以得到它自己的半径。