饒章宇,劉春元,彭 珍,孫浩宸
(1.浙江理工大學信息學院,浙江 杭州 310018;2.嘉興學院信息科學與工程學院)
永磁同步直線電機(Permanent Magnet Synchronous Linear Motor,PMSLM)具有動態響應快、推力大、效率高等特點,在工業領域[1,2]得到了廣泛的應用。但由于PMSLM 的定位力波動降低了系統的可靠性和控制精度,特別是在電機處于低速運行時,還會引起整個裝置的共振,危害系統運行的穩定性[3]。
定位力是永磁同步直線電機的一項重要性能指標和固有的特性,其大小和方向與電機運行狀態無關[4],準確和快速計算定位力對優化PMSLM 結構和電磁性能具有重要意義。目前計算定位力主要有解析法、有限元法和非參數建模法。解析法[5]是利用已有的電機結構參數和電磁公式計算推導PMSLM 的定位力,解析法為了簡化計算,通常都會假設理想的前提條件,結果存在一定誤差,計算精度不高;有限元法[6]雖然計算精度高,但計算耗時比較長,效率低;非參數建模法[7-9]通過電機結構參數-定位力的樣本庫,對樣本數據進行回歸建模,擬合出電機結構參數和定位力的回歸計算模型,常用建模方法有K 最近鄰(KNearest Neighbour,KNN)[7]、隨機森林(RandomForest,RF)[8]、神經網絡[9]等,神經網絡建模方法通常有更高的精度,但神經網絡結構參數的調整往往需要依賴經驗信息和先驗知識,建模時需要消耗更多時間成本。
基于上述方法的優缺點,本文提出了一種基于自適應深度神經網絡(AdaptiveDeep NeuralNetwork,ADNN)的PMSLM 定位力非參數建模方法。深度神經網絡具有更強的泛化能力,其多層網絡的特點使其對高維數據具有更好的表達能力,本文在深度神經網絡模型的基礎上,采用神經網絡結構搜索算法搜索最佳模型結構,使神經網絡的結構進行自適應,相較于傳統的人工調參訓練,可以節省大量用于調整深度神經網絡結構參數的時間;同時結合一種k折訓練方式,能全面利用所有樣本,使模型結構更合理。訓練ADNN所使用的數據來自有限元分析軟件的仿真數據,以確保PMSLM定位力計算模型的高精度和高效率。
為了簡化計算和提高計算效率,本文利用敏感參數法,重點研究對定位力影響較大的幾個參數,包括極弧系數(a)、氣隙(g)、背鐵厚度(Hb)、永磁體厚度(Hpm)、槽寬(Wslot),PMLSM 的其他主要參數如表1 所示,根據上述參數建立PMLSM 有限元分析模型,其中極弧系數a=τpm/τp。

表1 電機的主要尺寸參數
根據已建立的有限元分析模型,利用參數化分析,計算得到不同參數的定位力數據,本文的參數范圍和步長如表2所示。

表2 研究的結構參數范圍和步長
按表2 中的數據,設定求解器時間步長為2ms,按正交組合的方式輸出0-200ms 中每組結構參數每個時刻的定位力大小,總共有1200 組實時定位力數據,每組數據有101個定位力數據。
對于上述原始數據的輸入特征,存在特征之間相差過大的情況,由于深度學習模型會在所有樣本分布中尋找一個平衡點,這就會導致過小的數據被忽略,難以學習到所有樣本特征,所以,需要對數據放縮到相同的分布空間中,本文采用歸一化的方法,將樣本特征放縮到[0,1]的范圍內,對樣本標簽不做處理。
其中,xi為某一樣本的第i個特征為所有樣本的第i個特征中的最大值為所有樣本的第i個特征中的最小值為該樣本歸一化處理后的第i個特征。
從歸一化處理后的樣本數據中去掉與樣機實驗平臺最相近的一組數據,如表3所示,確保模型不會學習到該組數據,用于后續測試,剩余1199 組數據組成樣本庫。

