【学习笔记】球面上随机 N 个点在同一个半球上的概率

主要参考了这篇博客的做法,作者是履历惊人的前辈,很惊喜发现这个个人网站。

d-维空间的单位球面上随机分布的 N 个点,全在同一个半球上的概率是:

Pd,N=2N+1i=0d1(N1i)

证明如下:
首先随机抽取 N 个点 x1,,xN,考虑它们在球面上的对称点。在这 N 对对称点各取其一,一共有 2N 种取法。我们下面将这些取法当成样本,计算这里面有多少个样本满足 N 个点都在同一个半球上。不考虑发生概率为 0 的边界情况,对于任何一个半球,恰好有一个样本满足所有点都在这半个球面上。 接下来我们只需要计算有多少个不同的半球,对应不同的样本。

  1. 举一个边界情况的例子,三维球面上的三条线共点。

  2. 选取对称点的方法的 motivation 是什么?我能观察到的是,一个半球不能包含三个不共面的球里面的直径。但是根据这个结构我还不能自然想到这个建模。

半球与球面上的点有一一对应关系,这一点是这个半球的「极点」。以 xi 为垂线 [1],经过圆心画一个平面 ( d1 维),一共形成 N 个平面。这些平面将球面划分为若干个区域。很容易发现,对于同一个区域的点所对应的半球,都包含同一个样本;不同区域的点对应的半球,则包含不同的样本。

[1] 这里是 “以 Oxi 为法线的超平面”

这就是说位于同一个半球的样本数量等于 N 个经过球心的 d1 维平面将球面划分的区域的数量,即 2i=0d1(N1i),从而可得最终的结论。

这个数量的表达式非常不 trivial,作者在评论区里面写了使用归纳法,下面是我的一种归纳方式。

假设 Rd(N) 表示 d 维单位球中 N 个 d-1 维超平面能将球面分成的区域数量,新加入一个超平面后,这个超平面必然与先前的 N 个超平面相交,在球表面上的每个交对应两个新的区域,交的数量是用 N 个 d-2 维超平面将 d-1 维单位球面分割成的区域数量,也即Rd1(N)。于是我们得到了关键的表达式 Rd(N+1)=Rd(N)+Rd1(N),代入并使用组合数求和,就可以完成 Rd(N)Rd(N+1) 的归纳。

我们容易知道 Rd(1)=2 对于任意 d 成立,于是只用进行 N -> N+1 的归纳。于是我们完成了归纳。

posted @   没学完四大礼包不改名  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示