劉 清
(閩南理工學院土木工程學院,福建 石獅 362700)
混凝土配比的設計就是找尋適當比例的水泥、骨料、水、外加劑等組成成分,得到符合要求性能的混凝土,并且盡可能地降低成本[1]。普通混凝土的傳統配比設計方法是計算-適配法,或基于逐級填充原理,或假定容量法和絕對體積法,將制成的混凝土試驗標本養護到28天,測試其相關性能[2]。對于高性能混凝土,國內外提出了很多方法。其中,法國路橋中心對高性能混凝土配比設計的研究比較先進[3],其主要思想是在模型材料上用膠結漿體進行大量的流變試驗,并用砂漿進行力學實驗,避免了用直接的方法優化配比參數時進行的大量試配工作?;炷僚浔鹊脑O計方法不僅可以參照普通混凝土的設計方法,也可針對原材料的特點需要進行特殊的配比設計,例如再生混凝土的再生骨料預吸收法[4]。但一般都是依靠人為的經驗來決定混凝土產制的和易性、隱蔽性和安全性這三大特性[5],導致混凝土的質量和性能不夠穩定,而且生產上的隨意更改會引起管理上的混亂,造成對成品無法控制。本文以混凝土28天抗壓強度作為衡量混凝土性能的一項重要參數,采用粒子群算法加神經網絡來建立混凝土強度與配比之間的關系模型,提高混凝土攪拌站配料的精度,以此來提高成品混凝土的質量和性能,同時達到降低生產成本的目的。
BP神經網絡是目前應用最廣泛的神經網絡模型之一,是1986年以Rumelhart和McCelland為首的科學家提出的一種按照誤差逆傳播算法訓練的多層前饋網絡。BP神經網絡模型包括輸入層(input layer)、隱層(hidden layer)和輸出層(output layer)。在進行神經網絡訓練前,需要對網絡的輸入、輸出參數進行歸一化處理。歸一化處理公式如下:
(1)
(2)

對樣本數據進行歸一化處理,可以減輕人工神經網絡的訓練難度,還可以讓那些比較大的數據仍然落在神經元轉換梯度大的地方。根據樣本數據建立網絡模型,確定神經網絡的輸入輸出參數和隱層單元數。
粒子群算法(Particle Swarm Optimization,PSO)是一種并行算法,由KENNEDY J和EBERHART R C等開發出的一種優化算法[6]。將BP網絡神經元之間的所有權閾值編碼成實數向量,按照粒子群算法進行迭代,每次迭代過后將向量還原為權閾值,在進行所有樣本的訓練,計算均方差。自行設定系統允許的最大誤差,如果迭代過后的均方差小于預設值,則計算結束,輸出結果,否則繼續迭代,直到迭代次數達到設定的最大值。
1.2.1 基本原理
BP神經網絡的激活函數采用Sigmoid函數,然后用PSO算法搜索出最佳位置,使如下均方差指標達到最?。?/p>
(3)
其中,N為樣本個數;c為神經網絡輸出的個數;tk,p為第p個樣本的第k個理想輸出值;Yk,p為第p個樣本的第k個實際輸出值。
1.2.2 實現步驟
步驟一,確定網絡允許的最大誤差、最大迭代次數、最大速度、搜索范圍、確定粒子數。步驟二,根據粒子群規模,隨機產生一定數目的個體Xi以及其速度Vi。不同的個體代表神經網絡的一組不同混凝土配比值。步驟三,根據適應度函數計算每個粒子的優劣程度。步驟四,比較適應度,找到每個粒子的局部最優值和各代粒子的所有的最優值。步驟五,檢驗是否達到結束要求,若滿足則輸出混凝土配比,若不滿足則繼續迭代出下一組混凝土配比值,直到達到要求。
現有數據是混凝土各自組成成分的用量以及對應的28天抗壓強度值,見表1。本數據來自史峰和王輝的《MATLAB智能算法30個案例分析》[7],其中,1~9組數據為訓練集,用于建立神經網絡模型;10~19組為測試集,用于測試模型的預測能力。

表1 混凝土組成成分用量原始數據

續表
根據表1,設定神經網絡的輸入為混凝土各配料的量,所以輸入層單元數為7,輸出為混凝土28天抗壓強度值,即輸出層單元數為1。隱層單元數沒有精確的推導公式,但是可以用以下經驗公式作為參考:
(4)
其中,n1為隱層單元數,n為輸入神經元的個數,m為輸出神經元的個數,a為在0~10之間的常數。
一般來說,隱層單元數比輸入神經元個數要多,取隱層單元數為10。其他參數自行取值,但不可超出其參數的取值范圍,最終的神經網絡模型結構為7×10×1。
將表1的數據輸入到BP神經網絡模型中,得到每組數據的仿真結果,如圖1所示。

