摘要:系統研究了以PDA(個人數字助理)為平臺的公共交通系統的設計思路,詳細闡述了各模塊的功能和關鍵技術的實現方法。最后利用組件技術在Dotnet環境下實現了基于PDA的公共交通系統的原型系統。以北京市公交數據為實驗,實驗結果表明該系統能夠很好地滿足城市公交信息的查詢,為以后的公共交通系統的設計和實現提供了理論和實踐基礎。
關鍵詞:公共交通系統; 個人數字助理; 公交模型;公交換乘算法; 組件技術
中圖法分類號:TP311.52文獻標識碼:A
文章編號:1001-3695(2007)01-0280-03
1引言
自20世紀80年代以來,世界上一些發達國家紛紛投入智能交通系統(Intelligence Transport System,ITS)的研究與開發,并已形成了21世紀交通運輸系統的發展方向。我國是一個發展中國家,隨著經濟的高速發展以及城市化、汽車化的急速發展,導致交通擁擠、事故增多、環境污染等問題日益惡化。為了解決我國城市的交通問題,改善城市交通系統的性能,一方面需要通過改造路網系統、拓寬路面、增添交通設施以及道路建設等城市交通所必需的硬件建設來實現;另一方面需要通過采用科學的管理手段,將現代高新技術引入到交通管理中來提高現有路網的交通性能,從而改善整個道路交通的管理效率,提高道路設施的利用率,實現城市交通科學的和有效的管理。地理信息系統(Geographic Information System,GIS)作為一種綜合處理和分析空間數據的技術系統,能夠有效地對地球空間數據進行采集、存儲、檢索、建模、分析和輸出。其獨特之處就在于能夠把地理位置和相關屬性信息有機地結合起來[1]。眾所周知,交通信息與地理位置密切相關,利用GIS技術構筑智能交通管理系統的共用信息平臺,不但能夠使交通信息在空間上直觀明了地顯示出來,并能為這些信息的深層次挖掘和后續信息服務及輔助決策提供空間屬性上的支持。
公共交通系統是GIS與ITS結合的重要產物。優先發展城市公共交通,不僅是緩解城市交通擁堵的有效措施,也是改善城市人居環境,促進城市可持續發展的必然要求[2]。同時也為外出旅游、出差、就醫等急需了解本地道路情況的人提供方便、快捷、經濟、高效的公交信息,減少不必要的交通流量,提高交通運輸的效率和城市的地位。
隨著移動互聯網的飛速發展和不斷進步以及ITS的不斷發展,人們對公交信息服務的需求也日益增大。目前公交信息服務的終端已經不再局限于計算機,手機、個人數字助理(Personal Digital Assistant,PDA)等均可以。由于PDA的小巧輕便性以及集中了計算、電話、傳真和網絡等多種功能,已經越來越受到人們的青睞。當前研究公共交通系統設計的文獻很多[3~8],但研究以PDA為平臺的公共交通系統設計的文獻卻很少[9]。由于PDA的內存小,處理速度遠不如臺式機,而文獻[3~8]所設計的系統均對內存的要求高且處理速度慢而很難適用于PDA。但PDA具有多線程、多任務的特點,所以在設計基于PDA的系統時可以利用這些特點,運用并行技術設計高效的信息查詢算法。本文詳細介紹了基于PDA的公共交通系統的設計思路,對系統模塊的功能和關鍵技術的實現方法進行了分析。最后我們以北京市的數據為例在網速為10kbps的互聯網中對我們所設計實現的公共交通系統進行試驗,實驗結果表明該系統完全能夠滿足城市公交信息的查詢。
2PDA系統簡介
PDA集成了計算、電話、通信、存儲、娛樂、電子商務和網絡等多種功能,除可用來管理個人信息外,更重要的是可以上網瀏覽、收發Email、收發傳真,甚至還可以當手機用[10]。PDA是個嵌入式系統,所使用的主流操作系統是Windows CE,它具有多線程、多任務、完全搶占式的特點。Windows CE與Windows 2000的最大區別在于文件存儲區域,它并不依賴于像軟盤或硬盤驅動器那樣的強磁性存儲介質,而是實現了一種獨特的、基于RAM的文件系統,稱為對象存儲庫(Object Store)。一臺Windows CE嵌入式PDA可能只有16MB或8MB,甚至4MB的RAM,而RAM又被分成兩個區域,即程序內存(Program Memory)和對象存儲庫。對象存儲庫存儲文件的同時也存儲著系統的注冊表和Windows CE數據庫。對象存儲庫和程序內存的邊界是可以變動的,用戶可以移動對象存儲庫與程序內存間的分界線。在低內存的情況下,系統會要求用戶允許其占用部分對象存儲庫來用作程序RAM,以滿足應用程序對更多RAM的要求。總地說來,PDA具有小巧輕便、多線程、多任務、完全搶占式但內存小的特點,非常適合隨身攜帶。
3基于PDA的公交換乘系統設計
隨著城市的發展,交通問題日益嚴重,高效地解決城市交通問題不但能夠節約資源,也能保障人身安全。小巧輕便的手持PDA為人們的生活提供了很多方便,使得人們可以隨時隨地通過無線通信網絡和互聯網方便地獲取信息。
3.1系統設計思路
交通信息是與方位相關的非結構化地理空間信息,表現形式多樣,如道路信息、商店信息和公交信息等的表現形式是不一樣。用戶對公交信息的查詢方式也是多樣的,提供快速方便的查詢接口直接決定用戶對系統的選擇。PDA的大眾化和無線網絡的發展使得信息獲取更加方便,也就更需要設計更靈活的公共交通系統。針對交通信息的特點、用戶查詢的方便性、數據管理的靈活性和系統的可擴展,我們采用面向對象技術的數據庫系統Oracle Spatial數據庫系統來管理交通空間信息。為了使數據顯示快速,我們采用地圖分塊的技術。為了使各系統模塊能夠更好地重用和通信,利用COM技術來實現。
3.2系統體系結構設計
基于PDA的公共交通系統體現了傳統的公共交通系統發展的必然趨勢,它采用B/S與C/S相結合的模式構建。由于交通信息是具有坐標的空間信息,為了在PDA上將交通信息完整顯示出來就必須設置好投影坐標系統。交通信息的變化更新速度快,為了迅速將最新交通信息反映給用戶,必須要有一個對公交信息存儲、管理和更新的數據庫接口。為了將所查到的信息更高效顯示給用戶,必須要有一個能夠分塊顯示的圖形顯示接口。總地來說,一個完整的公共交通信息應包含用來對所采集到的公交數據進行預處理的數據處理子模塊、管理變化的公交數據的數據管理子模塊、將數據庫中的數據進行恰當投影變換的投影變換子模塊、將公交線路及公共設施和所查找到的換乘方案顯示出來的圖形顯示子模塊、查詢用戶周圍公交信息的公交信息查詢子模塊、按用戶要求查找換乘方案的公交換乘子模塊、與GPS通信的GPS通信子模塊、與Internet通信的網絡通信子模塊。整個系統的組成模塊如圖1所示。本文采用基于服務器端/客戶端混合技術B/S模式,構建基于PDA的公共交通系統。主要基于以下幾個方面考慮:
(1)基于服務器/客戶端混合技術模式可以兼顧基于服務器技術和基于客戶端技術兩種方式。
(2)公交道路公共場所數據是公共交通系統中最重要的數據源,支持客戶端顯示和瀏覽圖形數據,同時在多用戶訪問的情況下具有較快的響應速度,是公共交通系統一個不可忽視的需求,因而需要客戶端,即PDA的功能。
(3)由于PDA的系統內存小、處理速度慢,而服務端的內存大、處理速度快。服務端技術可以最大限度地發揮服務器的潛力,充分利用服務器資源。
圖1公共交通系統組織模塊圖
整個應用系統的結構體系由分布在PDA上的客戶端、Web應用服務器、公交換乘和信息查詢組件、數據庫服務器組成。圖2給出了系統的邏輯功能體系結構圖。
圖2系統的邏輯體系架構圖
服務器端主要包括空間數據的組織與管理、數據查詢處理組件和應用服務器。空間數據主要由Oracle數據庫的Spatial模塊管理,部分數據由文件系統管理,為應用服務器和公交換乘及公交信息查詢組件提供數據服務。數據查詢處理組件主要是向數據庫和文件系統提取數據及響應來自應用服務的請求。應用服務器主要負責控制與響應客戶端的數據查詢與請求操作。
PDA客戶端由瀏覽器、查詢顯示組件和公交換乘及信息查詢組成。瀏覽器負責響應用戶的請求,并把請求發給查詢顯示組件。查詢顯示組件在接到請求后把請求傳給公交換乘及公交信息查詢組件,并負責對底圖、公交線路、公交站及周圍的信息等空間數據渲染及顯示。公交換乘及公交信息查詢組件分為兩部分:①公交信息查詢。它負責查詢公交車的票價,首班車時間、末班車時間、離公共場所的最近公交站點等信息。②公交換乘。利用下面介紹的快速并行公交換乘算法為用戶提供可選的公交換乘方案。PDA客戶端與服務器端主要通過HTTP和SOAP協議來進行通信與調用。
4關鍵技術實現
4.1服務器端數據組織
基于PDA的公共交通系統的目的是為用戶提供快速方便的公交信息。為了提高系統的響應時間,有必要對服務器端的數據進行有效的組織和處理。服務器端的數據包括兩部分,即城市的底圖和公交信息數據。其處理流程如下:(1)由于PDA的運算速度較低、屏幕尺寸較小,任意時刻PDA屏幕顯示的圖形圖像只是全部圖形圖像的一小部分,因此我們把底圖按柵格方式劃分成若干對象子集,這可適當減少PDA讀入非屏幕顯示區域的數據。在不影響屏幕圖形圖像信息顯示的同時,可以大大提高其顯示性能及占據盡可能少的內存空間,同時也能實現柵格方式的漸進式傳輸,彌補PDA內存小運算速度較低的缺點。為方便數據庫的統一存儲和快速查詢,將城市的底圖用二維網格覆蓋整個連續空間。網格采用大小相同的方格區域,每個區域在經度和緯度上有相同的跨度。底圖的網格劃分及網格編號如圖3所示。
(2)公交信息數據主要包括公交車的信息,公交站點的信息,主要公共場所的位置等。我們設計了三個數據表,即公交車信息表、公交站點信息表和主要的公共場所信息表。公交車信息表包括公交車所經過的站點的ID號、起末班車的時間、公交車的費用等。因為公交線路既有單向的,也有雙向的。雙向的有來回所走的線路一樣,也有不一樣。為了節省存儲和加快公交換乘算法的速度,我們用一個屬性來標志這些情況。公交站點信息表包括公交站點的位置、名稱等。主要公共場所信息表包括主要公共場所的名稱位置等。為了提高所查到的站點和公共場所的信息在PDA上盡快顯示出來,我們為每一個站點及主要的公共場所記錄了所處的底圖網格編號。
4.2公交換乘及公交信息查詢組件實現
公交換乘及公交信息查詢組件是系統的主要模塊,公交換乘算法是其中的重中之重。在網絡的環境下,獲取信息的速度是制約系統應用的關鍵。在這里我們采用一種快速公交換乘算法,它具有對內存需求小、速度快的特點。該算法的思路是利用了每條公交線的最小外包矩形MBR來進行一次過濾。即建立兩個隊列分別來存儲公交線的MBR,求公交換乘點時先判斷兩個隊列中的公交線路的MBR是否相交,在相交的情況下才對這兩公交線路求換乘點。由于是利用MBR來代替公交線路,所以進入隊列的數據量大大減少。另一方面,利用MBR來進行一次過濾,使得求換乘點時的運算量減少,速度變快。同時利用PDA的多線程、多任務的特點設計并行算法,從而使快速公交換乘算法適用于PDA。
公交信息查詢主要是為了查找離某一公共場所最近的站點是什么或由公交站點查最近的公共場所、公交車的起末班時間及公交車的費用等。為了提高效率,我們采用的是分塊查詢,先查到某一公共場所在的底圖網格編號,然后查找在該底圖網格編號中的公交站點,分別求距離取最小值。其他的查詢調用ODBC接口來實現。
組件對象模型(Component Object Model,COM)是構造二進制兼容軟件組件的規范,它與編程語言和工具無關,是一種通信規范[11]。通過COM建立數據庫與公交換乘和公交信息查詢之間的接口通信機制,調用屬性、事件、方法等接口實現組件在網絡環境中的互操作,從而使用不同語言開發的模塊可以協同操作。
5實驗結果及討論
我們以北京市的部分交通數據為例,北京市公交車共有703條(包括地鐵),公交站點共有3 833個。運用前面所設計的公交換乘算法,在Dotnet環境下運用組件技術開發了一個基于PDA的網絡公共交通系統。后臺數據庫為Oracle數據庫,所用的PDA配置為:操作系統Pocket PC 2002 處理器類型StrongARM SA1110 32位RISC處理器,處理器主頻為206MHz,RAM容量為64MB。通過這套系統,用戶可以在戶外手持易于攜帶的PDA對公交信息進行查詢。由用戶所在的地方立即可以知道最近的公交站,從最近的公交站到目的站的從多公交換乘方案中選擇最適合自己的換乘方案。圖4所示是北京市公共交通系統的查詢界面。利用該系統對北京市的公交換乘進行查詢,在網速為10kbps的情況下,最長的響應時間不超過2s。這個速度是完全能夠滿足城市公交信息的查詢。
6結論
城市交通和地理信息系統的發展帶動了智能交通系統的發展。如何方便、快速地獲取交通信息已成為人們工作生活的一部分。PDA小巧輕便性解決了人們出門不再攜帶笨重的臺式電腦的麻煩。我們研究基于PDA的公共交通系統的設計原理,對系統設計的思路、體系結構設計和關鍵技術的實現進行了討論。最后我們在Dotnet環境下利用ATL庫開發了一個網絡公共交通系統,為以后的網絡公共交通系統設計提供了思路。將來的研究工作是如何在PDA上結合GPS對交通設施定位和矢量數據的漸進式傳輸。
參考文獻:
[1]陳述彭,等.地理信息系統導論[M].北京:科學出版社,1999.
[2]岳欣.建設部出臺關于優先發展城市公共交通的意見,要求確立公交車城市交通中主體地位[N].中國建筑報,20-040319.
[3]M Datar, A Ranade . Commuting with Delay Prone Buses[C]. Proceedings of the 11th Annual ACMSIAM Symposium on Discrete Algorithms, 2000.2229.
[4]C L Liu, T W Pai, et al. Pathplanning Algorithms for Public Transportation Systems[C].Proc. of the 4th International IEEE Conference on Intelligent Transportation Systems,2001.10611066.
[5]C L Liu. Bestpath Planning for Public Transportation Systems[C].Singapore:Proc. of the 5th International IEEE Conference on Intelligent Transportation Systems,2002.834839.
[6]皮曉亮,滕靖,孫亞.公共交通系統基礎信息平臺框架設計研究[J].城市公共交通,20-04,(6):3841.
[7]張汝華,楊曉光,等.智能交通信息特征分析與處理系統研究[J].交通運輸系統工程與信息,2003,(11):2733.
[8]楊兆升,岳昊,高穎.基于ATMS的公用信息平臺的系統研究與設計[J].交通運輸系統工程與信息,20-04,(2):7578.
[9]童蔚蘋,蔡先華,徐立臻.基于PDA的公交信息數據庫設計與查詢算法[J].現代測繪,20-04,27(3):4548.
[10]馬俊海,張春香,趙波.基于掌上電腦的地籍測量野外數據采集系統可行性研究[J].東北測繪,2001,24(2):1315.
[11]Ash Rofail,Yasser Shohoud.COM與COM+從入門到精通[M].邱仲潘,等.北京:電子工業出版社,2000.
作者簡介:
汪詩鋒(1980),男,碩士研究生,主要研究方向為網絡地理信息系統、智能交通系統。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文