朱加豪,張義民,張 凱,王一冰
(沈陽化工大學裝備可靠性研究所,遼寧 沈陽 110142)
四桿機構是機械系統中重要組成部分,從巖石破碎機到工業機械手,其執行機構均由四桿機構組成。然而,對于傳統的四桿機構的設計大多采用圖解法,設計誤差較大,只可作為粗略的參考,不能實際應用。因此,平面四桿機構的優化顯得更加重要。為了提高四桿機構的設計精度,許多學者采用群智能優化算法來解決四桿機構的優化問題。文獻[1]提出了一種隨機坐標搜索算法用于四桿機構軌跡綜合優化。文獻[2]提出了一種結合變異策略的改進差分進化算法,有效提高了四桿機構設計的準確性與可靠性。文獻[3]采用一種近似圓函數并結合差分算法對四桿軌跡進行優化設計,獲得了較好優化結果。文獻[4]提出拉格朗日插值差分進化算法用于四桿軌跡綜合優化,該算法收斂速度較快,可以獲得的較好的優化結果。文獻[5]在包裝推料中應用四桿機構,并采用改進的蟻群算法優化模型,有效提高了四桿機構在包裝中的定位精度。文獻[6]采用改進差分進化誤差函數法對平面四桿機構進行優化,顯著提高了四桿機構運動精度。文獻[7]在桿長條件,角度限制等約束條件下,建立液壓支架四桿機構模型,并采用差分進化算法求得模型的解比其他算法較好。然而,由于四桿模型求解的復雜性,求解算法仍然存在著收斂性不足,魯棒性差等缺點。針對這些問題,這里提出了適用于四桿模型的改進教與學算法,它能夠擴大搜索空間,增強尋優能力,使設計精度提高了70%。相信在以后的實際工程中,該算法也會得到廣泛應用。
在平面直角坐標系中建立四桿機構簡圖模型,并設置相關參數,如圖1所示。O2與O4為固定機架,θ0為機架旋轉的角度,θ2為輸入桿旋轉的角度,θ3為連桿旋轉角度,C點為運動軌跡點,r1表示機架長度,r2表示輸入桿長度,r3表示連桿長度,r4表示輸出桿長度,rcx,rcy表示點C在坐標系XC AYC中的坐標,x0,y0表示點O2在坐標系XOY中的坐標,θ0表示固定桿相對于X軸的角度,表示在坐標系XrO2Yr中,第i個目標點所對應的第i個輸入角。

圖1 四桿機構模型Fig.1 Four-Bar Mechanism Model
C點坐標可用式(1)表示:

平面四桿機構在運動過程中,C點軌跡主要受等參數影響。因此,需要對參數變量進行優化,設計變量可以表示為:

目標函數主要由誤差函數與約束條件下的懲罰函數項組成。其中誤差函數主要由歐式距離來計算。對于不同的輸入角度對應不同的C點坐標,實際C點坐標為,因此,平面四桿機構誤差函數為:

四桿機構在運動的過程中會受到約束條件的限制,由此可以得出懲罰函數項。平面四桿機構中含有的約束主要含有以下三個方面:
(1)曲柄搖桿機構必須能夠整周旋轉,故需要滿足桿長條件:

而且需要滿足r2為最短桿。為了讓機構運動時不產生點缺陷現象,輸入角必須滿足順時針或逆時針排序。
(3)所有的設計變量必須在一定的約束范圍內。
根據誤差函數與約束條件,可得四桿機構目標函數表達式為:

滿足桿長條件時g1(x)=0;不滿足桿長條件時g1(x)=1;滿足排序條件時g2(x)=0;不滿足排序條件時g2(x)=1;M1與M2為懲罰因子均取10000。
文獻[9]在2011年提出教與學算法來解決機械設計優化問題,該算法是通過模擬課堂上教師對學生授課,以及學生的自我學習,最終達到尋優的目的。該算法自提出之后,主要用于求解一些復雜的優化問題。教與學算法可分為兩個部分:教學階段與學習階段。
(1)教學階段
在教學階段,每個學生通過尋找教師與學生平均成績之間差異的方式提高成績。
教學階段由式(4)表示:

