摘 要:戒備率是導彈武器系統(tǒng)一項重要的戰(zhàn)術技術指標,分析評估導彈武器系統(tǒng)的戒備率,可以為導彈武器系統(tǒng)的研制和作戰(zhàn)使用提供重要決策依據(jù)。為了快速準確地得到導彈武器系統(tǒng)的戒備率,基于C#.NET開發(fā)了導彈武器戒備率評估系統(tǒng),利用安全性和效率較高的數(shù)據(jù)庫技術完成評估信息的管理。系統(tǒng)采用人工神經(jīng)網(wǎng)絡的評估方法,利用混合編程技術完成導彈武器戒備率的評估。該系統(tǒng)可以實現(xiàn)對導彈武器系統(tǒng)戒備率的快速評估,并可以定量分析不同因素對戒備率的影響,對戒備率評估技術的研究具有重要的現(xiàn)實意義。
關鍵詞:戒備率評估;數(shù)據(jù)庫技術;人工神經(jīng)網(wǎng)絡;混合編程
中圖分類號:TP311文獻標識碼:B
文章編號:1004-373X(2010)04-141-04
Design and Implementation of Readiness Rate Evaluation System for Missile Weapon System
LU He,WANG Hongli,YIN Dejin
(The Second Artillery Engineering College,Xi′an,710025,China)
Abstract:The readiness rate is an important index to tactics and technology of missile weapon system,evaluation and analysis can provide an important decision-making criterion to research and operation of missile weapon system.To get the readiness rate quickly and accurately,the readiness rate evaluation system for missile weapon system is developed based on C#.NET,database technique which has high security and efficiency is used to manage the information that is needed in evaluation,evaluation method of artificial neural network is used in this system,the technology of combination programming is used to do the evaluation of readiness rate.This system realizes the rapid evaluation of readiness rate of missile weapon system and it can also analye the effect of different factor on readiness rate quantitatively,it has important practical significance to the study of evaluation technology of readiness rate.
Keywords:evaluation of readiness rate;database;artificial neural network;combination programming
0 引 言
導彈武器系統(tǒng)的戒備率指處于戒備狀態(tài)下導彈數(shù)與該導彈總數(shù)的比值[1]。通過分析評估導彈武器系統(tǒng)的戒備率,能夠完整地掌握武器系統(tǒng)戒備作戰(zhàn)的能力,從而為導彈武器系統(tǒng)的研制和作戰(zhàn)使用提供重要決策和依據(jù)。
導彈武器系統(tǒng)作為一個復雜系統(tǒng),其戒備率受到可靠性、維修性、保障性、戰(zhàn)場環(huán)境、人為因素、生存能力等因素的綜合影響,所以導彈武器系統(tǒng)戒備率的評估難度大,時間長?,F(xiàn)代戰(zhàn)爭的各種因素的變化很快,如何快速準確地得到導彈武器系統(tǒng)的戒備率,為導彈武器系統(tǒng)的作戰(zhàn)使用提供決策依據(jù),是戒備率評估發(fā)展研究的方向。在此,利用發(fā)展成熟的數(shù)據(jù)庫技術,結合人工神經(jīng)網(wǎng)絡的評估方法,開發(fā)出了導彈武器戒備率評估系統(tǒng),降低了評估的難度,縮短了評估的時間,能夠根據(jù)戰(zhàn)場形勢的變化快速準確地完成戒備率的評估,對戒備率評估技術的研究有十分重要的現(xiàn)實意義。
1 系統(tǒng)的總體設計
1.1 任務需求
根據(jù)影響導彈武器系統(tǒng)戒備率各項要素的物理特性以及它們之間的關系,以作戰(zhàn)想定、任務剖面和評估條件為基礎,快速準確地得到導彈武器系統(tǒng)技術陣地、待機陣地、發(fā)射陣地、導彈和導彈武器系統(tǒng)的戒備率評估值;進行導彈武器系統(tǒng)全壽命周期內不同任務剖面下的戒備率評估;通過數(shù)據(jù)庫實現(xiàn)數(shù)據(jù)的規(guī)范化管理,方便地進行信息查詢。
1.2 系統(tǒng)結構
導彈武器戒備率評估系統(tǒng)的設計目的是完成導彈武器系統(tǒng)戒備率評估任務及其評估數(shù)據(jù)的管理,整個系統(tǒng)的框架采用模塊化設計,主要分為系統(tǒng)管理模塊、戒備率評估模塊、數(shù)據(jù)庫模塊、接口模塊、幫助模塊。系統(tǒng)結構如圖1所示。
圖1 系統(tǒng)結構框圖
1.3 系統(tǒng)功能
系統(tǒng)中五個模塊的具體功能如下:
系統(tǒng)管理模塊 完成用戶登陸的身份驗證。將操作人員分為管理員,評估人員,查詢人員。管理員可以完成添加刪除用戶、設定用戶權限、查詢和修改導彈數(shù)據(jù)庫等操作;評估人員能夠查詢相關型號數(shù)據(jù)庫,進行戒備率的評估,將數(shù)據(jù)寫入數(shù)據(jù)庫;查詢人員可以查詢相關的導彈參數(shù)。
戒備率評估模塊 它是系統(tǒng)的主要組成部分。完成評估參數(shù)的輸入;對不同量綱的指標采用歸一化的方法將其標準化,將評估參數(shù)處理為神經(jīng)網(wǎng)絡的訓練樣本;調節(jié)神經(jīng)網(wǎng)絡的參數(shù)使之達到評估目標;對評估結果進行分析、存貯、打印等。
數(shù)據(jù)庫管理模塊 主要完成數(shù)據(jù)的管理?!皩椢淦髻Y料”用于管理所要評估導彈系統(tǒng)的各項指標數(shù)據(jù),允許管理員用戶建立新的導彈型號數(shù)據(jù)庫;“評估結果”用于管理評估結果,可以將本次的評估數(shù)據(jù)寫入導彈武器資料庫作為訓練樣本,并可以記錄達到評估目標所采用的神經(jīng)網(wǎng)絡參數(shù),作為以后評估的參考。
接口模塊 完成不同模塊之間的數(shù)據(jù)交換?!皵?shù)據(jù)庫接口”完成對數(shù)據(jù)庫的操作;“Matlab接口”完成對Matlab引擎的調用。
幫助模塊 為用戶提供系統(tǒng)幫助及使用說明。
2 關鍵技術
導彈武器戒備率評估系統(tǒng)涉及多種型號的導彈武器系統(tǒng)評估,在準確性、安全性、快速性、可操作性上有較高的要求。因此在開發(fā)的過程中涉及的關鍵技術主要有:人工神經(jīng)網(wǎng)絡評估方法、數(shù)據(jù)庫技術、混合編程技術。
2.1 人工神經(jīng)網(wǎng)絡評估方法
導彈武器的戒備率評估涉及到大量不確定的因素,為了進行評估,從系統(tǒng)分析著手,采用層次分析法分析了影響導彈武器系統(tǒng)進入戒備狀態(tài)的主要因素,并廣泛征求專家意見,得到戒備率評估的指標體系,即戒備率的評估模型。
評估的模型與方法之間呈現(xiàn)相互支持、相互依賴的關系[2]。一方面,評估中得到的數(shù)據(jù)要由評估模型來處理;另一方面,評估模型的評估方法在運用中得到體現(xiàn)。常用的評估方法主要有[3]:層次分析法(AHP)、模糊綜合評判法、ADC法、SEA 法、指數(shù)法、人工神經(jīng)網(wǎng)絡評估法等。
依據(jù)導彈武器系統(tǒng)的復雜性,要求評估方法必須具備強大的處理非線性運算的能力;指標體系中某些參數(shù)獲取的困難性,要求評估方法能夠并行地處理模糊數(shù)據(jù)和精確數(shù)據(jù);執(zhí)行任務的條件具有多變性,要求評估方法有自適應性。由于戒備率評估的如上特點,系統(tǒng)選用了人工神經(jīng)網(wǎng)絡的評估方法。因為人工神經(jīng)網(wǎng)絡是一個非線性自適應系統(tǒng),從理論上講,能夠以任意精度逼近任意復雜的非線性函數(shù)[4],自身具有一定的“學習”和“進化”能力,可以克服系統(tǒng)環(huán)境和各項指標的不斷變化,使戒備率評估的知識庫不斷的完備更新,獲得最佳的評估效果。
人工神經(jīng)網(wǎng)絡評估的原理如下:首先將評估的指標進行歸一化處理,將其處理成可供神經(jīng)網(wǎng)絡訓練的輸入樣本,在部隊進行戰(zhàn)備等級轉換時得到相應條件下導彈武器系統(tǒng)實際戒備率作為神經(jīng)網(wǎng)絡的輸出,用足夠多的樣本訓練網(wǎng)絡,使網(wǎng)絡獲取各項指標對戒備率的影響程度以及專家的知識經(jīng)驗。訓練好的神經(jīng)網(wǎng)絡可以根據(jù)評估對象的各項指標屬性值,再現(xiàn)出專家的知識經(jīng)驗及不同指標對戒備率的影響程度,實現(xiàn)定性與定量的有效結合。
訓練樣本的獲取是人工神經(jīng)網(wǎng)絡評估方法實現(xiàn)的關鍵,在戒備率的底層評價指標中,有的可以用確定的表達式描述(如可靠性),通過數(shù)值計算得到精確的數(shù)值結果;而有些指標只能通過定性的評估(如人員反應能力),這些數(shù)據(jù)采用德爾菲法獲得。對于定量指標,其性質和量綱也不相同,可以將定量指標分為三種類型[5],即越大越好型、越小越好型和具有最佳值型。由于各種指標的量綱和性質不同,造成各指標的不可共度性,指標需進行合理的歸一化處理,首先必須建立諸因素與戒備率的隸屬函數(shù),以不同因素的隸屬作為神經(jīng)網(wǎng)絡的輸入值,將各輸入單元歸一化到(0,1)的區(qū)間內[6] 。
2.2 數(shù)據(jù)庫技術
導彈武器系統(tǒng)是一個復雜系統(tǒng),對其進行戒備率評估所需要的訓練樣本數(shù)據(jù)以及在評估過程中產(chǎn)生的中間數(shù)據(jù)量較大,并且要求數(shù)據(jù)處理的安全性很高。為了提高數(shù)據(jù)處理的效率,保證數(shù)據(jù)的安全,選用了數(shù)據(jù)庫技術。數(shù)據(jù)庫技術是針對數(shù)據(jù)組織和管理的技術,數(shù)據(jù)庫方式數(shù)據(jù)處理的整體化、信息化、隱藏化、安全化等特點使數(shù)據(jù)的分析和評估簡單易行。
應用程序對數(shù)據(jù)庫的訪問采用ADO.NET接口。ADO.NET可以有效地從數(shù)據(jù)庫的操作中將數(shù)據(jù)的訪問分解為多個單獨使用或串聯(lián)使用的連續(xù)組件[7],通過ADO.NET可以方便地完成對數(shù)據(jù)庫的復雜操作。
由于部隊實際條件的限制,系統(tǒng)可能無法遠程訪問數(shù)據(jù)庫,所以在數(shù)據(jù)庫的訪問上采用兩種方案。
第一種方案是客戶端可以遠程訪問服務器,其連接字符串為:
\"Provider=SQLOLEDB;Persist Security Info=True;Data Source=SQLName;Initial Catalog=DbaseName;User Id=ID;Password =PWD;\"
第二種方案是客戶端不能遠程訪問服務器,其連接字符串為:
\"Data Source=.\\\\SQLName;AttachDbFilename =|DataDirectory|\\\\DbaseName.mdf;Integrated Security=True;User Instance=True\"
其中:Data Source為SQL服務器名稱;Initial Catalog為數(shù)據(jù)庫名稱;AttachDbFilename為數(shù)據(jù)庫的相對路徑。當客戶端不能遠程訪問服務器時,需要在安裝文件中添加數(shù)據(jù)庫。
2.3 混合編程技術
系統(tǒng)的用戶界面是采用.NET平臺下C#開發(fā)的,.NET平臺是微軟公司推出的一種面向網(wǎng)絡,支持各種終端的開發(fā)環(huán)境平臺。利用該平臺開發(fā)的系統(tǒng)具有界面友好,執(zhí)行速度快,易于維護等特點,可以生成可執(zhí)行文件,保護算法和數(shù)據(jù),具有較好的安全性。但是它對數(shù)學計算的支持不夠,文中所采用的人工神經(jīng)網(wǎng)絡的算法用其實現(xiàn)較為復雜,而Matlab是一套高性能的數(shù)值計算和可視化軟件,具有專門的神經(jīng)網(wǎng)絡工具箱,內含大量可以設計神經(jīng)網(wǎng)絡模型[8],通過C#.NET設計用戶界面,Matlab實現(xiàn)后臺算法,提高了編程的效率。C#.NET與Matlab的接口主要有以下幾種[9],即利用Matlab自身的編譯器Matlab Complier,利用COM或NET技術,利用C-MEX、利用Mideva的平臺、利用Matlab的引擎技術。其中,只有Matlab引擎技術支持調用神經(jīng)網(wǎng)絡工具箱,所謂Matlab引擎技術指Matlab提供的接口函數(shù)。通過這些接口函數(shù),C#.NET可以完成對Matlab通過引擎方式的調用。戒備率評估系統(tǒng)會打開一個新的Matlab進程,可以控制它調用神經(jīng)網(wǎng)絡工具箱,完成戒備率的評估。C#.NET調用Matlab引擎技術實現(xiàn)神經(jīng)網(wǎng)絡的過程如圖2所示[10]。
在C#.NET編程環(huán)境中,使用Matlab引擎,首先需要安裝Matlab軟件;然后添加COM,引用“Matlab Application Type Library”;之后就可以實例化引擎對象。因為.NET語言與Matlab語言的數(shù)據(jù)類型不同,為了完成兩種數(shù)據(jù)的自動交換,還需要添加對MWArray類庫的引用。數(shù)據(jù)的交換主要采用Matlab引擎提供的三個接口:Execute,PutFullMatrix,GetFullMatrix;分別實現(xiàn)運行腳本,向Matlab Server中添加矩陣,從Matlab Server中讀取矩陣的功能,通過上述三個接口函數(shù)就可以完成.NET對Matlab引擎的調用。
圖2 C#.NET調用Matlab引擎技術實現(xiàn)神經(jīng)網(wǎng)絡
由于神經(jīng)網(wǎng)絡的初始參數(shù)是由經(jīng)驗推斷的,很難滿足精度的要求,需要根據(jù)訓練的效果進一步調整。為了能夠輔助評估人員快速找到最佳參數(shù),系統(tǒng)采用如下的解決方案:在諸多參數(shù)調解中,隱層神經(jīng)元個數(shù)和學習步長這兩個參數(shù)對評估的效果影響最大,首先由評估人員根據(jù)經(jīng)驗給定兩個參數(shù)的區(qū)間,以及迭代的步長,由系統(tǒng)逐次迭代選擇相對最優(yōu)值,而后在其附近減小迭代的步長,進行進一步優(yōu)化,如果誤差較大,調整參數(shù)直至達到評估要求。
2.4 系統(tǒng)實現(xiàn)
為了實現(xiàn)這些功能,系統(tǒng)編程語言選用C#.NET,數(shù)據(jù)庫采用Microsoft SQL Sever 2005,利用ADO.NET對數(shù)據(jù)庫進行訪問,通過Matlab引擎技術完成對神經(jīng)網(wǎng)絡工具箱的調用,程序流程如圖3所示。
圖3 程序流程圖
達到神經(jīng)網(wǎng)絡的評估目標后,將網(wǎng)絡結構參數(shù)保存到數(shù)據(jù)庫,得到不同時間節(jié)點戒備率的評估值。為了更直觀地顯示戒備率的變化情況,系統(tǒng)采用圖形設備接口(GDI+)繪制出戒備率的實時變化圖,系統(tǒng)運行效果如圖4所示。
圖4 運行效果圖
3 結 語
戒備率評估系統(tǒng)的開發(fā)主要考慮幾個方面的問題,易用性、快速性與準確性。該系統(tǒng)采用C#.NET開發(fā)的用戶交互界面,界面友好,操作簡單方便;采用數(shù)據(jù)庫技術保證了數(shù)據(jù)管理的效率和安全性;利用人工神經(jīng)網(wǎng)絡的評估方法,可以最大程度地適應評估環(huán)境的變化,得到準確的評估值;調用Matlab神經(jīng)網(wǎng)絡工具箱,提高了編程的效率,簡化了評估的程序,縮短了評估的時間。該系統(tǒng)不僅可以為指揮員的作戰(zhàn)決策,導彈的作戰(zhàn)使用提供參考依據(jù),還可以作為新型導彈研制的輔助工具。
參考文獻
[1]朱坤嶺,汪維勛.導彈百科辭典[M].北京:宇航出版社,2001.
[2]李志猛.基于SEA的效能評價方法研究[D].長沙:國防科學技術大學,2003.
[3]牛作成,吳德偉,雷磊.軍事裝備的評估方法探究[J].電光與控制,2006,13(5):98-101.
[4]朱大奇,史慧.人工神經(jīng)網(wǎng)絡原理及應用[M].北京:科學出版社,2006.
[5]高彬,郭慶豐.BP神經(jīng)網(wǎng)絡在電子戰(zhàn)效能評估中的應用[J].電光與控制,2007,14(1):69-71.
[6]王杰貴,崔宗國.雷達干擾決策的模糊綜合評估[J].電子對抗,1997(1):22-28.
[7]繆勇,李新峰,付志濤.Visual C#學習筆記[M].北京:電子工業(yè)出版社,2008.
[8]董長虹.Matlab神經(jīng)網(wǎng)絡工具箱與應用[M].北京:國防工業(yè)出版社,2005.
[9]王素立,高潔,孫德新.Matlab混合編程與工程應用[M].北京:清華大學出版社,2008.
[10]黃一丹,嚴洪森,馮麗娟,等.基于C#.NET與Matlab接口和BP神經(jīng)網(wǎng)絡的汽車產(chǎn)量預測[J].計算機技術與發(fā)展,2008,18(11):36-39.