난수와 무작위성의 역사

오늘날 우리는 컴퓨터 시뮬레이션, 암호학, 게임 등 수많은 분야에서 '난수(Random Number)'를 당연하게 사용합니다. 하지만 예측 불가능하고 패턴이 없는 숫자를 만들어내는 것은 인류의 오랜 고민이었습니다. 무작위성이라는 개념은 어떻게 발전해왔을까요?

고대의 무작위성: 신의 뜻을 묻다

고대 사회에서 '무작위'는 신의 개입이나 운명을 의미하는 경우가 많았습니다. 동물의 뼈나 주사위를 던져 점을 치는 행위는 예측할 수 없는 결과를 통해 신의 뜻을 읽으려는 시도였습니다. 고대 로마인들은 양의 관절 뼈(astragali)를 주사위처럼 사용했으며, 이는 현대 주사위의 원형이 되었습니다. 이들에게 무작위적 결과는 혼돈이 아닌, 인간이 이해할 수 없는 질서의 일부였습니다.

수학적 접근의 시작

17세기에 들어서면서 블레즈 파스칼과 피에르 드 페르마 같은 수학자들이 주사위 게임의 승률을 계산하기 시작하며 확률론이 태동했습니다. 이들은 무작위적으로 보이는 사건에서도 수학적 규칙과 패턴을 발견할 수 있다는 사실을 증명했습니다. 더 이상 무작위성은 신의 영역이 아닌, 분석과 예측의 대상이 되기 시작한 것입니다.

기계적 난수 생성의 시대

20세기 초, 통계학과 물리학이 발전하면서 대규모의 난수가 필요해졌습니다. 초창기에는 주사위를 수천 번 던지거나, 전화번호부의 마지막 숫자들을 취합하는 등 물리적인 방법을 사용했습니다. 1955년, 랜드 연구소(RAND Corporation)는 특수 제작된 기계를 이용해 백만 개의 난수를 담은 책 『A Million Random Digits with 100,000 Normal Deviates』를 출판하기도 했습니다. 이 책은 오랫동안 통계학자들의 표준 도구로 사용되었습니다.

컴퓨터와 의사난수

컴퓨터의 등장은 난수 생성의 패러다임을 바꾸었습니다. 하지만 결정론적으로 작동하는 컴퓨터가 진정한 의미의 '무작위'를 만드는 것은 불가능합니다. 그래서 등장한 것이 바로 '의사난수 생성기(Pseudorandom Number Generator, PRNG)'입니다. 이것은 특정 수학 공식을 사용하여, 시작점(seed)이 주어지면 마치 무작위처럼 보이는 긴 수열을 생성합니다. 이 수열은 실제로는 예측 가능하지만, 통계적으로 무작위의 특성을 대부분 만족시켜 시뮬레이션이나 모델링 등에 매우 유용하게 사용됩니다.

오늘날 우리가 사용하는 대부분의 난수는 바로 이 의사난수입니다. 그리고 암호학과 같이 더욱 높은 수준의 예측 불가능성이 요구되는 분야에서는 대기의 노이즈나 방사성 동위원소의 붕괴 같은 물리적 현상을 이용하는 '진성난수 생성기(True Random Number Generator, TRNG)'를 사용하기도 합니다.

신의 뜻을 묻던 주사위 던지기에서 시작하여 정교한 수학적 알고리즘에 이르기까지, 난수의 역사는 불확실성을 이해하고 활용하려는 인류의 지적 여정을 고스란히 담고 있습니다.