表3 模型測試使用的電機結構參數
另外,樣本庫中相鄰樣本之間僅有一個特征不同,存在特征相似的問題,神經網絡是按批進行訓練的,當每批的樣本特征過于相似時,會使神經網絡將相鄰的樣本之間特征是相似的這一錯誤信息更新到網絡模型中,導致模型收斂速度慢、精度低,所以需要將樣本庫中的樣本順序隨機打亂,確保訓練時每批樣本特征之間不存在過多聯系。
深度神經網絡是一種模擬人腦神經元進行信息處理的計算系統,其模型構建往往需要依賴經驗信息和先驗知識,在深度神經網絡的基礎上使用結構搜索算法構建ADNN 模型,模型由輸入層、隱藏層、輸出層組成,本文使用全連接網絡結構,提前終止法終止訓練,驗證集誤差和決定系數反饋調整模型結構,如圖1所示,其中結構搜索算法可以分為搜索空間、搜索策略和性能評估三個維度[10,11]。

圖1 ADNN模型結構圖
其工作流程如下:
⑴ 給定搜索空間,模型參數初始化。給定ADNN 模型結構的搜索空間,在搜索空間內選定某一結構建立ADNN 模型,并初始化各層的權重參數W和偏置參數b。
⑵正向傳播,計算輸出結果。選取一定批量的數據作為輸入層數據,權重參數Wi與上一層的輸出數據yi-1相乘加上偏置量bi得到當前層的輸入數據xi,為了使模型能計算非線性問題,輸入數據xi需要經過激活函數σ得到當前層的輸出數據yi,由此正向傳播計算得到最后輸出結果y,也即預測結果,其中i為當前神經元所在層數。

⑶反向傳播,更新參數。計算預測結果和真實結果的之間的損失LOSS,采用梯度下降法反向傳播,更新權重參數Wi和偏置量bi。

其中,ε為學習率。
⑷提前終止法停止學習。選取下一批量的數據重復步驟⑵和⑶,完整訓練一遍樣本數據算作一次迭代,經過若干次的學習迭代,當滿足提前終止法的條件后,完成模型的訓練。
⑸反饋調整模型結構。完成模型訓練后,評估模型誤差和精度,并使用一種搜索策略反饋調整模型結構,尋找搜索空間內性能最優的模型結構。
本文使用決定系數R2評估模型的精確性,R2的計算公式如下:

其中,m為樣本個數,yi為樣本真實結果,yi為模型預測結果為所有樣本真實結果的平均值。
當R2越接近1時,則預測值越接近于真實值,模型擬合度越高;當R2越接近0時,則預測值越接近于平均值,說明模型幾乎沒有預測作用,模型擬合度越低;當R2為負數時,則表明模型預測值的誤差比直接使用平均值作為預測值的誤差還大,這種情況一般為非線性問題使用了線性模型進行預測會出現,若出現這種情況則說明模型結構存在較大問題。
本文ADNN 模型輸入層數據為電機結構參數,即輸入層節點數為5,輸出層數據為電機的一組定位力,即輸出層節點數為101,確定搜索空間的隱層數范圍為[1,+∞),隱層節點數范圍為[5,101];由于模型計算規模較小,可使用順序搜索策略,算法過程見算法1;在訓練ADNN 時使用提前終止法提前停止訓練,算法過程見算法2。此外,本文使用一種k 折的訓練方式,可以有效利用所有樣本,搜索得到最佳模型結構,最后使用所有樣本訓練最佳模型得到定位力快速計算模型,其構建流程如圖2所示。

圖2 定位力快速計算模型構建流程圖
算法1 順序搜索算法

算法2 提前終止法

本文與兩種傳統的機器學習算法進行對比,包括KNN算法、RF算法。將預處理后的樣本按8:2劃分訓練集與測試集,各算法主要參數設定如下:
⑴KNN算法中k值設定為5;
⑵RF算法中最大深度設定為不限。
使用訓練集數據訓練各模型,完成訓練后計算測試集均方誤差和決定系數。使用三個模型對表3中的結構參數進行定位力預測,與有限元分析軟件的輸出結果對比分別如圖3、圖4所示。

圖3 KNN模型預測圖

