设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6796|回复: 6

[求助] 请教大虾!仿真结果的问题的疑问

[复制链接]
发表于 2009-6-2 00:07:42 | 显示全部楼层 |阅读模式
5仿真币
我建了一个模型,为什么每次仿真结果都是一样?( `) ~, @/ `! a+ `8 G- ^* E; `
设置的每个变量每次仿真出来的值都是一样,如每个机台的工作率每次都是一样的,但按照仿真原理来说,工件到达的时间间隔是满足一定得概率,机台加工时间也是符合一定得概率分布,应该每一次仿真出来的结果都不一样,但结果差不多,但为什么每次的结果都是一样的呢?* e% ]6 W5 z8 T$ u1 y
请问高手,解析一下。

最佳答案

查看完整内容

当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。 实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。
发表于 2009-6-2 00:07:43 | 显示全部楼层
当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。" t' Z; Q7 ^6 X* Z0 s) i1 D
实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。
发表于 2009-6-2 10:19:06 | 显示全部楼层
仿真软件的随机数都是伪随机数,大量的数据是服从分布的,但是同样一个分布在一个模型内,重复运行多少次数列都是一样的,所以会出现你说的那种情况。& f$ E7 s, g6 `# z+ ^
解决方法就是用实验管理器或者自己编程序让模型不刷新。
 楼主| 发表于 2009-6-3 17:55:14 | 显示全部楼层
哦~
# ?* c! |$ i1 |. d/ o& A5 [5 ^) z1 e3 R我懂了,我后来也发现了,是不是在每个分布设置时都要设置stream这个数,这个数是不是就是随机数产生原理(线性同余法)的种子(或叫晶籽)啊。; _: W6 A# ?* H8 \: X' N! s7 H" j
如果是编程对模型刷新,是不是对种子改变啊?还有别的方法啊?5 x# O( o$ N  |4 Y& A
还有实验管理器是什么?我是新手,em里面的很多东西都不知道啊~
发表于 2009-6-4 11:26:09 | 显示全部楼层
原帖由 kaly 于 2009-6-2 10:19 发表
) ^3 e5 y, p9 u+ ^" c仿真软件的随机数都是伪随机数,大量的数据是服从分布的,但是同样一个分布在一个模型内,重复运行多少次数列都是一样的,所以会出现你说的那种情况。
4 w- n+ o5 R7 u5 F, j  R解决方法就是用实验管理器或者自己编程序让模型不刷新。 ...
( M% J4 C  m0 E3 K: Z2 g3 ~
不太明白kaly的意思,比如说,正态分布中的z_normal(s,mu,sigma),如果s指定为一个确定的值,那么每次运行后的结果都是不一样的呀。你说的重复运行多少次数列都是一样的,什么意思呢?
 楼主| 发表于 2009-6-4 14:14:07 | 显示全部楼层
我尝试过了,如果不改变s这个值,系统仿真多少次结果都是一样的。* V: ?2 W  ^5 {& y
但改变了s这个值,结果就不一样了!
 楼主| 发表于 2009-6-10 02:17:14 | 显示全部楼层
原帖由 PINOCCHIO 于 2009-6-7 13:21 发表
' b( C4 D3 X# G. m, q当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。0 L4 D  T- O! r' L( ]) H1 V
实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。 ...
8 u) s4 \5 j7 s9 A2 |; n6 l. y1 z$ A
谢谢楼上的解答,原理我懂了,谢谢了~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-8-22 09:22 , Processed in 0.014146 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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