我需要在使用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 。
更多&回答...