超球面
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/23 05:07 UTC 版)
ランダムな点を生成する
(n − 1) 次元球面から一様に無作為に
一様に分布したランダム点を (n − 1) 次元球面(すなわち n 次元球の表面)上に生成するために、Marsaglia (1972) は以下のアルゴリズムを与える。
正規分布に従う n 次元ベクトル を生成する(実は分散の選択は任意であるが N(0, 1) を使うので十分である)。
今この点の「半径」 を計算する。
ベクトル は単位 n 次元球の表面上一様に分布している。
例
例えば、n = 2 のとき正規分布 exp(−x12) は別の軸 exp(−x22) 上拡大されたとき掛けた後 exp(−x12−x22) あるいは exp(−r2) の形を取り、したがって原点からの距離のみに依存する。
別の方法
超球面上ランダム分布を生成する別の方法は超球の外にある点を除く単位超球を含む超立方体上の一様分布を作って残りの内点を原点から表面の上に外へ射影することである。これは一様分布を与えるが、外点を除く必要がある。超球の超立方体に対する相対的な体積は非常に急速に次元とともに減少するから、この手続はかなり小さい数の次元に対してのみ高い確率で成功する。
ウェンデルの定理は生成される全ての点が超球面の同じ半分にある確率を与える。
n 次元球から一様に無作為に
n 次元球の表面から一様に無作為に選ばれた点とともに、n 次元球内の一様に無作為に点を得るためには半径のみが必要である。u が区間 [0, 1] から一様に無作為に生成された数であり x が一様に無作為に n 次元球の表面から選ばれた点であれば、u1/nx は全単位 n 次元球上一様に分布している。
注釈
出典
- ^ James W. Vick (1994). Homology theory, p. 60. Springer
- ^ a b c http://math.stackexchange.com/questions/479383/turning-higher-spheres-inside-out/479417#479417
- 超球面のページへのリンク