【正文】
ual C進(jìn)行開發(fā)C是微軟開發(fā)的一種面向?qū)ο蟮木幊陶Z言。而Microsoft Visual C是微軟開發(fā)的C編程集成開發(fā)環(huán)境(IDE),它是為生成在 .NET Framework 上運(yùn)行的多種應(yīng)用程序而設(shè)計的。C功能強(qiáng)大、類型安全,面向?qū)ο?,具有很多?yōu)點,是目前C/S軟件的主流開發(fā)工具[4]。 以《灰色系統(tǒng)理論及應(yīng)用》第五版(劉思峰等著)[5]為基礎(chǔ),并結(jié)合灰色系統(tǒng)領(lǐng)域的最新研究成果。3.為了驗證系統(tǒng)用戶身份的合法性,需要用戶在進(jìn)入系統(tǒng)前進(jìn)行注冊,但是,假如每次用戶進(jìn)入系統(tǒng)都需要進(jìn)行一次注冊碼校驗,又略顯繁瑣。為了既能保證系統(tǒng)使用者身份的合法性,同時又能滿足系統(tǒng)使用的簡便性,在系統(tǒng)設(shè)計時應(yīng)用基于XML的客戶端技術(shù)進(jìn)行程序處理,當(dāng)用戶第一次登錄的時候,系統(tǒng)提示需要輸入注冊碼,提交之后通過某種內(nèi)置算法以校驗注冊碼的合法性;當(dāng)用戶第二次使用系統(tǒng)的時候,則可以直接跳過注冊窗口進(jìn)入系統(tǒng)主界面,以避免用戶每次使用系統(tǒng)需要輸入注冊碼的繁瑣。圖1 圖2 在登錄時,若用戶尚注冊碼,此時需要點擊登錄窗口的“免費(fèi)獲取注冊碼”進(jìn)行免費(fèi)注冊(B/S)。以下是系統(tǒng)的注冊窗口(圖2)及注冊流程圖(圖3)。圖3 用戶注冊流程圖4.在使用系統(tǒng)建模之前,需要首先向系統(tǒng)輸入數(shù)據(jù)以及設(shè)置系統(tǒng)參數(shù),即直接通過系統(tǒng)提供的控件進(jìn)行數(shù)據(jù)輸入以及通過Excel文件從外部導(dǎo)入數(shù)據(jù)(對需要大量數(shù)據(jù)輸入的模塊只提供了從Excel文件導(dǎo)入這一種方式),現(xiàn)在對這兩種輸入方式進(jìn)行介紹。l (1)從控件中輸入數(shù)據(jù)。 在VisualC中,有兩種控件支持直接輸入數(shù)據(jù):一種是文本框(Textbox)控件;一種是組合框(ComboBox)控件。Textbox控件是用于創(chuàng)建被稱為文本框的標(biāo)準(zhǔn)Windows編輯控件,用于獲取用戶輸入或者顯示的文本信息。在文本框中輸入數(shù)據(jù)時,用鼠標(biāo)右鍵點擊文本框,看到(修改為:觀察到)光標(biāo)在文本框中閃動之后即可進(jìn)行數(shù)據(jù)輸入。Windows窗體的組合框控件(ComboBox)主要用于在下拉列表框中顯示數(shù)據(jù)。默認(rèn)情況下,ComboBox控件由兩個部分構(gòu)成:頂部是一個允許用戶輸入數(shù)據(jù)的文本框(Textbox),下面部分是一個下拉列表框(ListBox),這是一個提供給用戶進(jìn)行選擇的選項列表。由于組合框由上部的文本框以及下部的下拉列表框組合而成,因此稱這種控件為“組合框”。用戶在使用組合框進(jìn)行數(shù)據(jù)錄入的時候,首先檢查下拉列表框中是否包含自己希望錄入的數(shù)據(jù),假如有則直接使用鼠標(biāo)選中即可;否則,需要在組合框頂部的文本框中錄入數(shù)據(jù)(具體錄入過程與操作文本框類似,略)。(2)從Excel文件中導(dǎo)入數(shù)據(jù)。 文本框或者組合框只能接受小量的數(shù)據(jù)錄入,對大批量的信息,使用文本框或者組合框,不僅數(shù)據(jù)的錄入效率低,而且容易出錯。為了解決本系統(tǒng)中大批量數(shù)據(jù)(在灰色聚類,灰色決策中經(jīng)常需要大量信息)的錄入問題,系統(tǒng)借助Excel強(qiáng)大的功能,先在Excel表中將需要的數(shù)據(jù)進(jìn)行錄入和編輯,然后再通過軟件提供的接口將Excel表中的數(shù)據(jù)導(dǎo)入到系統(tǒng)。Excel是微軟公司的辦公軟件Microsoft office的組件之一,是由Microsoft為Windows和Apple Macintosh操作系統(tǒng)的電腦而編寫和運(yùn)行的一款試算表軟件。直觀的界面、出色的計算功能和圖表工具,使Excel成為目前最流行的微機(jī)數(shù)據(jù)處理軟件。通過Excel,系統(tǒng)將比較方便地進(jìn)行數(shù)據(jù)的錄入。5.——以GM(1,1)為例建模數(shù)據(jù):, , , , 結(jié)果精度:小數(shù)點后4位;建立GM(1,1)模型。Step1:輸入/導(dǎo)入數(shù)據(jù)及設(shè)置結(jié)果精度Step2:計算模型參數(shù)、顯示計算過程Step3:預(yù)測數(shù)據(jù)操作界面如圖4所示。圖4 6.結(jié)束語 (1)在已有灰色系統(tǒng)理論的基礎(chǔ)上,結(jié)合自己的應(yīng)用體驗,開發(fā)了基于Visual C的灰色建模系統(tǒng) ,有助于廣大科研工作者應(yīng)用灰色系統(tǒng)進(jìn)行建模和數(shù)據(jù)分析,促進(jìn)了灰色系統(tǒng)在應(yīng)用領(lǐng)域的發(fā)展。(2)本系統(tǒng)包含了灰色理論中主要的模型,采用面向?qū)ο蠛湍K化的編程思想劃分各模型。隨著灰色系統(tǒng)理論的完善和應(yīng)用研究的推廣,新的模型可以不斷地充實本系統(tǒng)。參考文獻(xiàn)[1] (社會,經(jīng)濟(jì))[M].北京:國防工業(yè)出版社,1985.[2] 王學(xué)盟,張繼忠,[M].武漢:華中科技大學(xué)出版社,2001.[3] 劉斌,劉思峰,[J].微機(jī)發(fā)展. ,:1719,2003.[4] (第5版)[M].北京:科學(xué)出版社,2010.[5] 呂偉臣,霍言, C入門與提高[M].北京:清華大學(xué)出版社,2006.基于GM(1,1)粗大誤差判別的天波場強(qiáng)數(shù)據(jù)處理方法夏斌1,2 1) 上海交通大學(xué) 上海 2002402) 六三八九三部隊 河南 洛陽471003摘 要 針對在短波天波信道中受電離層快衰落影響的短波天波信號場強(qiáng)數(shù)據(jù)處理問題,本文提出采用GM(1,1)模型粗大誤差判別算法,剔除由電離層快衰落影響而突變的數(shù)據(jù),提高統(tǒng)計理論中值法處理的精度。在Matlab中對短波天波場強(qiáng)典型數(shù)據(jù)進(jìn)行處理,結(jié)果表明GM(1,1)粗大誤差判別算法能很好地剔除受電離層快衰落影響而突變的數(shù)據(jù),具有較好的判別精度,提高短波天波場強(qiáng)中值法處理的精度,并在實踐中得到應(yīng)用。關(guān)鍵詞 電離層快衰落,場強(qiáng)數(shù)據(jù)處理,GM(1,1)模型粗大誤差判別方法,中值法Data Processing for Intensity of HF Signal based on GM(1,1) Distinguishing Algorithm of Gross ErrorXia Bin1,21) Shanghai Jiao Tong University,Shanghai,2002402) Unit 63880 of PLA, Luoyang 471003Abstract—Aimed at the ionosphere fast fading may greatly influence the measurement of HF air field intensity. This paper proposed to use the Distinguishing Algorithm of Gross Error based on GM(1,1) Model to deal with the intensity of HF signal, eliminate the break data influenced by the ionosphere fast fading, and to improve the precision of the middle method in statistical theory. Using MATLAB to process the identical data of HF air filed intensity. The result accurately eliminates the break data influenced by the ionosphere fast fading, and improves the precision of the middle method in statistical theory. This algorithm is used in practice.Keywords—ionosphere fast fading;HF air field intensity;distinguishing algorithm of gross error based on GM(1,1)Model;middle method instruction1.引言短波天波信道主要靠電離層反射,電離層是分層、不均勻、時變的媒介,短波信道屬于隨機(jī)變參信道,存在著多徑效應(yīng)、衰落、多普勒頻移等特性。電離層的快衰落特性對短波通信裝備和干擾裝備的天波信號場強(qiáng)有著不可忽略的影響,天波信號場強(qiáng)數(shù)據(jù)表現(xiàn)出一種非平穩(wěn)特征,利用統(tǒng)計理論直接對測量數(shù)據(jù)處理存在較大誤差。為降低受電離層快衰落影響的測量數(shù)據(jù)誤差和提高信號場強(qiáng)測量數(shù)據(jù)中值法處理的精度,需要對電離層快衰落影響的信號場強(qiáng)數(shù)據(jù)進(jìn)行預(yù)處理?;疑到y(tǒng)理論中預(yù)測模型GM(1,1)的粗大誤差判別算法[1]主要用于剔除測量數(shù)據(jù)中含有粗大誤差的數(shù)據(jù),所以本文提出采用GM(1,1)粗大誤差判別算法對短波天波場強(qiáng)測量數(shù)據(jù)進(jìn)行預(yù)處理,剔除受電離層快衰落影響而突變的測量數(shù)據(jù),并通過在Matlab中對短波天波場強(qiáng)典型數(shù)據(jù)進(jìn)行處理,驗證GM(1,1)粗大誤差判別算法能否剔除受電離層快衰落影響而突變的數(shù)據(jù)和提高短波天波場強(qiáng)中值法處理的精度。2.基于GM(1,1)外推的粗大誤差判別算法[1] GM(1,1)模型[3,6]常用的數(shù)列預(yù)測外推模型GM(1,1)為單變量模型,是做系統(tǒng)變量外推的一種有效的模型。它通過原始數(shù)據(jù)的處理和灰色模型的建立,發(fā)現(xiàn)和掌握系統(tǒng)發(fā)展規(guī)律,對系統(tǒng)的未來狀態(tài)做出科學(xué)的定量預(yù)測外推。令原始數(shù)列為,計算級比得到級比序列,判斷是否滿足。如果滿足,直接用原始數(shù)列進(jìn)行GM(1,1)建模;否則對原始數(shù)列進(jìn)行數(shù)據(jù)變換處理(平移變換、對數(shù)變換或方根變換[3]),直到要求滿足。設(shè)為GM(1,1)建模序列,則GM(1,1)的灰色微分方程為 (1)式中待估計參數(shù)為GM(1,1)的發(fā)展系數(shù),待估計參數(shù)為GM(1,1)的灰作用量,可通過式(2)求得,其中為的均值序列,為的AGO(Accumulating Generation Operator)序列。 (2)另設(shè)為參數(shù)列,且 (3)則灰色微分方程式(1)的最小二乘估計參數(shù)列為 (4)求得參數(shù)列,解灰色微分方程式(1)可以得到外推模型式(4)。 (5) 令(),可得GM(1,1)的相對殘差和平均相對殘差如式(6),從而可通過式(6)得到GM(1,1)的建模精度。 (6) (7)通過外推值的相對殘差來評定預(yù)測值的精度。令,,可得外推值的均方差估算公式為(8)式中 (9)則外推值的精度可以表示為 (10) 基于GM(1,1)模型的粗大誤差判別算法[1]根據(jù)灰色系統(tǒng)理論,由于測量數(shù)據(jù)的不確定性,測量數(shù)據(jù)則可以視為在一定范圍內(nèi)的灰色量,可以利用灰色系統(tǒng)的相關(guān)理論對數(shù)據(jù)進(jìn)行處理。設(shè)有一組測量數(shù)據(jù)序列,為了進(jìn)行粗大誤差的判別,將原始測量序列的測量數(shù)據(jù)按從小到大排序,形成一個新的序列為。很顯然,重新排列后的數(shù)據(jù)列最可能含有粗大誤差的數(shù)據(jù)首先就是和。下面分別介紹和中的粗大誤差判別步驟。 中的粗大誤差判別步驟一:首先假設(shè)和含有粗大誤差并予以剔除,余下數(shù)據(jù)重新寫為新的數(shù)據(jù)列。顯然有 (11)步驟二:以數(shù)據(jù)建立GM(1,1)模型,通過式(5)得到外推模型 (12)式中是的AGO序列,參數(shù)、通過式(4)求得。從而得到外推值和GM(1,1)的建模精度。步驟三:計算相對于的相對殘差 (13)步驟四:中粗大誤差的判別算式。若 (14)成立,則認(rèn)為中含有粗大誤差,否則認(rèn)為中不含粗大誤差;式中為判別門限,是、的函數(shù)。 中的粗大誤差判別首先同樣假設(shè)和含有粗大誤差并予以剔除,對余下數(shù)據(jù)從大到小進(jìn)行排列,得到新的數(shù)據(jù)列,并有 (15)。依靠本文方法判別粗大誤差時,每次只能判斷第1個或第個數(shù)據(jù)。若為粗大誤差則予以剔除,余下的數(shù)據(jù)重新依上述步驟重復(fù)判斷。也就是當(dāng)或含有粗大誤差時,才繼續(xù)去判別或,關(guān)于的判別方法與的判別方法類似,的判別方法與的判別方法步驟一致,以此類推,直到所有的判別數(shù)據(jù)不含粗大誤差而終止。3 短波天波場強(qiáng)測量數(shù)據(jù)分析及處理 短波天波場強(qiáng)測量數(shù)據(jù)分析由于電離層媒質(zhì)的隨機(jī)性,各徑相對時延亦隨機(jī)變化,使得合成信號發(fā)生隨機(jī)起伏,這種變化非???,稱為快衰落。電離層快衰落造成短波天波信號場強(qiáng)測量數(shù)據(jù)的突變,圖1為場強(qiáng)測試數(shù)據(jù)典型圖,圖中的數(shù)據(jù)變化起伏很大,如果直接處理這樣的數(shù)據(jù),勢必造成處理結(jié)果帶有很大的誤差。圖1 短波天波場強(qiáng)測量數(shù)據(jù)典型圖 短波天波場強(qiáng)測量數(shù)據(jù)處理根據(jù)短波天波場強(qiáng)測量數(shù)據(jù)的分析,GM(1,1)模型的粗大誤差判別算法適合對短波天波場強(qiáng)測量數(shù)據(jù)的處理。根據(jù)建立GM(1,1)模型的條件,計算短波天波場強(qiáng)測量數(shù)據(jù)的級比序列和判斷條件,對短波天波場強(qiáng)測量數(shù)據(jù)級比序列的范圍判斷條件為 [,],通過模型條件計算,采用方根變換,共8次變換方可獲得可以建立GM(1,1)模型的數(shù)據(jù)列。根據(jù)GM(1,1)模型的粗大誤差判別算法對可建立GM(1,1)模型的數(shù)據(jù)列進(jìn)行處理,其步驟為:步驟一:將原始數(shù)據(jù)列從小到大排序得到新的數(shù)列,并假設(shè)數(shù)據(jù)列中的最大值和最小值含有粗大誤差。圖2 GM(1,1)模型從小到大排序的數(shù)據(jù)列步驟二:利用除去最大值和最小值的數(shù)據(jù)列建立GM(1,1)模型,從而判別最大值是否含有粗大誤差。步驟三:同步驟二,數(shù)據(jù)列按從大到小排列,建立GM(1,1)模型,判別最小值是否含粗大誤差。步驟四:按步驟二和步驟三進(jìn)行循環(huán)運(yùn)算,依次判斷各個數(shù)據(jù)是否含有粗大誤差。根據(jù)上述步驟,得到預(yù)測幅度誤差和保留數(shù)據(jù)區(qū)間[55,1102],此保留數(shù)據(jù)為原始數(shù)據(jù)從大到小排序的區(qū)間,如圖3所示。圖3 預(yù)測幅度誤差和粗大誤差剔除區(qū)根據(jù)剔除粗大誤差數(shù)據(jù)區(qū)域,得到在原始數(shù)據(jù)中剔除粗大誤差數(shù)據(jù)的包絡(luò)如圖4所示。從圖中可以看出,電離層造成的測量數(shù)據(jù)突變數(shù)據(jù)很好的被檢測出來,受電離層快衰落影響而突變的測量數(shù)據(jù)已基本剔除。圖4 原始數(shù)據(jù)中剔除數(shù)據(jù)的包絡(luò)圖根據(jù)短波天波場強(qiáng)數(shù)據(jù)的瑞利分布規(guī)律,采用中值法對剔除后的數(shù)據(jù)進(jìn)行處理,得到如下結(jié)果:,經(jīng)過GM(1,1);提高了短波天波場強(qiáng)中值法處理的精度。4 結(jié)束語電離層的快衰落特性對短波通信裝備和干擾裝備的天波信號場強(qiáng)有著不可忽略的影響,天波信號場強(qiáng)數(shù)據(jù)表現(xiàn)出一種非平穩(wěn)特征,利用統(tǒng)計理論直接對測量數(shù)據(jù)處理存在較大誤差。為降低受電離層快衰落影響