设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9052|回复: 10

[求助] 关于Activity模块

[复制链接]
发表于 2009-5-3 23:43:32 | 显示全部楼层 |阅读模式
5仿真币
1个Activity模块,如何根据输入实体的不同属性设置不同的Delay值?
( m( t) j1 }+ r% w0 O4 e0 x+ J
4 }( B) B6 n( t" u& |) ]. m, c' L实体的属性是字符串定义的,Delay值符合Uniform Real分布。! d( ~: u3 ^+ X$ Q' O
是不是需要使用Equation(I)模块,将其与Activity连接?
2 p/ a. M. I8 X# |- z0 J( p实体通过该模块,并输出不同的Value值输入Activity。- S* w8 a& w( _& b7 e7 P) q! u
但是属性是字符串定义的,如何编入方程?; Y2 \8 z' Y; q8 P2 s+ R
怎样表示输出的值符合Uniform Real分布?  f+ p. k$ @* G# `  J% ?2 [
5 R) r" h+ A8 }: Q7 H9 Z
[ 本帖最后由 anniessnz 于 2009-5-4 00:15 编辑 ]
附件: 您需要 登录 才可以下载或查看,没有帐号?注册

最佳答案

查看完整内容

如果所有属性的Delay 分布都服从 Uniform Real 分布,参数也一致,可以直接定义一个数值型属性,叫做 Delay, 然后通过随机数发生器,把数值赋给 Delay.
发表于 2009-5-3 23:43:33 | 显示全部楼层
如果所有属性的Delay 分布都服从 Uniform Real 分布,参数也一致,可以直接定义一个数值型属性,叫做 Delay, 然后通过随机数发生器,把数值赋给 Delay.
发表于 2009-5-4 16:13:14 | 显示全部楼层
字符串的好处是易读,最好用数值型的,不然你还要去对应,麻烦。印象中软件哪一章有这样的案例你可以看看。
 楼主| 发表于 2009-5-4 21:58:54 | 显示全部楼层
整个模型都做好了,就这个环节有问题。所有ActivityDelay中只有这一个使用Uniform Real分布的,实体也都用字符串定义......
 楼主| 发表于 2009-5-4 21:59:31 | 显示全部楼层
原帖由 focuscon 于 2009-5-4 16:13 发表
; D' O# P% d: c* L- w字符串的好处是易读,最好用数值型的,不然你还要去对应,麻烦。印象中软件哪一章有这样的案例你可以看看。

4 V# L9 S9 d7 r, i9 _6 j% H
8 b# K  t" N9 f" i9 b
2 C' T4 w0 K0 Y9 r, L0 o) h哪一章?哪一节?
发表于 2009-5-5 10:22:45 | 显示全部楼层
原帖由 anniessnz 于 2009-5-4 21:58 发表 % x, o* T' H; W6 d* P
整个模型都做好了,就这个环节有问题。所有ActivityDelay中只有这一个使用Uniform Real分布的,实体也都用字符串定义......

2 U  {) I; R% V* Z- _+ m' Q& |& \# D
8 w) f8 w8 |. @, X, l& L你能否把模型发上来,把问题用颜色标示出来,这样比较明白你的问题所在。
 楼主| 发表于 2009-5-10 13:21:36 | 显示全部楼层
原帖由 iesim 于 2009-5-5 10:22 发表 ( K! G  Q2 }5 \

8 i. v9 W- F0 @4 ^7 ~
" V# j0 K0 M! l: d% h你能否把模型发上来,把问题用颜色标示出来,这样比较明白你的问题所在。
+ C6 `# L) L5 a. ^/ W# t! f# ~

2 x% M: d6 m  a5 M. }0 w3 a# ?6 F4 |: x9 y
模型发上来了,各位高手帮我看看吧

本帖子中包含更多资源

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

x
发表于 2009-5-10 18:55:18 | 显示全部楼层
答案早就有了 http://www.simulway.com/bbs/thread-13971-1-2.html

本帖子中包含更多资源

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

x
发表于 2009-5-10 22:39:48 | 显示全部楼层
谢谢Focuson, 的确我们可以用英文论坛中提供的方法。也就是在Equation 中写入如下公式
% ]8 ^4 y2 r8 S5 G, ?: Y8 }! ~0 z. a" Q* ?8 H0 x- y2 o% m2 P
if (SLStringGet("ordertype2", ordertype2)=="AB") delay=RandomCalculate(16,0.33,0.53,0);8 B5 E* r8 K$ @; P& X8 F
if (SLStringGet("ordertype2", ordertype2)=="BC") delay=RandomCalculate(16,0.67,0.73,0);- B  }# g0 F) e$ ~. ?" S
if (SLStringGet("ordertype2", ordertype2)=="AC") delay=RandomCalculate(16,0.47,0.6,0);
( ~) n3 R0 a3 k# nif (SLStringGet("ordertype2", ordertype2)=="ABC") delay=RandomCalculate(16,0.73,0.93,0);
. y1 k+ r* s0 M4 V7 r# |
+ }/ _! h2 H7 m3 j请注意,我把order type 2 这个属性 改成中间没有空格的变量 ordertype2. 如果一个属性要用在Equation 中,这个变量不要包含空格,否则会出错。
发表于 2009-5-10 22:40:39 | 显示全部楼层
修改已经存在属性的名称,不用删除这个属性,而是直接在 Executive 模块中修改。
发表于 2009-5-10 22:55:43 | 显示全部楼层
这个方法还可以节省不少模块,值得学习。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-31 02:10 , Processed in 0.015795 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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