我可以使用什么算法来搜索一个有限的XY平面区域的最优(最小面积)覆盖,其中包含n个圆盘(xj,yj,rj)?我已经找到了许多关于固定半径圆盘的研究,但关于可变半径的研究却没有找到。n是固定的,但圆盘可以自由放置(它们不在指定位置,它们的中心也不需要在区域内)。该区域通常是非连通和非单连通的(可以由多个部分组成并且可以有孔)。在我的特定情况下,它由多个封闭多边形定义(使用奇偶填充规则)。
总结一下:
输入:
- XY平面的有限区域(例如,用奇偶填充规则的封闭多边形集合描述) - 整数n> 0
输出:
- 由中心x[i],y[i]和半径r[i]描述的n个圆盘列表,以便区域的每个点都包含在至少一个圆盘中
我目前正在研究基于查找中心点
总结一下:
输入:
- XY平面的有限区域(例如,用奇偶填充规则的封闭多边形集合描述) - 整数n> 0
输出:
- 由中心x[i],y[i]和半径r[i]描述的n个圆盘列表,以便区域的每个点都包含在至少一个圆盘中
最小化:
- 由圆盘并集覆盖的平面面积
示例
在这个例子中,输入是"A"形状。手动放置了十个点,并计算了覆盖 Voronoi 单元格与该区域相交的最小圆。我目前正在研究基于查找中心点
x[i], y[i]
并使用此算法计算半径 r[i]
的方法(搜索空间缩小到 ℝn,并始终产生可接受的解决方案)。