|
|
发表于 2012-8-16 23:39:06
|
显示全部楼层
其實我不太了解kelitina主 是要抓出每tick資料嗎? 還是你是要抓每一tick的運行時間?
7 D8 p* [2 [" c- |1 Z1 ]1.如果是抓每一tick的時間, 我的印象中你的agent如果太多就會超慢(有時還會當掉)
: Z2 C& e4 o6 P) @4 y6 D2.如果是抓出每tick資料我再回你~!
' y! G! a0 Y2 V! J0 T( I3.如果都不是我講的這些, 在和我說一聲感謝!!
( X/ t* Z+ h+ Z$ Y/ p! P---% G$ Q2 A8 N E. N
或是說, 你可能遇到的困擾可能是我下面提的這個也有可能:
8 b1 k$ N, o! r" d. t時間這部分牽扯到兩種模式, 我把它叫做"時間模式" 和 "流程模式"7 _% V6 G4 M9 t* ?8 k |
! D$ F- j% O) w; c& C- d
「時間模式」就是一個tick代表一個時間單位, 可能是秒, 是時 ,是天. T6 p* R6 U, }& A: C( z3 w
但這有個問題, 因為我們在寫agent的時候, 很難去分說agent做這件事花多少時間. [+ K' U* z" X, A9 I
可能在一個市場仿真中, 顧客每一tick移動是一分鐘(或30秒)
% p* I+ L- q: q$ i但是補貨員可能兩天才來補一次(等於你要寫個IF條件判斷說時間到了2天才能GO)4 J' O1 c w; @+ X D) A w! L
但是這會有個"誤差"存在才對, 所以如果真的要這樣寫我是建議加上一個random variable
' b/ N# D# p% i4 {. }) ]. ~8 h. d* R: r2 h2 [
「流程模式」就是一個tick代表一個階段性任務的完成, 可能是火車過一站算一個tick
- t T. x2 w: \8 d$ V* e這也是ok的, 但是火車過每一站的時間其實不同, 所以這部分就會被忽略掉, 但是要小心
0 |; I! n9 G7 [6 {; L9 H1 @/ y這可能是會影響你的結果的關鍵因素
2 U( H8 n+ a- p- A% m: G- L5 S(例如其實火車可能因為某一站路途過長, 原則上應該會在半途沒油之類的): [% r5 y/ q9 _$ h
; \, x/ z c% a" Q: O- A. ]---
4 v2 P* C X2 l至於我的經驗是這樣, 和你分享:" _4 y# s" o8 V* F* T6 H1 o
像我跑的大部分都是以日為單位4 _% z, t' G8 m% |+ _1 [5 @. w& M
可能跑個10年20年, 如果是這樣的話, 我是以tick轉換成office日期為主, j! \$ p) o) M1 A* V, Q- k
所以tick=1時就是1900年1月1日(office的設定)/ I/ _- j4 K# W# E
依此類推, 我在做期貨仿真會有些不同, 原因是我從2000年起做期貨交易仿真
3 T$ Y; I4 Z1 R3 e( z可能有幾天有颱風天(台灣遇到颱風大部分會放假) 彈性休假 閏年 過年等等, 會仿真的比較全面 |
|