主要内容

启动后为什么随机数重复吗?

所有的随机数函数,兰德,randn,兰迪,randperm从一个共享的随机数生成器,画值。每次你开始MATLAB®,发电机重置本身相同的状态。因此,一个命令等兰特(2,2)返回相同的结果的任何时候你后立即启动执行它。同样,任何脚本或函数调用随机数函数返回相同的结果当你重新启动。

如果你想避免重复相同的随机数数组时MATLAB重启,然后执行命令,

rng (“洗牌”);
在调用之前兰德,randn,兰迪,或randperm。这个命令可以确保你不重复结果从先前的MATLAB会话。

如果你想重复结果,你有MATLAB会话开始时没有重新启动,你可以重置发电机启动状态在任何时候使用

rng (“默认”);
当您执行rng(“违约”),随后的随机数命令返回结果相匹配的输出新MATLAB会话。例如,
rng (“默认”);兰德(2,2)=
一个= 0.8147 0.1270 0.9058 0.9134
中的值一个匹配的输出兰特(2,2)当你重启MATLAB。

另请参阅