numpy的偽隨機數發生器

2022-08-29 13:30:30 字數 878 閱讀 2846

在python的程式中,發現了如下的偽隨機數產生的**:

rng = numpy.random.randomstate(23355)

arraya = rng.uniform(0,1,(2,3))

該段**的目的是產生乙個2行3列的assarray,其中的每個元素都是[0,1]區間的均勻分布的隨機數

這裡看以看到,有乙個23355這個數字,其實,它是偽隨機數產生器的種子,也就是「the starting point for a sequence of pseudorandom number」

對於某乙個偽隨機數發生器,只要該種子(seed)相同,產生的隨機數序列就是相同的

下面給出幾個小例子:

# 仍以上面的seed為例,但執行多次

# 利用迴圈,執行4次

import numpy

for i in [1,2,3,4]:

rng = numpy.random.randomstate(23455)

arraya = rng.uniform(0,1,(2,3))

print arraya

結果如下:

可以看到,每次迴圈產生的偽隨機數都是相同的,這是由於每次偽隨機數發生器的種子都是相同的

下面,再看另外乙個例子

boost 隨機數發生器

在很多應用中都需要使用隨機數。本庫力求提供乙個高效的,通用的隨機數庫。boost庫有多種隨機數生成方式。先熟悉一下各種隨機數生成器的概念。數字生成器 number generator 它是乙個函式物件,沒有引數。類似於常見的rand 均勻隨機數生成器 uniform random number ge...

opencv隨機數發生器RNG

用opencv做演算法的朋友們肯定為隨機數煩惱過,新版本一直支援隨機數產生器啦,而且還繼續支援之前版本的c格式的函式,不過與時俱進,我這裡介紹c 的rng類。它可以壓縮乙個64位的i整數並可以得到scalar和array的隨機數。目前的版本支援均勻分布隨機數和gaussian分布隨機數。隨機數的產生...

產生隨意隨機數發生器

怎樣利用給定的隨機數發生器產生其它隨意你想得到的隨機數發生器。假定給定的隨機數發生器是變數產生離散變數x 服從某一分布 比如均勻分布。高斯分布等等 隨意你想得到的隨機數發生器滿足分布 y,如果x和 y其概率密度分布函式分布為 g x h y 假定用x 隨機數發生器產生 y隨機數發生器,以下分為2步求...