设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3053|回复: 1

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

[复制链接]
发表于 2012-6-14 15:57:55 | 显示全部楼层 |阅读模式
因为想模拟信息传播随时间的变化,需要得出某个时间传播到的人员数,用repasts怎么将tick和实际时间对应呢
发表于 2012-8-16 23:39:06 | 显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?* G9 m) I0 a( D# @' G
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)% Z4 B; W+ K% D7 N* \
2.如果是抓出每tick資料我再回你~!. c0 X3 {/ }3 T; j' R  j* R/ E
3.如果都不是我講的這些, 在和我說一聲感謝!!
% k& K0 j! q# \/ k) u---
+ _7 ~, g* ^, j! }# d$ _或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:- V' y; z/ l& q' i+ ]; J
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"" d# }: m0 R( `, Y3 s8 h

7 Q! ^& M/ y7 Z# Y1 r  L「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
( l4 E& L5 t  |1 l但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間$ w  ^) O& Z8 E$ Z/ x0 j
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)+ j) A; f  r+ W
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
9 Z9 ]8 P8 E$ d% l% g% v但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
+ B5 e/ e" l# O# ~$ E) g2 B7 k# x- l3 F9 s. V* a) f4 T7 `+ m
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
5 {6 v* C( j; a. O' Y5 Q1 F9 h這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心) u9 u  G5 c* c% W1 e# m
這可能是會影響你的結果的關鍵因素
/ a9 W  H/ ?& X2 N(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)+ [+ X' Q0 O+ ]8 J% K! O

9 g/ K5 B. }$ r---
* A) _6 ?% _* k7 S7 x- B- t3 F, T至於我的經驗是這樣, 和你分享:$ k$ R5 q) A# p
像我跑的大部分都是以日為單位
/ r6 E* Z* c/ n; d可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主) ]) }& \# w, A) B* d# ?. U) n
所以tick=1時就是1900年1月1日(office的設定)
; A+ V$ v+ P+ G1 Z0 N6 E5 l依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
! V/ c4 E& I: g& {# l3 d3 y' L5 _9 e可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-21 21:52 , Processed in 0.012973 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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