【问题标题】:Quantifying the non-randomness of a specialized random generator?量化专用随机发生器的非随机性?
【发布时间】:2011-09-26 22:35:43
【问题描述】:

我刚刚阅读了this interesting question 关于随机数生成器的信息,该生成器不会连续三次生成相同的值。这显然使随机数生成器与标准的统一随机数生成器不同,但我不确定如何定量描述此生成器与没有此属性的生成器有何不同。

假设你递给我两个随机数生成器,R 和 S,其中 R 是一个真随机数生成器,S 是一个真随机数生成器,它已被修改为不会连续 3 次产生相同的值。如果您没有告诉我哪个是 R 或 S,我能想到的唯一检测方法是运行生成器,直到其中一个生成器连续 3 次产生相同的值。

我的问题是 - 有没有更好的算法来区分两个生成器?除了阻止三个相同值连续出现之外,不产生相同数字三次的限制是否会以某种方式影响生成器的可观察行为?

【问题讨论】:

  • 您是否将S 定义为R 但要拒绝以防止三个连续值?
  • 是的。如果有更好的方法,请告诉我!
  • @PengOne- 等等,让我澄清一下。我假设 S 是一个真正的随机生成器,而 R 也是一个真正的随机生成器,它拒绝会产生连续随机值的输出。这意味着 S 和 R 生成的序列不一定彼此重合;因为它们利用了真正的随机性,它们可以产生完全不同的序列。
  • 如果我是一个黑匣子,有一个 RNG、一个 PRNG 和一个 PRNG,它们不会连续三次生成相同的值,而你要求我给你一组“随机”数字唯一的限制是我必须使用相同的来源,你能告诉我使用的是哪个吗?我想如果你知道我用的是哪一个,你可能会想出一种方法来回答这个问题。

标签: math random


【解决方案1】:

由于Rice's Theorem没有办法分辨哪个是哪个。

证明:令 L 为正常 RNG 的输出。令 L' 为 L,但删除所有长度 >= 3 的序列。一些 TM 识别 L',但有些不识别。因此,根据赖斯定理,判断一个 TM 是否接受 L' 是不可判定的。

正如其他人所指出的,您可能可以做出“它已经运行了 N 步而没有重复 3 次”之类的断言,但您永远无法跳到“它不会永远重复一个数字的三倍。”更恰当地说,至少存在一台您无法确定它是否符合此标准的机器。

警告:如果您有一个真正的随机发生器(例如核衰变),赖斯定理可能不适用。我的直觉是该定理仍然适用于这些机器,但我从未听说过它。

EDIT:辅助证明。假设P(X) 以高概率确定X 是否接受L'。我们可以构造一个(无限数量的)程序 F,例如:

F(x): if x(F), then don't accept L'
      else, accept L'

P 无法确定F(P) 的行为。此外,假设P 正确预测了G 的行为。我们可以构造:

F'(x): if x(F'), then don't accept L'
       else, run G(x)

所以对于每一个好的案例,必须至少存在一个坏案例。

【讨论】:

  • 我不确定我是否明白赖斯定理在这里是如何应用的。赖斯定理谈到了 RE 语言的属性,指出没有非平凡的属性是可判定的。您能否详细说明这意味着无法确定哪个是哪个?我认为您可能正在做某事,但是如果没有更多证据,我不确定从“无法确定”到“没有算法可以以合理的概率找到它”的飞跃。
  • @templatetypedef:我添加了一些细节。你是对的,无法确定的 != 不能以合理的概率确定。不幸的是,我认为您需要以一种需要比我知道的更多理论的方式来定义“合理概率”。
【解决方案2】:

如果S 是通过拒绝R 定义的,那么S 产生的序列将是R 产生的序列的子序列。例如,取一个简单的随机变量X,其成为10 的概率相等,您将有:

R = 0 1 1 0 0 0 1 0 1
S = 0 1 1 0 0 1 0 1

区分这两者的唯一真正方法是寻找条纹。如果您正在生成二进制数,那么条纹非常常见(以至于几乎总是可以区分随机的 100 位数字序列和学生写下试图随机的序列)。如果数字统一取自[0,1],那么条纹就不太常见了。

一旦你知道分布,计算三个连续数字相等的概率是一个简单的概率练习,或者更好的是,在三个连续相等数字的概率大于p之前所需的预期数字数量你最喜欢的p

【讨论】:

    【解决方案3】:

    由于您定义它们仅在特定属性方面有所不同,因此没有更好的算法来区分这两者。

    如果你做随机值的三元组,当然生成器S 会比R 更频繁地产生所有其他三元组,以补偿丢失的三元组(X,X,X)。但要获得显着的结果,您需要的数据比第一次连续 3 次找到任何值所需的数据要多得多。

    【讨论】:

      【解决方案4】:

      可能使用耳鼻喉科(http://fourmilab.ch/random/

      【讨论】:

      • 您知道耳鼻喉科工作背后的任何理论吗?或者至少是描述它的参考文献?这主要是我感兴趣的。
      • 在我链接的网站上,有一份他们所做的所有测试的列表以及每个测试的简要原因。
      猜你喜欢
      • 2011-07-19
      • 1970-01-01
      • 2011-07-03
      • 1970-01-01
      • 2011-01-23
      • 1970-01-01
      相关资源
      最近更新 更多