可预测的随机序列取决于相关种子

时间:2015-05-30 06:02:11

标签: algorithm random numbers prng

我脑子里已经有了这个想法很长一段时间了,但是我没能用一种可搜索的方式表达出来,所以我想我会问这个问题。关于种子和RNG算法有很多信息,但我找不到关于两者之间关系的大量信息。许多讨论都脱离了数学方程式,似乎在谈论系列的分布,而不是两个给定系列和两个种子之间的区别。

更重要的是,我对这样的行为感兴趣:Two different seeds producing the same 'random' sequence。 简而言之,两个不同的种子(在字节表示中彼此稍微接近)产生非常相似的随机数序列。我希望有一个类似的行为,最好是条件简单,“两个种子彼此越远,两个系列就越不同”。

一些额外的背景(如果有一个更好的方法,我完全忽略): 我正在玩一些遗传算法,这种行为对我来说非常容易。我生成一些随机数并使用它们来探索非常广泛的选项空间。后来,我测试了这些数字并评估了该序列的“优点”。一旦我找到一个得分不错的序列,我希望能够在我的下一代产生类似的可重复随机序列,除了我希望它与第一个序列有点不同,但只是略有不同(因此更有可能坚持结果的“善”。

我使用种子作为序列的“标识符”,因此如果序列中的前20个数字对我有好处,我可以在以后产生额外的“好数字”。是否有任何算法,种子之间的简单关系将代表系列之间的某种关系?

我对这个非常含糊的问题道歉,整件事让我感到困惑......

[免责声明:我对这些算法的作用有“正确”的理解,我实际上无法从种子之间的关系映射到系列的关系]

1 个答案:

答案 0 :(得分:1)

我很怀疑,对于(伪)随机序列的相似性存在一般性可靠度量这样的事情:考虑这个例子(假设我们产生随机字节,即0-255)

序列A:5-6-7-8-9-10

  • 序列B1:105-106-107-108-109-110
  • 序列B2:95-94-93-92-91-90
  • 序列B3:6-5-8-7-10-9
  • 序列B4:10-9-8-7-6-5

B1-B4中哪一个与A最相似?