盧曉龍
(山東省地質(zhì)測繪院,山東 濟南 250013)
近年來,我國大中城市普遍都遇到了交通擁堵的問題。首先,城市長期按照“職住就近”原則安排城市用地的格局被打破,通勤活動在城市中成為普遍現(xiàn)象[1]。其次,快速的城市化腳步又促使城市常住人口的飛速增長。最后,不斷普及的私家汽車也給交通帶來了巨大的壓力[1]。
為了緩解交通壓力,公共交通系統(tǒng)成為城市大力發(fā)展的對象[3-5]??臻g數(shù)據(jù)模型是實現(xiàn)公共交通系統(tǒng)管理和出行規(guī)劃等諸多應用的基礎。目前,大量的相關工作基本集中在巴士系統(tǒng)的數(shù)據(jù)模型構建上[2]。論文首先對復合模式下不同公交方式的特征進行分析,然后基于多項構模原則建立了復合公共交通空間數(shù)據(jù)模型,并探討了由數(shù)據(jù)模型構建網(wǎng)絡模型的核心算法。
作為最早的城市公共交通系統(tǒng),巴士系統(tǒng)已經(jīng)非常成熟,其主要特征包括[3]:
1.1.1 巴士運行路線沿城市道路網(wǎng)絡布置。
1.1.2 巴士來回的兩次運行路線基本相同。
1.1.3 存在同名站點位置不同的情況。
城市鐵路系統(tǒng)由于具有運行速度快、運行時間穩(wěn)定的特點,因此,成為當前各大城市解決交通問題的重要方式。城市鐵路系統(tǒng)的特征包括:
1.2.1 專有的運行線路實現(xiàn)了高效率的運行。城市鐵路具有專有的運行線路,因此就避免了其運行過程受其它交通方式的影響。
1.2.2 出入口和換乘站構成的換乘系統(tǒng)。鐵路運行路線由固定的換乘站構成,換乘站和出入口由地下或地上通道連接,它們共同構成了城市鐵路的換乘系統(tǒng)。
1.2.3 換乘時間有時較長。受城市鐵路沿線建筑物的影響,很多換乘站點難以配置在離出入口較近的位置上,居民從出入口到乘車站經(jīng)常需要較長的時間。
根據(jù)公共交通系統(tǒng)的特征分析,我們構建一個復合公共交通空間數(shù)據(jù)模型,模型構建在以下基本原則之上:
2.1.1 考慮所有對居民換乘時間影響較大的因素。巴士站點規(guī)模較小,從站點內(nèi)的一個候車牌到另一個候車牌的時間通常不會超過10 秒,因此,巴士站點可以被抽象為一個點,其內(nèi)部的結(jié)構并不需要表達。相反,城市鐵路的換乘有時會需要較長的時間,因此,為了表達同一站點內(nèi)的換乘,歸屬不同路線的同一站點要分別存儲。對于不同站點的換乘,巴士和鐵路系統(tǒng)均要考慮。
2.1.2 避免重復的數(shù)據(jù)存儲,方便公共交通線路和站點的變動。由于巴士的運行路線被限制在城市道路中,可以基于道路網(wǎng)絡數(shù)據(jù)并利用路線與站點的拓撲關系來重構巴士路線,不需要單獨對其進行存儲。地鐵的專有路線則需要額外存儲,原因是站點并不能完全反映出鐵路的運行路線。這種只記錄巴士結(jié)點和站點與路線拓撲關系的數(shù)據(jù)模型不僅減小了數(shù)據(jù)量,避免了因數(shù)據(jù)誤差等造成的線路和站點在空間上不一致的情況,而且數(shù)據(jù)維護的工作量很小。當路線發(fā)生變化時,只需要對系統(tǒng)中沒有的站點進行采集,并更新相應的拓撲關系數(shù)據(jù)表即可,這對于易變的巴士系統(tǒng)非常有效。
2.1.3 盡量以最少的數(shù)據(jù)庫查詢來實現(xiàn)公共交通線路的重構和換乘方案的規(guī)劃。巴士線路重構和居民出行路線規(guī)劃都要通過對數(shù)據(jù)表進行查詢實現(xiàn),為了保持模型運行的高效率,“較少查詢次數(shù)、少量數(shù)據(jù)冗余”的策略應用在模型構建中,即根據(jù)數(shù)據(jù)表完成一項任務需要的查詢次數(shù)較少,但有些查詢會返回一個較結(jié)果更大的集合,而在計算機內(nèi)存中遍歷集合要比查詢數(shù)據(jù)庫快得多。
模型以城市道路網(wǎng)絡為基礎,分別對城市公共巴士系統(tǒng)和鐵路系統(tǒng)進行了建模,以下為模型的具體內(nèi)容。
城市道路網(wǎng)絡采用通行的“結(jié)點-弧段”模型(圖1)。道路按照路段(Section)進行組織(Arc-Node Table),路段的兩端由起始結(jié)點(From Node)和終止結(jié)點(To Node)記錄,路段的形狀由弧段(Shape)表示。對于雙向行使的路段,兩個方向要分別進行表達。結(jié)點表(Node Table)存儲了結(jié)點的坐標和其它屬性。結(jié)點轉(zhuǎn)彎表(Node Turn Table)表達了結(jié)點所連接的路段彼此間是否能夠轉(zhuǎn)向以及完成轉(zhuǎn)向的費用。路段間允許轉(zhuǎn)向只存在于不會產(chǎn)生逆向車流的情況,例如,圖1(a)中從s1轉(zhuǎn)向s5的就不允許。轉(zhuǎn)向的費用由障礙(Impedance)進行度量,其值可以為0/1 來表達是否允許轉(zhuǎn)向,或者任意正整數(shù)來衡量轉(zhuǎn)向的難度,例如轉(zhuǎn)向時產(chǎn)生的車流沖突次數(shù)。旅行距離(Travel Distance)表示一個可允許轉(zhuǎn)向所需要走過的平均路程,旅行時間(Travel Time)表示一個可允許轉(zhuǎn)向的平均花費時間。
圖1 城市道路網(wǎng)絡及數(shù)據(jù)模型
城市公共交通是對抽象領域時空數(shù)據(jù)的可視化,大體可以歸納為公交線網(wǎng)、路網(wǎng)、公交規(guī)劃等可視化內(nèi)容[6]。如圖2(a)所示,城市公共巴士系統(tǒng)由巴士線路和站點構成,線路的端點由兩個站點表示,線路的運行是從起始站點開始,沿該站點所在路段的運行方向行駛至路段上的下一個站點,當?shù)竭_路段末端時發(fā)生轉(zhuǎn)向,并在新的路段上沿其運行方向繼續(xù)行駛,直至達到線路的終止站點。
圖2(b)給出了公共巴士系統(tǒng)的空間數(shù)據(jù)模型,由三張數(shù)據(jù)表組成。站點表(Stop Table)記錄了巴士系統(tǒng)中所有站點的數(shù)據(jù),包括站點所在的路段(Arc ID)、站點距離路段起始點的里程數(shù)(Mileage)以及站點的其它屬性。站點的位置可根據(jù)線性參照方法確定,即在路段弧段上距離起始結(jié)點一定距離(里程數(shù))的位置上進行插值。
圖2 城市公交巴士系統(tǒng)網(wǎng)絡及數(shù)據(jù)模型
線路-路段表(Line-Section Table)存儲了線路經(jīng)過的所有路段,經(jīng)過的順序由Arc ID和Next Arc ID 規(guī)定。首選,從表中查詢出線路的所有記錄,然后按照如下算法來構建線路的途徑路段順序鏈表:①構建一個空的鏈表。②從記錄集中依次提取一條記錄,并判斷:如果鏈表中存在一個元素其值等于記錄的Next Arc ID,則在該元素前插入一個新元素;如果鏈表中存在一個元素其指針的值等于記錄的Arc ID,則在該元素后插入一個新元素;否則,在鏈表中新增加一個元素。對新創(chuàng)建的元素,將記錄的Arc ID 和Next Arc ID 分別賦給它的值和其指針。通過以上算法,可以生成一個路段的鏈表。鏈表中元素的順序即為線路途徑路段的順序。
線路-站點表(Line-Stop Table)表達了線路經(jīng)過的所有站點。與線路-路段表相似,站點的順序也由兩個字段規(guī)定:Stop ID 和Next Stop ID。使用相同的算法可以生成線路所途徑站點的順序鏈表。
以上模型中,巴士的運行路線需要根據(jù)三個數(shù)據(jù)表重構,其算法如下:①構建線路的站點鏈表和路段鏈表,并從路段-結(jié)點表中提取出路段鏈表中所有路段的圖形和起止結(jié)點。②構建一個空的線段列表。③從路段鏈表中提取一個路段,并按照以下規(guī)則設置一個起始位置:如果路段為起始路段,則設置路段起始結(jié)點為起始位置,否則為空。④查詢結(jié)點鏈表,獲得處在該路段上的所有站點(已按序排列),并按照以下規(guī)則設置一個終止位置:如果結(jié)點鏈表到達末尾,則將終止位置設置為末尾結(jié)點;否則,末尾結(jié)點為路段的終止結(jié)點。⑤從路段圖形中提取處在起始位置和終止位置間的線段,增加到線段列表中。⑥循環(huán)③-⑤,直至路段鏈表到達末尾為止。⑦將線段列表中的線段依次首尾相連,構成巴士的運行路線。
通過構建緩存文件,并將以上算法生成的公交運行路線保存在其中,可以避免不必要的重構計算。當公交巴士系統(tǒng)發(fā)生變化時,只需要運行一次重構算法來更新緩存文件即可。這樣,可以保證模型的高效率。
圖3(a)給出了城市公交鐵路系統(tǒng)的網(wǎng)絡模型。其中,公交列車運行在固定的線路上,列車站點包括線路的起始和終止站點、換乘站點和中途站點。站點布置在地下或地上一定高度,并與地面配置連接通道和入口(4 個和2 個入口較為常見),兩條路線的換乘站點通過通道相連。
圖3(b)給出了城市公交鐵路系統(tǒng)的空間數(shù)據(jù)模型[8]。站點表(Stop Table)通過距離線路起點的里程數(shù)(Mileage)來確定在路線上的位置,并利用Is Transfer Stop 來指示是否為換乘車站。線路表(Line Table)存儲了每條鐵路線路的圖形和其它屬性。線路-站點表(Line-Stop Table)與公交巴士數(shù)據(jù)模型中的對應表作用相同。入口-站點表(Entrance-Stop Table)存儲了每個入口的地面位置以及到達與之相連接的站點所需要的時間和平均旅行路程。值得注意的是,換乘站點在此也被作為一種入口來記錄,例如,乘坐l1的乘客可通過t2換乘站到達l2的t7換乘站,此時,t2換乘站可看作是進入t7站點的入口,反之亦然。但換乘站間一般通過同一通道相連接,旅行時間和距離都相當,因此只需要在入口表中記錄一次。入口-站點表具有兩方面的作用:①通過地面入口點與地上的公交巴士系統(tǒng)連接,支持綜合的公交換乘方案規(guī)劃。②量化了乘客從入口到鐵路站點間的旅行費用(旅行時間和旅行路程),從而能更準確地確定兩點間乘坐公交列車所需要的時間。
根據(jù)圖3 四個數(shù)據(jù)表,可以利用2.3 節(jié)中相同的算法構造鐵路線路的站點順序鏈表,并通過查詢?nèi)肟?站點表獲得可到達每個站點的入口?;谝陨蠑?shù)據(jù),可對給定的起止位置計算最佳的鐵路換乘方案。
圖3 城市公交鐵路系統(tǒng)網(wǎng)絡及數(shù)據(jù)模型
論文呈現(xiàn)了我們所建立的一個復合公共交通空間數(shù)據(jù)模型,模型分別對城市道路網(wǎng)絡、公交巴士系統(tǒng)以及公交鐵路系統(tǒng)進行了表達,同時也考慮了巴士系統(tǒng)與鐵路系統(tǒng)的聯(lián)系。為了能夠更準確地對度量乘坐公交列車時的旅行時間,從地面鐵路入口到乘車站點、以及乘客換乘另一公交列車所用時間均在模型中被記錄。模型的基礎是公交系統(tǒng)網(wǎng)絡中的拓撲關系,鏈表方式被用來表達和儲存這種拓撲關系。對于網(wǎng)絡中要素的幾何圖形,模型依據(jù)拓撲關系只記錄可構成該要素的最基本圖形。當需要重構網(wǎng)絡時,可以根據(jù)拓撲關系以及特定的算法來生成要素的幾何圖形。論文中給出了一種根據(jù)巴士路線和站點及路段間的關系來重構巴士路線的算法。
公交換乘規(guī)劃是面向廣大居民的最重要的一項公交應用??臻g數(shù)據(jù)模型是該應用的基礎,而最優(yōu)換乘的求解算法則是應用的核心。由于包含相互協(xié)同的兩種交通方式,復合公共交通系統(tǒng)的公交網(wǎng)絡較單一的巴士系統(tǒng)更為復雜,求解最優(yōu)換乘也相應地更為困難。因此,在提出的復合公共交通空間數(shù)據(jù)模型基礎上,進一步探討高效率的公交換乘求解算法將是下一步的重要工作。