亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        地理國情基本統(tǒng)計(jì)算法模型管理策略研究

        2014-10-31 08:14:56袁衛(wèi)平董春康風(fēng)光亢曉琛
        遙感信息 2014年4期
        關(guān)鍵詞:功能模型

        袁衛(wèi)平,董春,康風(fēng)光,亢曉琛

        (1.遼寧工程技術(shù)大學(xué) 測繪與地理科學(xué)學(xué)院,遼寧 阜新 123000;2.中國測繪科學(xué)研究院,北京 100830;3.武漢大學(xué) 資源與環(huán)境科學(xué)學(xué)院,武漢 430079)

        1 引 言

        地理國情普查統(tǒng)計(jì)分析是地理國情普查的重要組成部分,是地理國情普查要素向地理國情信息轉(zhuǎn)化和提升,并與經(jīng)濟(jì)社會(huì)信息相融合,反映經(jīng)濟(jì)、社會(huì)、資源、環(huán)境的空間分布規(guī)律的必要手段和階段,對(duì)于推廣普查成果應(yīng)用、推動(dòng)地理國情普查與監(jiān)測具有至關(guān)重要的作用。地理國情普查統(tǒng)計(jì)分析貫穿地理國情監(jiān)測全過程,是實(shí)現(xiàn)地理國情信息從數(shù)據(jù)服務(wù)到信息服務(wù),再到?jīng)Q策知識(shí)服務(wù)的必要手段。

        地理國情基本統(tǒng)計(jì)根據(jù)地理國情普查采集的點(diǎn)、線、面等幾何特征類型和地理實(shí)體對(duì)象,以規(guī)則地理格網(wǎng)單元、行政區(qū)劃與管理單元、地形單元為統(tǒng)計(jì)單元,進(jìn)行地形地貌、植被覆蓋、荒漠與裸露地表、水域、交通網(wǎng)絡(luò)、居民地與設(shè)施、地理單元的數(shù)量、密度、位置、高程、范圍等內(nèi)容的統(tǒng)計(jì)。地理國情基本統(tǒng)計(jì)是地理國情普查統(tǒng)計(jì)分析的基礎(chǔ)。

        地理國情普查基本統(tǒng)計(jì)軟件是為地理國情普查基本統(tǒng)計(jì)工作專門定制開發(fā)的生產(chǎn)性軟件操作平臺(tái),是地理國情普查統(tǒng)計(jì)分析軟件的重要組成部分。軟件以地理國情普查要素為數(shù)據(jù)源,集數(shù)據(jù)分析、統(tǒng)計(jì)和報(bào)表生成為一體的綜合性專業(yè)空間數(shù)據(jù)統(tǒng)計(jì)分析軟件,是以計(jì)算機(jī)技術(shù)、地理信息技術(shù)、數(shù)據(jù)融合技術(shù)、并行計(jì)算技術(shù)等為基礎(chǔ),提供數(shù)據(jù)管理、基本統(tǒng)計(jì)、報(bào)表管理和統(tǒng)計(jì)分析的綜合解決方案。地理國情基本統(tǒng)計(jì)軟件工具為地理國情統(tǒng)計(jì)分析工作提供數(shù)據(jù)和技術(shù)支撐,并為下一步地理國情綜合統(tǒng)計(jì)打下堅(jiān)實(shí)的基礎(chǔ)。

        地理國情基本統(tǒng)計(jì)軟件開發(fā)過程中需解決以下兩個(gè)問題:

        ①地理國情基本統(tǒng)計(jì)軟算法模型復(fù)雜,算法種類繁多,部分算法復(fù)雜度較高,需要由不同開發(fā)人員乃至不同單位的專業(yè)人員開發(fā)完成。在此基礎(chǔ)之上,如何實(shí)現(xiàn)不同單位開發(fā)功能的測試和聯(lián)調(diào)是一項(xiàng)尤為重要的工作。

        ②地理國情涉及國家和地方兩個(gè)層面,國家和地區(qū)關(guān)注的指標(biāo)各不相同;同時(shí)各地區(qū)發(fā)展不同,對(duì)地理國情基本統(tǒng)計(jì)的需求也有差異。軟件須適應(yīng)國家以及各地區(qū)的對(duì)統(tǒng)計(jì)計(jì)算的不同需求,因此地理國情基本統(tǒng)計(jì)軟件在設(shè)計(jì)初期就必須考慮如何適應(yīng)需求的變化,實(shí)現(xiàn)基本統(tǒng)計(jì)的靈活配置。

        為解決以上兩個(gè)問題,本文將研究基于反射機(jī)制和策略模式的統(tǒng)計(jì)算法模型庫管理策略。

        2 關(guān)鍵技術(shù)

        2.1 反射機(jī)制

        反射(Reflection)是.NET中的重要機(jī)制,通過反射在運(yùn)行時(shí)獲得.NET中每一個(gè)類型(包括類、結(jié)構(gòu)、委托、接口和枚舉等)的成員,包括方法、屬性、事件,以及構(gòu)造函數(shù)等,并且可以獲得每個(gè)成員的名稱、限定符和參數(shù)等。有了反射即可對(duì)每一個(gè)類型了如指掌,運(yùn)行時(shí)只要獲得了構(gòu)造函數(shù)的信息,即可直接創(chuàng)建對(duì)象,即使對(duì)象類型在編譯時(shí)還屬未知。

        通過反射機(jī)制可以預(yù)先定義對(duì)象接口,完成程序功能框架實(shí)現(xiàn)對(duì)對(duì)象接口的調(diào)用。對(duì)于新添加的功能對(duì)象,只需實(shí)現(xiàn)預(yù)定義的接口就可以在程序運(yùn)行時(shí)通過反射的方式實(shí)例化對(duì)象。無需編譯源程序即可完成功能模塊的添加,從而提高程序的復(fù)用性和靈活性。

        2.2 策略模式

        策略模式(Strategy)是對(duì)算法的包裝,是把使用算法的責(zé)任和算法本身分割開來,委派給不同的對(duì)象管理。策略模式定義了一系列的算法,并將每一個(gè)算法封裝起來,而且使其還可以相互替換,讓算法獨(dú)立于使用的客戶而獨(dú)立變化。

        一般情況下策略模式主要分為三個(gè)角色:

        ①環(huán)境角色(Context):持有一個(gè)策略類引用,文中體現(xiàn)為地理國情基本統(tǒng)計(jì)軟件框架。

        ②抽象策略(Strategy):定義了多個(gè)具體策略的公共接口,具體策略類中各種不同的算法以不同的方式實(shí)現(xiàn)這個(gè)接口;Context使用這些接口調(diào)用不同實(shí)現(xiàn)的算法。一般使用接口或抽象類實(shí)現(xiàn),基本統(tǒng)計(jì)軟件開發(fā)過程中為IStatistic統(tǒng)計(jì)計(jì)算算法接口。

        ③具體策略(ConcreteStrategy):實(shí)現(xiàn)抽象策略類中的相關(guān)的算法或操作。這部分為各開發(fā)人員實(shí)現(xiàn)的具體統(tǒng)計(jì)計(jì)算類。

        圖1 策略模式結(jié)構(gòu)圖

        通過策略模式可以實(shí)現(xiàn)統(tǒng)計(jì)算法的動(dòng)態(tài)替換以及統(tǒng)計(jì)算法的定制功能。

        3 管理模式設(shè)計(jì)

        3.1 程序結(jié)構(gòu)

        地理統(tǒng)計(jì)基本統(tǒng)計(jì)包括多個(gè)計(jì)算指標(biāo),涉及GIS、大地、統(tǒng)計(jì)等多個(gè)專業(yè),部分算法具有非常高的專業(yè)性。所以統(tǒng)計(jì)過程中基本算法由多個(gè)單位合作完成,因此給軟件最后的測試和聯(lián)調(diào)帶來很大的挑戰(zhàn)。

        按照傳統(tǒng)思路,如果統(tǒng)計(jì)算法沒有完成,主程序?qū)λ惴ㄕ{(diào)用功能將無法實(shí)現(xiàn);其次,即使采用接口方式進(jìn)行開發(fā),則在最終聯(lián)調(diào)時(shí)必須將代碼拷貝到一起再通過編譯測試。此時(shí),若有單位無法完成模塊的開發(fā),則會(huì)影響整個(gè)軟件的發(fā)布。

        本文利用.Net反射機(jī)制實(shí)現(xiàn)統(tǒng)計(jì)算法模型的設(shè)計(jì)與開發(fā),即將基本統(tǒng)計(jì)算法模型以插件方式進(jìn)行整合。通過這種方式,可以先完成主程序框架,算法模型后期動(dòng)態(tài)添加,框架主要包括以下四個(gè)部分:

        (1)程序主體框架:完成基本的系統(tǒng)功能,基本統(tǒng)計(jì)計(jì)算功能根據(jù)配置實(shí)現(xiàn)對(duì)統(tǒng)計(jì)算法的調(diào)用,開發(fā)過程中只面向接口,無需面向具體的計(jì)算方法,具體對(duì)象實(shí)現(xiàn)通過讀取配置文件獲取統(tǒng)計(jì)計(jì)算模塊位置及對(duì)象信息利用.Net反射機(jī)制實(shí)現(xiàn)。

        圖2 功能結(jié)構(gòu)圖

        (2)統(tǒng)計(jì)算法模型接口:定義統(tǒng)一的基本統(tǒng)計(jì)算法接口,并將該接口作為對(duì)外交互接口分發(fā)給統(tǒng)計(jì)算法開發(fā)人員。

        (3)基本統(tǒng)計(jì)算法模型:統(tǒng)計(jì)分析算法都封裝成一個(gè)類,并且每個(gè)類均實(shí)現(xiàn)統(tǒng)一接口。開發(fā)人員實(shí)現(xiàn)統(tǒng)計(jì)算法模型并將其封裝在動(dòng)態(tài)鏈接庫中。

        (4)統(tǒng)計(jì)算法模型庫:統(tǒng)計(jì)算法模型是基本統(tǒng)計(jì)軟件的核心,通過統(tǒng)計(jì)算法模型庫,將所有統(tǒng)計(jì)算法在系統(tǒng)中實(shí)現(xiàn)管理。統(tǒng)計(jì)算法模型庫保存模型編碼、模型名稱、模型類別、輸入?yún)?shù)、輸出參數(shù)等信息。通過對(duì)統(tǒng)計(jì)算法模型庫的管理,可實(shí)現(xiàn)對(duì)各單位開發(fā)的算法模型管理。

        3.2 模型管理

        基于反射機(jī)制開發(fā)模型庫時(shí),主程序設(shè)計(jì)需要實(shí)現(xiàn)對(duì)已完成的統(tǒng)計(jì)算法模型的管理功能,并為調(diào)用算法提供功能接口。其中,模型算法管理功能主要實(shí)現(xiàn)以下三方面的功能:

        (1)注冊(cè)模型:統(tǒng)計(jì)算法模型完成之后以DLL動(dòng)態(tài)鏈接庫的方式提交,模型管理功能通過對(duì)模型算法庫的管理對(duì)已完成的模型實(shí)現(xiàn)注冊(cè),保存包括模型編碼、模型名稱、模型類別、輸入?yún)?shù)、輸出參數(shù)以及模型所屬于的動(dòng)態(tài)鏈接庫位置等信息。

        (2)啟用、禁用模型:模型管理功能能夠根據(jù)用戶的需求,對(duì)已注冊(cè)但暫時(shí)不想使用的模型具有啟用或者禁用功能。

        (3)配置參數(shù):主程序能夠?qū)Σ寮M(jìn)行默認(rèn)參數(shù)配置,算法模型屬性以及其適用場景。

        通過模型管理功能實(shí)現(xiàn)各類統(tǒng)計(jì)算法模型的集成,該方式只需要將部件組裝而不需要進(jìn)行編譯和鏈接,在軟件各功能模塊通過測試基礎(chǔ)上,只需拷貝模型對(duì)象所在的動(dòng)態(tài)鏈接庫,并通過修改模型算法庫即可實(shí)現(xiàn)軟件功能模塊和基本統(tǒng)計(jì)軟件的整合。

        3.3 模型動(dòng)態(tài)配置

        使用策略模式實(shí)現(xiàn)統(tǒng)計(jì)分析模型動(dòng)態(tài)配置,采用統(tǒng)一的策略接口IStatistic來擴(kuò)展算法,所有基本統(tǒng)計(jì)算法都繼承于該接口。這樣設(shè)計(jì)的優(yōu)點(diǎn)可以提高軟件靈活性,支持程序運(yùn)行期間選擇算法。對(duì)象關(guān)系如圖3所示。

        表1 統(tǒng)計(jì)算法模型庫對(duì)應(yīng)表

        圖3 策略模式類結(jié)構(gòu)圖

        主要包括以下幾個(gè)步驟:

        (1)接口定義:定義統(tǒng)一的基本統(tǒng)計(jì)算法接口IStatistic,并將該接口作為對(duì)外交互接口分發(fā)給程序開發(fā)人員。

        (2)算法模塊實(shí)現(xiàn):算法模塊程序開發(fā)人員著手實(shí)現(xiàn)統(tǒng)計(jì)算法。所有統(tǒng)計(jì)算法模型都封裝成一個(gè)類,并且所有類的實(shí)現(xiàn)都繼承IStatistic接口。算法開發(fā)人員負(fù)責(zé)算法的開發(fā)和測試工作,算法完成后提交動(dòng)態(tài)鏈接庫。

        (3)模型庫管理:算法模塊提交后,通過模型管理功能將統(tǒng)計(jì)模型和相關(guān)調(diào)用信息保存至基本統(tǒng)計(jì)模型庫,并實(shí)現(xiàn)對(duì)算法模型的添加、刪除、修改。算法模型庫是統(tǒng)計(jì)計(jì)算的核心,軟件通過訪問模型庫即可獲得算法模型位置以及模型相關(guān)信息。

        (4)模型動(dòng)態(tài)配置:實(shí)現(xiàn)統(tǒng)計(jì)對(duì)象和統(tǒng)計(jì)算法動(dòng)態(tài)配置功能,首先獲得所有統(tǒng)計(jì)對(duì)象,針對(duì)每一個(gè)統(tǒng)計(jì)對(duì)象,從基本統(tǒng)計(jì)模型庫中根據(jù)模型輸入?yún)?shù)和模型類別列出適用于當(dāng)前統(tǒng)計(jì)對(duì)象的統(tǒng)計(jì)算法。用戶根據(jù)需求選擇對(duì)應(yīng)的統(tǒng)計(jì)算法,并配置統(tǒng)計(jì)單元。

        表2 統(tǒng)計(jì)對(duì)象與統(tǒng)計(jì)指標(biāo)對(duì)應(yīng)表

        (5)基本統(tǒng)計(jì)計(jì)算:用戶執(zhí)行基本統(tǒng)計(jì)計(jì)算時(shí),主程序從統(tǒng)計(jì)算法模型庫中獲得模型信息,通過反射機(jī)制實(shí)例化統(tǒng)計(jì)模型對(duì)象。統(tǒng)計(jì)模型對(duì)象根據(jù)配置文件獲得對(duì)象的輸入數(shù)據(jù)執(zhí)行統(tǒng)計(jì)計(jì)算。

        4 管理策略實(shí)現(xiàn)

        本文以Microsoft Visual Studio 2010為開發(fā)環(huán)境,基于C#語言開發(fā)主程序框架,實(shí)現(xiàn)地理國情基本統(tǒng)計(jì)算法模型管理策略功能開發(fā),整體功能流程如圖4所示。

        圖4 基本統(tǒng)計(jì)策略模式結(jié)構(gòu)圖

        地理國情基本統(tǒng)計(jì)軟件通過算法模型管理、統(tǒng)計(jì)指標(biāo)與統(tǒng)計(jì)模型匹配、統(tǒng)計(jì)計(jì)算三部分功能實(shí)現(xiàn)統(tǒng)計(jì)算法模型庫的管理、統(tǒng)計(jì)計(jì)算動(dòng)態(tài)配置以及統(tǒng)計(jì)算法的調(diào)用。

        (1)統(tǒng)計(jì)算法模型管理功能。開發(fā)人員提交的動(dòng)態(tài)鏈接庫,通過算法管理界面導(dǎo)入基本統(tǒng)計(jì)軟件中,并從統(tǒng)計(jì)算法管理界面完成統(tǒng)計(jì)算法模型添加、修改、刪除,通過勾選統(tǒng)計(jì)算法模型來控制選中算法的可用狀態(tài)。

        圖5 統(tǒng)計(jì)算法模型庫界面圖

        (2)統(tǒng)計(jì)對(duì)象與統(tǒng)計(jì)指標(biāo)匹配功能模塊。該功能實(shí)現(xiàn)統(tǒng)計(jì)對(duì)象與統(tǒng)計(jì)指標(biāo)的匹配工作。如圖6所示,左側(cè)是參與計(jì)算的統(tǒng)計(jì)對(duì)象,右側(cè)顯示統(tǒng)計(jì)算法。選中統(tǒng)計(jì)對(duì)象后,右側(cè)顯示從統(tǒng)計(jì)算法模型庫中獲取匹配的統(tǒng)計(jì)算法指標(biāo)。用戶通過點(diǎn)擊算法指標(biāo)選擇框即可完成統(tǒng)計(jì)算法的配置。

        圖6 統(tǒng)計(jì)對(duì)象與統(tǒng)計(jì)指標(biāo)匹配界面圖

        (3)統(tǒng)計(jì)計(jì)算功能。統(tǒng)計(jì)計(jì)算是基本統(tǒng)計(jì)軟件的主要功能,根據(jù)統(tǒng)計(jì)指標(biāo)的配置情況顯示所需計(jì)算的指標(biāo)。計(jì)算時(shí)通過反射機(jī)制獲得統(tǒng)計(jì)算法模型實(shí)例,核心代碼如下:

        若需要添加新的算法,只需完成算法模型的開發(fā),然后通過以上步驟將動(dòng)態(tài)鏈接庫導(dǎo)入到基本統(tǒng)計(jì)軟件中,通過算法配置即可實(shí)現(xiàn)計(jì)算。整個(gè)過程無需編譯源程序就可以定制、修改和添加統(tǒng)計(jì)算法模型。

        5 結(jié)束語

        本文通過.Net語言提供的反射機(jī)制和策略模式研究地理國情基本統(tǒng)計(jì)算法模型的管理策略。通過反射機(jī)制結(jié)合模型數(shù)據(jù)管理簡化應(yīng)用軟件的后期維護(hù)和升級(jí),降低了軟件開發(fā)及維護(hù)成本。主程序和統(tǒng)計(jì)算法模型之間借助接口實(shí)現(xiàn)對(duì)象的調(diào)用,從而實(shí)現(xiàn)代碼之間的耦合。通過這個(gè)策略將應(yīng)用框架中的擴(kuò)展點(diǎn)以插件方式來動(dòng)態(tài)加載和構(gòu)建,從而實(shí)現(xiàn)統(tǒng)計(jì)算法模型動(dòng)態(tài)擴(kuò)展。

        該策略已經(jīng)用于地理國情基本統(tǒng)計(jì)軟件系統(tǒng)中,實(shí)現(xiàn)了基本統(tǒng)計(jì)算法模型的動(dòng)態(tài)加載和管理。并通過模型動(dòng)態(tài)配置實(shí)現(xiàn)了統(tǒng)計(jì)計(jì)算模型的動(dòng)態(tài)維護(hù),減少了軟件開發(fā)的工作量,有效地提高了軟件的復(fù)用性和靈活性。

        [1]蘇德國,李青元,董春,等.統(tǒng)計(jì)分析模型管理工具實(shí)現(xiàn)及其在空間輔助決策系統(tǒng)中的應(yīng)用[J].測繪科學(xué),2007,32(z1):63-65.

        [2]趙宏利,李秀冰,李大林.基于反射機(jī)制的插件系統(tǒng)軟件設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(2):348-351,355.

        [3]吳東慶,胡小健,楊逢建.反射機(jī)制下類工廠模式的實(shí)現(xiàn)與研究[J].計(jì)算機(jī)應(yīng)用,2006,26(3):705-707.

        [4]羅巨波,葉鵬,袁文杰,等.一種支持軟件體系結(jié)構(gòu)重用的反射機(jī)制 RMRSA[J].計(jì)算機(jī)工程與應(yīng)用,2008,44(32):68-71.

        [5]張連育,呂立.基于策略模式的中醫(yī)數(shù)據(jù)挖掘平臺(tái)的設(shè)計(jì)與研究[J].小型微型計(jì)算機(jī)系統(tǒng),2011,32(7):1406-1411.

        [6]周宏廣,周繼承,劉長生.基于策略模式的缺損數(shù)據(jù)處理方法[J].長沙航空職業(yè)技術(shù)學(xué)院學(xué)報(bào),2004,4(2):47-50.

        [7]高慧萍,呂俊.插件式開發(fā)技術(shù)研究與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2009,30(16):3805-3829.

        [8]孫麗,高飛,胡小華,等.ArcEngine插件式 GIS二次開發(fā)框架的設(shè)計(jì)與實(shí)現(xiàn)[J].測繪科學(xué),2011,36(5):214-216.

        [9]鄭穎華,武根友.智能決策支持系統(tǒng)中的模型庫及其管理系統(tǒng)[J].科學(xué)技術(shù)與工程,2006,6(9):1312-1315.

        猜你喜歡
        功能模型
        一半模型
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        關(guān)于非首都功能疏解的幾點(diǎn)思考
        懷孕了,凝血功能怎么變?
        媽媽寶寶(2017年2期)2017-02-21 01:21:24
        “簡直”和“幾乎”的表達(dá)功能
        3D打印中的模型分割與打包
        FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
        中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
        91免费国产| 亚洲午夜福利在线视频| 成人无码一区二区三区网站| 中文字幕亚洲精品第1页| 国产亚洲激情av一区二区| 亚洲一区二区三区四区地址| 国产欧美日韩综合精品一区二区| 熟妇人妻中文字幕无码老熟妇| 热re99久久精品国产66热6| av在线播放免费观看| 国产精品国产三级国产av品爱网| 天堂一区人妻无码| 青青草视频网站免费观看| 性色国产成人久久久精品二区三区| 免费看美女被靠到爽的视频| 亚洲熟女综合一区二区三区| 国产成人久久蜜一区二区| 国产一区二区三区成人av| 伊人久久大香线蕉av色婷婷色| 亚洲av无码一区二区二三区| www.五月激情| 丝袜av乱码字幕三级人妻| 中文无码伦av中文字幕| 荡女精品导航| 日本福利视频免费久久久| 日产精品高潮一区二区三区5月| 日夜啪啪一区二区三区| 曰韩精品无码一区二区三区| 偷拍美女一区二区三区视频| 伊人久久大香线蕉午夜av| 亚洲视频一区| 亚洲av综合色区在线观看| 国产亚洲av成人噜噜噜他| 一本一道av无码中文字幕﹣百度| 色综合另类小说图片区| 女同在线视频一区二区| 国产公开免费人成视频| 18禁男女爽爽爽午夜网站免费| 扒开非洲女人大荫蒂视频| 中文字幕日韩人妻少妇毛片| 日本xxxx色视频在线播放|