|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
' v; a. g* \" [; S2 l) D; D1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
1 X; g! U+ u0 d& r0 b( r Q) L5 g2.如果是抓出每tick資料我再回你~!
7 |: C t: n8 V j: P ?; {5 x3.如果都不是我講的這些, 在和我說一聲感謝!!
1 V" e8 a n, T( Z+ B( }5 D; Q---
5 l2 u$ r3 G8 B+ \或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:4 x, I5 J: p+ R, G
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
6 r7 C1 E) |3 ~2 h
7 U& Z/ ?9 q5 M) l( d6 H「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
; d% q! S- q6 c# Y0 X% C; O9 P但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間+ b2 P2 c5 ~, W
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒): d/ V! X' P# w9 U* j& N; j, v$ a
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
9 O h2 F5 Z z* j+ r) b/ \9 j但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable: u3 T* e! {) h/ G. g
5 P5 c; ]8 I6 O# R/ p: ?8 S. Q「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
1 t4 {1 H5 Z, K0 r這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心" Y' B" F2 N( [
這可能是會影響你的結果的關鍵因素
2 S n% B' l6 ]3 P) p3 p F4 V$ @(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的), v5 Q; d6 Q, x* x3 S2 T3 D
2 D# X. g) H' S4 _" Z- Q7 [---
% ^4 B# r- b5 g2 e至於我的經驗是這樣, 和你分享:
2 F# M1 L" T; K) \+ q: _像我跑的大部分都是以日為單位$ |1 ^; Z0 r8 g" v! v: q& k; h" m6 A
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
4 K* {% H. l- D N* g4 P. S) @所以tick=1時就是1900年1月1日(office的設定)1 F6 j0 m) B0 o& Y2 d, c5 r1 ^) |2 L, e
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
( V: \/ l% D6 k d8 c( M可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|