|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?& p- H. x } O1 g" ?4 ]* _
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)5 H5 A* ]/ I7 O$ G$ H2 U
2.如果是抓出每tick資料我再回你~!7 K0 o# ~; S' a$ E
3.如果都不是我講的這些, 在和我說一聲感謝!!
: D2 I5 k8 |/ R" a2 L" A---1 M- U# G+ I4 [- y% R2 n
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
$ D/ ?7 X+ K. ]& U- p) u時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"* _1 h/ g8 i- B
( A! F5 S: {6 k, [: E& U
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
9 ^2 q, ^: X2 u4 G9 `但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
& X0 T6 u/ g" B可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)6 P, G. I4 C% k- E8 l
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)" A; B. c+ [% h8 x( d) T
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
- r+ o2 s" S1 K- y. \6 ?7 i
W& i2 _% n9 Q「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick& f u; ?; K$ o7 l
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
0 y% c" f% p& T# Y, F這可能是會影響你的結果的關鍵因素
$ s Z" Y7 o0 u(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)) t9 I; d3 ]8 ?; h4 L, l' f
) Y( G2 q$ [' ^% p8 D" R2 A& s
---
% B* e |9 y! X1 n至於我的經驗是這樣, 和你分享:
1 E9 m! j( m: ~1 n0 h# o像我跑的大部分都是以日為單位
' R( _! y9 a4 Z2 `+ N2 v5 F: X, V; _可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主1 t8 u* L* k! [" @. f% d( }# L
所以tick=1時就是1900年1月1日(office的設定)8 Z, Y r% H; l9 c: @
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
6 v) {- n5 j$ ]0 M! J/ d6 n可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|