王 琦,葉 寒,陸 遠,郭映芝
(南昌大學(xué)機電工程學(xué)院,南昌 330031)
為了使得制造工廠能識別并消除物料、空間、設(shè)備及時間等方面的浪費,并且著重判定當(dāng)前生產(chǎn)線生產(chǎn)能力是否能夠適應(yīng)排產(chǎn)計劃,福特精益生產(chǎn)衡量指標(biāo)BTS作為精益生產(chǎn)的重要指標(biāo)之一,提高BTS的預(yù)測精度不僅僅是引導(dǎo)與檢驗精益生產(chǎn)實施的實際情況,并且對生產(chǎn)線排產(chǎn)適應(yīng)程度有良好的反饋。由于BTS的影響因素是錯綜復(fù)雜的,加之這些影響因素很難用數(shù)學(xué)語言來表達,從而導(dǎo)致了預(yù)測模型的多樣性和復(fù)雜性。
如今,無論在美國或歐洲的發(fā)達國家,還是在中國等亞洲發(fā)展中國家,大家都在研究和推廣實施精益生產(chǎn)。人們普遍認為精益生產(chǎn)方式是繼大規(guī)模生產(chǎn)方式之后現(xiàn)代制造運營模式的第二次飛躍。所以BTS的預(yù)測有重大意義。
人工神經(jīng)網(wǎng)絡(luò)有較強的非線性模擬能力,且有較強的自學(xué)習(xí)能力,自適應(yīng)能力,較高的預(yù)測精度等等優(yōu)點[1],在各個學(xué)科領(lǐng)域運用實例越來越多。本文將利用某汽車底盤廠后橋生產(chǎn)線幾個月的BTS數(shù)據(jù),運用BP神經(jīng)網(wǎng)絡(luò)[4]建模對某汽車底盤廠后橋生產(chǎn)線的BTS進行預(yù)測,最后由BTS指標(biāo)評估其排產(chǎn)是否符合其生產(chǎn)線的生產(chǎn)能力。
但考慮到標(biāo)準(zhǔn)的BP神經(jīng)網(wǎng)絡(luò)存在諸如收斂速度低、易陷入局部極小和網(wǎng)絡(luò)訓(xùn)練對初始權(quán)值和閾值比較敏感等缺陷。因此本文將使用改進型的BP網(wǎng)絡(luò)模型算法進行預(yù)測,使其減少不收斂或訓(xùn)練時間過長的情況。
式中,Xx為第i個輸入神經(jīng)元的變量,f為隱含層激勵函數(shù),本文中所采用的激勵函數(shù)為 S型函數(shù),f=1/(1+e-x/p),其中p為陡度因子,通過改變S型函數(shù)的陡度因子P來改變激勵函數(shù)的陡峭程度。當(dāng)P較大時,S型線較為平坦;當(dāng)P很小時,S型線很陡峭;當(dāng)P趨近于0時,S型線趨向階躍。
陡度因子P的衰減方式影響著網(wǎng)絡(luò)算法的準(zhǔn)確性和速度。本文采用如下指數(shù)形式改進P的衰減
式中,P0為初始值,常數(shù)α∈(0,1];t為迭代次數(shù)??梢钥闯鯬為α的單調(diào)遞減函數(shù)。當(dāng)t變大時,P的下降速度變慢;當(dāng)t變小時,P的下降速度變快[7]。因此,可以通過選取適當(dāng)?shù)摩林祦砜刂芇的下降速度。文中,取 α =0.85,P的初始值為P0=90,終止值為Pmin=0.1。
3)輸出層輸出值Zk的計算
標(biāo)準(zhǔn)的BP神經(jīng)網(wǎng)絡(luò)中激勵函數(shù)的陡度因子是固定值,其函數(shù)的陡峭程度是固定不變的,此時不一定能得到較好的響應(yīng)特征和非線性表達能力。改進的BP神經(jīng)網(wǎng)絡(luò)將利用動態(tài)陡度因子來改變激勵函數(shù)的陡峭程度,通過對陡度因子的調(diào)整來改善激勵函數(shù)響應(yīng)特征,得到更好的非線性表達能力,算法在開始階段以較小的陡度來避免網(wǎng)絡(luò)陷入局部極小,并且逐步增加陡度來加快算法的收斂速度。將這一改進加入標(biāo)準(zhǔn)BP神經(jīng)網(wǎng)絡(luò)算法后其算法步驟如下:
(1)改進BP神經(jīng)網(wǎng)絡(luò)步驟
1)網(wǎng)絡(luò)初始化,確定網(wǎng)絡(luò)輸入層神經(jīng)元個數(shù)i,隱含層神經(jīng)元個數(shù)p,輸出層神經(jīng)元個數(shù)k,輸入層與隱含層神經(jīng)元之間的連接權(quán)值為ωiy,隱含層與輸出層直接的連接權(quán)值為 ω'yk,輸出層閥值 b= [b1,b2,b3,b4……,bk],隱含層閥值 a= [a1,a2,a3,a4,……,ap]
2)隱含層輸出hp計算
在輸入層到隱含層的權(quán)值更新式中:η為學(xué)習(xí)速率,η > 0,D(t)= - ?y/?ωxy(t+1),β 為動量因子,0≤β<1。
在隱含層到輸出層的權(quán)值更新式中:η為學(xué)習(xí)速率,η > 0,D'(t)= - ?y/?ω'yz(t+1),β 為動量因子,0≤β<1。
5)閥值的更新。通過BP神經(jīng)網(wǎng)絡(luò)得出的輸出Zk與期望輸出Ok之間的誤差更新ay,bk
6)判斷該BP網(wǎng)絡(luò)算法是否結(jié)束,如算法未結(jié)束則返回步驟3)。
式中,l為隱含層節(jié)點數(shù);n為輸入節(jié)點數(shù);m為輸入節(jié)點數(shù);a為1~10之間調(diào)節(jié)的常數(shù)。
為了反映出每天任務(wù)種數(shù)、每種任務(wù)的計劃量與其排列順序?qū)TS影響的關(guān)系,故將其矩陣化,構(gòu)成適當(dāng)?shù)妮斎胂蛄?。由于任?wù)種類數(shù)量較多,所以只挑選生產(chǎn)頻率較高,生產(chǎn)數(shù)量較大,對產(chǎn)品生產(chǎn)影響較大的產(chǎn)品,共5 種,定義為 A,B,C,D,E;并規(guī)定其順序為A,B,C,D,E,若當(dāng)天沒有所選出的任務(wù)則用0代替。
依上所描述,輸入向量的構(gòu)成形式為X=(X1,X2,X3,……X11) ,
例:(120 150 100 100 0 4 2 3 1 5 0),以上表示為5種產(chǎn)品的任務(wù)數(shù)量及排產(chǎn)順序,其中 X1,X2,X3,X4,X5表示的是每種任務(wù)的具體的生產(chǎn)數(shù)量,X6表示的是實際生產(chǎn)任務(wù)的個數(shù),X6~X11表示的是實際任務(wù)的生產(chǎn)順序。例子表示為實際的生產(chǎn)任務(wù)數(shù)量為4,其順序為 2,3,1,5,0,轉(zhuǎn)化為生產(chǎn)任務(wù)后為 B,C,A,E,任務(wù)D并沒安排生產(chǎn)故用0來表示。由例可至B的生產(chǎn)數(shù)量為120,C的數(shù)量為150,A的數(shù)量為100,E的數(shù)量為100。
文章數(shù)據(jù)來自某汽車底盤廠使用的MES系統(tǒng),數(shù)據(jù)主要包涵了任務(wù)種類個數(shù),每種任務(wù)的數(shù)量,任務(wù)安排順序及歷史BTS計算值。在此提供的數(shù)據(jù)為每天一次的BTS統(tǒng)計,從所獲得的數(shù)據(jù)中選擇45組數(shù)據(jù)作為該神經(jīng)網(wǎng)絡(luò)的訓(xùn)練數(shù)據(jù),10組作為檢測數(shù)據(jù),以此來對未來三天內(nèi)的BTS建立預(yù)測模型。由于過去的BTS對未來的BTS有一定的指導(dǎo)作用及相關(guān)性,所以通過以往數(shù)據(jù)訓(xùn)練出來的模型對將來的預(yù)測有一定的幫助。本文假定未來某汽車底盤廠在預(yù)測期間內(nèi)不會通過增加人數(shù)及設(shè)備來提高生產(chǎn)力或者由于人為因素降低生產(chǎn)力。
對于誤差精度的提高可以通過增加隱含層中神經(jīng)元的數(shù)目來獲取,網(wǎng)絡(luò)的訓(xùn)練效果比增加網(wǎng)絡(luò)的層數(shù)更加明顯,因此在通常情況下,應(yīng)該首先考慮增加隱含層中的神經(jīng)元的數(shù)目。結(jié)合本文數(shù)據(jù)的實際情況,以及對BTS預(yù)測效率的要求,BP神經(jīng)網(wǎng)絡(luò)將采用三層網(wǎng)絡(luò)結(jié)構(gòu),11個輸入向量與1個輸出向量。根據(jù)學(xué)者們的經(jīng)驗參照公式(9),隱含層神經(jīng)元數(shù)取14。
表1 2014-7-1~2014-8-15某汽車底盤廠全浮線BTS統(tǒng)計
式中Xi—輸入樣本數(shù)據(jù)
X'i—歸一化后的樣本輸入數(shù)據(jù),
Xmax,Xmin—輸入樣本樣本數(shù)據(jù)最大值、最小值
n—樣本數(shù)
當(dāng)傳遞函數(shù)為y=x時,a∈[-1,1],b∈[-1,1],且 a < b。
BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練的誤差性能變化如圖1所示,經(jīng)過1912次迭代后網(wǎng)絡(luò)達到期望的誤差水平,其訓(xùn)練時間為14s。考慮到初始權(quán)值選取對結(jié)果的影響,得出的結(jié)果、訓(xùn)練時間、和訓(xùn)練次數(shù)、是在隨機選取初始權(quán)值和閥值的情況下,訓(xùn)練5次后取平均值所得到的。由于使用動態(tài)陡度因子,從表2中可以看出,對真實數(shù)據(jù)的擬合最大誤差為25%,但絕大部分結(jié)果都能很好的與真實數(shù)據(jù)進行擬合,如圖2所示用BP神經(jīng)網(wǎng)絡(luò)能達到較好的預(yù)測效果。
再訓(xùn)練網(wǎng)絡(luò)之前,因為奇異樣本的存在會增加網(wǎng)絡(luò)訓(xùn)練的時間,并可能會引起網(wǎng)絡(luò)無法收斂,所以為了消除奇異樣本對表1中的數(shù)據(jù)進行歸一化處理。其公式如下:
圖1 BP神經(jīng)網(wǎng)絡(luò)誤差性能變化曲線
圖2 BTS預(yù)測值與實際值對比
表2 預(yù)測精度情況
本文以某底盤廠實際生產(chǎn)數(shù)據(jù)為學(xué)習(xí)樣本,建立改進型的BP神經(jīng)網(wǎng)絡(luò),并利用訓(xùn)練好的模型對未來的產(chǎn)生計劃進行BTS預(yù)測,由于BTS主要受生產(chǎn)節(jié)拍、生產(chǎn)排程及其他因素影響,對未來的BTS預(yù)測則可在一定程度上反應(yīng)出調(diào)度部門是否安排出與生產(chǎn)線生產(chǎn)能力相適應(yīng)的排產(chǎn)計劃。若生產(chǎn)線預(yù)測BTS較低則調(diào)度人員可以適當(dāng)調(diào)節(jié)生產(chǎn)排程計劃,提高預(yù)測BTS值,這樣可以更好的適應(yīng)當(dāng)前生產(chǎn)線的生產(chǎn)能力。
[1]朱文銅.基于改進BP神經(jīng)網(wǎng)絡(luò)的鐵路貨運量預(yù)測[J].石家莊鐵道大學(xué)學(xué)報(自然科學(xué)版),2014,27(2):79-82.
[2]Water quality forecast through application of BP neural network at Yuqiao reservoir[J].Journal of Zhejiang University(Science A:An International Applied Physics&Engineering Journal),2007,9:1482 -1487.
[3]郭文剛.基于BP神經(jīng)網(wǎng)絡(luò)的船舶航跡控制技術(shù)[J].艦船科學(xué)技術(shù),2014,36(8):87-93.
[4]王德明,王莉,張廣明.基于遺傳BP神經(jīng)網(wǎng)絡(luò)的短期風(fēng)速預(yù)測模型[J].浙江大學(xué)學(xué)報(工學(xué)版),2012,46(5):837 -841,904.
[5]杜福銀,徐揚,盧明立,等.一種作業(yè)車間調(diào)度問題的Hopfield神經(jīng)網(wǎng)絡(luò)優(yōu)化方法[J].機床與液壓,2006(11):4 -6,9.
[6]丁慧強,李之岱,東明.包裝鋼帶并行生產(chǎn)線排產(chǎn)優(yōu)化問題研究[J].冶金經(jīng)濟與管理,2006(4):22-24.
[7]李朝興,冶林茂,喬春貴,等.BP神經(jīng)元網(wǎng)絡(luò)算法改進試驗[J].河南氣象,1999(1):41.
[8]王衛(wèi)東,李凈,張福存,等.基于BP神經(jīng)網(wǎng)絡(luò)的太陽輻射預(yù)測——以蘭州市為例[J].干旱區(qū)資源與環(huán)境,2014,28(2):185-189.
[9]韓磊,李銳,朱會利.基于BP神經(jīng)網(wǎng)絡(luò)的土壤養(yǎng)分綜合評價模型[J].農(nóng)業(yè)機械學(xué)報,2011,42(7):109-115.
[10]王吉權(quán),王福林,邱立春.基于BP神經(jīng)網(wǎng)絡(luò)的農(nóng)機總動力預(yù)測[J].農(nóng)業(yè)機械學(xué)報,2011,42(12):121-126.
[11]孟召平,田永東,雷旸.煤層含氣量預(yù)測的BP神經(jīng)網(wǎng)絡(luò)模型與應(yīng)用[J].中國礦業(yè)大學(xué)學(xué)報,2008,37(4):456-461.
[12]王崇駿,于汶滌,陳兆乾,等.一種基于遺傳算法的BP神經(jīng)網(wǎng)絡(luò)算法及其應(yīng)用[J].南京大學(xué)學(xué)報(自然科學(xué)版),2003,39(5):459 -466.
[13]伊力哈木·亞爾買買提,哈力旦·A.基于改進 BP神經(jīng)網(wǎng)絡(luò)的人臉識別算法[J].計算機技術(shù)與發(fā)展,2010,20(12):130-132.