통계이야기 1
  통계이야기 2
  통계이야기 3
  통계이야기 4
  통계이야기 5
 
[로또]로또 숫자 뽑는법
[로또 숫자 뽑기]희망을 갖고


이론적으로 숫자를 random하게 뽑으면
여러분이 당첨 확률을 절대로 올릴 수가 없습니다.



그러나 이론적으로 random하게 숫자를 뽑는 방법 역시 없습니다.
컴퓨터에서 뽑는 무작위 숫자(random number)도 완전한 무작위 숫자가 아니라
“유사 무작위수(pseudo random number)”에 불과합니다.
또한 구슬이나 화살등 기구을 사용하는 경우도 기구의 결점 또는 사람들의
습관등에 의해 완전한 무작위을 보장 할 수 없습니다.





이러한 점을 이용해서 혹시 당첨 확률을 올릴 수 있지 않을까요?
즉 지금 까지 어떤 특정한 숫자가 다른 숫자들 보다 당첨 숫자에 많이 나왔다면
이것을 이용하여 복권 숫자를 고르는 방법은 없을까요? 예!! 있습니다.
[inverse method]을 이용하면 됩니다. 그럼 어떻게 하면 되지요?





<알고리즘>


1. 지금까지 당첨된 숫자들의 분포로 조사한다. 0이 몇프로,1이 몇프로,2가 몇프로 등등..

2. 이 숫자들의 분포를 가지고 경험 누적 분포를 만든다.

3. 0~1 사이에 아무 숫자를 random하게 뽑는다. 이때 나온 숫자를 y라 하자.
(컴퓨터 언어 프로그램에 이 숫자를 뽑는 방법은 다 되어 있습니다.
예를 들면 RANDOM(SEED) 이런식으로 함수로 저장되어 있습니다. 아래 그래프에서는 y=0.7133이 뽑힌 경우입니다.)

4. y값으로부터 경험 누적 분포 함수의 역함수 관계를 따라 x값을 구한다. 즉 x=F-(y)





<그래프>







여기서 y는 난수로 0.7133이 뽑혔고 이것을 역함수 관계로 따라가 나온 x 값이 6입니다.
이런식으로 8개의 값을 뽑으면 됩니다.(주의: 할 때마다 seed 값을 바꾸어야 함)