摘 要: 選用組件式GIS技術(shù),采用地理信息系統(tǒng)組件MapX 5.0和高級語言VB 6.0開發(fā)校園救護(hù)系統(tǒng)。采用Dijkstra算法,實現(xiàn)校園救護(hù)系統(tǒng)中最短路徑的選擇,結(jié)合可視化編程環(huán)境(Visual Basic)實現(xiàn)了該軟件平臺。該校園救護(hù)系統(tǒng)的實施,縮短了趕往救護(hù)現(xiàn)場的時間,提高了救護(hù)的效率。
關(guān)鍵詞: Dijkstra; MapX; 數(shù)據(jù)庫; 路徑優(yōu)化
地理信息系統(tǒng)GIS(Geographic Information System)是指采集、存儲、管理、處理及分析地理信息的軟件系統(tǒng)。它是一種特定的十分重要的空間信息系統(tǒng),是在計算機硬、軟件系統(tǒng)支持下,對空間相關(guān)數(shù)據(jù)進(jìn)行采集、儲存、管理、運算、分析、顯示和描述的技術(shù)系統(tǒng)。地理信息系統(tǒng)技術(shù)(GIS)在我國已經(jīng)廣泛應(yīng)用,在資源環(huán)境及設(shè)施的管理和規(guī)劃中發(fā)揮著日益重要的作用。
在各大高校中,校園救護(hù)系統(tǒng)已是每個學(xué)校必備的救護(hù)系統(tǒng),為學(xué)校各種緊急突發(fā)的安全事故進(jìn)行救護(hù),要求救護(hù)人員能及時到達(dá)現(xiàn)場,這需要對前往現(xiàn)場的道路進(jìn)行選擇,以最短時間內(nèi)到達(dá)現(xiàn)場。但在以往的校園救護(hù)方面,路徑選擇往往是憑個人經(jīng)驗,并沒有達(dá)到救護(hù)的及時性。
GIS的特點在于空間信息直觀、豐富、生動。信息表現(xiàn)更為多樣化;空間信息查詢檢索方便;用戶界面靈活方便、交互性強[1]。GIS系統(tǒng)在維護(hù)公共衛(wèi)生安全、提供后勤保障以及現(xiàn)場傷員救助方面發(fā)揮著重要作用。本文基于GIS技術(shù),主要討論了采用Dijkstra算法得到最優(yōu)路徑后,結(jié)合MapX組件技術(shù),將路徑的道路狀況、道路屬性更直觀地顯示給救護(hù)人員,大大提高了救護(hù)系統(tǒng)的效率,確保在最短時間趕到現(xiàn)場進(jìn)行救護(hù)。
1 校園救護(hù)信息系統(tǒng)的建立
一般來說各大高校的地理系統(tǒng)比較龐大,道路的繁多使選擇范圍加大,但同時也需要結(jié)合道路的具體屬性信息來選擇。例如有的道路只允許單行,有的道路不允許機動車輛通過,有的道路在學(xué)生下課時會出現(xiàn)擁堵狀況,且各道路的速度限制等各種屬性。
1.1 校園救護(hù)系統(tǒng)的總體框架
通過救護(hù)中心的屬性數(shù)據(jù)庫和校園道路的空間數(shù)據(jù)庫的統(tǒng)計, 救護(hù)系統(tǒng)的結(jié)構(gòu)框架以及實現(xiàn)的功能如圖1所示。
1.2 校園救護(hù)系統(tǒng)的功能設(shè)計
校園救護(hù)系統(tǒng)主要基于屬性數(shù)據(jù)庫和空間數(shù)據(jù)庫并且結(jié)合MapX技術(shù)而實現(xiàn)各種功能模塊,這些模塊的功能基本滿足了系統(tǒng)需求,如圖1所示。這些功能模塊主要有數(shù)據(jù)庫管理模塊,用來管理日常的救護(hù)中心救護(hù)人員和救護(hù)車輛等信息;地圖顯示和控制模塊,顯示地圖以及對地圖的放大、縮小、漫游等基本操作;查詢更新模塊用來查詢地圖中的某個道路或某個地點、添加圖元;信息輸入模塊是輸入起始點和到達(dá)點,查找到最短路徑所經(jīng)過的各個節(jié)點以及總長度。
2 路徑優(yōu)化算法
2.1 Dijkstra算法
Dijkstra算法是有代表性的最短路徑算法,其基本思想是,設(shè)置兩個頂點集合S和T=V-S,集合S中存放已找到最短路徑的頂點,集合T存放當(dāng)前還未找到最短路徑的頂點,通過頂點集合S并不斷地作中心選擇來擴充這個集合。一個頂點屬于集合S當(dāng)且僅當(dāng)從源到該頂點的最短路徑長度已知。
2.2 Dijkstra算法的實現(xiàn)
初始時,S中僅含有源。設(shè)u是G的某一個頂點,把從源到u且中間只經(jīng)過S中頂點的路徑稱為從源到u的特殊路徑,并用數(shù)組dist記錄當(dāng)前每個頂點所對應(yīng)的最短特殊路徑長度。Dijkstra算法每次從V-S中取出具有最短特殊路長度的頂點u,將u添加到S中,同時對數(shù)組dist作必要的修改。
一旦S包含了所有V中頂點或無通路為止,dist就記錄了從源到所有其他頂點之間的最短路徑長度。本文在Visual Basic編程環(huán)境下實現(xiàn)算法,圖2和圖3分別為最短路徑的實現(xiàn)方法和最短路徑輸出方法的流程圖。
3 救護(hù)系統(tǒng)的實現(xiàn)
3.1 數(shù)據(jù)庫的建立
救護(hù)系統(tǒng)的數(shù)據(jù)來源主要包括校園的道路圖件數(shù)據(jù)和屬性數(shù)據(jù)資料。
道路圖件數(shù)據(jù)庫即是校園地圖,包括點狀要素、線狀要素和面狀要素,以TAB表形式存儲。其中,點狀要素包括各個道路交叉口;線狀要素主要包括各個機動或非機動車道、宿舍之間的路線等;面狀要素包括教學(xué)樓、 操場、食堂和植被等,可直接用于建立空間數(shù)據(jù)庫。
根據(jù)模塊的設(shè)計,屬性數(shù)據(jù)庫的設(shè)計以Access存儲屬性數(shù)據(jù),屬性數(shù)據(jù)庫的設(shè)計包括:車輛表、救護(hù)人員信息表、道路信息表、道路節(jié)點表等相關(guān)表,每個表列出了所需的具體信息的字段。
3.2 數(shù)據(jù)庫的訪問
屬性數(shù)據(jù)庫主要是通過Access數(shù)據(jù)庫建立的,通過對圖層的分層后為所需的圖層賦予相應(yīng)的屬性表。在Visual Basic集成環(huán)境下通過ADO 控件連接訪問屬性數(shù)據(jù)庫,利用MapX控件編程訪問空間數(shù)據(jù)庫,將救護(hù)系統(tǒng)應(yīng)用模型集中在一起,統(tǒng)一管理,用戶界面使用VB設(shè)計的基于Windows的圖形界面,可以方便地實現(xiàn)地圖的漫游、縮放、信息輸入、道路查詢等基本操作。
3.3 界面
圖4為救護(hù)系統(tǒng)實現(xiàn)后運行的一個顯示地理信息的操作界面,該界面主要實現(xiàn)路徑的選擇、顯示路徑的詳細(xì)信息以及對地圖實現(xiàn)放大、縮小、漫游、查詢等操作。
本文在Visual Basic編譯環(huán)境中利用Dijkstra算法實現(xiàn)了最短路徑的選擇,獲得的最短路徑的屬性數(shù)據(jù)得以顯示,提供了及時且更直觀的校園救護(hù)系統(tǒng)的信息來源,實現(xiàn)遠(yuǎn)程指揮和監(jiān)控的功能,在救死扶傷和挽救生命上發(fā)揮重要的作用。同時可以將該技術(shù)應(yīng)用到其他的領(lǐng)域,如城市交通、對車輛運行數(shù)據(jù)的處理等,可以幫助交通系統(tǒng)更好地提高效率,節(jié)省資源。
參考文獻(xiàn)
[1] 林春,王波,賀貴嘲. 利用Mapx實現(xiàn)的組件式GIS技術(shù)[J].計算機工程,2002,28(5):1-3.
[2] 郝偉,劉萬青.基于GIS的救護(hù)車輛最短路徑算法[J].計算機應(yīng)用,2008,28(22):1-3.
[3] 李根強,斜月娥,吳蓉暉,等.數(shù)據(jù)結(jié)構(gòu)(C++版)[M].北京:中國水利水電出版社,2005:164-165.
[3] 張萍,陳清國,趙文光. 基于MapInfo 的住宅小區(qū)物業(yè)管理信息系統(tǒng)研究[J]. 地理空間信息,2008,6(6):2-3.
[4] 李明峰,朱振宇,談俊忠.基于MapX的校園地理信息系統(tǒng)[J]. 南京工業(yè)大學(xué)學(xué)報,2007,29(1):2-4.
[5] 武俊紅,孫久運,周興付.基于MapX的報業(yè)信息管理系統(tǒng)的設(shè)計與實現(xiàn)[J].海洋測繪,2006,26(5):2-3.