李吉軒 吳洪明
武漢理工大學物流工程學院 武漢 430063
裝配過程是制造業(yè)的重要環(huán)節(jié)。現(xiàn)代制造業(yè)中,裝配作業(yè)工作時長占生產(chǎn)總工作時長普遍達到40%~60%,裝配工作量占生產(chǎn)總工作量的20%~70%。消費者的個性化、定制化、小批量需求導致產(chǎn)品越來越復雜;傳統(tǒng)加工行業(yè)的規(guī)模效應正在進入深度調(diào)整時期,取而代之的是以小批量、多批次、定制化或半定制化的生產(chǎn)特點[1]。柔性生產(chǎn)線具有生產(chǎn)設(shè)備利用率高、生產(chǎn)效率高、生產(chǎn)量穩(wěn)定等特點,其具體體現(xiàn)在一套柔性生產(chǎn)線完成組裝后,其生產(chǎn)用時相較于傳統(tǒng)生產(chǎn)線普遍提高80%[2],其通過生產(chǎn)降級策略與物料糾錯策略實現(xiàn)其對生產(chǎn)量穩(wěn)定。
多品種小批量生產(chǎn)是現(xiàn)階段我國制造業(yè)的主要生產(chǎn)模式之一[3],人機協(xié)作裝配模式正是在這樣的需求下應運而生[4]。其主要特性在于對資源的實時分配、調(diào)度和控制,從而提高工廠的生產(chǎn)率和資源利用率[5]。在人機協(xié)作場景中,生產(chǎn)線的柔性化、彈性化程度更高,機器人與人有機的結(jié)合協(xié)作并共享同一個工作空間。人機協(xié)作的理念是人和智能機器的優(yōu)勢互補,通過人和機器的共同工作來發(fā)揮人與機器的特長。
人機協(xié)作裝配兼具自動化裝配和人工裝配2個部分的特性。人機協(xié)作裝配中的自動化裝配通常包含能在指定區(qū)域完成零件揀選與組裝的協(xié)作機器人以及一個或多個進料器來提供系統(tǒng)所需的裝配部件[6]。人機協(xié)作裝配中的手工裝配主要由工作臺和零件盒組成,這些零件盒分門別類地裝有某一型號所需的裝配部件,工人需要按照特定供需完成部件的揀選與組裝。本文所設(shè)計的人機協(xié)作裝配工作臺如圖1所示。
圖1 協(xié)作機器人揀選工作臺
人機協(xié)作裝配包括標準裝配工作臺、協(xié)作機器人、裝配工人、工件檢測傳感器、動作識別傳感器、機器人控制系統(tǒng)、信息交互系統(tǒng)、機器人工具臺、人員工具臺、零件放置臺、產(chǎn)品放置臺等,與傳統(tǒng)的自動化裝配和人工裝配相比有以下特點:
1)人機協(xié)作裝配的動態(tài)性與復雜性更高 人機協(xié)作裝配中的人工裝配與自動化裝配是共存融合的,兩者相互獨立又相互作用并呈現(xiàn)出一種人機耦合關(guān)系[7]。正是人機協(xié)作系統(tǒng)中人與機器人共享同一個工作空間,使得人機協(xié)作系統(tǒng)的動態(tài)性與復雜性較于傳統(tǒng)裝配過程都更高。
2)人機協(xié)作裝配的能力多樣 人機協(xié)作裝配由于裝配主體包含人與機器人2類主體,因而其兼具人對復雜、不確定性任務的靈活特性與機器人對重復、高負荷的容忍度。
因此,人機協(xié)作裝配兼具手工裝配的靈活與自動化裝配的效率,可以靈活適應市場對高柔性生產(chǎn)的需求。
為了充分考慮裝配工人在人機協(xié)作裝配過程中協(xié)作品質(zhì)的顯著影響,選取傳統(tǒng)評價體系中裝配時間、裝配成本、裝配難度作為靜態(tài)評估指標。
1)裝配時間 人機協(xié)作場景中衡量裝配系統(tǒng)時間,在以往的評價指標體系中是較為復雜的,往往要考慮裝配工具、裝配方向的切換次數(shù),裝配末端的移動距離等因素。且現(xiàn)有研究往往對并行拆卸作業(yè)的時間進行了過度簡化,不考慮任務切換、人類對裝配指令的響應時間。本文將裝配時間分為裝配工具切換時間、裝配部件定位時間、實際裝配作業(yè)時間。
圖2 人機協(xié)作場景下的裝配時間分類
本文評估的單個裝配作業(yè)循環(huán)花費的時間T的定義為
式中:T1、T2分別為人類與協(xié)作機器人完成裝配作業(yè)循環(huán)的時間,其具體參數(shù)值初始值由人機協(xié)作系統(tǒng)的工序計時功能測量實時獲得并動態(tài)修正。
2)裝配成本 本文考慮的裝配成本由固定成本與可變成本構(gòu)成,固定成本C0主要包括勞動力工作報酬與裝配的折舊維修成本,可變成本包括隨時間變動的協(xié)作機器人損耗成本、人工勞動力報酬以及整體系統(tǒng)的運營成本
式中:C0為固定成本,Pm為不同裝配作業(yè)實體的在單位時間內(nèi)的成本折算系數(shù),Tm為不同裝配作業(yè)實體的裝配用時
3)裝配難度 對于人與協(xié)作機器人共同完成的任務而言,盡管人類與協(xié)作機器人均能完成這一任務,但是對于不同的裝配實體而言,其具有不同的裝配難度。例如針對螺栓的旋轉(zhuǎn)擰緊操作而言,協(xié)作機器人可以較為輕松地完成,但對于裝配工人而言并非易事。為了充分體現(xiàn)裝配實體對評價裝配操作難度產(chǎn)生的差異性影響,本文采用加權(quán)求和的方式實現(xiàn)對裝配難度的評估
式中:k0、k1分別為衡量手工裝配難度與自動化裝配難度的權(quán)重,本文通過專家打分法進行確定。
蜂群實現(xiàn)群體智能的最小搜索模型包含3個智能群體:蜜源、被雇傭的蜜蜂和非雇傭蜂,3類行為體通過招募蜜蜂與放棄蜜源2種行為進行要素互動[8]蜂群算法中的角色互換關(guān)系如圖3所示。
圖3 蜂群算法中的角色互換關(guān)系
蜜源:吸引蜜蜂采蜜的地方,相當于優(yōu)化問題的可行解。
被雇傭的蜜蜂:也稱為引領(lǐng)蜂。引領(lǐng)蜂具有與蜜源相同的數(shù)量。引領(lǐng)蜂具有記憶功能,將在輪迭代循環(huán)中搜索到的蜜源進行信息進行存儲,并以一定的概率分享給跟隨蜂。
非雇傭蜂:根據(jù)行為不同具體又可分為跟隨蜂與偵察蜂2種。跟隨蜂:跟隨蜂是根據(jù)引領(lǐng)蜂分享的信息;依據(jù)輪盤賭的方式按照一定概率選擇引領(lǐng)蜂,并對引領(lǐng)蜂附近蜜源進行局部搜索。但由于該行為體的搜索行為具有局部特征,因此其搜索結(jié)果往往處于局部最優(yōu)情況。偵察蜂:偵察蜂主要由跳出超過預設(shè)的循環(huán)次數(shù)或表現(xiàn)不好的采蜜蜂形成。通過重新搜索新蜜源的方式將模型引入具有多樣性的可行解從而保持生物多樣性,從而避免局部最優(yōu)解的產(chǎn)生。蜂群數(shù)量如表1中符號表示。
表1 蜂群算法蜂群數(shù)量命名
步驟1:該算法需要定義有多NPOP個蜜源,蜜源的質(zhì)量(能否吸引蜜蜂過來)相當于函數(shù)的解,在啟發(fā)式算法中通常稱之為適應度值f it。對于NPOP個蜜源,對其所處位置進行感知的數(shù)學表述為
式中:Ld、Ud分別為所求解問題的可行解的下界與上界。
步驟2:引領(lǐng)蜂在蜜源i的領(lǐng)域內(nèi)根據(jù)式(5)進行位置確認并完成蜜源附近位置的局部搜索。如果遇到更好的蜜源則替代當前蜜源
式中:α*為算法中設(shè)置的加速度系數(shù);φ為該行為的擾動系數(shù),其值為[-1,1]均勻分布的隨機數(shù);xjd為其他蜜源位置。
步驟3:根據(jù)輪盤賭規(guī)則計算跟隨蜂選擇引領(lǐng)蜂的概率,輪盤賭中的概率為
基于適應度值完成跟隨蜂分配后,跟隨蜂也在蜜源的領(lǐng)域進行局部搜索。
步驟4:產(chǎn)生偵察蜂跳出局部最優(yōu)。在搜索的過程中,如果蜜源經(jīng)過trial次迭代搜索到達閾值L后還有沒更新為更好的蜜源,該蜜源就會被放棄。此時,偵察蜂取找到一個新的蜜源,偵察蜂的行為可以歸納為
步驟5:比較所有蜂群結(jié)果并記錄最優(yōu)結(jié)果
步驟6:重復步驟2~步驟5,直到算法收斂解的品質(zhì)滿足需求或超過最大迭代次數(shù)。
根據(jù)前文所述的裝配過程建模方法得到的裝配序列可行解如圖4所示。圖4中各個工序從1~N進行編號,箭頭代表著前后2個工序之間存在依賴關(guān)系。工序2、4與工序3、5存在并行關(guān)系,在實際裝配操作過程中可以分別獨立完成工序2、4或工序3、5。
圖4 人機協(xié)作場景中的并行裝配序列可行解
對單個可行裝配序列而言進行對應的編碼,如圖5所示。假設(shè)待裝配產(chǎn)品零部件個數(shù)為N,詳細編碼表如圖5所示,由8×N的矩陣構(gòu)成,第1行對應的是裝配序列可行解中裝配零件的順序序號;第2行對應的是該裝配零件對應的裝配操作執(zhí)行體,其中H代表該裝配操作由人類完成,R代表該裝配操作由機器人完成;第3、4行分別對應著由裝配零件與裝配方式確定的裝配工具、裝配方向;第5至7行分別對應由前4行參數(shù)派生的相對裝配難度、理論裝配時間、理論裝配成本;第8行是基于第5至7行數(shù)據(jù)對應計算生成的種群適應度。
圖5 序列詳細編碼示意圖
雇傭蜂在蜜源附近的搜索階段完成之后,被劃分為3種狀態(tài)類別,即精英蜂、較優(yōu)蜂、淘汰蜂。在進行下一階段中,雇傭蜂招募跟隨蜂進行領(lǐng)域采集,其招募行為在離散空間可表述為
式中:xf為生成的跟隨蜂向量序列,xh為執(zhí)行雇傭操作的雇傭蜂向量序列,xβ、xa為不同于存活的其他雇傭蜂向量序列,rand為迭代隨機選取的步長函數(shù)。
在概率論和統(tǒng)計學中,以Paul Lévy命名的Lévy分布是非負隨機變量的連續(xù)概率分布。這是反伽馬分布(Inverse-Gamma Distribution)的一種特殊情況。這是一個穩(wěn)定的分布[9]。
在不同的優(yōu)化算法研究中,眾多學者利用Lévy飛行(Lévy flight)產(chǎn)生隨機步長。Lévy飛行是一種非高斯分布的隨機過程。這種分布通常用表示,其中參數(shù)β為區(qū)間(0,2)中的1個指數(shù)。從數(shù)學角度來看,Lévy分布的1個數(shù)學公式可寫成
式中:μ和s分別為傳輸參數(shù)和樣本,參數(shù)γ為控制Lévy飛行分布規(guī)模的參數(shù)。
通常,傅里葉變換形式的Lévy分布定義為
式中:α為1個比例參數(shù)。
該積分的解析形式可用于一些特殊情況的計算。值得注意的是,Lévy分布具有冪律重尾(heavy-tailed)性質(zhì)
式(11)表明Lévy分布不只是重尾分布且是肥尾分布的。因呈現(xiàn)肥尾分布,從建模的角度出發(fā),對較為罕見的事件盡管發(fā)生的概率極低,但也有對其進行考慮的必要。較之于指數(shù)分布或正態(tài)分布而言,肥尾分布趨于0的速度是明顯慢于指數(shù)分布和正態(tài)分布的。這意味著基于Lévy分布的Lévy飛行策略生成的跟隨蜂較之于隨機生成的更能兼具局部搜索能力與全局搜索能力。其與基于正態(tài)分布的Browmian motion進行對比,見圖6。
圖6 Lévy飛行與Browmian motion的游走對比圖
由于Lévy飛行增強了算法的全局搜索能力這一特性在本文設(shè)計的人工蜂群算法中賦予了跟隨蜂階段兼顧?quán)徲蛩阉髂芰εc全局搜索能力。其中Lévy飛行的短步長對應的就是跟隨蜂階段較為精細的鄰域搜索能力,從而提高求解精度。然而,較大的步長意味著跟隨蜂跳出局部最優(yōu)解的能力,使得跟隨蜂具有一定隨機可能性去探索更大范圍內(nèi)的蜜源。
差分進化算法(以下簡稱DE算法)主要針對非線性、不可微、高維連續(xù)空間函數(shù)進行最小化求解。DE算法借助于種群個體內(nèi)具有的既相互合作又相互競爭的關(guān)系,從而實現(xiàn)在給定搜索空間內(nèi)對復雜高維問題的求解。算法思想的核心在于其在種群初始化后通過變異、交叉、選擇算子不斷作用于個體直至迭代結(jié)束或滿足最優(yōu)解。對于選擇算子而言,人工蜂群算法通過貪婪選擇策略按照種群適應度高低實現(xiàn)對種群個體選擇。DE算法思想具體和文中人工蜂群算法結(jié)合之處體現(xiàn)在跟隨蜂完成對雇傭蜂領(lǐng)域?qū)崿F(xiàn)局部搜索階段增加的變異、交叉算子之中。針對本文中的求解過程跟隨蜂階段有:
1)變異算子 隨機選擇父代種群中的個體進行線性組合實現(xiàn)新個體的生成。跟隨蜂通過對某些位點進行變異產(chǎn)生,產(chǎn)生方式為
式中:xmiddle為經(jīng)過變異操作生成的中間個體;xold跟隨蜂選擇的雇傭蜂;xb、xa分別為不同于xold的種群個體;F為變異因子,用于控制差分向量差的擾動幅度,為指計算2個向量之間的漢明距離的關(guān)系運算符。
漢明距離指2個向量之間具體數(shù)位上值不同的個數(shù),通常用于比較2個相同長度的二進制字符串,還可以用于普通字符串,通過計算不同字符的數(shù)量來比較它們之間的相似程度。因其簡單易用,被廣泛使用于對二進制編碼進行相似度比較的場合。本文選擇的跟隨蜂通過變異算子生成的操作示意見圖7。
圖7 雇傭蜂與跟隨蜂階段的變異操作示意圖
2)交叉算子 通過對中間個體在各個維度上的分量按照一定規(guī)則隨機重組。本文選取交叉規(guī)則為
同時設(shè)置rand[1,N]這個隨機數(shù)保證在本次操作過程結(jié)束后最少有一個位點變化傳遞給新的跟隨蜂,雇傭蜂與跟隨蜂階段的交叉操作示意見圖8。
圖8 雇傭蜂與跟隨蜂階段的交叉操作示意圖
在算法驗證有效性與性能評估環(huán)節(jié)中,本文將基于二進制編碼的人工蜂群算法、離散空間粒子群算法、改進型遺傳算法和本文設(shè)計的改進的人工蜂群算法進行對比。
相較于單目標優(yōu)化的評價指標而言,評價一個多目標優(yōu)化算法所求得的解的質(zhì)量的指標較為豐富,例如對解的收斂性、廣泛性和均勻性評價。其中對解的廣泛性和均勻性評價具體指的是解集在整個目標空間中的廣泛程度和解集中個體分布的均勻程度。對于一個多目標優(yōu)化算法而言,其有效性主要體現(xiàn)在其收斂于某一特定優(yōu)等解的能力。算法的收斂性反映的是解集與真實Pareto前沿之間的逼近程度。本文選用代際距離(Generational Distance,GD)即得到的解與已知的最優(yōu)解之間的距離作為評價算法優(yōu)劣的主要績效指標。假設(shè)優(yōu)化算法得到的解集為真實的Pareto前沿為GD的具體定義為
式中,考慮到計算過程的復雜程度選取GD距離模數(shù)p=1,此時,di指的是解集A到Pareto前沿的第i個指標的曼哈頓距離。
在本文設(shè)計的多目標評價體系中,裝配時間、裝配成本與相對裝配難度之間度量難度之間存在相互聯(lián)系又互相沖突的關(guān)系,其可行解空間是由3個維度的空間離散點共同組成的。由于對該可行解空間的窮舉遍歷的計算復雜度(O(2n))過于龐大。本文將多個算法取種群數(shù)量為200,迭代500次所經(jīng)歷的所有可行解作為本文的可行解空間進行評價。其中生成的可行解空間與部分Pareto前沿解集如圖9所示。
圖9 可行解空間與部分Pareto前沿解集(圖中標紅部分)
上述優(yōu)化算法中除本文設(shè)計的IABC之外,其余3種多目標優(yōu)化算法,因其輸入?yún)?shù)少、魯棒性強等優(yōu)點被廣泛應用于各類多目標優(yōu)化場景中。在4種算法的對比驗證環(huán)節(jié)中,設(shè)置算法基本參數(shù)如表2所示。
表2 4類多目標優(yōu)化算法的基本參數(shù)設(shè)置
采用相同的種群初始化策略、目標函數(shù)以及Pareto改進策略,并使用上述算法參數(shù)進行的4種算法的對比實驗。此外,考慮到編碼方式不同亦可顯著影響對比實驗的結(jié)果可信度。本文所述的GA算法采用二進制形式編碼并在選擇操作中使用競拍策略進行改進以適應本文多目標優(yōu)化環(huán)境,原算法的交叉、變異環(huán)節(jié)亦使用前文所述的參數(shù)參照前文設(shè)計的規(guī)則進行;本文所述的PSO算法采用二進制形式進行種群編碼并使用漢明距離表示2個個體之間的距離;本文所述的ABC算法為基本的多目標人工蜂群算法并對其中的雇傭蜂與跟隨蜂采取競拍策略進行優(yōu)劣選擇,并對其中的交叉、變異操作采用前文所述的差分進化方法進行;本文所述的IABC算法在原始版本的ABC算法基礎(chǔ)上增加了代際種群調(diào)整策略以及基于Lévy分布的跟隨蜂生成策略。上述4種算法收斂情況取裝配時間維度為例如圖10 所示。
圖10 4種算法的適應度函數(shù)曲線收斂情況
圖10中,4種算法都明顯收斂到某一具體解。在種群規(guī)模一定,算法變異與交叉參數(shù)一致的情況下,IABC明顯優(yōu)于其他3類算法。從適應度的收斂趨勢觀察,PSO算法極易陷入局部最優(yōu),其在迭代20次后,算法陷于停滯不再更新最優(yōu)解;而GA算法的收斂速度要劣于其他算法;4類算法中基于ABC算法改進的IABC算法保持了較好的進化速度同時也保持了跳出局部最優(yōu)解的能力,這一能力的具體體現(xiàn)于其在算法迭代終末期依然具有進化能力。
綜上,在求解結(jié)果的收斂性方面,本文所設(shè)計的IABC算法對于求解此類多目標優(yōu)化算法而言具有有效性。
從代際距離角度出發(fā)更易觀察不同算法的優(yōu)劣程度。本文選取每類算法運行50次所構(gòu)建的可行解空間與Pareto前沿進行參考,計算得到的4類算法種群平均GD值隨迭代次數(shù)的變化曲線如圖11所示。
圖11 4種算法的種群平均GD值收斂曲線
由圖11可以發(fā)現(xiàn)IABC得到平均GD值在迭代400代之后要優(yōu)于其他3類算法,其他算法在400代之后幾乎陷于停滯,而ABC算法求解結(jié)果整體劣于IABC;IABC在較大迭代次數(shù)時能取得較好的結(jié)果。
在相同迭代數(shù)均為300與種群數(shù)為50的前提下,運行50次4類算法獲得求解結(jié)果的種群平均GD值如圖12所示。
圖12 同迭代次數(shù)下4類算法的GD對比箱形圖
由上述箱形圖不難發(fā)現(xiàn),盡管PSO具有極高的求解穩(wěn)定性,但是其代價是巨大的,其求解結(jié)果往往是局部最優(yōu)解。ABC與GA算法相比,其具有更優(yōu)質(zhì)的平均求解質(zhì)量,但是其求解穩(wěn)定性不如GA;在ABC算法基礎(chǔ)改進的IABC算法的穩(wěn)定性明顯優(yōu)于ABC算法且求解結(jié)果品質(zhì)優(yōu)于GA算法。
在求解品質(zhì)方面,本文所設(shè)計的IABC算法對于求解此類多目標優(yōu)化算法而言具有優(yōu)越性。
綜合考慮求解結(jié)果與運行時間的品質(zhì)與穩(wěn)定性,算法參數(shù)應選取種群數(shù)為150、最大迭代數(shù)為300作為算法的運行參數(shù)。圖13為求解得到的人機協(xié)作序列甘特圖。
圖13 求解得到的人機協(xié)作序列甘特圖
1)綜合分析當前裝配作業(yè)形式的發(fā)展趨勢,提出了人機協(xié)作裝配方法,利用協(xié)作機器人輔助人類在工作臺進行裝配作業(yè)。
2)為了實現(xiàn)人機協(xié)作裝配場景中的任務分配,選用人工蜂群算法對裝配過程時間-成本-難度模型進行求解,并提出了基于Lévy分布的跟隨蜂策略與融合差分進化思想的改進局部搜索策略;
3)對比其他3類典型優(yōu)化算法,本文設(shè)計的改進的人工蜂群算法具有較優(yōu)的求解品質(zhì),滿足實際需求。