20세기의 과학 및 기술 발전은 확률 이론의 발전과 난수 생성기의 생성에 많은 영향을 받았습니다.
난수는 확률론의 기본 개념인 임의의 변수를 구현한 결과로 해석될 수 있는 숫자입니다. 이 맥락에서 임의성의 개념은 실험 시작 전에 주어진 양의 값을 예측할 수 없음을 의미합니다.
난수의 역사
난수를 사용해야 하는 인류의 필요성은 과학자들이 난수 배열을 얻을 수 있는 장치를 발명하기 오래 전에 발생했습니다. 오랫동안 사람들은 생물과 무생물을 포함하여 임의의 숫자를 생성하기 위해 즉흥적인 수단을 사용했습니다.
가장 단순한 난수 생성기의 가장 놀라운 예 중 하나는 오늘날 널리 사용되는 친숙한 주사위입니다. 기본 및 훈련 실험에서 주사위의 운동 법칙이 환경, 초기 조건 및 인적 요소에 의존하는 것은 완전히 무시할 수 있으므로 일부 유보와 함께 주사위의 점수는 무작위로 간주될 수 있습니다. 변하기 쉬운. 주사위는 확률 이론의 발전에 중요한 역할을 했습니다. 1890년에 영국 연구원인 Francis Galton은 주사위를 사용하여 난수를 생성하는 방법을 제안했습니다.
장치에서 약간 더 복잡한 것은 일상 생활에서 널리 사용되는 또 다른 숫자 생성기인 복권 드럼입니다. 이 장치는 회전하는 동안 내부에서 혼합되는 번호가 매겨진 볼이 있는 드럼입니다. 복권 드럼의 주요 적용 분야는 복권과 로또입니다. 로토트론은 낮은 무작위성과 작동 속도로 인해 심각한 과학 실험에 사용하기에는 적합하지 않다고 추측하기 쉽습니다.
많은 양의 데이터를 얻을 수 있고 응용 문제 해결에 적합한 최초의 난수 생성기는 1939년에 발명되었습니다. Maurice George Kendall과 Bernard Babington-Smith는 100,000개의 난수를 포함하는 테이블을 생성할 수 있는 장치를 만들었습니다. 그리고 불과 16년 후, 미국 전략 회사 RAND는 영국 학자들의 결과를 10배 개선했습니다. 특수 기계의 도움으로 백만 개의 난수 테이블이 생성되었습니다. 난수를 생성하는 테이블 방식은 1996년에 650MB의 난수를 받은 George Marsaglia 덕분에 상당한 발전을 이루었습니다. 그러나 범위가 좁기 때문에 이 방법은 현재 널리 사용되지 않습니다.
실시간으로 난수를 생성하는 기계는 난수표를 생성하는 장치에 비해 여러 가지 장점이 있습니다. 그러한 최초의 기계 중 하나는 1951년에 저항기의 입력 잡음 스트림을 기반으로 난수를 생성하는 프로그램이 포함된 Ferranti Mark 1 컴퓨터였습니다. 흥미롭게도 그러한 프로그램을 만든 아이디어는 영국의 위대한 수학자 Alan Turing이었습니다. 또한 난수 생성 분야에서 혁신적인 것은 원래 영국 복권에서 당첨 번호를 생성하기 위한 ERNIE(Electronic Random Number Indicator Equipment)의 1957년 발명이었습니다.
의사 난수
난수 생성기의 발명은 의심할 여지 없이 과학 및 기술 프로세스를 크게 가속화했습니다. 그러나 이러한 장치에는 응용 가능성을 크게 제한하는 매우 중요한 단점이 있습니다. 이미 20세기 중반에 헝가리계 미국인 수학자 John von Neumann은 임의 실험을 반복할 수 없고 결과적으로 난수를 재현할 수 없기 때문에 컴퓨팅에서 물리적 난수 생성기가 부적합하다고 지적했습니다. 기계의 작동을 테스트하기 위해. 이것이 과학계가 난수의 여러 중요한 속성을 가지고 있지만 무작위 실험의 결과가 아니라 일부 알고리즘을 기반으로 얻은 의사 난수가 필요한 방법입니다. John von Neumann 자신이 출력에서 10자리 의사 난수를 얻을 수 있는 "정사각형의 중간" 방법의 저자가 되었습니다.
의사 난수(pseudo-random number)의 주요 단점은 물론 과학 및 생활의 많은 영역에서 매우 중요한 데이터 무작위성이 부족하다는 것입니다. 또한 모든 의사 난수 생성기는 루핑 속성을 가지고 있습니다. 즉, 특정 순간부터 일련의 출력 번호를 반복하고 많은 알고리즘이 가역적이며 일부는 고르지 않은 1차원 분포를 갖습니다. 따라서 현재 이 분야는 기존의 효율적인 의사 난수 생성기를 개발하거나 새로운 생성기를 개발하려는 많은 연구자들을 끌어들입니다.
흥미로운 사실
- 일부 역사가에 따르면 난수를 생성하려는 최초의 시도는 기원전 3500년으로 거슬러 올라갑니다. 이상하게도 그들은 보드 주위에서 칩을 움직이는 것으로 구성된 고대 이집트 보드 게임 "Senet"과 연결되어 있습니다.
- 오랫동안 실험적으로 얻은 인구 조사 및 기타 데이터 테이블의 결과는 일부 실제적인 문제에 대한 난수 소스로 사용되었습니다.
- 의사 난수 생성 알고리즘의 취약점은 2010년대 초 Multi-State Lottery Association의 전 보안 책임자에 의해 악용되었습니다. 침입자는 복권의 당첨 번호를 결정하는 데 사용되는 소프트웨어에 액세스할 수 있었으며 이를 통해 1년에 며칠 동안 당첨 조합을 결정할 수 있었습니다. 그는 1,650만 달러를 딴 후 2015년에 기소되었습니다.
- 한 Apollo 우주선의 온보드 컴퓨터에 설치된 의사 난수 생성기로 인해 이동이 오작동하고 의도한 궤적에서 심각하게 벗어났습니다. 과학자들이 알아낸 바와 같이, 각속도를 계산하는 데 사용된 생성기의 출력 데이터는 80%의 경우에서 하반면으로 떨어졌으며, 이는 생성기 결과의 무작위성에 대한 필수 기준을 절대적으로 충족하지 못했습니다.
난수 생성 문제는 현재 과학계에서 가장 관련성이 높고 유망한 문제 중 하나입니다. 동시에 이 주제는 과학의 세계에서 멀리 떨어진 사람들에게 대부분 흥미로울 것입니다. 가장 유명한 의사 난수 생성 알고리즘과 그 사용 영역을 숙지하세요.