创建变量数量的随机流(独特的、确定的、独立)

1视图(30天)
对于我们的模拟,我们希望可重复(伪)随机数生成。
使用“全球“随机流的问题是,它可能是与其他MATLAB共享过程,可corrput(不可重复)随机产生。
现在,这是解决部分RandStream NumStreams的参数。创建,例如:
(s1, s2、s3、s4) = RandStream.create (“mrg32k3a”,“NumStreams”4)
这将创建四个独特的、确定的、独立的随机数流。
这个问题 :左边是固定在四个元素。
这个问题 :我如何推广这个处理 变量的数量 的随机数流?例如:
(? ? ?)= RandStream.create (“mrg32k3a”,“NumStreams”,K)
我能想到的一些 特别的 方法(例如,使用一个流为剩下的流生成种子)但我担心流的真正独立。

接受的答案

史蒂文的主
史蒂文的主 2022年4月14日
看到“Substreams”和“恢复状态的随机数字生成器繁殖输出”部分 这个文档页面 为更多的信息。
1评论
AJ
AJ 2022年4月14日
谢谢,很高兴知道这是正确的。:)
史蒂文,谢谢你多年来的贡献;你的恒力好只要我记得使用答案,和之前的论坛。

登录置评。

答案(1)

AJ
AJ 2022年4月14日
一些实验,细胞阵列的使用是一个解决方案:
K = 4;
myStreams =细胞(1、K);
[myStreams {}): = RandStream.create (“mrg32k3a”,“NumStreams”,K)
我宁愿一个标准的数组(而不是单元阵列),但“RandStream对象的连接是不允许的。使用单元阵列包含多个对象。”

类别

找到更多的在随机数生成帮助中心文件交换

下载188bet金宝搏


释放

R2021b

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!