|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?# Q( o m* y8 o" h( g) B; j
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)( `9 i# ~1 }3 n d
2.如果是抓出每tick資料我再回你~!; b k# e# |( B: b4 A$ r( e7 `8 Y
3.如果都不是我講的這些, 在和我說一聲感謝!!3 Y6 O$ h/ b }' D- S6 ?: ?' O! k
---" K# [! o, G. l, p v
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
. A% N. v5 _: U" Q時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"2 H7 ?% \; T7 P9 O
, I( r( R3 Z6 ^* M( w9 p+ ~4 d5 C
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
/ M M$ p7 w/ N O1 T; a但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
2 Z/ |# N0 k5 ~& C. S可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
C$ y, |, T- }* Q( m% |5 E9 e但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
( t v+ i- f& t% E( U但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable) G4 x, @! S& J4 t' O. ]+ g7 _' f3 B
" S' q& J" I+ R) a# d, X/ l
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick# w* a( c6 L6 S& ~ |
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
3 K& J9 L$ M0 D這可能是會影響你的結果的關鍵因素' s0 Z' N ~( U% t. x# o* U
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的). @6 Q3 F& L* I5 E$ c& m
' y4 u3 z) z3 P" y3 d8 U---7 ^* r* m" h, g
至於我的經驗是這樣, 和你分享:: u& P2 @" o$ j" B8 h D
像我跑的大部分都是以日為單位* d+ C# L$ o- n( C& Y; F
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主9 ^1 @6 _- g; f. x. k
所以tick=1時就是1900年1月1日(office的設定)
+ _: N q9 `6 \9 L% }依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真; G2 W9 m% s% W* ?0 l
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|