|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
: i% d9 t3 _' ]: t. w8 d( m1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)* }/ v! p; P& Q8 C$ Y' t' Z
2.如果是抓出每tick資料我再回你~!
6 v( `, r0 H9 t+ `8 G+ ]. O3.如果都不是我講的這些, 在和我說一聲感謝!!+ s: H; q1 z: t
---
+ H& X" X- }" Y- I' h$ ^$ t( U或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:7 @# `7 _7 E, \
時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"
# ~* Q& `9 D% P4 l+ k0 _! f+ g' C: k3 n0 L7 ]( k' f) c; I2 j1 _
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天
9 q1 P9 W c- Z# f g但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間: k. u# A* S3 ~! S; m9 G, Q& ^
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
& E) A) B. \: }' B* b- u" k但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)! P4 c) O6 }( z
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
9 A$ {( X7 `0 e' b6 d( j/ P, W5 J
9 B, i& T5 [' T; K- q% {「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick+ _$ H$ v+ @- \
這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
9 g1 c5 Z; v/ z/ P3 N這可能是會影響你的結果的關鍵因素( Z7 ^0 h9 {9 O6 S6 C( h
(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的)% P% @( k5 O# c, W H
* m* m/ T5 A: c3 \* a6 M; Z' H% l
---% g7 X: {" V. |+ T6 r! R2 J g
至於我的經驗是這樣, 和你分享:2 z. w* S A) a6 u& A
像我跑的大部分都是以日為單位8 @( _* k( Q4 ~% Z$ Z
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主$ `: d7 J0 w0 u8 J- n5 Y! C' U
所以tick=1時就是1900年1月1日(office的設定)2 f4 Q6 ]; ~+ V: [3 y4 S
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
9 x" d! S' f1 V" @) R* b可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|