设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6550|回复: 6

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

[复制链接]
发表于 2009-6-2 00:07:42 | 显示全部楼层 |阅读模式
5仿真币
我建了一个模型,为什么每次仿真结果都是一样?: C3 a: y8 X% H0 F$ |& f4 I. D) ?! y
设置的每个变量每次仿真出来的值都是一样,如每个机台的工作率每次都是一样的,但按照仿真原理来说,工件到达的时间间隔是满足一定得概率,机台加工时间也是符合一定得概率分布,应该每一次仿真出来的结果都不一样,但结果差不多,但为什么每次的结果都是一样的呢?
: x: K% Y+ x3 n4 Q! b  l请问高手,解析一下。

最佳答案

查看完整内容

当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。 实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。
发表于 2009-6-2 00:07:43 | 显示全部楼层
当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。, e' A5 V$ |+ G+ X: C: I
实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。
发表于 2009-6-2 10:19:06 | 显示全部楼层
仿真软件的随机数都是伪随机数,大量的数据是服从分布的,但是同样一个分布在一个模型内,重复运行多少次数列都是一样的,所以会出现你说的那种情况。/ x: B& \7 ^& \' ?4 O. S! N1 B! j
解决方法就是用实验管理器或者自己编程序让模型不刷新。
 楼主| 发表于 2009-6-3 17:55:14 | 显示全部楼层
哦~  _  n  K) K! d
我懂了,我后来也发现了,是不是在每个分布设置时都要设置stream这个数,这个数是不是就是随机数产生原理(线性同余法)的种子(或叫晶籽)啊。* d' R1 V) G; }/ `. C- t' Z
如果是编程对模型刷新,是不是对种子改变啊?还有别的方法啊?
7 D% Y4 o( C# z7 z. x: J2 q还有实验管理器是什么?我是新手,em里面的很多东西都不知道啊~
发表于 2009-6-4 11:26:09 | 显示全部楼层
原帖由 kaly 于 2009-6-2 10:19 发表   p/ |( N& @9 x2 k
仿真软件的随机数都是伪随机数,大量的数据是服从分布的,但是同样一个分布在一个模型内,重复运行多少次数列都是一样的,所以会出现你说的那种情况。
" ^1 L, c$ J% [# t解决方法就是用实验管理器或者自己编程序让模型不刷新。 ...
" R2 Y' p) J( o
不太明白kaly的意思,比如说,正态分布中的z_normal(s,mu,sigma),如果s指定为一个确定的值,那么每次运行后的结果都是不一样的呀。你说的重复运行多少次数列都是一样的,什么意思呢?
 楼主| 发表于 2009-6-4 14:14:07 | 显示全部楼层
我尝试过了,如果不改变s这个值,系统仿真多少次结果都是一样的。. |, B+ b* ]- |; b: M3 n1 P' q, z8 D
但改变了s这个值,结果就不一样了!
 楼主| 发表于 2009-6-10 02:17:14 | 显示全部楼层
原帖由 PINOCCHIO 于 2009-6-7 13:21 发表   u' p  h$ W2 ^9 s1 C
当然,使用的随机数流序号不变,那么种子数就不变,结果当然一样。4 b/ N5 N7 S. `) t$ Q1 o2 r) q) ^
实验管理器就是experiment对象,用它你就不用每次改变随机数流序号了,只要指定每次实验取多少个观察值就可以,它会自动使用的不同的随机数流序号。 ...
0 W% V& b& T* q% d/ o3 u
谢谢楼上的解答,原理我懂了,谢谢了~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-6 03:37 , Processed in 0.013986 second(s), 13 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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