圖4 RF模型預測圖
3.2.1 模型參數初始化
本文選擇LeakyReLU 作為模型的激活函數,解決了ReLU 死神經元的問題,模型的初始學習率設定為0.001,損失函數選擇更適合回歸任務的均方誤差(Mean Square Error,MSE)函數,優化器選擇自適應矩 估 計(Adaptive moment estimation,Adam),Adam優化器可動態調整模型學習率,能自然地實現步長退火過程,由于其優秀的性能和精度,被各領域廣泛使用[12]。
3.2.2 訓練ADNN定位力快速計算模型
將樣本庫平均分成10 份,按2.3 節中的訓練步驟訓練ADNN 模型。訓練結束后得到10個模型,計算平均隱層數和隱層節點數,得3 個隱層、24 個隱層節點,則最佳模型結構為3 個隱層、24 個隱層節點。用樣本庫中所有數據訓練最佳結構的ADNN 模型即可得到定位力計算模型,該模型的誤差和精度可采用k 折交叉驗證法進行驗證。使用定位力計算模型對表3中的結構參數進行定位力預測,與有限元分析軟件的輸出結果對比如圖5所示。

圖5 ADNN模型預測圖
3.2.3 k折交叉驗證
上一節中使用10折訓練方式,直接使用該節的樣本分組,進行10 折交叉驗證,不同的是不需要再將除測試集外的數據分為訓練集和驗證集,而是整體作為k 折交叉驗證法的訓練集。由于上一節所使用的驗證集數據為k 折交叉驗證法的訓練集中的一部分,故不存在數據泄露的問題。訓練完成后得到10 個模型的誤差和決定系數如圖6 所示,計算它們的平均誤差和決定系數即為ADNN 定位力快速計算模型的誤差和精度。

圖6 k折交叉驗證法的誤差與決定系數
由3.1 節與3.2 節得到KNN、RF 和ADNN 的誤差與精度如圖7所示。

圖7 KNN、RF、ADNN模型誤差和精度對比
ADNN模型精度為99.86%,與KNN、RF的75.15%、97.10%相比,精度分別提高32.88%和2.84%。人工調參時,逐一對模型分析、調整與訓練,建立高精度模型大約需耗費100min;ADNN 完整自適應調整過程僅耗費14min50s,時間消耗減少85.17%。
為了驗證ADNN 定位力快速計算模型能有效計算永磁直線電機的定位力,用MTS100kN 萬能試驗機進行試驗。樣機實驗平臺所使用的永磁直線電機結構參數如表6 所示,使用MTS100kN 萬能試驗機以0.001m/s 的速度帶動永磁直線電機工作,如圖8 所示。電機初級的質量為M,向上移動時讀取力傳感器的數據FU(t),向下移動時讀取力傳感器的數據FD(t),經過計算得到其定位力Fd(t)。


表6 實驗平臺使用的電機結構參數

圖8 樣機實驗平臺示意圖
使用ADNN 定位力快速計算模型計算表6參數的定位力,與樣機實驗平臺測量的數據對比如圖9所示。ADNN 模型計算結果與實驗結果基本一致,說明ADNN 定位力快速計算模型是有效的,其中存在一些偏差的主要原因是訓練模型的樣本數據由軟件仿真得到,沒有考慮損耗和摩擦等因素。

圖9 ADNN預測數據與實驗數據對比
本文提出了一種結構自適應的ADNN 模型,通過提前終止法和結構搜索算法能快速找到最佳模型,k折訓練方式能有效利用所有樣本,然后使用k 折交叉驗證法計算其精度,并和K最近鄰、隨機森林的精度進行對比,最后使用樣機平臺驗證模型的有效性。實驗結果表明,基于ADNN 的定位力計算模型具有良好的精度和性能,解決了傳統機器學習算法精度不足的問題,且ADNN 的結構自適應特性相比人工調參的深度神經網絡模型,建模效率顯著提高。未來考慮引入智能算法改進本文的神經網絡結構搜索策略,諸如遺傳算法、粒子群優化算法等,進一步提高效率和準確性。