|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?' }, m4 v( U% Q' G
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉) H2 @. Q7 C1 t3 g. G- h6 y
2.如果是抓出每tick資料我再回你~!
4 ^8 U6 w4 \- t4 A j3.如果都不是我講的這些, 在和我說一聲感謝!!
) s% C* U- w# E6 i r- H: W: q7 e- R. {+ g---
% `8 `- U* N$ `6 J( }+ w5 O或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
2 v- A% j& U2 g+ s4 B: V5 {" d時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"( I, E5 F, @" t V9 d; Q0 u* S
9 E. g3 h. {: h4 b1 w- P2 S! A
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天# T) T! E; S+ Y* D
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
6 |0 [ ~$ z& t, a5 C! d% T# p$ v可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
. \- T" J& k9 ~% o/ D/ o; T/ J% t但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
! P8 }; Q) t4 D& s) |8 E: P7 S9 f但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
" s( Y) V) n. n% I& r
% M5 U3 K) d( P1 R4 Q「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick z: N5 |) h0 E/ d5 c
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心, U" D" g. z2 K# F0 ~: k
這可能是會影響你的結果的關鍵因素/ c; H$ P" C6 c6 Z) e
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)+ C) R% h) @$ a/ T6 U9 l9 }
+ }% z9 W, Z3 c5 X" v; b$ k
---
; T* ~, U! e! \& l8 z: k5 [ g至於我的經驗是這樣, 和你分享:
R" x _1 e3 M* G0 |* w8 o像我跑的大部分都是以日為單位
8 D; a; P: {- h% n4 b可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主. F/ O( r. B- b) J' m
所以tick=1時就是1900年1月1日(office的設定)
! z1 ]+ O1 f- N+ c依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
3 b+ I Y4 ?+ A! f$ b% X8 B6 `! w/ @可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|