我正在解决一个减少到以下方面的问题:
我认为这是一个几何概率,要计算答案,我们需要将包含所有K个点的所有圆的总面积除以正方形的面积,显然为1。
令K = 1,那么就很容易计算P,我们取这个点并围绕它旋转一个圆,这样它将绘制一个半径为2R的圆,其中包括所有包含该点的半径R的圆;剪掉正方形外的零件,并计算剩余的面积。
如果K = 2,则首先我们检查点之间的距离是否不大于2R,以便存在包含两个点的圆。但是我不太了解如何计算总面积,因为如果可以的话,最终的数字将是4叶花。以此类推,以获得更大的K ...
我觉得这可能是一个简单的解决方案,并且想知道是否有更优雅的解决方案。
答案 0 :(得分:2)
给定K个点,半径为R的圆盘如果覆盖了它们的凸包,则将其覆盖。如果尝试磁盘的所有位置,则最极端的情况是圆周穿过一两个船体顶点。如果考虑通过给定顶点的所有位置,则可以在与船体上两个相邻顶点的接触之间的角度内旋转磁盘。在旋转过程中,圆心描绘出半径为R的圆弧。
因此,圆盘中心的位置是由半径为R的圆弧构成的凸曲线多边形。要获得所需的概率,请将此多边形与单位正方形相交并计算出公共面积。
在该图中,K = 6点的凸包为绿色。红色圆圈是具有两个触点的极限位置。磁盘中心的位置以蓝色定界。
一旦有了凸包,构建曲线多边形就不那么困难了,要获得其面积,可以将其分解为标准多边形和一组圆形线段。
但是在单元格内修剪会使其颈部疼痛。
答案 1 :(得分:-1)
我认为可以对这个问题进行几何解决。但是,我也认为这可能是“蒙特卡洛法”的一个很好的应用领域。
通常,您可以使用monte carlo方法来计算数字PI。参见:
Animated calculation of the number PI using Monte Carlo method
现在,您的问题将需要进行额外的修改。您需要随机移动中心,并且需要随机选择R。
一种可能的算法如下:
加快上述操作速度的一种方法可能是这样的:
此方法的一个优点是,如果您的问题有所改变,则不必每次都提出不同的分析解决方案。您只需稍作更改即可重新运行上述算法,然后等待。