王超鋒,司呈勇,,沈建強
改進差分進化算法及啤酒灌裝機液位控制PID參數整定
王超鋒a,司呈勇a,b,沈建強b
(上海理工大學 a.光電信息與計算機工程學院 b.中德國際學院,上海 200093)
針對啤酒液位控制系統存在PID參數整定難、非線性、滯后性問題,提出一種改進基于鄰域的改進差分進化算法,應用于PID參數優化整定中,從而提高灌裝機的工作效率和啤酒的質量。文中對差分進化算法進行改進,設計一種新型的變異策略,在變異環節引入鄰域搜索操作;根據當前種群的分布情況,實時對鄰域的個數進行自適應分配,以提升算法全局和局部搜索能力;與2種基本差分進化算法和4種改進差分進化算法對比,用18個測試函數驗證文中所提出算法的性能。仿真結果表明,相較于基本差分進化算法,使用改進的差分進化算法整定的PID參數,調節時間減少0.22 s,上升時間減少0.04 s,超調量降低7.63%。通過改進的差分進化算法對啤酒灌裝機液位PID參數的優化整定,可以顯著改善控制系統的超調量、上升時間和穩態誤差等性能,實現了液位的穩定控制。
差分進化算法;啤酒液位控制系統;參數自適應控制;鄰域搜索;PID參數整定
在整條啤酒包裝生產線中,啤酒罐裝機扮演著至關重要的角色。灌裝機內部的貯液缸液位控制則是一項核心技術。貯液缸液位的精準控制會減少灌裝過程中的冒酒、灌不滿、液位偏高或低、增氧量和瓶頸空氣超出標準等現象發生的概率,從而降低企業包裝成本,提高生產效率,因此,貯液缸控制液位的研究顯得尤為重要。目前,啤酒生產中液位控制通常采用PID控制器進行反饋控制,PID控制器結構簡單、魯棒性和適應性強,但由于實際對象通常具有非線性、時變不確定性、強干擾等特性,利用常規PID控制器難以達到理想的控制效果。PID控制參數主要有比例、積分和微分系數,如何選取PID參數直接影響液位控制效果的好壞。隨著經濟社會的高質量發展,企業對灌裝技術的要求也越來越高,引入進化算法是提高控制精度的一個有效途徑。
工程實踐中和科學研究中存在很多非線性、非凸、不可微分、多模態、高維等復雜的優化問題,傳統數學分析方法如:梯度下降法(Gradient Descent, GD)、共軛方向法(Conjugate Direction Method,GDM)以及拉格朗日乘子法(Lagrange Multiplier Method,LMM)在解決這類問題時效果不佳。進化算法(EA)從自然界中生物進化的得到學習和啟發,不需要借助待優化問題的數學特征,并且使用方便、易于理解,魯棒性較強,已經成為工程技術和研究人員解決優化問題的首選。近些年來,灰狼優化算[1]、布谷鳥算法[2]、螢火蟲算[3]等進化算法相繼被學者提出。
其中差分進化算法(Differential Evolution, DE)因其具有易于實現、供選擇的變體多、收斂速度快、解精度高等優點得到了進化計算領域學者的關注,已經被成功應用到模式識別[4-5]、工業生產設計[6-7]、圖像檢測[8]、通信系統設計[9]等領域。差分進化算法是一種基于種群的啟發式搜索算法,具有對最佳歷史位置的記憶功能,可以應用于各種優化場景,包括約束、大規模、多目標、多模態和動態的優化。在IEEE Congress on Evolutionary Computation (CEC)2021單目標優化競賽中,性能最好的前10名中有6名是在差分進化算法的基礎上進行改進,由此可見差分進化算法現在仍然受到學者的青睞,因此,文中采用改進差分進化算法對貯液缸液位PID控制參數進行整定,進而提高灌裝過程中液位控制的精確度和穩定性。
為了尋找非線性、非凸、不可微分、多模態優化問題的全局最優解,Storn和Price于1995年提出差分進化算法[10]。差分進化算法是一種基于種群的啟發式搜索算法,與其他算法類似,DE主要由4個步驟組成——初始化種群(Initialization)、變異操作(Mutation)、交叉操作(Crossover)以及選擇操作(Selection),算法通過不斷迭代變異、交叉和選擇操作向全局最優解逼近。



常用5種的變異策略如下
1)DE/rand/1:

2)DE/best/1:

3)DE/current-to-best:

4)DE/best/2:

5)DE/rand/2:

式中:是從種群中隨機選擇的個體,索引,并且與不同,代表種群中適應度值最好的個體,稱為差分矢量,代表縮放因子,較小的F值有利于種群進行細粒化搜索。DE/rand/2變異策略在二維平面的簡單展示見圖1。


