为什么所有游戏,都不会把随机做成真的?难辨真假的伪随机!

B站影视 欧美电影 2025-04-11 17:31 1

摘要:首次研究它的人叫约翰·冯·诺伊曼,在他之后,又有了线性同余法,同样是先找一个数做种子,接着用种子乘以一个定数,再加上另一个定数,再除以另一个定数,最后取它的余数,并不断重复上述操作。

玩了这么久的游戏,不知道你有没有想过,游戏里的随机究竟是真随机,还是伪随机呢?

真随机很好理解,99%的概率,但很可能你连砍了几十刀,一刀都没爆…

而别人就算只有1%的概率,也防不住百发百中,总之,无法预测。

再来说伪随机,咱们先做个演示,现在,你任意取一个四位数作为随机数的种子;

然后对它进行平方,这时,你会得到一个8位数;

接着,把这个数字中间的4位数挑出来,继续对它平方,以此类推,你就能获得无数个值。

这便是最早的伪随机数生成算法——平方取中法

首次研究它的人叫约翰·冯·诺伊曼,在他之后,又有了线性同余法,同样是先找一个数做种子,接着用种子乘以一个定数,再加上另一个定数,再除以另一个定数,最后取它的余数,并不断重复上述操作。

通过这些方法取得的数值,虽然给人的感觉是随机的,但由算法模拟的随机数,会随着取样范围的变大,让数字排列陷入循环,即:具有一定的周期性。

比如:俄罗斯方块的掉落模式——

刚开始,程序员们会预先将几种方块放到一个“包”中;

然后把它们摇匀了再随机丢给玩家,这种设计让玩家在保持新鲜感的同时,还能获得成就感。

而除了游戏外,其实,平常我们随机播放音乐,也是一种伪随机,同样是把歌单里所有歌的排列顺序给打乱后,再重新生成一个歌单。

但这种“随机”很容易就能被察觉到,如果你突然想切到上一首歌,会发现,它还是你刚刚听过的歌~

来源:冷科普

相关推荐