|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
5 Z' S- @6 e% z) F2 D/ O1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
# e; b7 D9 ~$ B( l' \2.如果是抓出每tick資料我再回你~!
7 @; ]3 K1 G! t Q3 R: m3.如果都不是我講的這些, 在和我說一聲感謝!!
1 W6 r5 d$ Y" X3 e( \6 f---+ M# O0 x$ e$ f5 D
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:, z2 a+ E/ U% t& e3 s
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"( s! P3 z$ I# V1 C
7 R& e1 Z! n$ {8 [/ r
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天; Z N. E9 L9 K6 |- {& ?
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間! F# X; v0 x3 a, ?: {
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒), t. C& f+ N- V1 b3 Q+ p& @
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
6 Z {& W7 `( r但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
/ c/ n# G+ r; ?5 }2 ~1 V: ^0 R
- ~0 ~+ w/ v* i9 J9 O3 D3 W「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick: s/ J, L. T! M6 ?9 U: o" O9 j
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心4 {* b: H6 \; I6 x; d' c3 u
這可能是會影響你的結果的關鍵因素
0 k+ P& v6 o2 n6 \+ b4 K(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)1 F6 q+ ]3 F$ [0 m: @- n& `
! v& d/ I/ v0 G- g8 `4 R8 K---& m. @ G; Q$ `6 q
至於我的經驗是這樣, 和你分享:
! A: `- Z! W5 j+ Q像我跑的大部分都是以日為單位9 w4 ]4 M( H0 R9 ^' }6 ~- g
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主; s# \% \5 ]1 {9 v9 Z. P1 g5 [2 S
所以tick=1時就是1900年1月1日(office的設定); H" D9 F8 \! ~. I5 z( A( @0 T
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
( \7 k# ?7 [7 C. I/ p, ?可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|