本發明涉及電磁發射,具體為一種多級同步感應線圈炮彈丸出口速度預測方法及系統。
背景技術:
1、同步感應線圈炮是電磁發射的重要方式之一,其工作過程如下:儲能電容器完成充電后,根據特定的觸發控制策略,導通觸發放電開關,對驅動線圈放電,產生脈沖電流,并在線圈周圍產生脈沖磁場。根據電磁感應定律,變化的磁場在發射體內部產生感應渦流,其與線圈磁場徑向分量相互作用,產生軸向電磁力,作用于發射體,使其做變加速運動。
2、同步感應線圈炮的動態特性通常與時序密切相關,例如每級驅動線圈電流及磁場變化、彈丸運動過程、觸發時刻等,且系統各參數間具有較強的非線性特性。當前,同步感應線圈炮的彈丸出口速度預測主要通過數值分析和有限元建模兩種方法,這兩種方法普遍存在建模涉及復雜多物理場耦合、迭代計算時間長、受系統非線性影響出口速度預測精度低等問題。且隨著級數的增加,涉及到的輸入參數越多,彈丸的速度越快,線圈的觸發時刻越難以準確控制,傳統方法需要重復的進行大量迭代計算,計算效率較低,且要保證出口速度預測精度,對硬件設備的要求會進一步提高,因此需要效率更高的方法來完成線圈炮的建模及出口速度預測。
3、rnn神經網絡擅長處理時序數據,可以捕獲系統輸入和輸出之間在不同時刻的非線性關系,且rnn模型不依賴于數學關系而通過分析和擬合輸入輸出建立“黑箱”模型來表達傳遞關系,尤其在針對多級同步感應線圈炮輸入參數多、耦合關系復雜的情況下,能夠有效地提高計算效率、降低對硬件設備的要求,實現快速準確的出口速度預測。
4、此外,由于線圈炮系統輸入輸出參數較多且輸入輸出間關系高度非線性,會導致rnn在訓練過程中出現預測精度差、不穩定等問題,需要進一步引入優化算法對rnn模型超參數(各層神經元個數以及正則化系數)進行優化,以提高多級同步感應線圈炮非參數模型的預測精度。因此迫切需要能夠快速準確進行多級同步感應線圈炮系統建模及出口速度預測的方法。
技術實現思路
1、本發明所要解決的技術問題在于:解決目前的多級同步感應線圈炮彈丸出口速度預測精度低,且建模迭代時間長的問題。
2、為解決上述技術問題,本發明提供如下技術方案:
3、一種多級同步感應線圈炮彈丸出口速度預測方法,包括:
4、獲取多級同步感應線圈炮參數樣本集,并將其劃分為訓練集和測試集;
5、建立rnn模型,將訓練集的數據輸入至rnn模型中進行訓練,再應用測試集對訓練完成后的rnn模型進行測試,根據評價指標評估rnn模型的預測能力;
6、若rnn模型的預測能力達標,則應用測試后的rnn模型進行預測,否則,則采用pso優化循環神經網絡模型rnn,再次應用訓練集訓練,選出rnn的超參數,建立pso-rnn模型;
7、輸入測試集對pso-rnn模型進行測試,根據評價指標評估pso-rnn模型的預測能力,直至預測能力符合要求,將最優超參數帶入rnn模型中,獲取最佳pso-rnn模型;
8、將發射器參數輸入最佳pso-rnn模型中,獲取當前參數下彈丸的出口速度。
9、在本發明的一實施例中,多級同步感應線圈炮參數樣本集通過正交試驗結合隨機試驗設計進行有限元仿真得到。
10、在本發明的一實施例中,多級同步感應線圈炮參數樣本集內中每個樣本為各級驅動線圈匝數、彈丸觸發位置以及各級驅動線圈的觸發時刻作為輸入,彈丸出口速度作為輸出。
11、在本發明的一實施例中,根據評價指標評估rnn模型的預測能力,包括:
12、s1,確定rnn模型的結構:對rnn的各項參數進行初始化,包括輸入權重wx、隱藏狀態權重wh、輸出權重wy、輸入偏置bx、隱藏偏置bh、輸出偏置by、初始隱藏狀態h0、正則化參數;確定隱藏層激活函數及隱藏層個數;
13、s2,輸入訓練集,對rnn模型進行訓練;
14、s3,輸入測試集對rnn模型進行測試,計算評價指標以及出口速度預測值與仿真值之間的誤差百分比;
15、s4,如果出口速度誤差百分比小于5%,則直接將各級驅動線圈匝數、彈丸觸發位置、各級驅動線圈的觸發時刻輸入至測試合格的rnn模型中進行彈丸出口速度預測;如果出口速度誤差百分比大于5%,則采用pso算法對rnn模型超參數進行優化。
16、在本發明的一實施例中,建立pso-rnn模型,包括:
17、s10,建立pso粒子群算法與rnn模型超參數之間的對應關系;
18、s20,初始化pso算法,包括種群規模、慣性權重、學習因子、最大迭代次數、粒子的初始位置和初始速度;
19、s30,以rnn模型的評價指標均方根誤差為適應度函數,計算粒子適應度值;
20、s40,更新粒子位置和速度;
21、s50,并應用訓練集進行訓練,將優化得到的最優超參數輸入rnn模型中,獲取pso-rnn模型。
22、在本發明的一實施例中,建立pso粒子群算法與rnn模型超參數之間的對應關系,包括:
23、將rnn模型的超參數映射為粒子群算法中粒子的位置和速度,其中,rnn模型的超參數包括:各隱藏層神經元個數以及正則化系數。
24、在本發明的一實施例中,計算粒子適應度值,通過以下公式:
25、
26、式中,rmse為均方根誤差,n為樣本數量,si和pi分別為第i個樣本的仿真值和預測值。
27、在本發明的一實施例中,更新粒子位置和速度,通過以下公式:
28、vid(t+1)=wvid(t)+c1r1(pid-xid)+c2r2(gd-xid);
29、xid(t+1)=xid(t)+vid(t+1);
30、式中,vid(t+1)和xid(t+1)分別為第i個粒子在d維空間中第(t+1)次迭代時的速度和位置;pid為個體粒子歷史最優位置,gd為全局最優位置;c1和c2為兩個學習因子,r1和r2為[0,1]區間內均勻分布的隨機數,w為慣性權重。
31、在本發明的一實施例中,獲取最佳pso-rnn模型,包括:
32、s60,測試集輸入訓練好的pso-rnn模型中,得到測試集的預測結果;根據測試集的預測結果計算評價指標以及誤差百分比,判斷迭代是否達到終止條件;
33、s70,如果沒有達到終止條件,執行s30至s60繼續迭代;如果達到終止條件,則得到最終的最優超參數,將最優超參數帶入rnn模型中,獲取最佳pso-rnn模型。
34、本發明還提出一種多級同步感應線圈炮彈丸出口速度預測系統,應用上述所述的多級同步感應線圈炮彈丸出口速度預測方法,包括:
35、樣本集模塊,用于獲取多級同步感應線圈炮參數樣本集,并將其劃分為訓練集和測試集;
36、rnn模型模塊,用于建立rnn模型,將訓練集的數據輸入至rnn模型中進行訓練,再應用測試集對訓練完成后的rnn模型進行測試,根據評價指標評估rnn模型的預測能力;
37、初始pso-rnn模型模塊,用于判斷,若rnn模型的預測能力達標,則應用測試后的rnn模型進行預測,否則,則采用pso優化循環神經網絡模型rnn,再次應用訓練集訓練,選出rnn的最優超參數,建立pso-rnn模型;
38、最佳pso-rnn模型模塊,用于輸入測試集對pso-rnn模型進行測試,根據評價指標評估pso-rnn模型的預測能力,直至預測能力符合要求,將最優超參數帶入rnn模型中,獲取最佳pso-rnn模型;
39、預測模塊,用于將發射器參數輸入最佳pso-rnn模型中,獲取當前參數下彈丸的出口速度。
40、與現有技術相比,本發明的有益效果是:本發明夠解決傳統同步感應線圈炮建模方法涉及多物理場耦合、迭代計算時間長、受系統參數間非線性影響出口速度預測精度低等問題,實現出口速度的快速預測;采用pso算法能夠解決rnn算法因同步感應線圈炮系統參數間非線性導致的預測精度差、不穩定的問題,實現了出口速度的準確預測。綜上,本發明能夠準確的根據線圈炮的各項參數預測出彈丸出口速度,為工程應用中線圈炮樣機的參數設計提供準確指導。
41、本發明對rnn模型參數進行兩步驟調參尋優,在第一階段先對rnn模型進行訓練,并用評價指標判斷預測誤差是否滿足要求,若滿足要求,則無需進行第二階段的參數微調,若不滿足,則對rnn模型進行第二階段的參數微調,此時的調參是基于第一階段rnn模型參數尋優的基礎上,應用pso算法再次對rnn模型的參數進行的微調。相對于目前主流做法先直接建立至少兩種算法結合的預測模型,使用樣本集訓練進行一次參數選尋優的方式,本發明可以提高計算效率或者減少計算時間。