張建華 商建偉 王 唱 趙 巖 李克祥 李祥利
(河北工業(yè)大學(xué)機(jī)械工程學(xué)院,天津 300401)
白酒是中國特有的傳統(tǒng)酒種之一,仍保留著傳統(tǒng)手工釀造工藝,摘酒是蒸餾過程中一道極為重要的工序[1-2]。分段摘酒是按照不同的酒精度區(qū)間將流酒過程中原酒劃分為不同的階段,進(jìn)行分段存儲。釀酒行業(yè)常用的摘酒方式為看花摘酒,摘酒工人通過流酒過程酒花的變化判斷當(dāng)前酒精度值,進(jìn)行分段摘酒,完全依賴摘酒工的個人經(jīng)驗。
目前常用的酒精度檢測方法有密度計法[3-4]、分析儀器法[5-8]和傳感器法[9]等。Lachenmeier等[3]利用振蕩式密度計法實現(xiàn)白酒酒精度檢測,對低濃度酒檢測精度較高。酒精度分析儀器包括近紅外光譜儀[5]、氣相色譜儀[6]、核磁共振氫譜儀[7]、拉曼光譜儀[8]等。Santos等[9]還設(shè)計了基于電磁傳輸線作為在線檢測酒精含量的傳感器,通過測量傳輸線內(nèi)傳播的TEM模式的電磁衰減來檢測溶液中的酒精含量。此外,還有基于圖像處理算法[10]實現(xiàn)自動摘酒的方法。上述研究工作對于酒精度的檢測具有靈敏度高,結(jié)果準(zhǔn)確等優(yōu)點,但存在檢測時間較長和受環(huán)境影響等問題,不適用于酒廠實際流酒過程檢測。
研究擬通過檢測音叉在不同模態(tài)不同濃度酒精溶液下的頻率值,判斷溶液酒精度值。采用LMS濾波算法和LSTM神經(jīng)網(wǎng)絡(luò)提高音叉檢測頻率穩(wěn)定性和實現(xiàn)音叉頻率動態(tài)補(bǔ)償,基于改進(jìn)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)建立酒精度預(yù)測模型,以期為分段摘酒過程酒精度檢測提供一種快速精準(zhǔn)檢測方法。
分段摘酒是通過采集流酒過程音叉頻率值、音叉內(nèi)置溫度值和流酒溫度值,通過PLC相關(guān)組件和酒精度計算模型實現(xiàn)酒精度在線計算,將酒精度數(shù)與控制系統(tǒng)預(yù)設(shè)酒精度數(shù)進(jìn)行對比判斷,控制各階段電磁閥動作,使原酒流向不同的儲存桶,分段摘酒系統(tǒng)流程示意圖如圖1所示。
圖1 分段摘酒系統(tǒng)流程示意圖Figure 1 Process diagram of segmented wine picking system
2.1.1 材料與試劑
乙醇:分析純,江蘇強(qiáng)盛功能化學(xué)股份有限公司;
蒸餾水:江蘇沭陽科泓商貿(mào)有限公司。
2.1.2 儀器設(shè)備
音叉頻率傳感器:GJM-801型,西安市高精密儀器廠;
恒溫水浴槽:YTSC-15A型,上海葉拓儀器儀表有限公司;
溫度傳感器:PT100型,北京賽億凌科技有限公司;
電子天平:AUY120型,島津企業(yè)管理(中國)有限公司;
轉(zhuǎn)子泵:PSA2型,北京帕普生泵業(yè)有限公司。
音叉頻率傳感器內(nèi)置溫度傳感器安裝在機(jī)械支體內(nèi)部,存在對液體溫度響應(yīng)不及時問題,為解決此問題,添加額外的液體溫度傳感器,用于測量溶液溫度。將音叉頻率傳感器與液體溫度傳感器進(jìn)行集成,通過RS485進(jìn)行數(shù)據(jù)輸出。為緩解音叉?zhèn)鞲衅鞔嬖诘倪吔缧?yīng)問題[11],提高檢測精度,音叉頻率傳感器安裝管徑設(shè)計為DN160。
利用島津電子天平、恒溫水浴槽、無水乙醇和蒸餾水配置20 ℃下不同濃度的酒精溶液。通過島津電子天平測量溶液密度,利用PT100溫度傳感器檢測溶液溫度,查詢《新編酒精密度濃度和溫度常用數(shù)據(jù)表》[12],根據(jù)所測密度和溫度得到所配溶液標(biāo)準(zhǔn)酒精度值,并進(jìn)行標(biāo)記。按照實際流酒過程酒精度分布區(qū)間,配置40%~80%vol的30個不同酒精度的酒精溶液樣本,其中40%~60%vol,每個溶液樣本遞增2%vol,60%~80%vol,每個溶液樣本遞增1%vol。
將30個酒精溶液樣本分別放入音叉頻率傳感器檢測容器,在水浴槽進(jìn)行不同溫度區(qū)間恒溫加熱,記錄每個酒精溶液樣本在室溫至40 ℃不同溫度區(qū)間下的音叉頻率值、音叉內(nèi)置溫度值和溶液溫度值,每個溫度區(qū)間遞增1.5 ℃。待附加液體溫度傳感器數(shù)值穩(wěn)定時,利用Matlab記錄此試驗條件下的數(shù)據(jù),部分?jǐn)?shù)據(jù)記錄見表1。
表1 部分?jǐn)?shù)據(jù)記錄表Table 1 Partial data record sheet
流酒過程不同時刻流酒速度和酒精度不同,對音叉頻率值產(chǎn)生影響,導(dǎo)致音叉在不同模態(tài)下的相同濃度酒精溶液會有不同的振動頻率。利用分段摘酒設(shè)備和酒精溶液樣本采集動態(tài)試驗條件下音叉在不同泵轉(zhuǎn)速不同濃度酒精溶液下的頻率值,音叉頻率方差如圖2所示,當(dāng)泵轉(zhuǎn)速較高時,音叉頻率方差較大,音叉頻率不穩(wěn)定,泵轉(zhuǎn)速較低時,音叉頻率方差較小,音叉頻率較穩(wěn)定。
圖2 泵轉(zhuǎn)速—音叉頻率方差圖Figure 2 Variogram of pump speed-tuning fork frequency
靜態(tài)試驗條件下不存在泵轉(zhuǎn)速對音叉檢測頻率的影響,音叉檢測頻率穩(wěn)定,且利用恒溫水浴槽更容易測得恒溫下音叉在不同濃度酒精溶液下的振動頻率。因此將靜態(tài)試驗條件下數(shù)據(jù)作為酒精度標(biāo)定數(shù)據(jù),把靜態(tài)試驗條件下音叉在不同溫度和濃度酒精溶液下的音叉頻率值作為音叉在動態(tài)試驗條件下的音叉頻率補(bǔ)償值。將動態(tài)試驗條件音叉在不同濃度酒精溶液不同泵轉(zhuǎn)速下的音叉頻率平均值作為LMS自適應(yīng)濾波音叉期望頻率值。
研究采集不同模態(tài)、不同濃度酒精溶液下音叉動態(tài)頻率值fd、音叉內(nèi)置溫度t1、溶液溫度t2和動態(tài)試驗條件下泵轉(zhuǎn)速n。將音叉動態(tài)頻率fd作為LMS自適應(yīng)濾波的輸入,輸出為濾波后頻率fl。將音叉動態(tài)頻率fd、泵轉(zhuǎn)速n、音叉內(nèi)置溫度t1和溶液溫度t2作為LMS期望信號調(diào)整模型輸入,輸出為音叉在不同濃度不同轉(zhuǎn)速下的音叉期望頻率fq。將濾波后音叉頻率fl、音叉內(nèi)置溫度t1、溶液溫度t2和泵轉(zhuǎn)速n作為LSTM音叉頻率動態(tài)補(bǔ)償模型的輸入,輸出為音叉頻率補(bǔ)償值fb。將音叉頻率補(bǔ)償值fb、音叉內(nèi)置溫度t1和溶液溫度t2作為IGA-BP酒精度擬合模型的輸入,輸出為酒精度q,實現(xiàn)動態(tài)流酒過程酒精度在線計算,數(shù)據(jù)處理流程如圖3所示。
圖3 數(shù)據(jù)處理流程圖Figure 3 Data processing flow chart
為提高動態(tài)流酒過程音叉頻率穩(wěn)定性,基于最小均方(Least Mean Square,LMS)算法實現(xiàn)音叉動態(tài)頻率自適應(yīng)濾波。LMS濾波算法基于維納濾波算法,采用隨機(jī)梯度下降的方法實現(xiàn)代價函數(shù)最小化,具有計算復(fù)雜度低、無需統(tǒng)計數(shù)據(jù)的先驗知識和均值無偏地收斂到維納解等優(yōu)點,在信號濾波方面得到廣泛應(yīng)用。LMS自適應(yīng)濾波器的結(jié)構(gòu)如圖4所示,包括橫向濾波器和LMS算法兩部分。
圖4 LMS自適應(yīng)濾波器框圖Figure 4 Block diagram of LMS adaptive filter
橫向濾波器本質(zhì)是FIR結(jié)構(gòu)的維納濾波器,LMS算法根據(jù)期望信號fq(n)與輸出信號fl(n)的誤差e(n)調(diào)整橫向濾波器的權(quán)系數(shù)向量,適應(yīng)隨機(jī)信號的時變統(tǒng)計特性[13]?;贐P神經(jīng)網(wǎng)絡(luò)建立LMS自適應(yīng)濾波期望信號調(diào)整模型,設(shè)定神經(jīng)網(wǎng)絡(luò)隱含層神經(jīng)元個數(shù)為6個,設(shè)定最大訓(xùn)練次數(shù)為1 000,學(xué)習(xí)速率為0.1,目標(biāo)誤差精度為0.001。濾波結(jié)果如圖5所示,音叉檢測頻率方差由0.022 54降為0.002 17。
圖5 音叉頻率自適應(yīng)濾波結(jié)果Figure 5 Tuning fork frequency adaptive filtering results
流酒過程音叉頻率補(bǔ)償值受歷史時刻工況的影響,對于音叉頻率補(bǔ)償值預(yù)測問題,傳統(tǒng)神經(jīng)網(wǎng)絡(luò)的輸出是由當(dāng)前時刻的輸入決定,而忽視了歷史時刻的影響。循環(huán)神經(jīng)網(wǎng)絡(luò)(recurrent neural network,RNN)是在隱藏層神經(jīng)元上添加指向自己的反饋回路,使得上一時刻隱藏層狀態(tài)也作為下一時刻的輸入,從而將歷史信息考慮在內(nèi),達(dá)到短期記憶的目的[14]。LSTM網(wǎng)絡(luò)是一種特殊的RNN,它包含一個或多個記憶單元(cell)以及遺忘門(forget gate)、輸入門(input gate)和輸出門(output gate) 3個控制門,LSTM神經(jīng)元使其能夠存儲并傳遞長期記憶和短期記憶,克服了傳統(tǒng)RNN的長期依賴問題。
LSTM神經(jīng)網(wǎng)絡(luò)由時序數(shù)據(jù)輸入層、隱含層和輸出層組成,常用的序列預(yù)測法主要有單步法和多步法[15]。單步法是以固定時間步的歷史數(shù)據(jù)預(yù)測下一時刻的值,每次預(yù)測網(wǎng)絡(luò)的輸入均為已知實際觀測值,預(yù)測精度高,利于觀測短期內(nèi)性能的波動。多步法是指以固定時間步的歷史序列預(yù)測未來多個時間步的序列值。實際流酒過程中,音叉頻率補(bǔ)償值受歷史網(wǎng)絡(luò)補(bǔ)償值的影響,為提高預(yù)測精度,采用單步預(yù)測法。單步預(yù)測以不同濃度酒精溶液在動態(tài)試驗條件下固定10個時間步的泵轉(zhuǎn)速、濾波后音叉動態(tài)頻率、音叉內(nèi)置溫度、溶液溫度作為LSTM網(wǎng)絡(luò)單步預(yù)測的輸入,將試驗酒度在此溫度下的靜態(tài)試驗音叉頻率值作為LSTM網(wǎng)絡(luò)下一時刻的預(yù)測輸出。設(shè)置LSTM網(wǎng)絡(luò)隱含單元數(shù)目為200,訓(xùn)練次數(shù)為2 000次。濾波后音叉頻率和音叉頻率補(bǔ)償值時序數(shù)據(jù)圖如圖6所示。
圖6 樣本數(shù)據(jù)時序圖Figure 6 Sample data timing diagram
LSTM神經(jīng)網(wǎng)絡(luò)音叉頻率動態(tài)補(bǔ)償模型和BP神經(jīng)網(wǎng)絡(luò)音叉頻率動態(tài)補(bǔ)償模型預(yù)測輸出如圖7所示。由圖7可以得出,LSTM神經(jīng)網(wǎng)絡(luò)預(yù)測值與期望值的最大誤差為0.004 5,最小誤差為0,平均預(yù)測誤差為0.001 3;BP神經(jīng)網(wǎng)絡(luò)預(yù)測值與期望值最大誤差為0.008 4,最小誤差為0.000 4,平均預(yù)測誤差為0.002 8。對比發(fā)現(xiàn)LSTM網(wǎng)絡(luò)對音叉頻率補(bǔ)償值預(yù)測精度較高且更符合實際頻率變化規(guī)律。
圖7 音叉頻率補(bǔ)償值預(yù)測結(jié)果Figure 7 Tuning fork frequency compensation value prediction results
經(jīng)LMS自適應(yīng)濾波和LSTM神經(jīng)網(wǎng)絡(luò)音叉頻率動態(tài)補(bǔ)償模型解決了因泵運(yùn)動導(dǎo)致的音叉頻率檢測不穩(wěn)定及頻率補(bǔ)償問題。實際流酒過程音叉頻率、音叉內(nèi)置溫度、溶液溫度和標(biāo)準(zhǔn)酒精度之間的計算是一種非線性、時變性多因素復(fù)雜系統(tǒng)的數(shù)據(jù)預(yù)測問題,神經(jīng)網(wǎng)絡(luò)在數(shù)據(jù)預(yù)測領(lǐng)域得到廣泛應(yīng)用。
BP神經(jīng)網(wǎng)絡(luò)具有良好的非線性數(shù)據(jù)預(yù)測能力,但存在收斂速度慢、易陷入局部最優(yōu)等缺陷,無法得到全局最優(yōu)解。引入具有良好全局搜索能力的遺傳算法(Genetic Algorithms,GA),并對傳統(tǒng)遺傳算法中交叉和變異概率進(jìn)行改進(jìn),得到改進(jìn)遺傳算法(Improved Genetic Algorithms,IGA),尋優(yōu)得到BP神經(jīng)網(wǎng)絡(luò)的最佳權(quán)值和閾值,提高BP神經(jīng)網(wǎng)絡(luò)的收斂速度,減少BP神經(jīng)網(wǎng)絡(luò)陷入局部最優(yōu)的可能。
在傳統(tǒng)的遺傳算法中,交叉概率和變異概率為常數(shù),但在實際遺傳算法的進(jìn)化過程中,進(jìn)化前期和后期所需要的交叉和變異程度不同。在遺傳算法的前期,因為個體的適應(yīng)度較差,需要較大的交叉概率值擴(kuò)大算法的全局搜索范圍,較小的變異概率來保存?zhèn)€體優(yōu)良基因;而在后期,個體的適應(yīng)度高于平均的適應(yīng)度值,需要較小的交叉概率來降低全局搜索能力,較大的變異概率來增強(qiáng)局部搜索能力,改進(jìn)后的交叉概率Pc和變異概率Pm公式[16]如下:
(1)
(2)
式中:
Fmax——交叉的兩個個體的最大適應(yīng)度;
Fmean——種群個體平均適應(yīng)度值;
F——種群中父代染色體的適應(yīng)度值;
m——遺傳算法當(dāng)前的迭代次數(shù);
mmax——最大迭代次數(shù)。
根據(jù)交叉和變異概率取值范圍,設(shè)初始值Pc,max為0.9,Pc,min為0.4,Pm,max為0.09,Pm,min為0.005。
利用不同試驗?zāi)B(tài)下數(shù)據(jù)采集結(jié)果,基于改進(jìn)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)建立以音叉頻率補(bǔ)償值fb、音叉內(nèi)置溫度t1、酒精溶液溫度t2為輸入變量,標(biāo)準(zhǔn)酒精度數(shù)q為輸出變量的酒精度預(yù)測模型,標(biāo)準(zhǔn)酒精度q計算公式為:
(3)
式中:
x1——標(biāo)準(zhǔn)化后的音叉補(bǔ)償頻率,Hz;
x2——標(biāo)準(zhǔn)化后音叉內(nèi)置溫度,℃;
x3——標(biāo)準(zhǔn)化后溶液溫度,℃;
n——隱含層神經(jīng)元個數(shù);
ωm,i——經(jīng)改進(jìn)遺傳算法優(yōu)化后BP神經(jīng)網(wǎng)絡(luò)輸入層與隱含層的連接權(quán)值;
ωj——經(jīng)改進(jìn)遺傳算法優(yōu)化后BP神經(jīng)網(wǎng)絡(luò)隱含層與輸出層的連接權(quán)值;
bi——隱含層的閾值;
B——輸出層的閾值。
經(jīng)改進(jìn)遺傳算法尋優(yōu)得到的BP神經(jīng)網(wǎng)絡(luò)最佳權(quán)值和閾值如表2所示,表2中ωm,i(m=1,2,3;i=1,2,…,8)分別表示3個輸入對隱含層的連接權(quán)值。
表2 BP神經(jīng)網(wǎng)絡(luò)最佳權(quán)值和閾值Table 2 Optimal weights and thresholds of BP neural network
基于改進(jìn)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)建立酒精度預(yù)測模型,設(shè)置遺傳算法初始種群大小為30,迭代次數(shù)為60。BP神經(jīng)網(wǎng)絡(luò)輸入為音叉頻率補(bǔ)償值、音叉內(nèi)置溫度值和酒精溶液溫度值,輸出為標(biāo)準(zhǔn)酒精度值,隱含層神經(jīng)元個數(shù)設(shè)置為8個,設(shè)定最大訓(xùn)練次數(shù)為1 000,學(xué)習(xí)速率為0.1,目標(biāo)誤差精度為0.000 1,酒精度預(yù)測模型結(jié)果如圖8所示。
圖8 IGA-BP酒精度預(yù)測結(jié)果Figure 8 Prediction results of IGA-BP alcohol content
改進(jìn)遺傳算法和傳統(tǒng)遺傳算法最佳個體適應(yīng)度變化曲線如圖9所示。由圖9可以看出,改進(jìn)后遺傳算法在進(jìn)化24次時適應(yīng)度曲線穩(wěn)定,而傳統(tǒng)遺傳算法在進(jìn)化50次時適應(yīng)度曲線尚未穩(wěn)定,說明改進(jìn)后的遺傳算法能較快地搜索到合適的權(quán)值和閾值。
圖9 兩種遺傳算法適應(yīng)度曲線Figure 9 Two genetic algorithm fitness curves
GA-BP神經(jīng)網(wǎng)絡(luò)和IGA-BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測模型訓(xùn)練結(jié)果曲線如圖10所示。由圖10可得,經(jīng)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)需30輪達(dá)到最優(yōu)解,經(jīng)改進(jìn)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)需11輪達(dá)到最優(yōu)解。結(jié)果表明,改進(jìn)遺傳算法能夠找到較優(yōu)的權(quán)值和閾值,有效提高BP神經(jīng)網(wǎng)絡(luò)收斂速度和減小網(wǎng)絡(luò)誤差。
圖10 神經(jīng)網(wǎng)絡(luò)訓(xùn)練結(jié)果Figure 10 Neural network training results
為評價模型預(yù)測效果,引入均方根誤差和決定系數(shù)進(jìn)行評價,均方根誤差越小,決定系數(shù)越大,預(yù)測結(jié)果越準(zhǔn)確。BP神經(jīng)網(wǎng)絡(luò)、GA-BP神經(jīng)網(wǎng)絡(luò)和IGA-BP神經(jīng)網(wǎng)絡(luò)標(biāo)準(zhǔn)酒精度預(yù)測模型結(jié)果對應(yīng)的均方根誤差和決定系數(shù)如表3所示。由表3可得,IGA-BP神經(jīng)網(wǎng)絡(luò)酒精度模型預(yù)測結(jié)果最準(zhǔn)確。
表3 酒精度預(yù)測模型對比Table 3 Comparison of alcohol prediction models
IGA-BP、GA-BP和BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測誤差結(jié)果如圖11所示。由圖11可以得出,IGA-BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測模型預(yù)測誤差最大值為0.61,平均預(yù)測誤差為0.381,GA-BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測模型預(yù)測誤差最大值為1.09,平均預(yù)測誤差為0.548,BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測模型預(yù)測誤差最大值為1.39,平均預(yù)測誤差為0.74。結(jié)果表明,IGA-BP神經(jīng)網(wǎng)絡(luò)酒精度預(yù)測模型在預(yù)測精度上優(yōu)于其他兩種酒精度預(yù)測模型。
圖11 酒精度預(yù)測誤差Figure 11 Alcohol prediction error
針對目前酒精度檢測方法存在的問題,提出了一種酒精度快速檢測的方法。采集音叉在不同模態(tài)、不同濃度酒精溶液下的試驗數(shù)據(jù),采用LMS濾波算法提高了音叉檢測頻率穩(wěn)定性,LSTM神經(jīng)網(wǎng)絡(luò)音叉頻率動態(tài)補(bǔ)償模型平均預(yù)測誤差較傳統(tǒng)神經(jīng)網(wǎng)絡(luò)預(yù)測結(jié)果提高了53.6%,基于改進(jìn)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)建立酒精度預(yù)測模型,模型在迭代次數(shù)和預(yù)測精度上優(yōu)于傳統(tǒng)遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)和BP神經(jīng)網(wǎng)絡(luò)建立的酒精度預(yù)測模型。酒精度檢測方法具有較高的精度和適用性,后續(xù)工作應(yīng)深入研究動態(tài)環(huán)境下音叉檢測不穩(wěn)定問題,提高酒精度檢測精度。