翟龍飛 陳迎春 楊沖 賈波
【摘要】 本文基于短波信號接收信噪比預測數據對BP網絡、GA+BP網絡和PSO+BP網絡分別在不同數據量的情況下進行仿真實驗,然后以均方誤差和訓練時間為性能參考選出最優的GA+BP網絡算法,最終將該算法應用于短波信號接收信噪比預測系統。
【關鍵詞】 數值預測 神經網絡 系統仿真
一、構建神經網絡
1.1數據的采集
本預測系統的訓練和預測數據是基于短波測量管理調度系統數據庫。利用Matlab與SQL Server對接,然后在Matlab環境下從短波測量管理調度系統數據庫中選取訓練所需的6個輸入變量:信號頻率,信號幅度,信號帶寬,信號調制方式,天線仰角和偵測時間(月、日、時、分)和1個輸出變量:信噪比。
1.2數據的預處理
選取完訓練數據后,對輸入數據進行歸一化處理,將其規整到一個范圍區間,使得各變量之間具有相同地位,避免經過神經網絡sigmoid傳輸函數誤差震蕩問題。然后針對歸一化處理后的數據,選取一定時間段內的局部數據作為訓練數據,進行數據的降維處理。最后用GA或PSO優化BP時,因為前面選取的是當前月份的數據,所以月份值一樣,導致輸入層月份值和隱層的連接權值無效,故應剔除掉月份值,否則產生的權值數與網絡的權值數不一致。
1.3確定網絡的隱層節點數
目前沒有較好的確定隱層節點數的方法,主要用試湊法仿真比較和遺傳算法全局尋優兩種方法綜合確定:單隱層,且隱層節點數為14。
1.4構建神經網絡
在此設網絡的隱層節點數為14,用newcf生成網絡:
net = newcf(p2,t2,14,{‘tansig,purelin},trainlm); % 1個隱層
1.5 數據的保存
當短波信號接收信噪比預測后,要通過Matlab將預測值存入到SQL Server中的短波測量管理調度系統數據庫。
二、仿真結果
三、系統測試
3.1系統測試及分析
在短波信號接收信噪比預測系統中,分別對BP網絡、GA+BP網絡和PSO+BP網絡進行測試得表2中數據:
結果分析:因為這里的訓練時間包括程序在系統中的運行時間和網絡的訓練時間,所以相較在MATLAB環境下進行的仿真實驗,訓練時間都長一些。由于系統測試時,會受到其他因素的影響,均方誤差MSE也比MATLAB環境下進行的仿真實驗時要大。但在系統測試中比較三種網絡性能可以得出相同的結論:綜合訓練時間、MSE大小以及MSE的穩定性,GA+BP網絡更適合于短波信號接收信噪比預測系統。