|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
5 |( d) N, D4 F$ V* h- f1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
; z, m: Z6 G0 ^5 x7 [* k( n* {2 ~2.如果是抓出每tick資料我再回你~!7 H- z5 V! l) e$ ?! c# h
3.如果都不是我講的這些, 在和我說一聲感謝!!
) |' D* W2 z0 f8 R' j" b3 k5 u---
" H2 t0 \4 e/ n9 L或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:& }7 Q' j+ Q: |! g
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式" D6 E; D% a1 }9 O- _
8 y; W8 F# H1 P0 _5 p
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天4 W; T9 W6 I* f' e: @9 g
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間9 o/ R6 W) @& A9 y% a
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)8 b' @, j2 S- B" U2 k! @& ?
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)
( }# W7 x9 V' i# a6 z6 x但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
, g7 f; m* k; P) B/ `! c& k2 J, ^; q! @. _, C( Q
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick% g Z9 l& Z7 w/ e1 ~! s
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心% [4 o# q% Y" D$ S2 h% X1 |, W
這可能是會影響你的結果的關鍵因素
9 J/ u4 \2 S' ~6 _4 i: E(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)
0 X+ R" N0 O3 o. |. n m$ e! [ V6 Y9 ?" f
---! x7 M8 s! ^+ C
至於我的經驗是這樣, 和你分享:
( G- t# V h) F; C8 D+ E. r像我跑的大部分都是以日為單位
% j. H" E2 E4 l6 F3 J- r. c1 [可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
- c6 ~5 Z* s# j# I; l! a所以tick=1時就是1900年1月1日(office的設定)
. D/ |5 K# S, _% v! p依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真, e1 K! e' h: C4 {' _/ g( Q
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|