设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6311|回复: 1

[悬赏] 怎么把tick设置为真实时间

[复制链接]
发表于 2012-6-14 15:57:55 | 显示全部楼层 |阅读模式
因为想模拟信息传播随时间的变化,需要得出某个时间传播到的人员数,用repasts怎么将tick和实际时间对应呢
发表于 2012-8-16 23:39:06 | 显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?+ c' u+ h; z- n1 p3 y1 \$ X
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉): T# |* p3 _# B, ^
2.如果是抓出每tick資料我再回你~!
' d5 N8 s$ ^+ a' y3.如果都不是我講的這些, 在和我說一聲感謝!!$ J! ?- d2 C3 }" v
---
& I: ]' ?0 v2 F: i! x或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:% j) h5 q% z6 w  l1 q6 M
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
6 N* T1 Y: O% x* G* Y& U* R3 c9 m1 B' e! e1 r' [
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
5 ^0 W9 [2 e7 D0 @5 v2 W3 v7 G0 t但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
  n! b0 T+ p0 Y' g% _可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)( O' b0 F0 r4 c
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
! Z1 u0 I/ Z0 u; N" r1 h* l9 b$ t: I但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
$ ~0 t6 Y( ^/ C" _3 n3 I
* w7 o" W3 g; }8 A8 d  Y  r「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
& ]' U0 n: r( j; }這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
2 i! T4 h9 {  q/ Z這可能是會影響你的結果的關鍵因素$ {+ o2 B" l6 i& v9 S* h
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)& W8 b1 Z. Q0 c: ^2 m, w$ W3 N
8 L2 E0 `4 ~) f7 e- f) |
---
+ S. I. ^, [# i" d+ N" Y至於我的經驗是這樣, 和你分享:# U; W" W, Y+ V) \
像我跑的大部分都是以日為單位
$ N$ u% |4 x* @0 u可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主; V$ l) h& e5 Y$ Q# }& z
所以tick=1時就是1900年1月1日(office的設定)8 R9 G2 {( M* s7 q3 U  p4 c
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
( i9 G, P9 [5 T5 p" |' g: P$ m: z9 ]可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 09:01 , Processed in 0.012979 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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