第二章 文獻回顧
2.3 週期時刻表的穩定性分析
本節簡短地討論 Goverde 如何對週期列車時刻表進行穩定性分析, 內容是整理自[20], 符 號的用法均按原始論文, 並不加以更動, 而在[19]中有更詳細的討論。 除了說明理論的內容之外, 也討論其方法的限制,以及不能直接應用在臺鐵系統上的理由。
2.3.1
以
Max-Plus線性系統模化列車時刻表
考慮一個週期時刻表(或稱定型化時刻表), 其週期為 T , 通常是60分鐘。 時刻表中的事件 i = (Ei, Li, Si)是一個三元有序對。Ei 是事件的類別,分成出發、 抵達和通過三種,而抵達和通 過的時刻可以直接從上一個出發時間加上列車運行時間得到, 所以只要考慮出發事件就可以了。
而Li 是事件 i 對應的列車路線, Si 是其發生的車站。
令xi(k) 是事件i第k 週期的實際出發時刻, di(k) 是事件i時刻表中預定的出發時刻。 而 xi(0)和di(0)分別是事件 i的第一個週期實際出發時刻和第一個週期表定出發時刻。
事件必須在滿足若干的限制條件後才能發生。 第一個限制條件是列車不可以比表定的時刻 早出發, 即 xi(k) ≥ di(k) 。 因為是週期時刻表, 所以可以得到 di(k) = di(0) + k · T , 或是以
max-plus 代數的形式表示為
p 是最大的週期落差, 又稱為這個系統的階(order)。 定義回溯算子 (backward-shift operator) γ 使得 γx(k) = x(k − 1), 並且 γlx(k) = x(k − l)。 所以式 (2.1)可以表示成 刻的限制, 則我們得到以下的齊次線性系統 (homogeneous linear system):
x(k) =
2.3.2 Timed Event Graph
Timed event graph是一種帶有標記(mark)的有向圖(digraph), 可用於表示及分析動態 系統。 文中作者將列車時刻表系統以time event graph表示, 再以圖論演算法進行穩定性分析。
2. 一個 enabled 的 transition firing 時會移除一個指向它的邊的標記並加入一個標記到由 它出發的邊。
x1(k) ≥ x3(k) ⊗ 28 和表定出發時刻的限制是 x1(k) ≥ d1(k) 。 全部寫在一起並把不等號換成
圖
2.2: Timed event graph2.3.3
穩定性分析
文中作者對列車時刻表穩定的定義是: 列車延誤可以在週期中藉由時刻表中的緩衝而減少, 並能在有限時間內回到原來的表定時刻上運行。 從上面的定義出發, 從而有下述二個定理: Theorem 1. 5令A(γ) =Lpl=0Alγl 是不可約的多項式矩陣,6且 G(A0) 不包含圈 (acyclic)。 則A(γ) 存在唯一的廣義特徵值 (generalized eigenvalue) λ > ε 和有限個特徵向量 v > ε 使 得A(λ−1) ⊗ v = v ,7而且 λ 等於 G(A(γ))的最大平均週期 (maximum cycle mean)
η = max
ξ∈C
w(ξ) µ(ξ)
其中的C 是G(A(γ)) 中所有基本圈8的集合, w(ξ) 是圈 ξ 的權重, µ(ξ)是圈ξ 內標記總數。
Theorem 2. 令 A(γ) = Lpl=0Alγl 是多項式矩陣且最大之廣義特徵值為 λ0 。 則系統(2.2) 是穩定的若且唯若 λ0 < T 。
第一個定理提示了 G(A0) 的重要, 用 timed event graph 的語言來說, 就是圖中不可以 有沒有標記的圈, 否則有些事件就永遠不會發生。 以列車時刻表的觀點言之就是某些列車無法 發車, 塞在路上了 (deadlock)。 換句話說, 如果時刻表不是週期時刻表時, 從前面的敘述可知 G(A(γ)) = G(A0)於是這個分析就失效了,因為這個timed event graph上沒有標記根本不會 運作。
第二個定理則告訴我們, A(γ)的最大廣義特徵值 λ0 就是這個時刻表容許的最小週期時間, 所以當λ0 小於時刻表週期T 時表示此時刻表有T − λ0 的餘裕時間,反之則沒有餘裕時間所以 是不穩定的。 再從第一個定理可以知道,這個λ0 是G(A(γ))中耗時最多的路徑長度,也就是完 成一個週期的最小時間。 這也告訴我們這個方法不適於直接用來分析像台鐵這樣的系統,就算我 們用一天(甚至是一個星期)作為一個週期,要完成一個週期所需的最小時間也一定遠小於一天 (或一星期),而且實務上也很少有列車延誤影響到下一天的運行。 所以如果我們用這個方法來分 析臺鐵的時刻表,一定會得到穩定的結論 (即λ0 < T ), 然而這個結論是沒有什麼用處。
作者還定義了三種穩定度的指標如下: 1. ρ = λ0/T
2. ∆1 = T − λ0 9
3. ∆2 滿足(∆2 ⊗ A(T−1)) ⊗ v = v
5定理的標號是原始論文中的標號。
6也就是相應的timed event graph是強連通的(strongly connected)!
7注意這裡的λ−1 其實就是−λ, 後面的T−1亦同,因為在max-plus代數中的指數是通常代數中的乘法。
8基本圈(elementary circuits)是指在圈中每個頂點只經過一次的圈。
9原文中的 λ0 誤為λ,據[19]改正。
2.3.4
可實現的列車時刻表
列車時刻表並不一定都是可以實現的, 有可能某一個出發事件兩次發生所需的最小時間比 一個週期要大, 於是這個時刻表就不可能準點。 作者給出了一個可實現的充分必要條件:
Theorem 4. 一個週期時刻表在系統(2.2)中是可實現的(realizable) 若且唯若其初始時刻 d0 滿足d0 ≥ A(T−1) ⊗ d0 。
作者也證明了可實現的時刻表其最大特徵值 λ0 至多就是 T 。 也就是說可實現的時刻表除 了λ0 = T 的情況外是穩定的。
2.3.5
時刻表的穩健度
(robustness)和恢復矩陣
(recovery matrix)在這篇文章中, 作者認為穩健度決定於事件彼此影響的程度 (accessibility) 以及餘裕時間 (slack time) 的多寡。 因此為了討論時刻表的穩健度, 作者引入了恢復矩陣 R = (rij), rij 是事 件i 到事件 j 的恢復時間, 即所有路徑上餘裕時間之最小值, 於是有以下的定理:
Theorem 6. 若系統(2.2)是穩定的, 則
rij = d0i − d0j − [A+T]ij
其中 A+T = A+(T−1) = [Lpl=0AlT−1]+ 。
恢復矩陣的行、 列和對角線元素還可以有以下的解釋:
1. 延誤衝擊向量 (delay impact vectors): R 中的第 j 行是事件 j 到其他事件的恢復時間, 所以可以表示事件 j 延誤造成對其他事件衝擊的程度。
2. 延誤敏感向量 (delay sensitivity vectors): R 中的第 i 列是其他事件到事件 i 的恢復時 間, 所以是表示事件 i 對其他事件之延誤的敏感程度。
3. 循環恢復時間 (circulation recovery times): R 中之對角線元素是每個事件循環一次的 恢復時間。
其中的循環恢復時間可以視為是一種穩健度的指標,和之前所用的穩定度指標來比較,循環 恢復時間是局部的指標, 對每一個事件會有不同的值, 而λ0、 ρ 等是時刻表整體的指標。
2.3.6
延誤傳遞
因為每種列車在每個路段的最小運轉時間並不能從時刻表中知道, 作者採用了二種方式來 計算,第一種是以排定的時刻表時間作為最小運行時間;另外一種方式是把表定運行時間依經驗 折減 7% 作為最小運行時間。 在上述兩種方式下,分別算出了平均週期最大的四條列車路徑, 也 就是餘裕時間最小的列車路徑。
為了知道系統中影響穩定性的最關鍵因素,作者考慮不同的限制式組合,來分析每一種限制 式對時刻表穩定性的影響。 結論是取消等候旅客轉乘限制和使用額外的車輛 (也就是放鬆車輛 使用的限制) 能有效地增進穩定性;而減少列車的整備時間和轉乘時間則沒有明顯的效果。
最後作者計算了一個延誤傳遞的例子。 同樣的,作者也考慮放鬆其中的一些限制式來觀察其 效果。 最後作者表示這個方法可以應用到即時的列車延誤分析上。
2.3.8 Goverde
方法的長處與侷限
Goverde方法最大的優點是其模化能力相當強,許多實務上的限制都可以被納入這個架構。
像是列車與人員的運用、 車輛的連結與分解、 等候旅客轉乘等考慮都可以寫成 max-plus 代數 的式子。 因此應用時可以根據系統的特性、 資料的詳略及應用目的等考量選擇所需的限制式。 另 外其演算法相當有效率, 可以在短時間內計算龐大的路網, 也能作為運轉整理時的輔助。
Goverde 的方法不適用於非週期時刻表, 其理由已於2.3.3節中詳述, 所以不能直接用於臺 灣鐵路系統。 另外一個值得討論的是 Goverde 的模化只考慮列車的出發時刻, 因為他假定抵達 和通過時刻就是列車的上一個出發時刻加上固定的站間運轉時間。 但是實務上經常因為各種因 素使得列車在站間運轉時發生延誤,進而影響到其他列車的站間運轉時間,所以這樣的簡化在分 析延誤傳遞時會有問題。 我們以圖2.3來說明, 圖中粗實線表示列車表定的運轉曲線, 虛線表示 延誤發生時的運轉曲線。 圖2.3顯示了在車站2發生列車追越的情形, 如果先行的慢車發生延誤, 如圖中的虛線所示, 於是後方的快車被迫延後進站, 其站間的運轉時間因延誤而增加, 所以抵達 和通過的時刻不再是上一個出發時刻加上站間運轉時間。 因為不考慮抵達時刻,所以進站時隔的 要求無法被反映出來, 於是前方的慢車延誤不會影響快車通過, 這是不合理的現象。 即使把慢車 運轉時的延誤視為上一站的出發延誤,問題仍然存在。 如圖中所示,如果快車的後方還有一慢車, 在這個情境下延誤不會影響到後方的慢車,但如果將運轉延誤視為上一站的出發延誤,那麼就會 使後方的慢車也受到影響。 從上面這個例子可以知道, 還是應該把列車的抵達和通過時刻都考慮 進來, 才比較符合鐵路系統的實際狀況。