|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?4 d9 W$ w7 T, D% P- J) T
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)9 j* s" c3 v" Z
2.如果是抓出每tick資料我再回你~!
. u6 J# _2 M8 j! O7 z& S. f7 \3.如果都不是我講的這些, 在和我說一聲感謝!!
: E! V' L5 Y6 B \6 d- l+ b---
) \* N& K3 v% } S8 ?: \或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
5 [* w; R+ c! t7 P: r+ U時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"0 V2 J6 q- b) W" L* V" _5 F
. b" p$ B3 d# y$ } z9 g' v
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
/ ~ U- r1 @- ?6 _: ^5 o但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間2 i4 B$ x$ @- q$ o m, ~( I' r+ I
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
, F7 W3 M) E1 `/ \% F& K但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
+ k( j: B( d8 \" k5 }) `: X7 @但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable& G# E2 a6 v( K6 M9 d( h% X
( e/ E. {- ?( B( m「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
! {, f+ \' X/ \- V/ g這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心4 n) j5 {) X: e$ X0 \& ]1 [/ B
這可能是會影響你的結果的關鍵因素
- N7 z5 u5 F: K6 n(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)7 C! s1 L- J. \0 O
2 A# b' X+ O; X4 G! }* V& Z---
; \5 }+ P8 B* t' ~' E至於我的經驗是這樣, 和你分享:
- M9 Q+ ?4 X; R( ?像我跑的大部分都是以日為單位6 p; B- D3 f: L7 e: w6 _
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主! Y& P& a9 P9 F* X9 R+ y
所以tick=1時就是1900年1月1日(office的設定)
1 G# R% N' o6 o G7 n依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真- U' t2 ~$ G: m9 r7 {5 o4 v: `
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|