查看单个帖子
旧 2019-12-14, 20:13   #1
poster
高级会员
 
注册日期: 2019-11-21
帖子: 3,006
声望力: 66
poster 正向着好的方向发展
帖子 如何为伪随机数生成器设置自定义种子

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

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



回答:

这样做的旧方法:

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

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

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



更多&回答...
poster 当前离线   回复时引用此帖