邵志芳,吳繼蘭
(上海財經(jīng)大學(xué) 信息管理與工程學(xué)院,上海 200433)
薄膜晶體管液晶顯示器(Thin Film Transistor-Liquid Crystal Display, TFT-LCD)的生產(chǎn)過程分為列陣、組立、模組3個階段,每一階段有多個工廠進行生產(chǎn)。這種模式下的生產(chǎn)規(guī)劃問題極其復(fù)雜,除了要考慮各個工廠內(nèi)部幾百道生產(chǎn)工序的問題,還要考慮工廠與工廠之間的各種上下游關(guān)系、供應(yīng)關(guān)系、運輸關(guān)系、庫存問題等。Lin等[1-2]研究了生產(chǎn)鏈多廠規(guī)劃方法,進行了多廠區(qū)的產(chǎn)能和生產(chǎn)混合規(guī)劃[3],提出兩步隨機戰(zhàn)略產(chǎn)能規(guī)劃模型;陳可嘉等[4]提出一種混合整數(shù)規(guī)劃模型,該模型考慮供應(yīng)鏈物理約束、機器能力約束、工件加工順序、訂單交付期等約束,以成本最小化為目標(biāo),經(jīng)分析驗證,具有良好的排程效果;邵志芳等[5-6]分可外購和完全自產(chǎn)兩種情境,分別研究了TFT-LCD產(chǎn)業(yè)生產(chǎn)排程及生產(chǎn)策略。然而,這些研究沒有跳出一體化(All-at-Once,AAO)建模的思想,并假設(shè)生產(chǎn)鏈信息完全共享,剝奪了企業(yè)自主決策的權(quán)力,忽略了企業(yè)之間的信息博弈與交互過程。
目標(biāo)級聯(lián)法(Analysis Target Cascading, ATC)是解決非集中式、層次結(jié)構(gòu)協(xié)調(diào)問題的一種新方法。ATC首先被應(yīng)用于工業(yè)設(shè)計領(lǐng)域,例如Kim等[7]將ATC應(yīng)用到飛行器等大型系統(tǒng)的設(shè)計。由于強大的協(xié)調(diào)能力與適應(yīng)性,ATC開始被嘗試應(yīng)用到供應(yīng)鏈管理領(lǐng)域,例如George等[8]的研究涉及供應(yīng)鏈優(yōu)化配置、供應(yīng)鏈網(wǎng)絡(luò)構(gòu)建[9-12]等;Ling等[13]以成本最低為總目標(biāo),構(gòu)造了一個供應(yīng)鏈、工廠、運作車間的3層次ATC模型;黃英杰等[14]將蟻群算法與ATC結(jié)合,為車間調(diào)度問題找出了最優(yōu)解;He等[15]考慮不同的合作方式,引入ATC和多目標(biāo)線性規(guī)劃平衡核心企業(yè)與其子企業(yè)的生產(chǎn)計劃,達到成本最小或服務(wù)水平最優(yōu)的目標(biāo);Li等[16]將系統(tǒng)分為路徑規(guī)劃層、單元規(guī)劃層和作業(yè)規(guī)劃層3個層級,利用ATC技術(shù)求解大規(guī)模Job-Shop調(diào)度優(yōu)化問題;楊江波等[17]針對多車間分布式制造系統(tǒng)調(diào)度優(yōu)化問題,結(jié)合車間實際生產(chǎn)情況,提出一種基于目標(biāo)級聯(lián)法和遺傳算法的層次調(diào)度模型??傊肁TC協(xié)同技術(shù)進行生產(chǎn)規(guī)劃的研究還很少,生產(chǎn)規(guī)劃中的協(xié)同機制和協(xié)同算法還需進一步研究。
供應(yīng)鏈建模的兩種方法中,AAO是解決簡單或復(fù)雜問題最直接的方法,該方法不追求系統(tǒng)的層次劃分與組成,由單一的目標(biāo)和所有約束共同構(gòu)成模型;ATC是典型的層次化建模,其將復(fù)雜問題簡單化,通過層次劃分與協(xié)調(diào)機制求得可行解。與AAO相比,ATC的優(yōu)勢體現(xiàn)如下:①模塊之間的共享信息少,減少了信息收集與傳遞的成本;②可解決分布式的復(fù)雜問題,能夠用于大型系統(tǒng)的設(shè)計;③如果原問題無解,則在偏差容忍度下可以得到松弛解。
基于上述研究,本文考慮成本約束、庫存約束、運輸約束,引入時間維、產(chǎn)品維、工廠維,構(gòu)建出更具復(fù)雜性并與現(xiàn)實貼近的ATC三層次模型解決TFT-LCD產(chǎn)業(yè)鏈的協(xié)同優(yōu)化問題,同時構(gòu)建該問題的AAO模型作為對比。
一個完整的TFT-LCD生產(chǎn)鏈由列陣(Array)、組立(Cell)、模組(Module)3段構(gòu)成,如圖1所示。假設(shè)Array階段有i個工廠,Cell階段有j個工廠,Module階段有k個工廠,各個工廠掌握自己的相關(guān)信息,即工廠的產(chǎn)能、位置、廠與廠之間的運輸費用、產(chǎn)品耗能等。Module是TFT-LCD生產(chǎn)的最后一個環(huán)節(jié),也是與客戶直接接觸的環(huán)節(jié),其在t時刻接到T時刻交付產(chǎn)品P的訂單后,對上游企業(yè)進行生產(chǎn)排程及廠與廠的運輸,以保證在T時刻按時交付訂單,并使整個生產(chǎn)鏈上的費用最低。
假設(shè)如下:
(1)Array階段沒有庫存(實際生產(chǎn)亦如此)。
(2)產(chǎn)品統(tǒng)一標(biāo)識。經(jīng)過3個階段的加工,產(chǎn)品依然可以從本階段追溯上階段的形態(tài)與尺寸。因此,將3個階段的產(chǎn)品都標(biāo)示為m,并引進轉(zhuǎn)化率表示產(chǎn)品在某一階段加工引起的變化。
(3)Module階段接受缺貨懲罰。
(1)下標(biāo)
m表示產(chǎn)品;
t表示計劃期;
I,j,k分別表示Array,Cell,Module各階段的工廠數(shù)量。
(2)參數(shù)
PCAmi表示Array階段工廠i生產(chǎn)產(chǎn)品m的費用;
PCCmj表示Cell階段工廠j生產(chǎn)產(chǎn)品m的費用;
PCMmk表示Module階段工廠k生產(chǎn)產(chǎn)品m的費用;
PTAti表示Array階段工廠i在t時刻的可用生產(chǎn)小時數(shù);
PTCtj表示Cell階段工廠j在t時刻的可用生產(chǎn)小時數(shù);
PTMtk表示Module階段工廠k在t時刻的可用生產(chǎn)小時數(shù);
PTUAmi表示工廠i生產(chǎn)單位產(chǎn)品m所需要的小時數(shù);
PTUCmj表示工廠j生產(chǎn)單位產(chǎn)品m所需要的小時數(shù);
PTUMmk表示工廠k生產(chǎn)單位產(chǎn)品m所需要的小時數(shù);
SCCmj表示單位產(chǎn)品m在工廠j每期的庫存費用;
TTCij表示從工廠i運輸?shù)焦Sj跨越的計劃期;
TTMjk表示從工廠j運輸?shù)焦Sk跨越的計劃期;
TCCmij表示將產(chǎn)品m從工廠i運送到工廠j的單位運輸費用;
TCMmjk表示將產(chǎn)品m從工廠j運送到工廠k的單位運輸費用;
CVCmj表示單位產(chǎn)品m在Cell階段的轉(zhuǎn)化率;
CVMmK表示單位產(chǎn)品m在Module階段的轉(zhuǎn)化率;
SOmk表示產(chǎn)品m在工廠k的缺貨損失。
(3)變量
PAmit表示t期工廠i生產(chǎn)產(chǎn)品m的數(shù)量;
PCmjt表示t期工廠j生產(chǎn)產(chǎn)品m的數(shù)量;
PMmkt表示t期工廠k生產(chǎn)產(chǎn)品m的數(shù)量;
SCmjt表示t期產(chǎn)品m在工廠j的庫存量;
TQCmijt表示t期產(chǎn)品m從工廠i運送到工廠j的數(shù)量;
TQMmjkt表示t期產(chǎn)品m從工廠j運送到工廠k的數(shù)量;
Amkt表示t期產(chǎn)品m在工廠k的缺貨量。
本文構(gòu)建AAO模型作為ATC模型的對比模型,以此評價ATC模型所得解的精確性和有效性。在此,假定一個中央調(diào)控中心掌握供應(yīng)鏈上各個階段各個工廠的所有生產(chǎn)信息,并從供應(yīng)鏈整體最優(yōu)的角度進行建模,AAO模型如下:
(1)
(2)
(3)
?k∈K,t∈T。
(4)
Where
(5)
SCmjt=SCj(t-1)+PCmjt-
(6)
(7)
(8)
PMmkt+amkt=Dmkt;
(9)
m∈M,k∈K,t∈T;
(10)
PAmit,PCmjt,PMmkt,TQCmijt,TQMmjkt,
Amkt,SCmit≥0。
(11)
利用ATC原理,將TFT-LCD生產(chǎn)鏈劃分為3個層級。Psuper為模型的最頂層,負(fù)責(zé)整個生產(chǎn)鏈的協(xié)同優(yōu)化,目標(biāo)是3個階段的總成本和反應(yīng)變量的偏差最??;Psys為模型的中間層,表示上游生產(chǎn)鏈的協(xié)同優(yōu)化,包括Array和Cell階段,目標(biāo)是這兩個階段的總成本和反應(yīng)變量的偏差最小;Psub為模型的最底層,表示單個Array階段的協(xié)同優(yōu)化,目標(biāo)是Array階段的成本和反應(yīng)變量的偏差最小。
進行ATC層級劃分的本質(zhì)是尋找層級之間的聯(lián)系變量與反應(yīng)變量。聯(lián)系變量指上級傳遞給下級,并在下級模塊之間共享的變量,同時下級經(jīng)過分析模塊的計算,向上級回傳相應(yīng)的聯(lián)系變量;反應(yīng)變量指上級傳遞給下級作為下級優(yōu)化目標(biāo)值的變量,同時下級經(jīng)過分析模塊的計算,也會向上級回傳相應(yīng)的反應(yīng)變量。因此,聯(lián)系變量與反應(yīng)變量總是成對出現(xiàn)。
Psuper對整個生產(chǎn)鏈進行優(yōu)化:
(12)
s.t.
(13)
?k∈K,t∈T;
(14)
?m∈M,k∈K,t∈T;
(15)
PMmkt+Amkt=Dmkt,
?m∈M,k∈K,t∈T。
(16)
Where
(17)
其中:目標(biāo)函數(shù)包括整個生產(chǎn)鏈的生產(chǎn)費用、庫存費用和缺貨懲罰費用;式(13)是ATC的協(xié)調(diào)機制的必要條件,也是Super層級(頂層層級)和System層級(中間層級)傳遞聯(lián)系變量TQMmjkt與反應(yīng)變量Cj的作用機理;式(14)表示產(chǎn)能限制;式(15)表示運入平衡;式(16)表示需求平衡。
Psys對上游生產(chǎn)鏈(Array階段和Cell階段)進行優(yōu)化:
(18)
(19)
?j∈J,t∈T;
(20)
?m∈M,j∈J,k∈K,t∈[2,T];
(21)
?m∈M,j∈J,t∈T。
(22)
where
(23)
其中:Psys以Super層級和System層級的聯(lián)系變量與反應(yīng)變量之間的差異最小為目標(biāo);式(19)是ATC的協(xié)調(diào)機制的必要條件,也是Super層級和System層級傳遞聯(lián)系變量TQMmjkt與反應(yīng)變量Cj的作用機理;式(20)表示產(chǎn)能限制;式(21)表示庫存平衡;式(22)表示運入平衡。
Psub對Array階段的工廠進行優(yōu)化:
(24)
s.t.
(25)
?m∈M,i∈I,j∈J,t∈T。
(26)
where
(27)
其中:Psub以System層級和Sub層級的聯(lián)系變量與反應(yīng)變量之間的差異最小為目標(biāo);式(25)為產(chǎn)能約束,即特定時刻t生產(chǎn)產(chǎn)品m所耗費的產(chǎn)能需小于總產(chǎn)能;式(26)為產(chǎn)量平衡約束,因為Cell階段的產(chǎn)品均由Array階段的產(chǎn)品加工而成,而且Array階段處于賣方市場,產(chǎn)品生產(chǎn)出來即可全部賣出,所以任意的工廠i向j廠運輸?shù)漠a(chǎn)品數(shù)量總和為t時刻的產(chǎn)量總和。因為Array階段設(shè)備昂貴,供小于求,所以不存在庫存,也就不存在庫存平衡表達式。
兩個模型所用的參數(shù)完全相同。參數(shù)來自某TFT-LCD生產(chǎn)企業(yè),該企業(yè)在Array,Cell,Module 3個階段各有2個工廠。本文共涉及7(T=7)個計劃期,由于運輸延遲,最早要經(jīng)過一個時間維度,上一階段的產(chǎn)品才能運輸?shù)较乱浑A段作為原材料進行加工。假定Module工廠分別在3~7月份收到訂單,為了滿足這批訂單需要確定Array工廠1~5月份的生產(chǎn)計劃以及Cell工廠2~6月份的生產(chǎn)計劃。
3個階段的生產(chǎn)單位不同,分別為Lot,Sheet,Piece。其中:一個Lot可轉(zhuǎn)化為10個Sheet,一個Sheet可以切割成約2個piece,且只考慮一種產(chǎn)品。此外,為了最大限度地刺激生產(chǎn),設(shè)置了缺貨懲罰成本SOmk=[500,500]。
其他關(guān)鍵參數(shù)如下:
Dmk: [0 0 300 600 1000 500 700;0 0 300 650 800 900 400 ];
PCAmi: [10,12] ;
PCCmj: [1.5,1.4]
PCMmk: [0.9,1];
PTAti: [350 300 300 300 300 300 300;350 300 300 300 300 300 300];
PTCtj: [300 300 200 400 600 400 900;400 300 600 600 400 300 600];
PTMtk: [500 600 1000 600 1000 500 700;500 500 500 700 1000 1000 500];
PTUAmi: [10,10];
PTUCmj: [1.2,1];
PTUMmk: [1,1];
SCCmj: [0.5,0.5];
TTCij: [1 1;1 2];
TTMjk: [1 1;1 1];
TCCmij: [0.2 0.2;0.2 0.1];
TCMmjk: [0.1 0.1;0.1 0.2 ];
CVCmj: [10 10];
CVMmK: [2 2]。
Kim在創(chuàng)立ATC方法時就證明過ATC的兩個重要性質(zhì)——非增(non-ascent)與收斂(convergence)。根據(jù)ATC原理設(shè)計協(xié)調(diào)機制如下:
2.RunPsuper,Psys
3.Do
7.Until
8.converge(Psuper)&& converge(Psys) && converge(Psub)
9.If
11.WUM and go back to step 2
12.else
13.break
其中:converge要求所有變量收斂,即連續(xù)50次迭代后的結(jié)果之差小于給定的偏差(偏差設(shè)定為factor=0.001);consist要求Psys與Psub、Psuper與Psys層級所有對應(yīng)的反應(yīng)變量、聯(lián)系變量之差小于最小容忍度才跳出循環(huán)(最小容忍度theta=0.000 1)。
本文編程的實驗環(huán)境為MATLAB 7.11.0(R2010b),直接利用內(nèi)置函數(shù)fmincon求解非線性規(guī)劃問題,經(jīng)過52 041次循環(huán)迭代,耗費6小時25分41秒得到最終結(jié)果。
(2)反應(yīng)變量的收斂與偏差
從圖9和圖10可以看出,從始至終,的取值大小及收斂速度基本一致,即初始值均為0,隨后斜率趨于平緩;在約30 000次迭代后取值趨于穩(wěn)定,隨后在小范圍內(nèi)劇烈變化。
圖13所示為偏差聚焦在結(jié)束50 000次左右的細(xì)節(jié)放大圖??梢姡铍m已趨于0,但仍然在小范圍劇烈變化。
AAO模型和ATC模型成本結(jié)果對比如表1所示??偟膩砜矗珹TC得到的生產(chǎn)鏈最優(yōu)解與AAO相同,正確率為100%;分解到各個層級上,Super層級產(chǎn)生的缺貨費用、生產(chǎn)成本與AAO結(jié)果的正確率都保持在99.9%以上;System層級產(chǎn)生的運輸費用、庫存費用、生產(chǎn)費用與AA0結(jié)果的正確率都保持在99.9%以上;Sub層級產(chǎn)生的生產(chǎn)成本、運輸成本與AAO結(jié)果的正確率都保持在99.9%以上。
然而,對比每一層級內(nèi)的私有變量,得到的結(jié)果與AAO不盡相同。
(1) 完全相同的情況
ATC和AAO求解結(jié)果完全相同的變量如表2所示,可見二者關(guān)于PAmit,PMmkt,amkt的結(jié)果完全相同。
(2) 存在偏差的情況
如表3和表4所示,AAO和ATC關(guān)于SCmjt和TQCmijt的結(jié)果并不完全相同。此外,結(jié)果不相同的變量還有TQMmjkt和PCmjt。
結(jié)果出現(xiàn)差異的原因分析如下:
(1)方程有多個可行解
雖然AAO和ATC關(guān)于庫存量SCmjt的結(jié)果不同,但是由成本對比可知,AAO和ATC的庫存費用相同。庫存費用=單位庫存費用×庫存數(shù)量(即∑∑∑SCCmj×SCmjt),其中SCCmj與時間t無關(guān),只要庫存總量相同,庫存費用就相等。例如由表3的數(shù)據(jù)得32+18=25+25,0+75≈18+56,可見雖然具體的庫存量SCmjt不同,但是仍然得到相同的庫存成本。
由此可知,AAO和ATC模式下求得的SCmjt都是最優(yōu)可行解。
(2)非嚴(yán)格的整數(shù)規(guī)劃
ATC和AAO的求解利用的都是MATLAB中的fmincon函數(shù),fmincon函數(shù)只能設(shè)定變量的上限和下限,無法規(guī)定變量為整數(shù),本文的所有均通過四舍五入呈現(xiàn),在四舍五入取整過程中,ATC和AAO的結(jié)果也會產(chǎn)生偏差。
(1)結(jié)果正確性
AAO是在參數(shù)變量完全已知的情況下,以費用最小為唯一目標(biāo)得到的最優(yōu)解。本文以AAO得到的結(jié)果作為參照量,評判ATC結(jié)果的正確性。從表1可知,ATC結(jié)果的正確率很高,表現(xiàn)為:①ATC通過循環(huán)迭代,最終得到的最小成本值與AAO相同;②細(xì)化到各個層級,相應(yīng)層級的運輸成本、生產(chǎn)成本、存儲成本、缺貨成本值也與AAO近似;③細(xì)化到單一變量,雖然部分ATC變量的取值與AAO存在偏差,但是經(jīng)過驗證,ATC的取值也是可行的最優(yōu)解(不考慮四舍五入取整導(dǎo)致的偏差)。因此,從結(jié)果正確性的角度評價,ATC得到的結(jié)果真實可靠,可以用于生產(chǎn)鏈規(guī)劃建模。
(2)時間復(fù)雜性
從時間復(fù)雜性的角度看,ATC的效率不高。AAO完成整個模型的運算只需要經(jīng)過126次循環(huán)迭代,耗費7.5 s;而ATC完成整個模型的運算需要經(jīng)過52 041次循環(huán)迭代,耗費6小時25分41秒。跳出循環(huán)要經(jīng)過兩次檢驗,即是否已收斂、聯(lián)系變量和反應(yīng)變量是否一致。本文收斂的判斷條件是所有連續(xù)50次的偏差小于0.001,一致的判斷條件是所有反應(yīng)變量與聯(lián)系變量的偏差均小于0.000 1。從圖3~圖13的收斂狀態(tài)圖可以看到,后期的收斂速度很慢,但是為了滿足設(shè)定值,依然以很小的速度繼續(xù)收斂。因此,整體的循環(huán)時間與偏差容忍度的大小設(shè)定有很大的關(guān)系。
(3)決策自主性
(4)信息私有性
ATC是一種多層級結(jié)構(gòu)協(xié)調(diào)問題的方法,它允許層次結(jié)構(gòu)中各元素自主決策,父代元素可以對子代元素的決策進行協(xié)調(diào)優(yōu)化而獲得問題的整體最優(yōu)解。本文通過對變量的識別與對實際生產(chǎn)鏈的理解,將平面的鏈狀結(jié)構(gòu)轉(zhuǎn)變?yōu)榱Ⅲw的層級結(jié)構(gòu)。所劃分的3個層級,每個層都有自己的私有變量,包括反應(yīng)變量、聯(lián)系變量和其他參數(shù)。例如,System層級包括向Super層級傳遞的TQMmjkt和Cj,向Sub層級傳遞的TQCmijt和Ai;私有的參數(shù)有TCMjk,PCCmj,SCCmj;私有的變量有PCmjt和SCmjt。在實際中,ATC和AAO的最大區(qū)別在于,ATC只需向上下級傳遞共享反應(yīng)變量和聯(lián)系變量,自己保有獨立的私有變量。
由于信息傳遞與收集的成本較高,以及商業(yè)機密的保護性措施,生產(chǎn)鏈上各個企業(yè)能夠互相分享的信息很少,AAO模型建立在假設(shè)所有信息都能共享的情況下,而ATC只需共享少量的聯(lián)系變量和反應(yīng)變量,從這一點來看,ATC方法更符合現(xiàn)實的情境。
本文利用層次化建模的思想對生產(chǎn)鏈的協(xié)同優(yōu)化問題進行求解,設(shè)計了服從ATC的三層級模型。該模型將傳統(tǒng)的鏈狀結(jié)構(gòu)進行重塑,構(gòu)建了層次模型;模型涉及眾多維度,包括產(chǎn)品維、工廠維、時間維,提高了對現(xiàn)實的仿真度;此外,模型包括缺貨懲罰、運輸平衡、庫存平衡、產(chǎn)能限制等生產(chǎn)鏈建模的經(jīng)典約束。
模型模擬了生產(chǎn)鏈上3個階段(包括2間Array工廠,2間Cell工廠,2間Module工廠)在7個時間維度生產(chǎn)一種產(chǎn)品的生產(chǎn)排程,利用AAO得到的最優(yōu)解作為評判ATC結(jié)果的參照解,得到如下結(jié)論:
(1)本文擴展了ATC在供應(yīng)鏈規(guī)劃領(lǐng)域的建模。模型變量主要考慮產(chǎn)品維、工廠維和時間維3個維度,模型約束主要涉及產(chǎn)能約束、庫存平衡和運輸平衡等經(jīng)典約束,該模型很好地擬合了現(xiàn)實的TFT-LCD生產(chǎn)排程情況,并具有一定的復(fù)雜度。
(2)在建模方面,通過研究變量之間的交互性、關(guān)聯(lián)性、共享性,設(shè)計了基于階段成本的層級劃分,將運輸量作為聯(lián)系變量,成本作為反應(yīng)變量。本文將生產(chǎn)鏈鏈狀結(jié)構(gòu)重塑為ATC特有的層級結(jié)構(gòu)的方法,對今后ATC在生產(chǎn)鏈建模領(lǐng)域的應(yīng)用具有參考作用。
(3)驗證了ATC用于生產(chǎn)鏈協(xié)同規(guī)劃問題的正確性。相對于AAO的結(jié)果,ATC所求結(jié)果的正確率很高,在99.9%以上。
(4)相對于AAO模型,ATC具有良好的決策自主性與信息私有性,可以更好地模擬現(xiàn)實情境。