|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
- N6 }: o6 a" |* N* L, c1 `1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)" R5 I5 j5 q7 t8 c
2.如果是抓出每tick資料我再回你~! Q% u. `" K5 {) ^( n* W& g
3.如果都不是我講的這些, 在和我說一聲感謝!!
& h& G. t7 z. _---% ^: M ~% o% _; c/ s( O& W) y
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:' F" e$ M0 q- R# b6 T
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"# Y7 ^. ?" v3 c( \! H' r! C; ?
7 \0 o, K4 s. `, D「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
' }; [& h! f6 p! T+ J; E; G但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間 i5 z8 T" U; B6 Q! K; U
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
( ~0 I1 \! B. [7 W8 P) Z但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
1 S% J3 h0 N8 Z9 W a3 p但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable8 H2 _6 k" Z; L3 ~& b
+ W1 A* j5 \4 L5 K% {7 [4 ?「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick4 V' V# H* o+ g/ N; ?$ ^
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心( g* p# ?9 [* ^ m7 W8 H
這可能是會影響你的結果的關鍵因素. U/ h; H% i1 ?0 o" @
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)
1 }2 W( P$ R# S1 W2 Z; d! T, c: f% y$ g: y4 |/ q/ r1 P+ V
---
/ C" ?5 W, _/ _至於我的經驗是這樣, 和你分享:
5 D3 ?8 q5 a' A2 R' V) z9 w像我跑的大部分都是以日為單位
$ E$ \1 ]* K3 E; a, d; W可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
7 e/ ?/ V4 i1 q# |2 k所以tick=1時就是1900年1月1日(office的設定)
* U: ^- l, A: i/ a P! k' x$ G ?依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
) |2 t, V0 ]7 j0 x可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|