全球FlexSim系统仿真中文论坛

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

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

[复制链接]
跳转到指定楼层
1#
zorsite 发表于 2013-3-25 13:54:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
资料来自《实用系统仿真建模与分析——使用Flexsim》,作者秦天保 周向阳
' t8 C1 z: g- [4 c3 @5 ?4 o第四章 随机数和随机变数的生成7 s$ h, T) o1 X. R3 Z! \2 n

% M; ~+ A2 D4 o% v! R  b仿真软件一般会将整个随机数序列分成若干段,例如100000个数为一段。
2 m2 Y' Q6 m$ d* l$ l, a. x& j每段成为一个随机数流(stream),每个流会指定一个编号,如0号流,1号流等等。
; j* ?8 M* F! }" B" H# K$ k
4 x; {- W; a1 |9 K在Flexsim中调用指数分布函数的形式为exponential(location,scal,stream),其中第3个参数stream就是指定从哪一个流求取下一个随机数,如果省略参数流,则默认使用0号随机数流。+ B' e. i3 ?. D- Y% B

0 ^0 z" J/ z- r5 N7 s% q$ AFlexsim系统已经初始化了100个随机数流(0~99号),可供直接使用。0 j3 B. E# ~6 ?8 V; c

- E4 l% l7 n# j( Q; Z& j如果一个流的随机数在模型运行过程中,经过不断调用耗净了,根据递推公式下一个随机数就会侵入下一个流中去了,这会导致不想要的相关性。为了提高模型输出数据的准确性和精度,建议为模型中的每个对象甚至每个随机因素指定不同的流号。+ |2 S+ u( s0 @( s- P
5 R( o% V7 g! z; W. \8 s8 t
参考文献:
& A/ j& z  o* r* I5 c; |9 ~3 {0 S3 b& v0 [; B+ K$ ?2 r1 v

, p9 w8 L6 M# ~; E
' ^! A8 A* h  k6 K! s

本帖子中包含更多资源

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

x
2#
king 发表于 2013-3-28 23:37:47 | 只看该作者
学习学习
3#
嗜血黑猫 发表于 2013-4-24 22:45:44 | 只看该作者
非常需要这方面知识啊谢谢
4#
lisa527 发表于 2013-11-18 13:26:51 | 只看该作者
本帖最后由 lisa527 于 2013-11-18 13:39 编辑 , i8 B2 l7 a) Y: p, z9 ^  p; L

( @0 Q' _4 w/ ?这个问题困扰我好久了,现在一次性了结$ K! |) {$ u) Z8 H5 X( K) I+ U
---------------------------------------------------------------------------------------------------7 ^/ C& m: }$ q* @1 D' C
-随机数是怎么生成的
  W4 [) w1 Q+ w$ o9 p8 k! i基于计算机方法生成的随机数称为伪随机数,因为其计算方法已知,不是完全的随机。现在比较流行的生产伪随机数的方法是 Linear Congruential Generation (混合同余法).
+ T# a1 P; m2 \# A) u- b" a6 [Linear Congruential Generation (LCG)[1]方法如下:  \. p$ b' v. y% q4 p
X_i=(aX_(i-1)+c)mod m                            (1)+ O$ F8 b( F6 E8 S6 r3 ?1 t* T
R_i= X_i/m
3 I1 n+ a6 T" {8 WSeed: X_0
" G; d% C" L- F0 w0 b; P% o' N* ~% O  s( d. X
-什么是stream?
  _" Y1 @- s" {  O5 t  I( R+ j基于m的限制,生成的随机数都是循环的,而且最大的循环周期是m。假设生成的随机数周期为P,随机数序列可以写作: X_0,X_1,…X_P,X_0,X_1…
% d" C6 h7 u3 j/ C4 M& |/ r7 s正因为它的循环性,取0-P之间任何一个数做seed都可以生成整个随机数列。8 ]- _$ S9 k- w' y. K
为了方便起见,我们把长度为P的随机数分为若干个随机数流(stream),比如说,分成b个,每个stream的长度为P/b: {X_0,X_1,…X_(P/b-1)}, {X_(P/b),…X_(2P/b-1)}…
7 h9 [! W, q5 r( F
0 L8 Y) R1 C2 a3 v-Stream有什么用?/ g; I; o- }) i* |' ~" S
通过观察(1)式可以得知,X_i  和 X_(i-1)是相关的。为了避免这种相关性,仿真时常常会选取不同的stream产生各个过程的随机数。
- t  Q$ X6 G3 X$ \: w  c) s! T5 T, M  b/ ]# Q9 ~
为此专门写了篇blog在http://blog.sina.com.cn/sui5277
5#
加油陶陶 发表于 2014-7-11 09:30:48 | 只看该作者
学习一下 谢谢分享
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2025-9-4 13:36 , Processed in 0.075547 second(s), 14 queries .

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

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