|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?! l% D- A" z) ^# ~% K& x0 g X8 @+ I
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
3 H* i- F% O9 l" d2 b2.如果是抓出每tick資料我再回你~!
; T+ K# C$ }3 `5 d. b3.如果都不是我講的這些, 在和我說一聲感謝!!
; H; P. _% ?) |0 H9 ]/ g---/ H0 o6 ^' h* X
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:' t% Z1 x1 L2 x; l/ `. k) B5 _
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
7 p" ^( \% p" \0 E( n# k1 L! Y. O8 l- Q4 Q2 Q# j* q" \
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
) T. ^' v4 e3 x) s但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間& s- G0 W& L. @1 t" z' j& V# P% a
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)& }$ r- t. k- n* p% F
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)8 S7 H1 S& W( Q) T- g
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable U# W" G+ S, z# I) [
4 \: r1 Y( a$ o# V) K. C0 |「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
* D* e/ u3 X/ p; s4 ^這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
* c/ `1 j7 e% `$ X& U6 S這可能是會影響你的結果的關鍵因素3 J. K; y f) `" Y7 G, g
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)2 A1 G, k- C o0 `6 j2 p3 ]9 {
. o! i( C f& b' r2 x
---0 A7 D1 \( ]/ e
至於我的經驗是這樣, 和你分享:
* w4 T" x: Z" m4 z5 I- G4 S( Z像我跑的大部分都是以日為單位: ]4 V9 C, S( q5 h
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
+ |0 R5 \6 G1 j: _, z k所以tick=1時就是1900年1月1日(office的設定)
`2 n# W+ z% a* a, D2 T依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
9 I* Z1 h9 H! d" q; W可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|