式中:R為交叉概率,通常在[0,1]之間取值;rand為[1,]之間的一個整數以確保試驗向量不同于目標向量,較大的R值有利于算法的勘探能力,較小的R值有利于算法開發能力。


為了提高DE算法搜索效率,提出了一種新的變異策略,試圖平衡全局搜索和局部搜索。引入個體之間分布信息判斷個體收斂性來動態調節算法中的參數,并且對縮放因子和交叉概率采用自適應的策略。
DE的性能在很大程度上依賴于變異,差分進化算法的搜索過程從基向量開始,然后將不同的向量作為干擾加入其中,沿著差分向量的方向進行搜索,逐漸向全局最優解收斂。在眾多變異策略之中,DE/rand/1偏向于隨機搜索具有很強的多樣性,但沒有加入種群中最佳解信息,導致后期收斂性能不足;DE/best/1引入了種群中最佳解信息,但可能會出現陷入局部最優的情況。受Zhang等[20]所提出的變異策略DE/current-to-pbest/1和Wang等[21]提出的基于鄰域的粒子群算法(DNSPSO)的啟發,文中提出一種新的變異策略,加入鄰域的信息,見式(10)。
DE/current-to-pbest/1變異公式見式(9)。

DE/best-to-neighbors/1:

式中:為個體N個鄰域中適應度值最好的個體;為整個種群中適應度值最好的個體,該變異策略結合了局部最優和全局最優解的信息,可以幫助算法跳出局部最優解,表現出較好的收斂性能。N為6時的鄰域搜索示意圖見圖2。
其中鄰域的大小對算法的開發和探索能力有很大的影響,的值較大使算法傾向于DE/best/1策略,的值較小使算法傾向于DE/rand/1策略,因此固定的值不適合于所有函數。由于種群是隨機初始化生成,在算法執行的早期階段種群較為分散,通過變異、選擇等操作種群逐漸向全局最優收斂。我們引入個體之間的歐式距離,通過判斷種群的分布情況,動態分配的選擇鄰域個數。在算法整個周期內對于適應度較差個體分配更多的鄰居個數,適應度值好的個體則分配更少的鄰域個數。




控制參數和R的值對同樣DE性能有著很大的影響,在2個參數交叉概率R和縮放因子之間,R對問題的性質如多模態更為敏感,而對收斂速度更為敏感。根據“天下沒有免費的午餐”定理[22],一個算法在某組優化問題上的性能優于另一個算法,那么在其他優化問題上情況必然相反。如果采用一組固定的參數,算法可能只對某個優化問題有較好的性能,文中采用文獻Jde[23]中所提出自適應改變控制參數的方法,為每一代中的每個個體生成控制參數。



與原始DE相比,文中主要從兩方面改進:創建一種新的變異方式,融合了鄰域和全局最優解的信息,能有效增強種群的多樣性;對于鄰域個數、縮放因子和交叉概率設置了自適應策略更新參數。
算法1:NSaDE偽代碼如下:
1.Input:
p: population size
D: Problem dimension
maxMaximum number of function evaluations
2.Randomly initializepindividuals
3. Generate control parameterandRfor each individual

