全球FlexSim系统仿真中文论坛

搜索
查看: 23354|回复: 5
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
1#
zorsite 发表于 2013-3-25 13:54:54 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
资料来自《实用系统仿真建模与分析——使用Flexsim》,作者秦天保 周向阳
! T) t" H% \9 Y第四章 随机数和随机变数的生成9 q& e3 I$ a( E" z. l7 e3 h# j
1 ?4 k! ~$ m. Z8 B) A
仿真软件一般会将整个随机数序列分成若干段,例如100000个数为一段。
0 O9 A6 s  j* e9 S8 _6 M; r' P每段成为一个随机数流(stream),每个流会指定一个编号,如0号流,1号流等等。! ~6 @8 h' x# }

# r) S+ k# y# ^3 u+ P3 y/ z7 H/ ?, ~在Flexsim中调用指数分布函数的形式为exponential(location,scal,stream),其中第3个参数stream就是指定从哪一个流求取下一个随机数,如果省略参数流,则默认使用0号随机数流。
6 ^" @/ q' q- H$ w  K. u; ~8 p. ~3 W4 p6 p; W0 {
Flexsim系统已经初始化了100个随机数流(0~99号),可供直接使用。
( [+ d" u; c" J. G9 y& f5 ~3 ?4 a/ R1 y& [# S3 W
如果一个流的随机数在模型运行过程中,经过不断调用耗净了,根据递推公式下一个随机数就会侵入下一个流中去了,这会导致不想要的相关性。为了提高模型输出数据的准确性和精度,建议为模型中的每个对象甚至每个随机因素指定不同的流号。
! W/ Y, J) D2 V. ?1 A( @9 D! @- R# e8 n6 L) P$ }) x, N' U
参考文献:2 w1 P! Q9 j; A

" v$ ]3 T1 [/ u, g
# J+ h" h6 f  @# `4 P  p' Y7 U( ~# u* b3 x' _

本帖子中包含更多资源

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

x
5#
加油陶陶 发表于 2014-7-11 09:30:48 | 只看该作者
学习一下 谢谢分享
4#
lisa527 发表于 2013-11-18 13:26:51 | 只看该作者
本帖最后由 lisa527 于 2013-11-18 13:39 编辑
2 t) Z# K! d  N3 S; U
( P3 g! L6 y* v; {* R这个问题困扰我好久了,现在一次性了结
  C, z8 u8 P6 W, m! u2 P---------------------------------------------------------------------------------------------------
/ N4 B* ?2 [6 u9 v% @- C8 X-随机数是怎么生成的" q& `" z  l+ L- ]+ ]+ ~! v
基于计算机方法生成的随机数称为伪随机数,因为其计算方法已知,不是完全的随机。现在比较流行的生产伪随机数的方法是 Linear Congruential Generation (混合同余法).
; v4 Y/ y3 }  a) A- F5 `Linear Congruential Generation (LCG)[1]方法如下:& S, t% e3 b! C( t! Q) d
X_i=(aX_(i-1)+c)mod m                            (1)
0 P2 |* m- l6 q  x) ER_i= X_i/m0 {/ ]9 N! m& R9 l/ ^, Z; [: b
Seed: X_0
3 b% G4 e5 M( @# j9 j) f& b' o: D! k3 X1 n  p8 z
-什么是stream?6 ?. Y' i" \. }: x( `
基于m的限制,生成的随机数都是循环的,而且最大的循环周期是m。假设生成的随机数周期为P,随机数序列可以写作: X_0,X_1,…X_P,X_0,X_1…% J' z) E* H$ V& n% v: W2 j
正因为它的循环性,取0-P之间任何一个数做seed都可以生成整个随机数列。- F9 W7 j# m, x/ J9 v
为了方便起见,我们把长度为P的随机数分为若干个随机数流(stream),比如说,分成b个,每个stream的长度为P/b: {X_0,X_1,…X_(P/b-1)}, {X_(P/b),…X_(2P/b-1)}…" d/ a6 z9 w/ [1 m+ i; C1 F

3 ~' N, z6 q! m- b-Stream有什么用?8 B. ?/ I6 Q1 h, C5 c& o0 K
通过观察(1)式可以得知,X_i  和 X_(i-1)是相关的。为了避免这种相关性,仿真时常常会选取不同的stream产生各个过程的随机数。0 A6 m5 t; t4 f; b0 i' T" A" X

$ S( i8 e# y" Q- d. B+ C, b& e为此专门写了篇blog在http://blog.sina.com.cn/sui5277
3#
嗜血黑猫 发表于 2013-4-24 22:45:44 | 只看该作者
非常需要这方面知识啊谢谢
2#
king 发表于 2013-3-28 23:37:47 | 只看该作者
学习学习
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|全球FlexSim系统仿真中文论坛 ( 京ICP备14043114号-2 )

GMT+8, 2025-5-8 19:30 , Processed in 0.071386 second(s), 15 queries .

Powered by Discuz! X3.3© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表