이전 블로그 내용 백업
위 예제는 가우시안 랜덤을 보여준다. 랜덤 숫자를 생성할시 대부분의 언어에서는 (0-1] 사이의 랜덤한 숫자를 뽑을수 있다. 하지만 이런 랜덤함수는 linear 한 분포의 랜덤값을 뿌리게 된다.
Box-muller transform 을 이용하면 정규분포를 따르는 랜덤값을 생성 가능하다.
JAVASCRIPT
function box_muller_generator(){
var x1 = Math.random();
var x2 = Math.random();
var u1 = Math.sqrt(-2 * Math.log(x1))
* Math.cos(2 * Math.PI * x2);
var u2 = Math.sqrt(-2 * Math.log(x1))
* Math.sin(2 * Math.PI * x2);
return u1;
}