趙維
(渭南師范學院 計算機科學系,陜西 渭南 714000)
蒙特卡羅法是把某個未知值取作某種概率分布或概率過程的未知參量,然后根據無作為標本抽出法對其進行統計、推定。該未知值不一定是概率的值,也可以是推定的值[1]。這種思想方法是一種在某種意義上可知的對策(博弈)觀點。隨著方差減少法的開發和大型超高速計算機的出現,它不僅是一種最重要的仿真方法,而且也是一種最有效的系統工程方法。
在數字通信中,對于數字調頻信號,通常以頻率250~4 750 Hz(每次增加500 Hz)代表0~9[2]。 現有1個5位碼,例如數組[6,2,4,0,1],調制成調頻信號。 接收到的信號中混有10倍于原信號的強干擾,干擾信號為線性調頻信號,其他噪聲影響較小,可忽略不計,編程將信號解碼,還原為原數組,應用蒙特卡羅法估計該方法的誤碼率。
1)生成實際接收信號 隨機生成5位編碼code,生成調頻信號y1=cos(f/Fn),F為抽樣頻率。每個碼元的長度有小范圍隨機抖動。錄入強線性調頻信號數據yint。合成實際信號y=y1+yint。
2)信號分析 對接收信號作時頻分析,畫出時頻圖,可見原信號與強干擾信號的頻域關系[3]。并將信號按時間分段,加漢寧窗作傅里葉變換,得到5組頻域數據,畫成頻域圖。由頻域圖可見,強干擾信號對應一個高峰,原信號對應一個較矮的峰。
3)信號處理 編程找出頻譜圖中信號的中心頻率,并算出對應的碼元PCODE,即解碼過程[4]。
4)誤差估計 比較解得的編碼與原編碼,計算誤碼率err。
1)生成實際接收信號 編寫函數[y,code]=tonegen(digits,yint),輸入參數digits為5位原編碼,如果length(digits)<5,則隨機生成5位編碼。輸入參數yint(見附錄)為干擾信號。默認值為強線性干擾信號。函數返回值y為生成的實際接收信號,code為返回的原編碼。
2)分析接收信號 編寫程序pic(digits)調用tonegen函數,返回實際接收信號和原編碼[5]。利用specgram函數對實際信號進行時頻分析,畫出時頻圖,并將信號按時間分為5段,加漢寧窗作傅里葉變換,得到5組頻域數據,將其畫成5個頻域圖。 運行pic(0),得到PCODE=[0,3,8,0,1](隨機數)時頻圖如圖1所示,5個頻譜圖如圖2~圖6所示。
圖1中深色區域為能量集中區。可見強線性調頻信號的階梯狀頻譜,原編碼信號的譜線或與干擾信號譜線重疊(0,3)或遠離干擾譜線(8,0,1)。

圖1 時頻圖
3)編程解碼 由圖2~圖6可見,強干擾信號對應一個高峰,原信號對應一個較矮的峰。編寫函數secmax(A)找出每幅頻譜圖的矮峰中心位置i,再還原成1位碼元code(n)。 (n=1,2,3,4,5)。最后編寫程序[PCODE,code]=mys(digits),解出5位編碼。
4)估計解碼程序的誤碼率 編寫程序ppp估計誤碼率err,運行ppp 10次,結果如下:0.028 0,0.027 2,0.027 4, 0.027 2,0.027 6,0.027 4,0.027 8,0.028 0,0.027 2,0.027 2, 誤碼率如圖7所示。
運算結果err在0.027~0.028之間。 平均值為0.027 5,可見解碼程序mys誤碼率很高。

圖2 高峰對應干擾信號,矮峰對應碼元0

圖3 信號與干擾重疊,對應碼元3

圖4 矮峰對應碼元8

圖5 矮峰對應碼元0

圖6 矮峰對應碼元1

圖7 誤碼率
強線性調頻信號對原信號干擾很大,應用時頻分析函數specgram將時域信號分段轉為頻域信號,再選頻濾波解得編碼[6],按照此想法編寫出簡單的解碼程序mys,應用該程序解出編碼。由于蒙特卡羅法具有實驗方法的性質,具有直接性、可靠性和準確性[7],故本文采用蒙特卡羅法評估:隨機生成的原信號經解碼后,求出誤碼率erate,將erate作為總誤碼率err的隨機樣本,選取抽樣次數N=10 000。N越大,誤碼率的置信水平越高,但程序運行時間越長。由程序ppp的運算結果及圖7,發現誤碼率err值很大,約3%。可見解碼算法準確度較低。因此,應進一步改進mys,以降低誤碼率。
[1]湯扣林.蒙特卡羅法實現系統可靠性仿真[J].Science&Technology information,2006 (33):33-35.
[2]馬海云,齊小軍.蒙特卡羅仿真機及其應用[J].電腦與信息技術,2006,14(3):36-37.
[3]梁志國,孫璟宇.調頻信號的數字化解調[J].測試技術學報,2005(2):57-58.
[4]劉穎,王春悅.現代數字通信[M].北京:北京郵電大學出版社,2000:22-25.
[5]魏選平,卞樹檀.蒙特卡羅法仿真實例及其結果分析[J].上海航天,2002,19(2):45-46.
[6]黃健求,陳常祥.基于蒙特卡羅法的機械可靠性仿真[J].東莞理工學院學報,2006(3):12-13.
[7]梁海麗,段吉海.游路路蒙特卡羅法在調制解調中的應用[J].微計算機信息,2007(13):41-42.