|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?; h% d8 V4 u# K; {4 M
1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
! M% U& M2 b0 ]0 k; g. p$ f( L2.如果是抓出每tick資料我再回你~!
* q+ T& t# V% k$ c3.如果都不是我講的這些, 在和我說一聲感謝!!
. u9 X) y5 I1 K. J3 |---
h* u9 [2 S6 n- K1 o9 o0 ~5 q& N或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:. W' r: @7 `( s9 c1 t* j
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"/ L, s0 O- w p7 S6 k: U
' U% { S" s, Q% W% R# \3 Q- e8 {* X% y「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天: u, s2 A+ v0 I' h6 w. {
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間$ O) u6 ]8 p6 v: B. b* `/ K7 V1 W
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒): J9 ~6 J6 n4 o1 A3 u
但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)0 A" f& K3 p& [4 {7 L! l
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable, s- E V/ Y, d
0 Y% r4 R+ \. G「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
8 {) y6 L9 C/ Q' X1 A- n這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
9 V7 H. ]/ O; V& _3 m$ r6 p這可能是會影響你的結果的關鍵因素/ Q, h3 L! ?: e# f( U- H2 V# b
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的), W9 F- J4 m) Z3 Q
) l) `* t3 d e3 k
---
2 E8 ~' ]/ x8 ?; ~$ U. s3 Q: B至於我的經驗是這樣, 和你分享:
( \) z' `1 }8 Q8 Z- }4 I6 S( D3 B像我跑的大部分都是以日為單位
* w( ?4 p4 `2 b* W6 n1 z. A可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主
( g7 e2 @6 s% n/ P! A# h+ \所以tick=1時就是1900年1月1日(office的設定), N- G0 D' r8 ?, J: w
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真: M$ q5 n0 B$ _5 v. c" A7 @
可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|