登录论坛

查看完整版本 : 如何为伪随机数生成器设置自定义种子


poster
2019-12-14, 20:13
我需要在使用randn伪随机数生成器的地方执行一些测试。我如何自己设置种子,所以每次运行此测试时,我都会得到相同的结果? (是的,我知道这有点奇怪,但这就是问题所在)。

我发现具有seed属性的RANDSTREAM对象,但它是只读的。有什么方法可以使用它为生成器播种吗?



回答:

这样做的旧方法:

randn('seed',0) 新方法:

s = RandStream('mcg16807','Seed',0) RandStream.setDefaultStream(s) 请注意,如果使用新方法,则rand和randn共享相同的流,因此,如果您同时调用两者,则与旧方法(具有单独的生成器)相比,您可能会发现生成的数字不同。因此,仍支持旧方法(和旧代码)。

有关更多信息,请参见http://www.mathworks.com/help/techdoc/math/bsn94u0-1.html 。



更多&回答... (https://stackoverflow.com/questions/4682080)