• 沒有找到結果。

第三章 規劃方法建構

3.1 大眾運輸路網建置

3.1.2 資料庫結構設計

為了解決大眾運輸路網特殊性的問題,本研究發展以下五點資料庫結構 設計上的策略,配合圖3.1 說明如下。

一、紀錄停靠站、路線和時刻表營運狀況

由於路線甚至場站的服務狀況都會因日期而變化,因此必須在時刻 表資料表中分別記錄車輛離開每一個停靠站之時間及營運狀況,以滿足 大眾運輸路網服務依時性之特性。如表 3.1 路線資料表所示,欄位 Sun

40

即代表星期日的服務狀況、欄位Mon 代表星期一的服務狀況,而資料內 容為 1 的情形即是在該星期路線提供服務,而其資料內容為 0 的情形則 是未提供服務,如路線B 欄位 Sun 的資料內容為 0 則說明在星期日為停 駛的狀態,當然除了路線外時刻表也會受日期而影響服務狀況,所以都 必須在資料表中記錄其營運情形,如表3.2 時刻表資料表中可知星期一早 上九點十五分路線B 的班車並未提供服務。

表3.1 路線資料表

ID Name Sun Mon ….

1 RouteA(往) 1 1 ….

2 RouteA(返) 1 1 ….

3 RouteB 0 1 ….

表3.2 時刻表資料表

ID RouteID Departure Time Sun Mon ….

1 1 8:00 1 1 ….

2 1 8:10 1 1 ….

3 2 10:00 1 1 ….

4 2 10:10 1 1 ….

5 3 9:00 1 1 ….

6 3 9:15 1 0 ….

二、不同代碼區別相同名稱停靠站

不同路線包含同停靠站方面,場站或站牌與路線之間是一對多的關 係,一個場站或停靠站可能是多條路線的上下車處,但透過資料庫中分 別給予該停靠站之不同代碼編號,將能簡化為一對一的關係。例如圖3.1 中A 路線包含停靠站 S,B 路線也同樣包含停靠站 S,但其停靠站 S 所屬 路線不同因此在資料庫中給予兩個代碼編號以示區別,如表3.3 停靠站資 料表中屬於路線A 的 S 場站代碼為 5,屬於路線 B 的 S 場站代碼為 6。

41

表3.3 停靠站資料表

ID RouteID Name Seq TimeA TimeB Latitude Longitude

1 1 StopA1 1 0 0 X1 Y1

2 1 StopA2 2 5 10 X2 Y2

3 1 StopA3 3 10 20 X3 Y3

4 1 StopA4 4 15 30 X4 Y4

5 1 S 5 20 40 X5 Y5

6 2 S 1 0 0 X5 Y5

7 2 StopA4 2 5 10 X4 Y4

8 2 StopA3 3 10 20 X3 Y3

9 2 StopA2 4 15 30 X2 Y2

10 2 StopA1 5 20 40 X1 Y1

11 3 S 1 0 0 X6 Y6

12 3 StopB1 2 5 10 X7 Y7

13 3 StopB2 3 10 20 X8 Y8

三、記錄行車路徑

對於一條大眾運輸路線,一般具有往返程兩條路線,但是在實際的 營運當中,還存在一些特殊的路線,例如公車在尖峰時刻,某些路線會 增開直達車(Express)和區間車(Locals),雖然車輛屬於同一路線,但其行 車路徑可能不完全一樣。大站快車只停靠需求性較大的停靠站。區間車 只在路線的部分區間行駛。因此當營運路線之往返程行駛路線或停靠站 不一樣時,在資料庫中即必須紀錄成兩筆路線資料,滿足大眾運輸路網 起訖點來回路線非對稱的特性,亦即在產製路線資料表及場站資料表時 以行車軌跡為主而非路線,如此不僅解決了單邊設站的問題也能區別不 同時間下的行車軌跡。如表 3.1 路線資料表中同樣是 A 路線但是往返程 不同的行車軌跡就需增加 ID 為 1 和 ID 為 2 的兩筆資料,並且在表 3.3 停靠站資料表分別記載路線中的停靠站情形。

四、求取所有節線之路徑與成本

節線之距離成本是利用節點本身的經緯度座標配合實際道路網,利

42

用Dijkstra 最短路徑演算法計算並記錄所有節線之路徑與成本資料,記錄 於轉乘可行及成本參照資料表,作為判斷兩節點間是否步行可及以及營 運路線間是否可轉乘之依據,如圖3.1 和表 3.5 所示,Stop A4 與 Stop B1 兩站距離在可接受步行範圍內 300 公尺,而行經 Stop A4 之營運路線為 Route A、Stop B1 之營運路線為 Route B,即可由該資料表判斷 Route A 與Route B 間,可在 Stop A4 與 Stop B1 進行轉乘。

表3.4 地標資料表

ID Name Latitude Longitude 14 Start Point X100 Y100 15 Landmark D X101 Y101 表3.5 轉乘可行及成本參照資料表

ID From

RouteID From

ID From

Name From

Seq To

RouteID To

ID To

Name To

Seq Cost 1 1 4 StopA4 4 3 12 StopB1 2 300

2 1 5 S 5 3 11 S 1 0

3 2 7 StopA4 2 3 12 StopB1 2 300

4 2 6 S 1 3 11 S 1 0

5 14 Start Point 1 1 StopA1 1 400 6 14 Start Point 2 10 StopA1 5 400 7 15 Landmark D 3 13 StopB2 3 400

