|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
% H* f! {' M. d7 O1 v' g% b7 h1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)" _* V9 r8 F2 o$ e6 O" g( s! _
2.如果是抓出每tick資料我再回你~!
. c5 s1 T( D# q4 @$ \) Y3.如果都不是我講的這些, 在和我說一聲感謝!!) ?9 C. {7 z/ O% G1 u6 ^
---
0 r, Q- Y& R& c) S1 P/ A S# z或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
2 l1 ?% _5 x) Y4 L" [時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
/ o9 N) q+ [9 L& V4 u
. Y% s& v, q( p4 i3 {「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
. i# S8 q" c+ j' _0 h: u- J' H9 O但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間
0 o- E; Q# y; s/ r% c可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)( S9 q& u4 E u3 o) @7 ?1 s
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
' n! ~3 r2 y: U* b' ?) _- O但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
' _4 y6 \- K2 {3 `6 @+ p8 |0 r0 W' R# r- D/ f8 G
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
, S0 r9 ^& k! T+ ^這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心: {0 |: y, W) S0 n* u& N9 `
這可能是會影響你的結果的關鍵因素
. T% _' g9 F ~0 k3 I5 T(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)
; w5 V4 L; l s' \
6 i5 H6 q6 P' E* t# _4 w3 e---
1 }8 L2 l* t( R8 Z% l至於我的經驗是這樣, 和你分享: q% m5 E6 L) e" c7 z) ~! ]
像我跑的大部分都是以日為單位) c5 T! ^* P0 M: |6 ]0 o( B( x
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主1 A& T' K: G: ~+ J
所以tick=1時就是1900年1月1日(office的設定)- O' q; m$ m: B& Z
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真+ f% q# E# s$ A6 ~( F% J
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|