趙 暉,盧青波
(1.西安鑫垚陶瓷復合材料股份有限公司,西安 710100;2.鄭州職業(yè)技術學院機械工程系,鄭州 450121)
隨著現代化學工業(yè)的快速發(fā)展,高壓容器越來越得到廣泛應用,如合成氨工業(yè)、合成尿素工業(yè)、合成甲醇工業(yè)和石油加氫工業(yè)等,其合成反應裝置不僅壓力高(p≥15 MPa),而且常伴有高溫,如合成氨就常在15~32 MPa壓力和500 ℃高溫下進行合成反應。由于化工設備的大型化,高壓容器的大型化也是必然趨勢,從而導致容器的直徑、壁厚及質量越來越大。在保證高壓容器安全運行的基礎上,利用現代優(yōu)化設計理論及方法對高壓容器進行全面綜合分析,對高壓容器筒體進行優(yōu)化設計,減少制造成本和耗材,具有實際意義和工程價值。
工程結構和機械設計中的不少問題都含有一些不可忽視的隨機因素,如工作載荷、風載荷或地震載荷;材料的物理和力學性質,如強度、彈性模量等。在這種情況下,設計者應考慮若干隨機因素下做出最佳決策。壓力容器設計中,容器內的壓力和所用材料的屈服強度極限及容器的尺寸都呈現出隨機因素。常規(guī)設計中,采用安全系數的方法,通過適當增加或減少設計的名義值來保證設計的可靠性,但這種設計幾乎都是根據設計師的經驗或者直覺判斷進行的,是否能達到最優(yōu)設計是值得商榷的。因此,本文擬從概率角度建立高壓容器的優(yōu)化模型,并且采用混合差分進化算法對所建立的模型進行求解。
差分進化算法(Differential Evolution,DE)[1]使用簡單的變異、交叉及競爭算子實現在連續(xù)空間中的隨機搜索。DE 算法原理簡單,易于實現,在許多復雜優(yōu)化問題中得到了應用[2-6]。DE 算法同其他進化算法類似,需要平衡算法的全局搜索能力與其收斂速度。這種平衡可以通過調節(jié)算法的控制參數來實現,但往往控制參數的調節(jié)效果有限。因此,許多學者從不同類型算法的優(yōu)勢出發(fā),結合隨機優(yōu)化算法的全局性能和局部優(yōu)化算法的局部搜索能力,研究提出了不同的混合優(yōu)化算法[7-8]。模式搜索算法(Pattern Search,PS)是一種直接優(yōu)化方法,無須求解目標函數的導數,算法簡單且具有良好的局部搜索能力[9]。因此,很多學者將模式搜索算法與進化算法相結合,提出了新的混合算法[10-14]。本文擬將PS 算法引入到DE 算法的DE/rand/1/bin 模式中,研究提出一種基于模式搜索算法的混合差分進化算法——混合模式搜索差分進化算法(Hybrid Pattern Searching Differential Evolution algorithm,HPSDE)。該混合算法利用了DE 算法良好的全局搜索能力和PS算法快速的局部搜索能力,將兩者的優(yōu)勢相結合,較大地提升了算法的尋優(yōu)效率。
DE 算法的進化個體采用實向量進行編碼,采用均勻分布的隨機數產生初始個體。令xi(g)代表第g代的第i個個體,其中,分別為個體的上、下限,則
式中:NP 為種群大小,Tmax為最大進化代數。
DE 算法就是由這NP 個個體構成的種群在搜索空間不斷進化來進行尋優(yōu)的。DE 算法候選解產生模式有很多種策略[1],其中DE/rand/1/bin 策略應用較為廣泛,且具有全局搜索能力較好、收斂速度較慢的特性,因此,本文選擇該進化模式為研究對象。以求解最小值問題為例說明差分進化算法的進化過程如下。
1)初始化種群。在n維實數空間按式(2)隨機產生NP 個個體
式中:rand(0,1)是[0,1]上服從均勻分布的隨機數。
2)變異算子。首先隨機從種群中選擇3 個不同個體xp1,xp2,xp3,且p1≠p2≠p3≠i則變異算子為
式中:F 為縮放因子。
3)交叉算子。交叉算子可以增加種群的多樣性,其操作過程如式(4)所示。
式中:CR 為交叉率,CR∈[0,1],jrand是[1,n] 上的隨機整數,這種交叉模式確保νij(g+1)中至少有一位來自hij(g)。
4)選擇算子。DE 算法的選擇策略采用“貪婪”策略,由評價函數對向量νi(g+1)和向量xi(g)比較,保留較優(yōu)個體,即
反復執(zhí)行式(3)到(5),直到達到算法預設的終止條件。
PS 算法是一種典型的直接搜索方法,同樣不依賴于梯度信息,具有明顯的幾何意義和快速收斂特性。PS算法的包含探測與移動2 個操作過程。探測的目的是尋找目標函數值較優(yōu)的下一個點,其過程為從當前點出發(fā),依次在n維空間進行探索。移動過程的目的是實現較優(yōu)點的加速,即以探索到的點為基點,查找該點的下一個較優(yōu)點。從幾何意義上講,PS 算法就是從當前位置開始,尋找比當前位置較優(yōu)的位置,并沿著該方向繼續(xù)搜索,實現向目標函數的不斷逼近。模式搜索算法的步驟如下。
若開始點和開始步長分別為x(1)和d,e1,e2,…,en是坐標向量,計算精度和加速因子分別為ε 和γ。
Step1 記y(1)=x(1),k=1,j=1;
Step3 若j 若f(y(n+1))≥f(x(k) ),執(zhí)行Step5; 若f(y(n+1))<f(x(k) ),執(zhí)行Step4; Step4 記x(k+1)=y(n+1), y(1)=x(k+1)+γ x(k+1)-x(k)(),k=k+1,再記j=1,轉Step2; Step5 若d≤ε,則計算結束,記x*=x(k);否則,記d=d/2,y(1)=x(k),x(k+1)=x(k),k=k+1,再記j=1,轉Step2。 PS 算法的搜索步長在各個方向是相同的,這就使模式移動方向與最優(yōu)下降方向的偏差較大,從而制約了算法的收斂速度和精度,且使算法對初始點的敏感度增強。因此,在模式搜索差分進化算法中,模式搜索的初始點選擇為當前種群的最優(yōu)點。 在采用最優(yōu)步長的坐標輪換方法中,若把前一輪的搜索末點xq與這一輪的搜索末點xh連接成一向量s=xh-xq,沿此方向進行搜索,顯然,可以大大加快收斂速度,因此,在模式搜索中,選擇當前群體除群體最優(yōu)個體之外的所有個體的中心點為前一輪的搜索末點,式(6)定義了其計算方法。當前群體的最優(yōu)點為這一輪的搜索末點構成搜索方向向量。取該方向向量的每一維,構成坐標向量。取步長d為[0,1]上服從均勻分布的隨機數。 由于HPSDE 算法的步長因子設置為[0,1]上的均勻分布的隨機數,因此,PS 算法的Step5 中的終止條件無法實現,為此,設置PS 算法的Step5 為記x*=x(k),PS算法終止。修正后的PS 算法的步驟如下。 Step2 若f(y(j)+dej) Step3 若j 否則j=n,若f(y(n+1))≥f(x(k) ),轉Step5;若f(y(n+1)) Step4 記x(k+1)=y(n+1), y(1)=x(k+1)+γ (x(k+1)-x(k)),k=k+1,再記j=1,轉Step2; Step5 記x*=x(k)。 DE 算法的變異策略有多種,其中DE/rand/1/bin變異策略具有全局搜索能力強、收斂速度慢的特性。由式(3)可知,DE/rand/1/bin 變異過程中,其候選解的產生采用的是種群中隨機選擇的3 個不同個體,通過線性運算產生的。該變異過程并沒有考慮所選擇個體的適應度信息,隨機性強,有利于保持種群的多樣性,但同時也使算法的收斂速度較慢。DE 算法的隨機搜索過程,有可能導致已經找到最優(yōu)解附件的點,但由于隨機選擇的交叉?zhèn)€體的原因,而錯過真正的最優(yōu)解。此時,若能在最優(yōu)解附近利用一些局部搜索能力強的算法對最優(yōu)解附近進行局部搜索,則對于提升算法的全局搜索能力,找到全局最優(yōu)解是有幫助的。 因此,若當前種群的群體最優(yōu)個體連續(xù)m次目標函數評價(如100 次目標函數評價)沒有改進時,以當前種群最優(yōu)個體為基點,以PS 算法進行局部搜索,搜索到的較優(yōu)點或次優(yōu)點與群體最差點進行競爭,從而實現對群體點的改良,促使種群繼續(xù)進化。若在連續(xù)m代內當前種群最優(yōu)個體有所提升,表明DE 算法正常進化,無停滯現象發(fā)生,正朝著全局最優(yōu)解的方向逼近,此時,不必加入局部搜索策略。HPSDE 算法正是基于以上思想進行設計的,其實現步驟如下。 Step1 設置種群規(guī)模NP、交叉概率CR、縮放因子F,計算精度ε 及加速因子γ,在參數空間隨機初始化每一個個體,設置最大進化代數為T,令t=1。 Step2 計算當前種群的最優(yōu)適應度bestfitness 及最優(yōu)個體。 Step3 若最優(yōu)適應度bestfitness 達到精度要求或者迭代次數達到最大,則輸出當前最優(yōu)適應度值,退出;否則,轉Step4。 Step4 若當前最優(yōu)適應度bestfitness 連續(xù)m次目標函數評價沒有得到改進,則執(zhí)行Step5,否則,執(zhí)行Step7。 Step6 以當前群體最優(yōu)點為初始點,執(zhí)行模式搜索算法,并將最優(yōu)結果替換當前群體中的最差點。 Step7 對群體中的所有個體執(zhí)行 Step7.1 執(zhí)行式(3)的變異算子。 Step7.2 執(zhí)行式(4)的交叉算子。 Step7.3 執(zhí)行式(5)的選擇算子。Step8t=t+1,轉Step2。 為驗證HPSDE 算法的有效性,采用以下3 個典型的測試函數,與DE 算法(DE/rand/1/bin 模式)進行比較。 實驗中算法的相關參數設置為種群規(guī)模設置為50,F 設置為0.5,CR 設置為0.1。HPSDE 算法觸發(fā)PS算法的臨界條件為連續(xù)100 次函數評價次數沒有更新,且為使PS 算法能夠具有更強的勘探能力,且又不會遠離當前點,設置加速因子γ 為1.2。為了使算法的比較更公平,采用函數評價次數為終止條件,總的函數評價次數設置為3e5 次。為避免實驗結果的隨機性,DE 算法與HPSDE 算法對每個函數均獨立運行30 次,統(tǒng)計結果見表1。圖1—圖3 為30 次實驗平均最優(yōu)適應度進化曲線,圖中橫坐標為函數評價次數,縱坐標為對應的30 次實驗平均最優(yōu)適應度值。 圖1 f1(x)30 次平均適應度進化曲線 圖2 f2(x)30 次平均適應度進化曲線 圖3 f3(x)30 次平均適應度進化曲線 表1 HPSDE 與DE 運行30 次的函數優(yōu)化結果比較 HPSDE 算法的設計思想是在DE 算法中協(xié)同PS 算法,使PS 算法能夠幫助DE 算法進行精細搜索,從而提升DE 算法的搜索精度。初始進化階段,由于DE 算法種群多樣性較好,個體進化較快,一般不會出現停滯現象,HPSDE 算法中PS 算法不會發(fā)揮作用。進化的中后期,種群的多樣性下降,出現進化停滯現象,即連續(xù)多次函數評價(如100 次函數評價)種群最優(yōu)解得不到改進,此時,PS算法開始發(fā)揮其作用,以當前最優(yōu)解為基點執(zhí)行PS 算法,并使PS 算法搜索結果替換當前種群中最差個體,從而加快算法的收斂速度。同時,由于PS 算法的搜索基點為當前的群體最優(yōu)點,因此,這種局部搜索會幫助DE 算法提升其搜索精度。但由于有新的搜索策略的引入,且新策略的更新機制使種群中的個體得到更新,因此會破壞DE 算法的原有進化過程,影響DE 算法的穩(wěn)定性。 從表1 最優(yōu)值數據與平均值數據可以看出,在相同的函數評價次數下,HPSDE 算法的求解精度要優(yōu)于DE 算法的收斂精度,表明DE 算法在引入了PS 算法之后,其收斂速度得到了提升。從30 次最優(yōu)值的均方差比較可以看出,HPSDE 算法的均方差在函數f1和f3求解結果上要差于DE 算法的結果,在f2的求解結果上要優(yōu)于DE 算法,表明PS 算法受初始解的影響較大,盡管PS 的初始解為當前DE 算法的最優(yōu)解,但若當前解的周圍不存在優(yōu)于當前群體最差解的解時,則會使DE 算法的函數評價次數減少,影響到某次最優(yōu)解的精度,使均方差的結果變差,從而使算法的穩(wěn)定性降低,與算法性能分析結果一致。 從圖1—圖3 可以看出,HPSDE 算法的收斂速度要明顯優(yōu)于DE 算法;進化開始階段,DE 算法收斂速度較快,能夠不斷地提升尋優(yōu)精度,不斷地向全局最優(yōu)解逼近,在此過程中沒有出現進化“停滯”現象,PS 算法不會被觸發(fā),因此,不會發(fā)揮作用,從而,HPSDE 算法和DE 算法的收斂曲線具有極大的相似性。但隨著DE 算法進化停滯,連續(xù)多代種群的最優(yōu)解得不到改進,PS 算法以當前群體最優(yōu)解為基點進行局部搜索,并使搜索結果替代當前種群中最差個體,加快了DE 算法的收斂速度。 圖4 為壓力容器的結構尺寸與內壓的概率密度函數曲線[15-16]。根據現場抽樣檢查得到表2 所列數據。其中p為容器的工作壓力,σs為材料的屈服強度極限,h為鋼板厚度。確定該容器在滿足強度不失效概率為0.95 下的最大容積的尺寸R和H,且要求容器尺寸限制在2≤H/R≤2.5。 圖4 壓力容器的結構尺寸與內壓概率密度函數曲線 表2 壓力容器設計的已知數據 考慮到壓力容器制造的工藝誤差,認為壓力容器的設計尺寸R和H是服從正態(tài)分布的隨機變量,其均值μR和μH是未知的,其標準差取為σR=0.03μR,σH=0.03μH。這樣設計變量為x=[x1,x2]T=[μR,μH]T。 隨機參數為容器內的工作壓力p、容器的壁厚h及材料的允許強度極限σs,即 目標函數取為壓力容器的容積,即 約束函數為 由此可建立壓力容器的概率優(yōu)化設計的數學模型為 設置HPSDE 算法的種群規(guī)模為50,最大函數評價次數為2e5 次,F 為0.5,CR 為0.1。HPSDE 算法觸發(fā)PS 算法的臨界條件為連續(xù)100 次函數評價次數沒有更新,加速因子γ 為1.2。表3 給出了壓力容器的優(yōu)化設計結果。 表3 壓力容器的優(yōu)化設計結果 從表3 的優(yōu)化結果可以看出,對于含有隨機因素的優(yōu)化問題,用一般優(yōu)化設計方法所得結果是十分不可靠的。因為其約束滿足的實際概率值僅有50%左右。若用隨機模型進行優(yōu)化設計,且采用其計算結果比較合理與可靠。 本文首先通過對差分進化算法及模式搜索算法研究,提出了一種混合模式搜索差分進化算法,通過仿真實驗對算法性能進行了分析,發(fā)現該算法在相同的函數評價次數下,HPSDE 算法的求解精度要優(yōu)于DE 算法的精度。但在一定條件下,PS 算法的引入又會使算法的穩(wěn)定性下降,這也是進一步研究該算法的出發(fā)點。其次,本文考慮到高壓容器設計中的隨機因素,建立了高壓容器概率優(yōu)化模型,并采用HPSDE 算法對高壓容器的確定型模型與概率模型進行了求解,比較結果表明采用隨機模型的計算結果更為合理可靠。1.3 混合模式搜索差分進化算法
2 混合模式搜索差分進化算法性能分析
2.1 性能分析
2.2 結果分析
3 高壓容器概率優(yōu)化案例及分析
4 結論