随机数生成算法的探索与评估
1. 物理规则与随机数生成的背景
物理的数学规则既与确定性宇宙相符,也与存在真正随机性的非确定性宇宙相契合,甚至还与“多世界”情景一致。在计算机领域,计算机本应是完全服从指令的,然而当我们要求计算机生成随机数时,这就如同要求一个确定性机器产生非确定性的结果,这显然是不可能的。所以,我们设计了伪随机数生成算法来尽可能模拟真正的随机数。
2. 线性同余生成器(LCG)
- 算法原理 :线性同余生成器(LCG)是一种简单的伪随机数生成器。实现该算法需要选择三个数 (n_1)、(n_2) 和 (n_3),从一个自然数(如 1)开始,通过以下公式得到下一个数:
[next = (previous \times n_1 + n_2) \mod n_3]
在 Python 中,用%代替mod,完整的 LCG 函数如下:
def next_random(previous,n1,n2,n3):
the_next = (previous * n1 + n2) % n3
return(the_next)
- 生成随机数列表 :为了更好地判断该算法生成伪随机数的能力,我们可以创建一个函数来生成一系列随机数。
def list_random(n1,n2
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



