|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
|, F4 E. e) p- G; { B2 }1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
) V k# U& o+ O' a2.如果是抓出每tick資料我再回你~!
" n8 S# u! y+ F; D3.如果都不是我講的這些, 在和我說一聲感謝!!
0 S0 F% n7 {* H: J---
3 ~4 l5 G3 O8 H1 a2 o6 T) P或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:3 [" n4 X3 h0 s5 T0 O* Q" D% r
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
4 W& `" U9 g. M4 [) v7 f( p0 B- W& G2 N! K0 B% g/ r
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天4 a, F) ~. V2 i/ }4 P7 j% V! S7 ?1 [9 P
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
: D/ q# U# g( j可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
7 U' Y8 ?# V7 R: g$ f6 z. Y. D但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)+ [- D. ^, A' O8 F
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable, j, [5 |( q+ b5 v, S4 j1 ~% L
5 `8 L' i$ c) m6 w$ j
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
. ~. }8 N* {3 z- V7 E# ~2 }這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
; ~9 g- K5 C# H; V q& j這可能是會影響你的結果的關鍵因素' H$ U! d, S2 O d; `
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)
( C h9 ^5 p; ^3 p
* b6 O- F- r! Y6 a' [% y. P' K---
; s8 {" `2 `+ H4 T% f i至於我的經驗是這樣, 和你分享:
8 }3 ^6 S$ k) @& m2 U像我跑的大部分都是以日為單位3 T. s) G+ Y5 b# c& k8 M$ \1 K/ ]
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
" D" E. N ^' B" n& m2 u9 Q所以tick=1時就是1900年1月1日(office的設定)
( v# F1 h# ^. d# T- E7 ^4 ?依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真$ H! V5 C. U. Z3 ~( y0 I" \' _
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|