我想问下关于伪随机数学的问题?

发布网友

我来回答

4个回答

懂视网

找到伪随机数规律的方法有:

  1、直接法(Direct Method),根据分布函数的物理意义生成。缺点是仅适用于某些具有特殊分布的随机数,如二项式分布、泊松分布。

  2、逆转法(Inversion Method),假设U服从[0,1]区间上的均匀分布,令X=F-1(U),则X的累计分布函数(CDF)为F。该方法原理简单、编程方便、适用性广。

  3、接受拒绝法(Acceptance-Rejection Method):假设希望生成的随机数的概率密度函数(PDF)为f,则首先找到一个PDF为g的随机数发生器与常数c,使得f(x)≤cg(x),然后根据接收拒绝算法求解。由于算法平均运算c次才能得到一个希望生成的随机数,因此c的取值必须尽可能小。显然,该算法的缺点是较难确定g与c。

  因此,伪随机数生成器(PRNG)一般采用逆转法,其基础是均匀分布,均匀分布PRNG的优劣决定了整个随机数体系的优劣。下文研究均匀分布的PRNG。

热心网友

真正的随机数是没有办法获取的。所以,一般情况下都只能使用伪随机数来模拟随机过程。
一般的编程软件,它的伪随机数算法都能保证产生的序列周期很大,通常都大于10的9次方。现在随着计算机技术的算法的研究发展,不少伪随机数的周期已经远远大于这个数量级,甚至到了10的15到20次方。同时,伪随机数产生的起点,也就是种子可以通过热敏元件或者时间数据来产生,无法人为控制,使产生的数字序列更接近真随机状态。
因此,要掌握到算法及其规律,并进行所谓预测,条件必须是指导算法和种子。否则,即使是10的9次方的周期长度,按照*按照每秒一次动作的速度来计算,也需要在*上操作31年多,才能够找到完整的周期规律。这在现实中是不可能的!

热心网友

伪随机数直接看是看不出来的,除非知道初始值(种子)和算法,不然看起来和真随机数没区别.
伪随机数的意思就是看起来是随机数,但是种子和算法不变,输出的伪随机数列就不变,而真随机数每次输出都是不确定的

热心网友

C,C++,VB,C#中用的随机数都是伪随机数,伪随机数的一个问题就是取值分布不均匀。
比如抽奖,如果从100种随机抽取,如果1和100都是一等奖,但是1和100的出现机率完全不是1%,有可能比1%,也有可能比1%小.

也不知道各种数据库中的随机数最终是否也是采用了伪随机数.

目前如果要分布均匀,一般都是用高斯随机数算法,所以各位玩抽奖的同学,如果要公平,还是不要用系统自带的随机函数,需要另外自己写.

如果是游戏中色子,如果采用伪随机数的,而且随机种子相同的,那么会出现在相同时间点上获取的两个随机值相同的问题.有些游戏就是这么被破解的.追问我就是想知道*的运作是否是伪随机。并且我想通过计算得出伪随机数进行盈利。 谢谢。

我就是想知道*的运作是否是伪随机。并且我想通过计算得出伪随机数进行盈利。 谢谢。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com