王亞昶,姬曉曉
(河南省交通規(guī)劃設(shè)計(jì)研究院股份有限公司,河南 鄭州 450046)
隨著我國(guó)基礎(chǔ)工程建設(shè)的不斷發(fā)展,我國(guó)公路工程領(lǐng)域已經(jīng)步入了養(yǎng)護(hù)、建設(shè)并重的新階段,由此預(yù)防性養(yǎng)護(hù)的意義也就顯得越發(fā)突出。預(yù)防性養(yǎng)護(hù)的特點(diǎn)在于其具有主動(dòng)性,能夠?qū)π阅苌刑幱诹己脿顟B(tài)但存在輕微病害的路面做出處理,以“防患于未然”的理念來(lái)改善公路服務(wù)質(zhì)量。但在當(dāng)前的許多對(duì)路面的預(yù)防性養(yǎng)護(hù)中,決策的落實(shí)往往依賴于技術(shù)人員的經(jīng)驗(yàn)判斷。出現(xiàn)這一現(xiàn)象的主要原因在于,開展預(yù)防性養(yǎng)護(hù)時(shí)路面結(jié)構(gòu)的病害發(fā)展還不夠深入,其尚可發(fā)揮預(yù)期服務(wù)作用,因此難以得到技術(shù)人員的關(guān)注。受到這樣的影響,預(yù)防性養(yǎng)護(hù)的科學(xué)性、經(jīng)濟(jì)性都難以得到保障,容易出現(xiàn)耗費(fèi)了大量資金而達(dá)不到預(yù)期養(yǎng)護(hù)效果的現(xiàn)象,嚴(yán)重的甚至還會(huì)引發(fā)路面二次病害的發(fā)生[1-2]。針對(duì)多樣化的路面病害,做出詳細(xì)分級(jí)分類,并對(duì)各類病害制定相應(yīng)的決策及養(yǎng)護(hù)方案,基于BP 神經(jīng)網(wǎng)絡(luò)分別以病害樣本、養(yǎng)護(hù)措施來(lái)建立輸入及輸出,同時(shí)采用Matlab 所內(nèi)嵌BP 神經(jīng)網(wǎng)絡(luò)模塊對(duì)上述行為進(jìn)行訓(xùn)練、模擬。隨后,即可將采集到的病害信息導(dǎo)入其中,輸出端即可給出相應(yīng)的養(yǎng)護(hù)建議,避免由于經(jīng)驗(yàn)決策帶來(lái)的主觀偏差。由此可以看出,采用Matlab參與瀝青路面預(yù)防性養(yǎng)護(hù)的決策具有突出現(xiàn)實(shí)意義。
神經(jīng)網(wǎng)絡(luò)作為一類由大量簡(jiǎn)單處理單元集成而成的復(fù)雜系統(tǒng),盡管目前計(jì)算機(jī)運(yùn)算能力已經(jīng)得到了極大的提升,但對(duì)于大批量、復(fù)雜化的變參計(jì)算仍難以表現(xiàn)出足夠的適應(yīng)能力,進(jìn)而導(dǎo)致計(jì)算效率、精度不足。神經(jīng)網(wǎng)絡(luò)通過模仿人腦神經(jīng)細(xì)胞的連接方式來(lái)強(qiáng)化對(duì)復(fù)雜非線性數(shù)據(jù)的處理能力,可以很好地適應(yīng)這一運(yùn)算需求[3]。此外,神經(jīng)網(wǎng)絡(luò)具有非線性映射能力,對(duì)于復(fù)雜環(huán)境的適應(yīng)性較好。
BP 神經(jīng)網(wǎng)絡(luò)是在深化分布式信息分析過程中所提出的一類方法。
一般而言,BP 神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)主要可分為三個(gè)不同的部分,分別為輸入層、隱含層及輸出層。考慮到BP 神經(jīng)網(wǎng)絡(luò)所具有的特性,在對(duì)網(wǎng)絡(luò)開展訓(xùn)練時(shí),應(yīng)重點(diǎn)考慮隱含層數(shù)、神經(jīng)元數(shù)、傳遞函數(shù)等因素。
1.2.1 隱含層數(shù) 在隱含層數(shù)的選擇上,主要由單隱含層及多隱含層兩類,其中隱含層的個(gè)數(shù)越多,則神經(jīng)學(xué)習(xí)的層次、精度越高。
在實(shí)際神經(jīng)網(wǎng)絡(luò)的訓(xùn)練中不僅應(yīng)當(dāng)兼顧網(wǎng)絡(luò)精度、訓(xùn)練時(shí)間兩者的關(guān)系。特別地,對(duì)于比較復(fù)雜的映射關(guān)系,一般可采取2~3 層的隱含層設(shè)計(jì),這樣不僅能夠確保神經(jīng)網(wǎng)絡(luò)精度,同時(shí)還可以有效降低訓(xùn)練時(shí)間。通過已有分BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練經(jīng)驗(yàn)來(lái)看,采用3 層神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練在非線性映射方面能夠展現(xiàn)出較強(qiáng)的適應(yīng)能力,幾乎可以映射出常見的所有函數(shù)關(guān)系,且其精度較為可靠,是一類智能、綜合的決策方式[4]。在本研究中選用3 層BP 神經(jīng)網(wǎng)絡(luò)。
1.2.2 神經(jīng)元數(shù) 實(shí)踐表明,對(duì)于輸入層而言,其神經(jīng)元數(shù)主要受到網(wǎng)絡(luò)的影響,對(duì)于不同的影響因素將有相對(duì)應(yīng)的神經(jīng)元,本研究中網(wǎng)絡(luò)的影響因素就是各級(jí)病害的分級(jí)依據(jù)。而輸出層的神經(jīng)元數(shù)則主要基于預(yù)測(cè)指標(biāo)來(lái)確定,本研究中即為瀝青路面預(yù)防性養(yǎng)護(hù)的具體措施,所以可以將輸出神經(jīng)元定為一個(gè)。
此外,隱含層的節(jié)點(diǎn)數(shù)也顯著影響著神經(jīng)網(wǎng)絡(luò)訓(xùn)練精度。針對(duì)復(fù)雜程度較大的問題,隱含層的節(jié)點(diǎn)數(shù)越多則誤差越小。但需要注意的是,隱含層數(shù)的增加會(huì)導(dǎo)致預(yù)測(cè)誤差的持續(xù)增大,且將引發(fā)訓(xùn)練速度的下降,并導(dǎo)致擬合問題。所以,隱含層數(shù)、節(jié)點(diǎn)數(shù)應(yīng)當(dāng)慎重選擇。在實(shí)際工作中,一般沒有固定的選擇方式,可在滿足精度的基礎(chǔ)上盡可能減少隱含層數(shù)。
為推斷隱含層數(shù)的合理范圍,在樣本內(nèi)選出1 000 組病害數(shù)據(jù)作為參考展開測(cè)試,并計(jì)算在不同節(jié)點(diǎn)數(shù)下的誤差、均方差等基本統(tǒng)計(jì)量,其結(jié)果整理見圖1。
圖1 不同節(jié)點(diǎn)數(shù)下神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)誤差
由圖1 可知,當(dāng)隱含層數(shù)達(dá)到13 時(shí),分析得到相應(yīng)的相對(duì)誤差水平為-0.252 3%、均方差水平為0.004 7,達(dá)到預(yù)測(cè)精度的預(yù)期要求,所以本研究選定隱含層數(shù)為13。
1.2.3 傳遞函數(shù)的選取 在確定選擇函數(shù)前應(yīng)當(dāng)首
先對(duì)函數(shù)作預(yù)處理,一般可借助歸一化方法,其公式如下:
考慮到傳遞函數(shù)應(yīng)當(dāng)具備可微的特性,因此在確定隱含層傳遞函數(shù)時(shí)大多采取S 型函數(shù),而對(duì)輸出層而言則可選用線性函數(shù)[5]。
在定義時(shí)可選擇的S 型函數(shù)主要可分為L(zhǎng)og-Sigmoid、Tan-Sigmoid 兩類,這兩者的主要區(qū)別為值域存在差異。作為一類應(yīng)用廣泛的傳遞函數(shù),S 型函數(shù)能夠?qū)⑷我夥秶鷶?shù)據(jù)轉(zhuǎn)換到指定的值域內(nèi)進(jìn)行輸出,進(jìn)而幫助構(gòu)建非線性映射。
上文所指的線性函數(shù)即為purelin 函數(shù),也即斜率為1 的直線。能夠起到將凈輸入轉(zhuǎn)變?yōu)閮糨敵龅淖饔谩?/p>
充分考慮到不同傳遞函數(shù)所具有的特定,本研究在Matlab 內(nèi)分別將輸入層、輸出層函數(shù)默認(rèn)為Tan-sigmoid 函數(shù)及purelin 函數(shù)。
1.2.4 權(quán)值和閾值 實(shí)踐表明,權(quán)值、閾值對(duì)于收斂速度存在直接影響,且間接決定著收斂難以程度及訓(xùn)練時(shí)長(zhǎng)。從S 型傳遞函數(shù)來(lái)看,若其參數(shù)值比較大,那么神經(jīng)元的輸入將接近值閾的邊界,難以使函數(shù)給出有效反饋。此外,在網(wǎng)絡(luò)測(cè)試時(shí),為了修正權(quán)值、閾值,應(yīng)當(dāng)確保誤差修正量、傳遞函數(shù)導(dǎo)數(shù)之間呈現(xiàn)出大致正比關(guān)系,但S 型函數(shù)閾值邊界處的斜率近似為0,這也就導(dǎo)致誤差修整量接近0,由此神經(jīng)網(wǎng)絡(luò)很容易出現(xiàn)局部最小值,難以收斂。
考慮到上述因素,本研究在選擇閾值、權(quán)值的初始值時(shí),選定(-1,1)區(qū)間的隨機(jī)值,這樣也就能夠確保輸入值被控制在較小的范圍內(nèi),能夠使得傳遞函數(shù)做出有效反饋,加快收斂效率。
在根據(jù)工程實(shí)際條件初步確定BP 神經(jīng)網(wǎng)絡(luò)主要結(jié)構(gòu)參數(shù)后,即可導(dǎo)入病害集對(duì)網(wǎng)絡(luò)神經(jīng)展開訓(xùn)練,并基于訓(xùn)練的結(jié)果實(shí)時(shí)及時(shí)修正閾值、權(quán)值等,進(jìn)而確保病害庫(kù)、措施庫(kù)之間所形成非線性映射關(guān)系的有效性。在標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)算法中,網(wǎng)絡(luò)將逆誤差梯度來(lái)修正權(quán)值,所以這也可被看為梯度下降算法。由于這一算法自身所具有的局限性,神經(jīng)網(wǎng)絡(luò)也就表現(xiàn)出了收斂快、易出現(xiàn)局部最小的問題。
本研究在設(shè)定病害庫(kù)的參數(shù)時(shí)主要考慮以下內(nèi)容:裂縫尺寸、坑槽深度、車轍范圍、擁包高差等幾何參數(shù)。在訓(xùn)練過程中不僅應(yīng)當(dāng)針對(duì)單個(gè)病害的幾何參數(shù)、處理措施展開匹配訓(xùn)練,同時(shí)還應(yīng)對(duì)所有病害參數(shù)的復(fù)合作用、處理措施開展匹配訓(xùn)練,所以這一訓(xùn)練方式應(yīng)當(dāng)滿足數(shù)據(jù)量龐大、收斂快速的特點(diǎn)。反復(fù)比對(duì)上述訓(xùn)練方法及其特性,最終采用L-M法進(jìn)行訓(xùn)練,這樣可以顯著節(jié)約訓(xùn)練時(shí)間,且能夠?qū)Σ『ψ龀隹焖俜磻?yīng)。
由于采用Matlab 建立BP 神經(jīng)網(wǎng)絡(luò)時(shí),只能在輸出、輸出端采用數(shù)字進(jìn)行分析,因此在正式測(cè)試前應(yīng)當(dāng)使病害庫(kù)、措施庫(kù)經(jīng)預(yù)處理轉(zhuǎn)化,便于Matlab 軟件的識(shí)別與運(yùn)算。瀝青路面的病害類型比較繁多,且隨著投入運(yùn)營(yíng)時(shí)間的不斷推移,病害也將逐漸劣化,因此采用的預(yù)養(yǎng)護(hù)方式也就需要不斷調(diào)整。對(duì)于處于不同等級(jí)下的裂縫,可采取一種或多種復(fù)合措施開展養(yǎng)護(hù),為了適應(yīng)Matlab 僅能對(duì)數(shù)字信息做出運(yùn)算的特性,因此需要對(duì)養(yǎng)護(hù)措施做出編號(hào)。
一般而言,裂縫的產(chǎn)生與發(fā)展均具有一定的連續(xù)性,所以在借助神經(jīng)網(wǎng)絡(luò)進(jìn)行模擬時(shí),可采用隨機(jī)遍歷法來(lái)擬合其幾何特征。在本研究中可通過Matlab 內(nèi)嵌的rand 函數(shù)來(lái)取用幾何特征值,具體需要選取的數(shù)據(jù)量應(yīng)當(dāng)結(jié)合實(shí)際運(yùn)算量、經(jīng)驗(yàn)來(lái)確定。結(jié)合已有的研究,在本研究中對(duì)各級(jí)裂縫共抽取出500 組數(shù)據(jù),組成500×5 分布的矩陣,以其作為訓(xùn)練數(shù)據(jù)。將病害數(shù)據(jù)及其相應(yīng)養(yǎng)護(hù)措施導(dǎo)入至神經(jīng)網(wǎng)絡(luò)中訓(xùn)練,并以病害數(shù)據(jù)(P)為輸入量、養(yǎng)護(hù)措施(Y)作為輸出量,以此即可建立起兩者間的非線性映射。
遵照上述流程構(gòu)建起映射關(guān)系后,再抽取建立500×5 的病害矩陣,并在其中隨機(jī)選擇200 個(gè)元素確保隨機(jī)性,以此形成200×5 的驗(yàn)證矩陣。在Matlab 內(nèi)導(dǎo)入經(jīng)隨機(jī)遍歷法處理后的數(shù)據(jù),輸出參數(shù)即為相應(yīng)的養(yǎng)護(hù)措施編號(hào)。
而對(duì)于映射的訓(xùn)練而言,則選擇新版newff 函數(shù)。特別地,新版newff 函數(shù)設(shè)定了net.divideFcn 屬性,將其值賦予為'dividerand'。通過這一函數(shù),能夠自動(dòng)將樣本劃分為訓(xùn)練集、驗(yàn)證集及測(cè)試集三部分,且其默認(rèn)比例為6:2:2,得到測(cè)試結(jié)果見圖2。
圖2 誤差迭代圖
圖2 中的短虛線部分即為經(jīng)訓(xùn)練集處理得到的誤差下降曲線;長(zhǎng)虛線即為導(dǎo)入驗(yàn)證集得到的誤差下降曲線;實(shí)線即為導(dǎo)入測(cè)試集得到的誤差下降曲線。通過上圖可以發(fā)現(xiàn),經(jīng)過48 次迭代處理數(shù)據(jù)即達(dá)到收斂,相較于傳統(tǒng)分析所需要進(jìn)行的數(shù)千次迭代,其在訓(xùn)練效率上表現(xiàn)出突出的優(yōu)勢(shì)。
根據(jù)上述驗(yàn)證過程得到橫縱裂縫病害、相應(yīng)養(yǎng)護(hù)措施之間的驗(yàn)證結(jié)果見圖3。
圖3 預(yù)期輸出、實(shí)際輸出比對(duì)
圖3 中,實(shí)線部分即為預(yù)期輸出;虛線則為實(shí)際輸出。根據(jù)該圖可以發(fā)現(xiàn),盡管經(jīng)過訓(xùn)練,但BP 神經(jīng)網(wǎng)絡(luò)仍具有一定的誤差,不過其擬合度已經(jīng)能夠基本滿足要求。而引起這一誤差的主要原因在于裂縫劃分等級(jí)為離散型。特別地,在通過BP 神經(jīng)網(wǎng)絡(luò)分析時(shí)需要借助四舍五入來(lái)得出決策閾值,譬如對(duì)于實(shí)際輸出為3.4 和3.5 的情況,3.4 會(huì)被輸出為編號(hào)3 養(yǎng)護(hù),而3.5 則會(huì)被輸出為編號(hào)4 養(yǎng)護(hù),但就實(shí)際情況來(lái)看,這兩者的裂縫病害程度差別較小,幾乎可視為無(wú)差別。
為了盡可能降低不必要的隨機(jī)誤差,以隨機(jī)選擇的方式重新抽取200 組數(shù)據(jù)來(lái)驗(yàn)證以上所建立的映射關(guān)系,設(shè)定重復(fù)次數(shù)為20 次,以此來(lái)驗(yàn)證、判定上述模型的可行性及精確性。這20 次驗(yàn)證的正確率、迭代次數(shù)見圖4。
圖4 BP 神經(jīng)網(wǎng)絡(luò)的正確率、迭代次數(shù)
當(dāng)通過訓(xùn)練在BP 神經(jīng)網(wǎng)絡(luò)中對(duì)裂縫、養(yǎng)護(hù)措施構(gòu)建起可靠的映射關(guān)系后,隨機(jī)選用20 組不同數(shù)據(jù)對(duì)運(yùn)算有效性進(jìn)行驗(yàn)證,即可得出其平均正確率達(dá)到了93.32%。通過以上分析可以明顯發(fā)現(xiàn),在通過Matlab 所構(gòu)建的BP 神經(jīng)網(wǎng)絡(luò)對(duì)路面裂縫病害開展養(yǎng)護(hù)決策時(shí)能夠表現(xiàn)出收斂快、效率高的優(yōu)勢(shì),以此來(lái)幫助技術(shù)人員提出準(zhǔn)確可靠的決策方案。
本研究從神經(jīng)網(wǎng)絡(luò)的基本原理、實(shí)現(xiàn)路徑出發(fā)展開論述,并結(jié)合Matlab 軟件建立路面病害、養(yǎng)護(hù)措施間的映射關(guān)系。研究通過1 000 組不同的隨機(jī)數(shù)據(jù)建立起有效映射關(guān)系并對(duì)這一神經(jīng)網(wǎng)絡(luò)展開驗(yàn)證,結(jié)果表明準(zhǔn)確率達(dá)到了93.32%,這也說(shuō)明采用BP 神經(jīng)網(wǎng)絡(luò)對(duì)路面病害進(jìn)行預(yù)防性養(yǎng)護(hù)決策兼具較好的適應(yīng)性及有效性。