查看: 5|回复: 5

关于统计分布中“随机数流stream”的解释

[复制链接]

主题

0

回帖

544

积分

中级会员

积分
544
发表于 2013-3-25 13:54:54 | 显示全部楼层 |阅读模式
资料来自《实用系统仿真建模与分析——使用Flexsim》,作者秦天保 周向阳
第四章 随机数和随机变数的生成

仿真软件一般会将整个随机数序列分成若干段,例如100000个数为一段。
每段成为一个随机数流(stream),每个流会指定一个编号,如0号流,1号流等等。

在Flexsim中调用指数分布函数的形式为exponential(location,scal,stream),其中第3个参数stream就是指定从哪一个流求取下一个随机数,如果省略参数流,则默认使用0号随机数流。

Flexsim系统已经初始化了100个随机数流(0~99号),可供直接使用。

如果一个流的随机数在模型运行过程中,经过不断调用耗净了,根据递推公式下一个随机数就会侵入下一个流中去了,这会导致不想要的相关性。为了提高模型输出数据的准确性和精度,建议为模型中的每个对象甚至每个随机因素指定不同的流号。

参考文献:



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

主题

0

回帖

210

积分

注册会员

积分
210
发表于 2013-3-28 23:37:47 | 显示全部楼层
学习学习

主题

0

回帖

133

积分

注册会员

积分
133
发表于 2013-4-24 22:45:44 | 显示全部楼层
非常需要这方面知识啊谢谢

主题

0

回帖

588

积分

中级会员

积分
588
发表于 2013-11-18 13:26:51 | 显示全部楼层
[i=s] 本帖最后由 lisa527 于 2013-11-18 13:39 编辑 [/i]

这个问题困扰我好久了,现在一次性了结
---------------------------------------------------------------------------------------------------
-随机数是怎么生成的
基于计算机方法生成的随机数称为伪随机数,因为其计算方法已知,不是完全的随机。现在比较流行的生产伪随机数的方法是 Linear Congruential Generation (混合同余法).
Linear Congruential Generation (LCG)[1]方法如下:
X_i=(aX_(i-1)+c)mod m                            (1)
R_i= X_i/m
Seed: X_0

-什么是stream?
基于m的限制,生成的随机数都是循环的,而且最大的循环周期是m。假设生成的随机数周期为P,随机数序列可以写作: X_0,X_1,…X_P,X_0,X_1…
正因为它的循环性,取0-P之间任何一个数做seed都可以生成整个随机数列。
为了方便起见,我们把长度为P的随机数分为若干个随机数流(stream),比如说,分成b个,每个stream的长度为P/b: {X_0,X_1,…X_(P/b-1)}, {X_(P/b),…X_(2P/b-1)}…

-Stream有什么用?
通过观察(1)式可以得知,X_i  和 X_(i-1)是相关的。为了避免这种相关性,仿真时常常会选取不同的stream产生各个过程的随机数。

为此专门写了篇blog在[url]http://blog.sina.com.cn/sui5277[/url]

主题

0

回帖

365

积分

注册会员

积分
365
发表于 2014-7-11 09:30:48 | 显示全部楼层
学习一下 谢谢分享

主题

0

回帖

69

积分

注册会员

积分
69
发表于 2021-1-3 20:01:45 | 显示全部楼层
谢谢分享!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注公众号

相关侵权、举报、投诉及建议等,请发 E-mail:admin@discuz.vip

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.|京ICP备14043114号-2

在本版发帖
关注公众号
QQ客服返回顶部