Julia 随机结实范围

Julia 随机结实范围,julia,Julia,我想做一个函数,如果我输入一个参数请求一个确定性响应,它将始终返回相同的数字,否则将给出一个请求的伪随机数。不幸的是,我能找到的唯一方法是重置全局随机种子,这是不可取的 有没有一种方法可以为一次伪随机数抽取设置随机数种子,而不影响全局种子或该种子的伪随机数序列的现有进程 例 最简单的解决方案是使用新分配的RNG,如下所示: using Random function get_random(n::Int, deterministic::Bool) if deterministic

我想做一个函数,如果我输入一个参数请求一个确定性响应,它将始终返回相同的数字,否则将给出一个请求的伪随机数。不幸的是,我能找到的唯一方法是重置全局随机种子,这是不可取的

有没有一种方法可以为一次伪随机数抽取设置随机数种子,而不影响全局种子或该种子的伪随机数序列的现有进程


最简单的解决方案是使用新分配的RNG,如下所示:

using Random

function get_random(n::Int, deterministic::Bool)
    if deterministic
        m = MersenneTwister(1234)
        return rand(m, n)
    else
        return rand(n)
    end
end

一般来说,我通常不在模拟中使用全局RNG,因为它可以更好地控制流程。

最简单的解决方案是使用新分配的RNG,如下所示:

using Random

function get_random(n::Int, deterministic::Bool)
    if deterministic
        m = MersenneTwister(1234)
        return rand(m, n)
    else
        return rand(n)
    end
end
一般来说,我在模拟中通常不使用全局RNG,因为它可以更好地控制过程