求取節線之距離成本可以採用線上即時運算,但大路網的狀況下要 掌握運算的效率確實不易,尤其在使用者對於旅次規劃系統執行效率分 秒必爭的要求下,過長的系統回應時間只會造成使用者抱怨,先行求取 點對點最短距離和轉乘參照表之處理機制將能加速線上的運算速度,故 本研究之「轉乘可行及成本參照表」乃是採用此方法建置,具體作法說 明如下:

1. 基本資料篩選

本步驟在於透過篩選節點以有效增加處理績效,由於旅行者具 有最長步行距離限制,故若重要地標或停靠站間之直線距離超過此

43

一設定值時,即表示此兩點間在實際路網之最短路徑距離不可能滿 足最長步行距離限制,於是將其排除在後續最短路徑之分析集合 中。具體作法如圖 3.3 所示,當收集完所有節點(地標與場站)資料 後,針對欲計算步行距離之節點,利用其地理座標以該點為中心,

畫出四周各500 公尺(最長步行距離限制值)之正方形區域,再擷取 正方形區域內的各節點,納入最短路徑分析集合。

圖3.3 最短路徑分析集合篩選 2. 實際路網步行距離計算

依據前一步驟確定各起迄點間之最短路徑分析集合後,以實際 之道路路網進行最短路徑分析作業。本研究透過Dijkstra 演算法進 行最短路徑距離計算,依據起迄點之特性可區分為1.重要地標至重 要地標、2.重要地標至站牌和 3.站牌至站牌步三種節線。當取得重 要地標對重要地標之最短距離,即可以判斷兩重要地標是否滿足最 長步行距離限制;當取得重要地標至站牌的最短距離,系統將可以 藉此找出到達車站的距離;當取得站牌至站牌之最短距離,系統除 了可判斷起迄點間是否滿足最長步行距離限制外,也可以找出起迄 點到達上下車站所需的距離、或者找出當路線轉乘時,兩轉乘站間 的步行距離。

3. 產生轉乘可行參照表

經由前步驟完成求取場站至場站步行距離計算,即可知步行範圍內

轉乘可行與成 本參照資料表 z 地標對地標 z 場站對場站 z 地標對場站

500 公尺

地標資料表

場站資料表

44

的相鄰兩場站,如果所屬路線不同則代表可以經由這相鄰場站進行轉 乘,因此將資料分離出來就可以得到路線對路線的一次轉乘可行參照 表,透過這參照表可輕易得知路線間是否可以進行一次轉乘。為了到達 目的地旅客有時必須進行二次轉乘,二次轉乘即是起點路線與迄點路線 間必須透過第三條路線銜接進行二次轉乘,因此可將一次轉乘參照表的 紀錄自行橫向連接起來而得到二次轉乘可行參照表,如圖3.4 所示,一次 轉乘可行參照表 A 透過 ToRoute 欄位與一次轉乘可行參照表 B 的 FromRoute 欄位,交叉結合而成二次轉乘可行參照表,所謂結合乃是用共 通的欄位為仲介,然後讓多個資料表結合起來,以建立出一個新資料表 的運算。結合後所產生的二次轉乘可行參照表需再進行修正,刪除冗餘 的二次轉乘路線的紀錄,也就是扣除直達或者一次轉乘路線的路線組 合,如圖3.4 二次轉乘可行參照表中,由於起點路線 RouteA 與迄點路線 RouteA 相同,卻透過第三條線 RouteR 進行轉乘,因此可刪除這筆紀錄;

此外起點 RouteA 與迄點 RouteB,由一次轉乘可行參照表得知兩條路線 可一次轉乘,無需透過第三條RouteX 銜接,因此也可以刪除這筆紀錄。

RouteA RouteD

RouteC RouteB

RouteB RouteA

To Route From

Route

RouteA RouteD

RouteC RouteB

RouteB RouteA

To Route From

Route

RouteA RouteR

RouteA

RouteX RouteA RouteB Third Route

RouteB RouteD

RouteC RouteA

RouteB RouteA

Second Route First

Route

RouteA RouteR

RouteA

RouteX RouteA RouteB Third Route

RouteB RouteD

RouteC RouteA

RouteB RouteA

Second Route First

Route RouteA RouteD

RouteC RouteB

RouteB RouteA

… ..

To Route From

Route

RouteA RouteD

RouteC RouteB

RouteB RouteA

… ..

To Route From

Route

一次轉乘可行參照表A 一次轉乘可行參照表B

二次轉乘可行參照表

圖3.4 二次轉乘可行參照表的建置

45

五、利用歷史資料估計旅行時間

大眾運輸路網是由多運具服務路線所組成,而其公車、火車、捷運 等運具彼此間速率並不相同,除軌道系統外大部分的公車或長途客運時 刻表僅只有發車站或終點場站才具有發車時間,為了有效確認各個停靠 站的發車時刻,因此在停靠站資料表中設計TimeA 和 TimeB 欄位分別存 放尖峰時刻和離峰時刻由首站發車到達該站的旅行時間,例如表 3.2 中 RouteID 欄位為 1、Name 欄位為 StopA3、TimeA 欄位等於 10 即代表由 首站StopA1 經由 StopA2 到達 StopA3 的旅行時間為十分鐘。當然在後續 應用中除尖離峰兩種時間類型,尚還可以將一天區分為四種甚至六種時 間區塊來存放不同時刻的車輛行駛時間,降低因為道路擁擠而造成延滯 的時間推估誤差。

46

3.2 大眾運輸行前旅次規劃邏輯設計

相關文件