20 世纪的科技进步很大程度上归功于概率论的发展和随机数发生器的发明。
随机数是可以解释为执行某些随机变量的结果的数字——概率论的基本概念。 在这种情况下,随机性的概念意味着在实验开始之前给定数量的值是不可预测的。
随机数的历史
人类使用随机数的需求早在科学家发明能够获取随机数组的设备之前就出现了。 长期以来,人们使用临时方法来生成随机数,包括有生命和无生命的物体。
最简单的随机数生成器最显着的例子之一是我们今天广泛使用的熟悉的骰子。 在初级和训练实验中,可以完全忽略骰子运动规律对环境、初始条件和人为因素的依赖性,因此骰子上的点数可以有一定保留地认为是随机的多变的。 骰子对概率论的发展起到了重要作用:1890年,英国研究员弗朗西斯·高尔顿提出了用骰子产生随机数的方法。
设备中稍微复杂一点的是另一种在日常生活中广泛使用的数字生成器——彩票鼓。 该设备是一个带有编号球的鼓,在旋转过程中这些球会在其中混合。 彩票鼓的主要应用领域是彩票和乐透。 很容易猜到,lototron 由于随机性和运行速度低,不适合用于严肃的科学实验。
1939年发明了第一个可以获取大量数据并适用于解决应用问题的随机数发生器。 Maurice George Kendall 和 Bernard Babington-Smith 发明了一种设备,可以生成包含 100,000 个随机数的表格。 而仅仅 16 年后,美国战略公司 RAND 将英国院士的结果提高了 10 倍——在特殊机器的帮助下,创建了一张包含一百万个随机数的表。 由于 George Marsaglia 在 1996 年收到了 650 MB 的随机数,用于生成随机数的表格方法得到了重大发展。 但由于范围狭窄,目前该方法并未被广泛接受。
与创建随机数表的设备相比,实时生成随机数的机器具有许多优势。 最早的此类机器之一是 Ferranti Mark 1 计算机,该计算机于 1951 年包含一个程序,该程序可根据电阻器的输入噪声流生成随机数。 有趣的是,创建这样一个程序的想法是伟大的英国数学家艾伦图灵。 随机数生成领域的另一个创新是 1957 年发明的 ERNIE(电子随机数指示器设备),最初用于生成英国彩票中的中奖号码。
伪随机数
随机数发生器的发明无疑大大加快了科学技术的进程。 然而,这些设备有一个非常重要的缺点,这大大限制了它们应用的可能性。 早在 20 世纪中叶,匈牙利裔美国数学家约翰·冯·诺依曼就指出物理随机数发生器在计算中的不适用性,因为无法重复随机实验,因此无法再现随机数测试机器的操作。 这就是科学界需要伪随机数的方式 - 具有随机数的许多重要属性的数字,但不是随机实验的结果,而是基于某种算法获得的。 John von Neumann 本人成为“平方中间”方法的作者,该方法允许您在输出端获得十位伪随机数。
当然,伪随机数的主要缺点是缺乏数据随机性,这在科学和生活的许多领域都非常重要。 另外,所有的伪随机数发生器都具有循环的性质,即从某一时刻开始重复输出数的序列,很多算法都是可逆的,有的甚至一维分布不均匀。 因此,目前,该领域吸引了许多寻求开发现有或创建新的高效伪随机数生成器的研究人员。
有趣的事实
- 根据一些历史学家的说法,第一次尝试生成随机数可以追溯到公元前 3500 年。 奇怪的是,它们与古埃及棋盘游戏“Senet”有关,该游戏包括在棋盘上移动筹码。
- 长期以来,人口普查结果和通过实验获得的其他数据表作为一些实际问题的随机数来源。
- 2010 年代初期,多州彩票协会的前安全主管利用了伪随机数生成算法中的一个漏洞。 入侵者可以访问用于确定彩票中奖号码的软件,利用该软件他可以在一年中的几天内确定中奖组合。 他在赢得 1650 万美元后于 2015 年受到指控。
- 安装在阿波罗飞船机载计算机上的伪随机数发生器曾导致其运动出现故障并严重偏离预定轨道。 正如科学家们发现的那样,用于计算角速度的发生器的输出数据在 80% 的情况下落入下半平面,这绝对不符合发生器结果随机性的要求标准。
生成随机数的问题是目前科学界最相关和最有前途的问题之一。 同时,对于远离科学世界的人来说,这个话题最有趣。 熟悉最著名的伪随机数生成算法及其使用领域。