import numpy as np
Weyl sequence
Weyl sequence는 0과 1 사이의 난수를 발생시키는 순열로, 무리수 \(\alpha\)에 대해 \[0, \alpha, 2\alpha, 3\alpha, 4\alpha, ...\]를 각각 1로 나눈 나머지 값입니다.
즉, 무리수 \(\alpha\)의 소수점 부분은 0과 1 사이에 균등하게 분포(uniformly distributed)합니다.
예시
= np.sqrt(2) alpha
= [(i * alpha) % 1 for i in range(0, 100)] lst
10] lst[:
[0.0,
0.41421356237309515,
0.8284271247461903,
0.24264068711928566,
0.6568542494923806,
0.0710678118654755,
0.4852813742385713,
0.8994949366116654,
0.31370849898476116,
0.727922061357857]
\(\alpha\)가 \(\sqrt{2}\)라고 할 때, \(0, \sqrt{2}, 2\sqrt{2}, 3\sqrt{2}, 4\sqrt{2}, ...\)의 소수점 부분은 0과 1 사이의 난수입니다.
참고
Wikipedia contributors. (2022, November 27). Weyl sequence. Wikipedia. https://en.wikipedia.org/wiki/Weyl_sequence