樣品編號 圖1 BP和PSO-BP神經網絡測試結果
從圖1可以看出,此神經網絡對測試樣本的仿真值與真實值存在相當大的誤差。均方誤差MSE的數值越小越好;另一個描述誤差的數值R2,越接近于1表示模型越準確。由研究結果得到MSE為0.059 042,R2為0.758 22,說明并不能準確地描述出輸入與輸出的關系。這說明,這樣訓練出來的BP神經網絡中的權閾值并不是最優的,需要用優化算法進行權閾值優化。因此,設置粒子群算法參數,迭代次數50次,種群規模20,粒子維數7,學習因子c1=1.914 45,c2=0.914 45。優化完成后繼續用表1的測試樣本進行測試,測試結果如圖1所示,可見用粒子群算法優化網絡權閾值得到的神經網絡模型明顯比單純BP網絡模型效果更好。PSO+BP神經網絡模型的均方誤差MSE已經降到0.001 550 8,R2為0.992 09。根據PSO+BP神經網絡模型,可以設計出已知強度條件下的混凝土配比值。用PSO+BP神經網絡模型描述混凝土強度與各自材料用量的關系,具有很強的可靠性和適應性。
利用粒子群算法迭代尋優,設置最終得到的混凝土28天抗壓強度值為35,迭代次數為100。使用PSO-BP神經網絡進行迭代運算,得到如圖2所示的誤差變化圖。

圖2 配比迭代后的仿真誤差曲線
從圖2可以看出,這種方法收斂速度快,當迭代到第27次左右,誤差就降到一個很低的水平了。除此之外,精度也很高,誤差保持在0.000 1的范圍內,因此,通過這種方法可以有效地設計配比值。最終混凝土最佳配比分別為:水泥293.737 kg/m3,爐石0,飛灰93.683 kg/m3,水234.399 kg/m3,超增塑劑19 kg/m3,碎石1 037.664 4 kg/m3,砂640.9 kg/m3。
混凝土生產配比的選擇需要考慮眾多因素,例如,當固定28天混凝土抗壓強度值時,所對應的混凝土配比值不是固定的,理論上來說有無數種,運行一次程序,就得到一種混凝土配比值。在這些配比值當中該如何取舍,需要考慮的是成本問題。在得到的有限配比值中肯定有一組是最經濟的,通過計算每一組配比值得出混凝土的成本,篩選出成本最低的一組作為最佳配比。計算成本時不包括運費、員工工資等外部因素,只計算混凝土本身各種材料的費用總和。由于配比設計中只包含主要成分,因此可以用單位重量混凝土所需的價格比較不同配比混凝土的性價比。設混凝土生產配比值為x1,x2,…,xn,單位是kg/m3,每種材料的價格是a1,a2,…,an,單位為元/kg。因此,可以計算出成本Y(元/kg)為
(5)
設定混凝土28天抗壓強度值為35,得到10組混凝土生產配比值。每組配比結果如表2所示。

表2 10組28天抗壓強度值為35的混凝土配比值

續表
對于這些不同種類的混凝土不同配比值,計算每組的成本總和。2021年市場上每種混凝土組成材料的平均價格分別為:水泥是0.46 元/kg,爐石0.15 元/kg,飛灰0.07 元/kg,水0.002 8 元/kg,超增塑劑5.9 元/kg,碎石0.05元/kg,砂0.087 元/kg。由表2可以看出第4組混凝土的價格最低,因此選取第4組混凝土生產配比,即水泥用量248.9 kg/m3,爐石14.6 kg/m3,飛灰142.7 kg/m3,水223.2 kg/m3,超增塑劑 6.4 kg/m3,碎石 742.8 kg/m3,砂 755.8 kg/m3。混凝土生產配比的仿真設計,可以不進行實際操作而節約時間和成本,事先設計好最理想生產配比,直接應用到混凝土攪拌站中即可。
本文提出的粒子群算法結合BP神經網絡的方法能夠很好地解決混凝土配比的設計問題。從計算機仿真結果可以看出,利用粒子群算法優化權閾值后的神經網絡能夠很好地描述混凝土各組成的用量與最終成品的強度之間的關系。由此神經網絡模型就可以繼續通過粒子群算法進行特定目標值的輸入搜索,最終得到數組能夠達到要求的混凝土配比。如果需要可再根據其他要求從其中篩選更適合的方案。這種方法不僅能設計混凝土生產配比,還能粗略地判斷出混凝土強度的上下限,避免設計要求的不合理性。但是這樣的設計只是理論上的計算,并不是絕對準確的,應用到實際生產過程中可能會造成誤差,這時需要對設計好的混凝土生產配比進行微調,直到滿足需求。