5. while FEs 7. for i = 1:pdo 12. FEs = FEs + 1 15. else 16. updateRandaccording to Eq.(14) and Eq.(15) 17. end if 18. end for 19. end while 仿真實驗的運行環境為:AMD Ryzen 7 4800H CPU,主頻2.90 GHz,內存16 GB, Windows 10,64位操作系統,實驗仿真軟件采用Matlab R2021a。 文中采用的18個測試函數來驗證所提出算法的有效性,其中17為單峰測試函數,可以檢驗算法收斂速度和精度;813為多模態函數,具有多個局部最優解,可以檢測算法跳出局部最優的能力;1418為CEC2005單目標優化競賽中提出的測試函數,這些函數為帶移位的組合函數,其地形較為復雜具有一定的欺騙性,因此有很大的難度。測試函數的函數名、搜索范圍以及全局最優值見表1。 表1 18個測試函數 Tab.1 18 test functions 表2 NSaDE與基本DE對比實驗結果 Tab.2 Experimental results of comparison between NSADE and basic DE algorithm 從表2中可以看出,與DE/rand/1相比,NSaDE在18個測試函數上有12個取得了更好的結果,4個測試函數上性能接近,僅有2個結果比NSaDE更優。與DE/best/1相比,NSaDE在13個測試函數上取得了更好的結果,而 DE/best/1在僅4個測試函數上表現的比NSaDE更優,1、2和3是單峰問題,18是移位單峰函數,原因是DE/best/1作為一種貪婪策略對這些簡單的單峰和多峰問題具有更好的勘探能力,但是在處理具有多個局部最優問題時,可能使算法陷入停滯狀態。在表3中與4種改進算法對比結果看出,對于絕大多數測試函數NSaDE取得的結果具有明顯的優勢。綜上所述,文中所提出NSADE算法有較強的全局搜索能力和較好的穩定性。 為了驗證文中提出的改進差分進化算法在啤酒液位灌裝機貯液缸控制系統上的有效性和可靠性,在Matlab/Simulink中進行仿真實驗。傳統的PID控制原理見圖3,采用比例、積分、微分調節,其中比例系數(p)、積分系數(i)、和微分系數(d)對系統的性能有很大的影響,只有3個參數合理配置時,系統才能處于最佳的狀態。 表3 NSaDE與4種改進算法對比實驗結果 Tab.3 Experimental results of comparison between NSADE and 4 improved algorithm 采用傳統的Ziegler–Nichols(Z–N)法、基本DE算法和文中改進的NSaDE算法優化的PID控制對啤酒灌裝機貯液缸液位進行仿真對比試驗。實驗中,選擇絕對誤差積分(ITAE)準則作為改進差分進化算法的適應度函數,見式(18),其值越小越好。通過實數編碼將p、i、d3個參數作為一個個體,以ITAE作為算法評估函數,通過不斷迭代搜索一組最佳的PID控制參數。 圖4 基于改進差分進化算法的PID優化結構 仿真參數設置:以單位階躍信號作為系統輸入,p、i、d上下界設置為[0.001,100],仿真時間為10 s,采樣頻率為100 Hz;基本DE算法種群規模P=50,和R分別設置為0.7和0.9;NSaDE種群規模P=50,最大迭代次數(max)為1 500次。 從表4的結果來看,經NSaDE法整定的系統超調量較小,響應速度更快,調節時間相比于Z–N和DE法分別縮短了59.71%和10.04%,上升時間相比于Z–N和DE法縮短了12.5和3.44%。從圖5中可以看出,NSaDE方法可以獲得更好的整定結果。傳統的Z–N法獲得的系統響應曲線振蕩次數較多并且始終存在穩態誤差,而DE和NSaDE實現了零誤差,具有更高的控制精度。綜上所述,采用NSaDE方法整定的PID參數對啤酒灌裝機貯液缸液位能進行穩定的控制,在目標值追蹤效果上好于Z–N法和基本DE方法,其控制器性能能夠實現啤酒灌裝機的生產要求。 表4 3種方法主要性能指標對比 Tab.4 Comparison of main performance indexes of 3 methods 圖5 Z–N法、DE法和NSaDE法整定后的單位響應曲線 為了克服差分進化算法搜索性能、容易陷入局部最優解的不足,文中提出了一種基于鄰域的自適應差分進化算法——NSaDE算法。算法設計了一種新的變異方式,引入種群信息對鄰域的個數進行自適應更新來提升算法局部和全局搜索的性能。在18個測試函數上進行仿真,與DE/rand/1、DE/best/1、SaDE、EPSDE、DEGL、ODE算法進行對比,在收斂速度、尋優精度都取得了較好的結果。將改進算法用于解決啤酒灌裝機PID參數的優化問題,取代了煩瑣的反復實驗,節約了時間成本。仿真結果表明使用改進算法得到PID參數的系統有著更小的超調量、更快的響應速度,能夠實現對液位的精準控制,保證啤酒罐裝過程中實現穩定運行和啤酒生產的質量和產量。 [1] SEYEDALI M, SEYED MOHAMMAD, ANDREW LEWSIA. Grey Wolf Optimizer[J]. Advances in Engineering Software, 2014: 46-61. [2] GANDOMI A H, YANG Xin-she, ALAVI A H. Erratum To: Cuckoo Search Algorithm: A Metaheuristic Approach to Solve Structural Optimization Problems[J]. Engineering With Computers, 2013, 29(2): 245. [3] YANG Xin she. Firefly Algorithm, Stochastic Test Functions and Design Optimization[J]. International Journal of Bio-Inspired Computation, 2010, 2(2): 78-84. [4] WANG Li-zhou, HONG Guang-hao. A Singular Critical Point for some Variational Free Boundary Problem in Five Dimensions[J]. Journal of Mathematical Analysis and Applications, 2015, 426(2): 855-863. [5] 何慶飛, 陳小虎, 姚春江, 等. 基于最小二乘支持向量分類機的齒輪泵故障診斷研究[J]. 流體機械, 2019(8): 32-36. HE Qing-fei, CHEN Xiao-hu, YAO Chun-jiang, et al. Gear Pump Fault Diagnosis Research Based on Least Squares Support Vector Classification Machine[J]. Fluid Machinery, 2019(8): 32-36. [6] SEGUNDO E, AMOROSO A L, MARIANI V C, et al. Economic Optimization Design for Shell-and-Tube Heat Exchangers by a Tsallis Differential Evolution[J]. Applied Thermal Engineering, 2017, 111: 143-151. [7] AYALA H, VICENTE H, MORAIS, et al. Design of Heat Exchangers Using a Novel Multi-Objective Free Search Differential Evolution Paradigm[J]. Applied THERMAL ENGINEERING: Design, Processes, Equipment, Economics, 2016, 94: 170-177. [8] ZHOU Zhi-li, YANG C N, CHEN Bei-jing, et al. Effective and Efficient Image Copy Detection with Resistance to Arbitrary Rotation[J]. IEICE Transactions on Information and Systems, 2016, 99(6): 1531-1540. [9] ZHANG, WU Z. Spectrum Allocation by Wave Based Adaptive Differential Evolution Algorithm[J]. Ad hoc networks, 2019, 94: 1-8. [10] STORN R, PRICE K. Differential Evolution-A Simple and Efficient Heuristic for global Optimization over Continuous Spaces[J]. Journal of Global Optimization, 1997, 11(4): 341-359. [11] 荊濤, 田錫天. 基于蒙特卡洛-自適應差分進化算法的飛機容差分配多目標優化方法[J]. 航空學報, 2022, 35(3): 569-580. JING Tao, TIAN Xi-tian. Multi-Objective Optimization Method for Aircraft Tolerance Allocation Based on Monte Carlo-Adaptive Differential Evolution Algorithm[J]. Acta Aeronautica et Astronautica Sinica, 2022, 35(3): 569-580. [12] 李釗, 袁文浩, 任崇廣. 基于搜索空間劃分與Canopy K-means聚類的種群初始化方法[J]. 控制與決策, 2020, 35(11): 2767-2772. LI Zhao, YUAN Wen-hao, REN Chong-guang. Population Initialization Based on Search Space Partition and Canopy Kmeans Clustering[J]. Control and Decision, 2020, 35(11): 2767-2772. [13] ZHANG Jing-hua, HAN Pu. Multi-Algorithm and Multi-Population Co-Optimization Differential Evolution Algorithm[J]. Journal of System Simulation, 2018, 30(5): 1690-1699. [14] SUN Can, ZHOU Xin-yu, Wang Ming-wen. A Multi-Strategy Differential Evolution Algorithm Combined with Neighborhood Search[J]. Journal of System Simulation, 2020, 32(6): 1071-1084. [15] YI Wen-chao, GAO Liang, LI Xin-yu, et al. A New Differential Evolution Algorithm with a Hybrid Mutation Operator and Self-Adapting Control Parameters for Global Optimization Problems[J]. Applied Intelligence, 2015, 42(4): 642-660. [16] 徐英杰, 閻曉琳, 鄧武. 基于小波基函數的差分進化算法縮放因子改進方法及應用[J]. 云南民族大學學報(自然科學版), 2020, 119(1): 33-38. XU Ying-jie, YAN Xiao-lin, DENG Wu. Scaling Factor Improvement Method of Differential Evolution Based on Wavelet Basis Function and Its Application[J]. Journal of Yunnan Minzu University (Natural Sciences Edition), 2020, 119(1): 33-38. [17] STANOVOV V, AKHMEDOVA S, SEMEKIN E. NL-SHADE-RSP Algorithm with Adaptive Archive and Selective Pressure for CEC 2021 Numerical Optimization[C]// 2021 IEEE Congress on Evolutionary Computation (CEC), IEEE, Kraków Poland, 2021: 17-24. [18] TANABE R, FUKUNAGA A. Success-History Based Parameter Adaptation for Differential Evolution[C]// 2013 IEEE Congress on Evolutionary Computation, 2013: 71-78. [19] 楊紫晴, 姚加林, 伍國華, 等. 集成協方差矩陣自適應進化策略與差分進化的優化算法[J]. 控制理論與應用, 2021, 36(10): 1493-1502. YANG Zi-qing, YAO Jia-lin, WU Guo-hua, et al. Ensemble Optimization Algorithm from Covariance Matrix Adaptive Evolution Strategy and Differential Evolution[J]. Control Theory & Applications, 2021, 36(10): 1493-1502. [20] ZHANG Jing-qiao, SANDERSON A C. JADE: Adaptive Differential Evolution with Optional External Archive[J]. IEEE Transactions on Evolutionary Computation, 2009, 13(5): 945-958. [21] WANG Hui, SUN Hui, LI Chang-he, et al. Diversity Enhanced Particle Swarm Optimization with Neighborhood Search[J]. Information Sciences, 2013, 223: 119-135. [22] DAVID H WOLPERT, WILLIAM G. MACREADY No Free Lunch Theorems for Optimization[J]. IEEE Transactions on Evolutionary Computation (S1089-778X), 1997, 1(1): 67-82. [23] BREST J, GREINER S, BOSKOVIC B, et al. Self- Adapting Control Parameters in Differential Evolution: A Comparative Study on Numerical Benchmark Problems[J]. IEEE Trans Evolutionary Computation, 2006, 10(6): 646-657. [24] QIN A K, HUANG V L, SUGANTHAN P N. Differential Evolution Algorithm with Strategy Adaptation for Global Numerical Optimization[J]. IEEE Transactions on Evolutionary Computation, 2009, 13(2): 398-417. [25] MALLIPEDDI R, SUGANTHAN P, PAN Q, et al. Differential Evolution Algorithm with Ensemble of Parameters and Mutation Strategies[J]. Applied Soft Computing Journal, 2010, 11(2): 1679-1696. [26] DAS S, ABRAHAM A. Differential Evolution Using a Neighborhood-Based Mutation Operator[J]. IEEE Transactions on Evolutionary Computation, 2009, 13(3): 526-553. [27] RAHNAMAYAN S, TIZHOOSH H R, SALAMA M M A. Opposition-Based Differential Evolution[J]. IEEE Transactions on Evolutionary Computation, 2014, 12(1): 64-79. [28] DERRAC J, GARCíA S, MOLINA D, et al. A Practical Tutorial on the Use of Nonparametric Statistical Tests as a Methodology for Comparing Evolutionary and Swarm Intelligence Algorithms[J]. Swarm and Evolutionary Computation, 2011, 1(1): 3-18. [29] 黃卓超, 張偉, 王亞剛. 改進粒子群算法的啤酒灌裝機液位控制PID參數整定[J]. 包裝工程, 2020, 41(19): 159-165. HUANG Zhuo-chao, ZHANG Wei, WANG Ya-gang. PID Parameter Setting of Liquid Level Control for Beer Filling Machine Based on Improved Particle Swarm Algorithm[J]. Packaging Engineering, 2020, 41(19): 159-165. PID Parameter Setting of Liquid Level Control for Beer Filling Machine Based on Improved Differential Evolution Algorithm WANG Chao-fenga, SI Cheng-yonga,b, SHEN Jian-qiangb (a. School of Optical-Electrical and Computer Engineering b. Sino-German College, University of Shanghai for Science and Technology, Shanghai 200093, China) The work aims to propose an improved neighborhood based differential evolution algorithm and apply it to PID parameter optimization setting to solve the problems of difficulty, nonlinearity and hysteresis in beer liquid level control system, thus improving the work efficiency of filling machine and the beer quality. The differential evolution algorithm was improved to design a new mutation strategy and introduce the neighborhood search operation in the mutation link. According to the current population distribution, real-time adaptive allocation of the number of neighborhoods was carried out to enhance the global and local search ability of the algorithm. The proposed algorithm was compared with 2 basic differential evolution algorithms and 4 improved differential evolution algorithms and its performance was verified by 18 test functions. From the simulation results, compared with the basic differential evolution algorithm, the PID parameter setting by the improved differential evolution algorithm could reduce the adjustment time by 0.22 s, the rise time by 0.04 s, and the overshoot by 7.63%. Through the improved differential evolution algorithm, the PID parameter setting of the beer filling machine’s liquid level is optimized, which significantly improves the overshoot, rise time and steady-state error of the control system and realizes the stable control of the liquid level. differential evolution algorithm; beer level control system; parameter adaptive control; neighborhood search; PID parameter setting TP273+.2 A 1001-3563(2022)19-0310-10 10.19554/j.cnki.1001-3563.2022.19.038 2020–10–13 上海市青年科技英才揚帆計劃(18YF1417400) 王超鋒(1997—),男,碩士生,主攻智能優化算法。 司呈勇(1986 —),男,博士,副教授,主要研究方向為進化計算、約束優化、多目標優化算法等相關人工智能理論及應用。 責任編輯:曾鈺嬋




3.5 數值仿真



4 啤酒灌裝機貯液缸液位PID優化控制








5 結語