摘要:在分析國內外固體礦產勘察資源儲量估算軟件研發、應用現狀以及存在的主要問題基礎上,借鑒現代軟件體系結構設計中的分層系統設計思想,提出了系統的軟件分層體系結構和數據庫的分層體系結構。實際項目證明這一體系結構具有易于實現、靈活、易擴展、便于復用的特性。
關鍵詞:層次體系結構;儲量估算;地理信息系統;三維可視化
中圖分類號:TP39文獻標志碼:A
文章編號:1001-3695(2007)08-0255-03
0引言
在地質礦產勘察工作中,涉及的大量問題都是在三維空間中,礦產勘探工作是通過勘探、坑探等工程獲取近地表三維空間礦產的基本信息。其目的是查明地下三維空間礦產的質量、規模、位置和形狀。傳統上,對這些三維勘探信息整理和儲量估算是一個費力的工作,而且精度也有問題。20世紀80年代以來,隨著地質統計學技術成熟,利用計算機數值計算大大提高了儲量估算的效率和精度。但這種計算是一種純數值的,對儲量估計的用戶是一種近似“暗箱”方式,很難進行直觀、形象和可控的評價。這就需要將數字信息轉換成直觀的、易于理解的、可進行交互分析的圖形方式給資源估算人員[1~4]。基于GIS的三維可視化技術可為人們提供這方面的技術支撐。
利用計算機信息技術對于提升和改造傳統的地質礦產勘探技術水平,提高礦產儲量計算和管理的智能化、自動化水平,提高工作效率,具有重要意義。隨著計算機圖形學技術和數據庫技術的迅猛發展和成熟,將計算機三維可視化技術和地質統計學儲量估算結合,形成先進實用的固體礦產資源勘察軟件工具是目前國內外地學信息研究的重要方向[5]。
20世紀70年代中期,西方主要國家開始成立采礦軟件公司研制固體礦產采礦軟件。80年代初期,相繼推出了各種采礦軟件,比較有影響的有:基于 UNIX的 LYNX、Vlucan(Map Tec)、Datamine、Mincom、Medysystem、PCMine、Surpac、MKEagles;基于PC機的 Micromine、Gemcom、Mincom、MineMap、LYNX、Vulcan和基于NT的Vulcan。這些軟件涉及的領域包括礦床模擬、開采評估、設計規劃、生產管理等。
相比而言,國內在這方面的起步較晚,無論是在具有自主知識產權軟件開發方面還是在國外軟件的應用方面,程度都非常有限。一方面是因為這一軟件涉及的技術復雜,需要的投入較大、周期長;另一方面則因為國外軟件價格昂貴,一般用戶難以承受,且無法完全滿足國內固體礦產勘察資源儲量估算方面的實際需要。因此,研制具有自主知識產權的三維可視化固體礦產勘察資源儲量估算系統仍具有相當的必要性和緊迫性。這一系統的研發應從我國固體礦產資源勘探開發的實際需要出發,運用當前先進的GIS技術、三維地質構模與可視化技術以及地質統計學理論和方法,研究開發一個集單工程礦體圈定、基于剖面的礦體建模、儲量估算、三維模型顯示與分析功能于一體的性能穩定、半自動化的固體礦產資源三維可視化儲量估算分析平臺,實現對固體礦產資源勘探開發數據的有效存儲、管理、三維可視化分析及評價,為專業人員提供一套針對固體礦產資源勘探開發中礦體圈定、三維模擬、儲量評估等問題的輔助工具。
今后,根據需要還可將固體礦產勘察資源儲量估算系統作為一個核心子系統融入數字礦山的整個大系統中。對這樣一個復雜的系統其體系結構的設計至關重要,可選擇適用于大中型軟件系統的層次體系結構作為系統的基本體系結構風格。
下面首先就系統層次體系結構設計基本原理進行簡要分析,進而提出固體礦產勘察資源儲量估算系統的層次軟件體系結構和數據庫體系結構。
1層次系統設計原理
1.1分層原則
分層設計作為一個設計的理念方法,應該在一般的軟件設計中使用,特別是在大型軟件的研制開發項目中。即使是中小型軟件的開發,也要有針對性地劃分適當的層次,把服務接口一步步地建立起來。在進行軟件層次設計時應遵循如下三個基本原則:
a)實現和接口分離原則。這是對所有模塊接口的一個通用原則。不同的層次實際上是不同的模塊,只不過這些模塊在邏輯關系上有上下的依賴關系。在這個分離原則之下,層次之間的互換性就可以得到保證。對于一般的軟件設計來說,最常見的是抽象層,即把應用部分與一些具體的實現分離開來。
b)單向性原則。軟件的分層應該是單向的,即只能上面的調用下面的,反過來一般是不行的。因為上層調用下層,結果是上層離不開下層,但下層可以獨立地存在;如果下層同時調用上層,上下層就緊密地耦合在一起,誰也離不開誰,形成了軟件中的共生現象。模塊的互換性和可重用性就得不到保證。
c)服務接口的粒度提升原則。每層的存在應該是為了完成一定的使用,從軟件設計和編程的角度來講,應該向上一層提供更加方便快捷的服務接口。簡單重復下一層功能的層是沒有意義的,一般越往上層服務接口的粒度越大。
對很多應用軟件來說,在與數據庫直接打交道的地方有數據抽象層。該層把上層的應用同具體的數據庫引擎分離開來。在此之上,建立業務對象層(business object),把具體的業務邏輯反映到該層次上。再往上是交互的用戶界面等。
1.2典型三層應用結構
在普通應用中,一般包括有表達層(表達邏輯)、業務層(業務邏輯)和數據層(數據存取)三個大部分,稱為三層結構(3tier architecture)[6],如圖1所示(圖中的箭頭反映了數據流的關系,不代表邏輯上的依賴關系)。表達層控制怎樣把數據通過用戶界面(窗口或命令行)顯示給用戶,同時接受用戶的交互輸入。業務層把與這個應用相關的業務流程和業務規則等集中在一起形成一個獨立的部分。該層是系統的核心。數據層則負責與數據庫打交道,把數據庫中的表、記錄等細節隱藏起來,使業務層見到的是普通的函數或數值對象。
這樣的三層應用結構是基于邏輯功能的劃分,可以在一臺計算機上實現,也可以分布到不同的計算機上去。這取決于系統的規模和硬件性能,如在傳統C/S應用模式中表達層、業務層一般位于客戶機上,數據層、數據庫則位于服務器上。對于單機系統實際上是將這三個層次的構件放置于一臺計算機上。
2系統軟件層次體系結構
固體礦產勘察資源儲量估算系統是一個以GIS為基礎,可處理復雜地理、地質信息的系統。考慮到目前我國大多數礦山現有軟/硬件條件和儲量估算的實際需要,系統設計運行于單機環境下;圖形數據采用通用GIS本地數據(文件)存儲方式、屬性表采用Access數據庫存儲方式;系統涉及異構、多維固體礦產勘探綜合數據管理。三維可視化單工程礦體圈定、礦體截面積圈定、礦體實體模型建模、礦體塊體模型建模、三維地質結構建模、地質統計學、儲量估算與管理等多方面功能,無論在數據模型、算法方面都比一般GIS應用系統復雜。對于這樣一個復雜的系統宜采用層次體系結構,以便于軟件的分析、實現、復用、維護、升級等工作。遵循上述分層體系結構設計原則將整個系統在邏輯上劃分為五個層次,即數據庫層、數據服務層、業務平臺層、業務應用層、數據表現層,如圖2所示。
1)數據庫層由GIS本地數據文件和access數據庫構成。其中GIS本地數據文件存儲系統的二維、三維圖形數據,Access數據庫存儲系統的各類屬性表數據。
2)數據服務層它依靠GIS本地數據管理引擎、access屬性表管理引擎及三維空間數據管理引擎,實現系統原始資料數據、工程數據、模型數據、成果數據的存取管理,包括數據的入庫、編輯、查詢,可為業務邏輯層提供數據支撐。其中三維空間數據管理提供對三維矢量數據模型(實體模型)和三維柵格數據模型(塊體模型)的管理功能。空間數據庫引擎建立適應海量數據存儲管理的空間數據組織機制和空間索引機制。
3)業務平臺層它主要為核心業務功能提供支撐,包括GIS基礎平臺、三維模型運行平臺、三維景觀建模模塊、三維地質建模模塊、通用業務處理模塊。其中:GIS基礎平臺提供傳統二維GIS的分析、處理功能;三維模型運行平臺提供對三維模型進行三維顯示、輸出的基本功能;三維景觀平臺提供地面三維建模以及地表景觀建模的功能;三維地質建模提供礦體實體模型建模、礦體塊體模型建模、三維地質結構建模的一些通用功能,如三角化、插值、等值線生成、由輪廓線重構面和體[5,7~12];通用業務處理模塊提供一些通用的業務邏輯功能,如柱狀圖、剖面圖、統計報表等通用圖表的生成、編輯、輸出。
4)業務應用層它基于數據庫層、數據服務層、業務平臺層的功能,實現一些具體的面向系統最終用戶的業務邏輯及綜合分析評價功能,包括綜合數據管理、單工程礦體圈定、勘探線剖面礦體圈定、塊段體積與資源儲量計算模塊、礦體三維建模、三維模型顯示、三維模型分析、地質統計學資源儲量計算、資源儲量計算圖件與表格生成。5)數據表現層它實現系統主控界面及單工程礦體圈定、礦體截面積圈定、礦體實體模型建模、礦體塊體模型建模交互和數據表現,包括數據管理控制臺、二維圖形視圖、三維圖形視圖。
3系統數據庫層次體系結構
系統涉及的數據來源廣、類型多、數據量大、關系復雜,要想有效地存儲、管理和使用這些數據就必須首先對其按一定方式進行分類。參照分層系統設計理念,按照一定的原則將系統中涉及的數據劃分為不同的層次,以便于對數據進行分析和管理。按照使用方式和作用不同,在縱向上將這些數據劃分為不同的層,即原始資料數據層、工程數據層、模型數據層、成果數據層。其層次依次由低到高。一般情況下,上層數據基于下層數據分析得到,在每一個數據層上即水平方向上,則參照數據來源和類型將本層數據進行分類。當然這樣一種劃分只是邏輯上的劃分,實際建庫時既可以按照一層一庫的方式構建,也可以將所有數據存放在同一個數據庫中。
3.1數據庫層次結構
整個數據庫中數據分層情況如下:
a)原始數據層。該層數據是指槽探、井、坑探、鉆孔中的野外現場描述、深井檔案、各種測試數據及地球物理、地球化學勘察中獲取的原始資料。這一層次的數據為搜集或采集到的第一手資料的數字化形式,表現為圖形或表格形式。除非更正輸入錯誤,否則這一層次的數據一般不允許更改。
b)工程數據層。該層數據是指地理空間數據、遙感影像數據、鉆孔(包括槽、井、坑)軌跡數據、化學樣品數據、儲量估算基礎數據、地質構造圖、地質剖面圖、巖層巖性等基礎性數據。其中:地理空間數據包括地形圖、DEM數據;儲量估算基礎數據包括單工程礦體圈定結果、剖面圈定結果以及進行儲量估算時生成的部分中間性數據。這一層次的數據基于原始數據層的數據經標準化處理或分析解釋后得到,既有表格數據又有二維矢量圖形數據、影像數據和DEM柵格數據,一般不允許用戶修改。
c)模型數據層。該層數據是指在工程數據層基礎上生成的統計模型、三維模型。其中各類模型都是由用戶基于工程數據層的數據分析得到,既有二維模型又有三維模型(包括實體模型和塊體模型)。這一層次的數據可根據需要進行修改。
d)成果數據層。該層數據是指系統生成的最終應用成果資料,包括各種儲量估算結果圖、取樣平面圖、礦體縱投影圖、資源儲量計算剖面圖或勘探線剖面圖、三維模型分析結果。它有二維矢量圖形、三維空間數據、數據表、圖片數據、視頻數據等多種形式。這一層次的數據由用戶基于工程數據層數據和模型數據層數據進行分析而得到,允許進行編輯修改。
3.2數據庫層邏輯關系
各個數據庫(層)之間的邏輯關系及數據流程如圖3所示。首先是將采集或搜集到的有關原始勘察資料按照國家標準、行業標準或部門標準進行標準化處理;將標準化后的數據作為后續三維建模、資源儲量估算的基礎數據存入工程數據庫中;進行三維建模、資源儲量估算時從工程數據庫中提取所用的基礎數據,從模型數據庫中提取評價模型,并將生成的三維模型分析結果、資源儲量估算結果存入成果數據庫中進行保存,對外進行發布和應用。
4結束語
本文在分析、總結礦產勘探儲量估算軟件領域國內外研究現狀及存在的主要問題,并認真研究傳統固體礦產勘探儲量估算評價工作流程的基礎上,結合我國礦山儲量估算的實際需求,充分借鑒現代軟件工程思想提出系統軟件體系結構。目前,按照這一體系結構開發的軟件系統已經初步完成,且在云南省北衙金礦得到了應用。實踐證明,按照該體系結構設計的系統具有結構清晰、便于軟件復用和開發、靈活、易擴展的特點。
應該說整個系統的研發涉及異構、多維(二維、三維)礦產資源勘探綜合數據管理、單工程礦體圈定、礦體截面積圈定、礦體實體模型建模、礦體塊體模型建模、三維地質結構建模、地質統計學、儲量估算與管理等多項復雜的技術。其中不乏GIS領域、數學地質、3D建模領域的前沿技術。目前市場上雖也有一些國外開發得比較成熟的軟件產品,但總的來講系統涉及的核心技術尚處于研究和探索階段,不同產品所采用的技術不盡相同,且公開的有價值資料非常少。因此項目研究工作量大、需攻克的技術難關多,一些關鍵技術需要通過原型系統反復實驗才可掌握,無法一步到位。整個系統的研發應以體系結構為核心,首先設計一個清晰合理的軟件體系結構,在此基礎上開展其他研發工作。
參考文獻:
[1]李超嶺.VES可視化固體礦產勘查微機評價系統 礦產資源儲量計算匯編[G].北京:地質出版社,2000.
[2]侯景儒,尹鎮南,李維明,等.實用地質統計學[M].北京:地質出版社,1998.
[3]鄧德善.金屬、非儲量計算 礦產資源儲量計算匯編[G].北京:地質出版社,2000.
[4]DEUTSCH C V,JOURNEL A G.GSLIB:geostatistical software library,user’s guide[K].New York:Oxford University Press, 1998.
[5]吳立新, 史文中,CHRISTOPHER G M.3D GIS 與3D GMS中的空間構模技術[J]. 地理與地理信息科學,2003,19(1): 511.
[6]張友升.軟件體系結構[M].北京:清華大學出版社,2004.
[7]WU Qiang, XU Hua,ZOU Xukai.An effective method for 3D geological modeling with multisource data integration[J].Computers Geosciences,2005,31(1): 35-43.
[8]MALLET J L.Geomodeling[M].New York:Oxford University Press,2002.
[9]BREUNING M. An approach to the integration of spatial data and systems for 3D geoinformation system[J].Computers Geosciences,1999,25(1): 39-48.
[10]何滿潮,劉斌,徐能雄.工程巖體三維可視化構模系統的開發[J].中國礦業大學學報,2003,32(1): 38-43.
[11]WU Lixin.Topological relations embodied in a generalizes triprism(GTP) model for a 3D geoscience modeling system[J].Computers Geosciences,2004,30(5): 405-418.
[12]ZLATANOVA S,RAHMAN A A,PILOUK M.Trends in 3D GIS development[J].Journal of Geospatial Engineering,2002,4(2): 110.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文”