Mnew—更新后所有學生的均值;
meani—更新前所有學生的均值。
教學完畢之后,用成績好的代替差的。
(2)學習階段
學生之間可相互學習來提高自己的成績,學習階段可用式(5):

從種群中隨機選取兩個個體,函數適應度較差的個體Xj向較好的個體Xi學習。
本次算法的改進是在文獻[10]提出的DGSTLBO 的基礎上增加各組之間的交叉,有效的提高了算法的搜索空間,有利于找到最優解。
(1)教學階段
在教學階段,通過分組來比較各組學生的成績,可由式(6)表示:

式中:Teacher—班級中學習成績最好的學生;
Groupmeani—第i組學生的平均值。
(2)學習階段
在學習階段,學習較差的學生向好的學習,其學習過程可用式(7)、式(8)表示。

班級中的學生成績通過式(7)更新完畢之后,然后通過式(7)再次選出成績較好的學生。

式中:GroupTeacheri—第i組中最好的學生;
Teacher—班級中最好的學生;
α,β,m—(0~1)之間的隨機數。
改進教與學算法實現步驟如下:
(1)初始化種群并計算班級中各個學生的成績;
(2)將班級中學生分組,找到班級中學習成績較好的學生并計算每組學生的平均值;
(3)采用式(6)來更新各組學生的成績;
(4)然后,在每組中隨機選擇一名學生并計算其函數適應度,采用式(7)更新其學習成績;
(5)采用式(8)提高學生組與組之間成績的多樣性,選擇成績較好的學生;
(6)判斷是否達到最大迭代次數,若滿足最大迭代次數,結束循環,否則返回到步驟(3)。
算法流程圖,如圖2所示。

圖2 TLBO算法流程圖Fig.2 Flowchart of MTLBO Algorithm
為對這里提出的算法進行驗證,選取文獻[11]中的模型,其中目標軌跡點為[(20,20);(20,25);(20,30);(20,35);(20,40);(20,45)]。分別選取差分算法,粒子群算法以及教與學算法與這里提出的改進教與學算法對四桿機構進行優化。采用MATLAB 軟件對所采用算法進行計算,種群最大迭代次數為1000,種群數量為100,種群維數為15,每種算法均運行20 次,選取其中最優的一組解,可求得各種算法取得最優解時的比較結果,如表1所示。

表1 各種算法優化結果Tab.1 Optimization Results of Various Algorithms
各種算法運行之后的收斂曲線,如圖2 所示。從圖2 中明顯看出,改進的教與學算法(MTLBO)與其他算法相比,其收斂速度較快,迭代450 次左右就獲得了最優解。傳統的教與學算法雖然在前期收斂速度較快,但是中后期收斂性不足,到達650次時,算法開始收斂,容易陷入局部最優,故而后期不能得到較好的解。

圖3 各種算法收斂曲線Fig.3 Convergence Curves of Various Algorithms
算法運行之后結果的軌跡圖,如圖4 所示。從圖4 可以看出,目標點軌跡為一條直線,模型參數經PSO 算法,DE 算法與TLBO 算法優化之后,其相應軌跡與目標點相差較大。而經過MTLBO算法優化之后,其運行軌跡更近似于一條直線。其設計誤差相對于TLBO 算法減少了70%,有效證明了MTLBO 能擴大搜索空間,避免算法早熟收斂,有利于提高四桿設計精度。這表明在實際工況下,采用MTLBO 算法所設計的四桿機構,能夠明顯縮小設計誤差,可為設計人員提供參考,顯著的提高了產品的可靠性。

圖4 算法結果軌跡圖Fig.4 Trajectory Diagram of the Algorithm Result
這里針對四桿機構的設計精度不足的問題,提出了一種改進的教與學算法(MTLBO),用于平面四桿機構的優化設計。通過數值實驗比較與MATLAB 軌跡仿真分析,在算法參數設置一樣的條件下,分別采用DE,PSO,TLBO以及MTLBO算法對所建四桿模型進行優化設計,測試結果表明,MTLBO 算法在迭代后期能擴大搜索空間,避免陷入局部最優,易于得到模型最優解。本次優化設計算法與TLBO 算法相比,其設計誤差減少了70%,明顯提高了四桿機構的設計精度。本次平面四桿機構優化設計為設計人員提供了一種新的優化設計算法,可為以后四桿機構的設計提供參考。