国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法

      文檔序號:6329951閱讀:257來源:國知局
      專利名稱:一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法
      技術領域
      本發(fā)明涉及一種基于蜂社會自組織模型的車間調(diào)度方法。
      背景技術
      生產(chǎn)調(diào)度是有序組織生產(chǎn)過程,合理安排生產(chǎn)的關鍵問題。通過生產(chǎn)調(diào)度,將生產(chǎn)過程中涉及到的加工資源、物流資源合理分配,提高企業(yè)生產(chǎn)效率和流暢度,并減少生產(chǎn)過程中產(chǎn)生的時間、空間的浪費。對微利時代企業(yè)的發(fā)展具有重要意義?;炝骷庸ぱb配生產(chǎn)是目前汽車行業(yè)、家電行業(yè)等工藝過程離散的產(chǎn)品普遍采用的一種生產(chǎn)模式,也是發(fā)展中的生產(chǎn)模式。在許多以裝配制造為主的生產(chǎn)企業(yè)中,由于各種原因,企業(yè)不但要進行產(chǎn)品總裝,還要進行零部件的加工和裝配,滿足總裝線生產(chǎn)需要。加工裝配車間的生產(chǎn)主要包括作業(yè)型生產(chǎn)和裝配型生產(chǎn)兩類,對應的調(diào)度問題也分為作業(yè)加工車間和流水裝配車間調(diào)度兩類,涵蓋了加工裝配生產(chǎn)的主要過程。其中裝配線生產(chǎn)是混流加工裝配的重要組成部分。裝配線將外協(xié)生產(chǎn)或采購的零部件與加工線生產(chǎn)的零部件在這里通過連續(xù)的生產(chǎn)單元組裝成符合客戶需求的最終產(chǎn)品,如圖1所示。現(xiàn)代裝配生產(chǎn)過程, 在多品種小批量是生產(chǎn)影響下多采用了混流生產(chǎn)的組織方式。混流生產(chǎn)可以提高生產(chǎn)組織的柔性,快速響應市場和客戶需求,減少生產(chǎn)線以及模具、加工成本、運輸成本等投入,有效提高產(chǎn)能。但混流生產(chǎn)在提高系統(tǒng)生產(chǎn)柔性和生產(chǎn)效率的同時,加大了生產(chǎn)過程管理的難度,提高了生產(chǎn)停線、在制品積壓的風險。因此,有效的混流裝配生產(chǎn)調(diào)度成為現(xiàn)代管理研究的熱點。在求解復雜的組合優(yōu)化問題上,群體智能優(yōu)化算法 (Population-basedlntelligent Optimization, ΡΙΟ)是目前的研究熱點。其特征是以群中個體代表問題的可行解,并根據(jù)個體適應度,通過群體間的互動尋優(yōu)逐步得到滿意解。PIO主要分為以遺傳算法(GA)、進化規(guī)劃(EP)、進化策略(EQ等為代表的進化算法 (Evaluation Algorithm,EA)和以蟻群算法(ACO)、微粒群優(yōu)化算法(PSO)等為代表的群智能算法(Swarm htelligence,Si)。其中進化算法提出時間早,應用較為廣泛,特別是遺傳算法,在生產(chǎn)計劃、調(diào)度等組合優(yōu)化問題上已經(jīng)得到了廣泛的應用。群智能算法屬于人工智能范疇,最早由BenLHackwood和Wang于1989年提出,用于描述離散自然或人工自組織系統(tǒng)的協(xié)作過程。在1999年,Bonbeau、Dorigo和Theraulaz拓展了這個概念群智能不但用于描述群體之間的協(xié)作行為,而且任何受昆蟲群體或其他動物群集的協(xié)作行為激發(fā)而進行的算法設計或分布式的問題解決策略設計過程均屬于群智能?;诜渖鐣越M織模型的群智能算法是一類新興的優(yōu)化算法,算法利用蜂群覓食的社會行為模型,將蜂群覓食行為映射到組合優(yōu)化問題中,通過蜂群自組織(Stigimergy) 協(xié)調(diào)過程,實現(xiàn)問題的求解。keley T.D.于1995年最早提出了蜂群的群體行為模型。隨后Theraulaz G等根據(jù)蜜蜂通過內(nèi)部反應閾值和環(huán)境刺激信號進行的后代覓食工作模型。 2001年Luci0 P和rTeodorovid D在生物學研究和蜂群行為模型研究基礎上,首次應用蜜蜂協(xié)作行為求解組合優(yōu)化問題,并提出了蜂群優(yōu)化(Bee Colony Optimization,BC0) 0此后,一系列基于蜂群模型的優(yōu)化算法相繼提出,研究較多的有Karaboga D于2005年提出的人工蜂群算法(ArtificialBee Colony, ABC)用于求解連續(xù)優(yōu)化問題;Pham D. T.于2006年提出的蜜蜂算法(Bee Algorithm,ΒΑ)求解復雜連續(xù)優(yōu)化問題。此外,還有Abbas提出的基于蜜蜂婚配原理的MBO模型、Wedde等圍繞覓食區(qū)域概念提出的蜂巢算法(BeeHive) ,Drias 等基于可滿足性問題提出的蜂群優(yōu)化(Bee Swarm Optimization)算法、Yang等提出的虛擬蜜蜂算法(Virtual Bee Algorithm,VBA)等。基于蜂社會模型的車間調(diào)度問題研究現(xiàn)主要有,作業(yè)車間調(diào)度方面,李端明等在(基于人工蜂群算法求解不同尺寸工件單機批調(diào)度問題,2009)采用ABC求解不同尺寸工件單機批調(diào)度問題;Pham D.T.等在(The Bees Algorithm, ANovel Toolfor Complex Optimisation Problems, 2006)采用 BA 求解了單機調(diào)度問題;Chin SoonChong 等在 (Using a bee colony algorithm for neighborhood search in job shopscheduling problems,2007 禾口 A bee colony optimization algorithm to job shopscheduling, 2006)中將BCO與其他啟發(fā)式規(guī)則結合求解了作業(yè)車間調(diào)度問題;Wong Li-Pei等在(Bee colony optimisation algorithm with big valley landscapeexploitation for job shop scheduling problems,2010)中將改進鄰域搜索的BCO應用與作業(yè)車間調(diào)度問題; Li Jun-qing 等在(A Hybrid Artificial Bee ColonyAlgorithmfor Flexible Job Shop Scheduling Problems, 2011)中釆用了 HABC算法求解了柔性作業(yè)車間調(diào)度問題。流水車間調(diào)度方面,有 Pan Quan-ke 等在(A discrete artificial bee colonyalgorithm for the lot-streaming flow shop scheduling problem,2011)中米用 ABC算法求解了批量流水線調(diào)度問題。上述研究對所解決的問題普遍具有較好的求解效果,證明了蜂社會模型算法在調(diào)度問題應用上相比其他群智能算法快捷、全局搜索能力高的特點。但優(yōu)化方法多針對傳統(tǒng)調(diào)度問題,并且BCO方法相對于ABC算法速度慢,易陷入局部最優(yōu),而ABC算法也存在鄰域搜索能力差等缺點,單一的算法難以解決復雜的實際調(diào)度問題,并存在搜索精度不高,對大規(guī)模調(diào)度問題求解效率低的問題,并且在裝配線調(diào)度中也未有系統(tǒng)性的調(diào)度方法。

      發(fā)明內(nèi)容
      為了克服已有混流裝配生產(chǎn)調(diào)度控制方法的速度慢,易陷入局部最優(yōu)、鄰域搜索精度不高、求解效率較低、控制效果差的不足,本發(fā)明提供一種速度較快、有效避免陷入局部最優(yōu)、鄰域搜索精度高、求解效率高、控制效果良好的基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法。本發(fā)明解決其技術問題所采用的技術方案是 一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,所述混流裝配生產(chǎn)調(diào)度控制方法包括以下步驟步驟1,參數(shù)初始化根據(jù)混流裝配生產(chǎn)調(diào)度問題規(guī)模設定算法參數(shù),所述參數(shù)包括種群規(guī)模SN、全局控制參數(shù)limit、最優(yōu)控制參數(shù)bestlimit和初始鄰域參數(shù)S ;步驟2,種群初始化針對混流裝配線調(diào)度的問題特征,初始化函數(shù)選擇BCO方法初始雇傭蜂群,隨機+NEH方法初始觀察蜂群;步驟3,鄰域規(guī)模調(diào)整根據(jù)初始規(guī)模和算法進程,動態(tài)調(diào)整鄰域的搜索規(guī)模;
      步驟4,雇傭蜂算法遍歷所有雇傭蜂群并對每一個雇傭蜂執(zhí)行雇傭蜂算法,當雇傭蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換雇傭蜂;步驟5,觀察蜂算法遍歷所有觀察蜂群并對每一個觀察蜂執(zhí)行觀察蜂算法,當觀察蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換觀察蜂;步驟6,最優(yōu)控制算法,對雇傭蜂種群和觀察蜂群執(zhí)行最優(yōu)控制算法,置換種群中重復的個體,其中,雇傭蜂種群和觀察蜂種群的最優(yōu)控制過程為步驟6. 1. 1,計算種群中最優(yōu)解的數(shù)量bestnum ;步驟6. 1. 2,如果bestnum > bestlimit,則i = i+Ι并繼續(xù),否則算法結束;步驟6. 1.3,隨機選擇兩個最優(yōu)解beel與bee2,如果beel與bee2編碼不相同則繼續(xù)步驟6. 1.4,否則跳至步驟6. 1.6 ;步驟6. 1. 4,對beel與bee2進行beecross操作,四個Index變量為隨機產(chǎn)生的位置,beel與bee2通過序列中隨機產(chǎn)生的子序列與對方交換并去掉重復部分得到兩個新解 finalbeel 與 finalbee2 ;步驟6. 1. 5,判斷,如果beel與bee2仍為最優(yōu),則繼續(xù),否則跳至步驟6. 1. 7 ;步驟6. 1. 6,對beel與bee2分別進行偵察蜂算法,即采用隨機搜索的初始化方法產(chǎn)生一個隨機解,并替代原有的個體;步驟6. 1. 7,如果 i < (bestnum-bestlimit)/2,跳至步驟 6. 1. 3步驟6. 1. 8,對剩余所有最優(yōu)解做模擬退火操作;步驟7,判斷是否滿足maxcycle迭代終止條件,滿足則終止,否則重復步驟3 步馬聚7 ο進一步,所述步驟2中,針對雇傭蜂群和觀察蜂群分別建立基于BCO以及NEH+隨機的混合方法產(chǎn)生初始種群,(2. 1)雇傭蜂初始化步驟如下步驟2. 1. l,step = st印+1,并按序取一個雇傭蜂,從未選擇的工件集中選擇工件并更新序列編碼;步驟2. 1.2,判斷是否遍歷所有雇傭蜂,未完成則重復步驟2. 1. 1,否則繼續(xù);步驟2. 1.3,在雇傭蜂中重新按序取一只雇傭蜂,判斷是否滿足概率,概率由公式 1得到,滿足則繼續(xù)步驟2. 1. 4,否則跳至步驟2. 1. 5 ;步驟2. 1. 4,從余下雇傭蜂中輪盤賭選擇一個解替代當前解;步驟2. 1.5,判斷是否遍歷所有雇傭蜂,滿足則繼續(xù)步驟2. 1.6,否則跳轉(zhuǎn)至步驟 2. 1. 3 ;步驟2. 1. 6,判斷st印是否等于工序數(shù),滿足則結束,否則跳轉(zhuǎn)至步驟2. 1. 1 ;步驟2. 1.7,為雇用蜂群初始化數(shù)組Iimitarrayl (),數(shù)組長度SN/2,記錄每個雇傭蜂未更新代數(shù);pdc =e-(H)公式 ι .其中st印從1到SN/2取值,當前雇傭蜂丟棄概率Pd。根據(jù)公式1取值,其中f Ubest 為當前種群最好適應度,fit。為當前雇傭蜂適應度。(2. 2)觀察蜂NEH+隨機方法初始化首先將所有工件按總加工時間遞減排序,選擇前兩個工件經(jīng)比較保留完成時間最短的序列;其次,將第三個工件插入序列中的各個位置,同樣保留完成時間最短序列;最后,將剩余工件重復上步操作,得到一個可行解,將此可行解插入到雇用蜂群中,蜂群其他個體則采用隨機方法生成,具體圖過程為步驟2. 2. 1計算所有工件的總加工時間,并按時間遞減排序;步驟2. 2. 2選擇排在序列頂端的第一個工件形成編碼,Solution^),其中i = 1 表示編碼長度,將選擇的工件從工件序列中剔除;步驟2. 2. 3從工件序列中選擇排在頂端的工件,將工件插入Solution(i)中各個位置形成i+Ι個solution,根據(jù)適應度保留最好的記為solution (i+1),將該工件從工件序列剔除;步驟2. 2. 4判斷工件序列是否為空,如果是則進入步驟2. 2. 5,否則跳轉(zhuǎn)至步驟 2.2.4;步驟2. 2. 5 隨機生成(SN/2-1)個 solution ;步驟2. 2. 5為種群初始化數(shù)組limitarray2 (),數(shù)組長度SN/2,記錄觀察蜂個體未更新代數(shù)。再進一步,所述步驟4中,所述雇傭蜂算法的具過程如下步驟4. 1,順序選擇一個雇傭蜂EB1,并判斷是否是群中最優(yōu)解,滿足則跳至步驟 4. 3,否則繼續(xù);步驟4. 2,基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為EB2,跳至步驟4. 9 ;步驟4. 3,對EBl進行模擬退火操作,設定SA初溫、未溫以及退溫系數(shù);步驟4. 4,再次對基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為 EB2 ;步驟4. 5,比較EBl與EB2,如果EB2劣于EBl則繼續(xù)步驟4. 6,否則跳至步驟4. 7步驟4. 6,比較產(chǎn)生(0 1)隨機數(shù)并與概率P比較,P服從公式3,如果隨機數(shù)小于概率則繼續(xù)步驟7,否則跳至步驟8 ;P = exp (- (fit (EB2) -fit (EBl)))公式 3步驟4· 7,EBl = EB2 ;步驟4. 8,根據(jù)公式4、公式5更新T與S’如果T < Tend,則繼續(xù)步驟4. 9,否則重復步驟4. 4-4. 8 ;T = kXTend公式 4S' = ceiKkXS')公式 5步驟4. 9,貪婪法則比較EBl與冊2,如果EB2不優(yōu)于冊1,則limitarrayl (i)= limitarrayl (i)+l, i表示EBl序列號,否則跳至步驟4. 11 ;步驟4. 10,如果limitarrayl (i) = limit,調(diào)用偵察蜂算法替換EB1,并跳至步驟 4. 12,否則直接跳至步驟4. 12 ;步驟4. 11,EBl = EB2,并且 limitarrayl (i) = 0 ;步驟4. 12,是否遍歷所有雇傭蜂,即如果i = SN/2,則算法結束,否則跳至步驟 4. 1。更進一步,所述步驟5中,所述觀察蜂算法的具過程如下
      步驟5. 1,順序選擇一個觀察蜂OBl,根據(jù)適應度輪盤賭選擇雇傭蜂EBl ;步驟5. 2,貪婪法則比較OBl與冊1,如果EBl不優(yōu)于0B1,貝丨J limitarray2 (j)= limitarray2(j)+l, j表示OBl序列號,否則跳至步驟5. 4 ;步驟5. 3,如果limitarray2(j) = limit,調(diào)用偵察蜂算法替換0B1,并跳至步驟 5,否則直接跳至步驟5. 5;步驟5. 4,OBl = EB1,并且 limitarray2(i) = 0;步驟5. 5,是否遍歷所有觀察蜂,即如果j = SN/2,則算法結束,否則跳至步驟5. 1。本發(fā)明的技術構思為自然界中的蜂群在搜索到食物源后,會回到蜂巢中通過搖擺舞向其他工蜂傳遞食物信息,并帶領更多工蜂回到食物源采集食物。Karaboga D根據(jù)蜜蜂的這種社會性行為建立了蜂群覓食行為的最小化模型,并在此基礎上提出了人工蜂群算法。模型包含食物源、雇傭蜂、觀察蜂和偵察蜂四個組件。映射到優(yōu)化問題中,食物源代表問題的可行解,食物源的豐裕度則對應解的質(zhì)量。蜂群分為雇傭蜂和觀察蜂,在特定的時段, 兩種蜂群中的部分個體可轉(zhuǎn)變?yōu)閭刹旆浠蚧ハ噢D(zhuǎn)化。在初始時期,所有蜜蜂均為偵察蜂,在蜂巢附近隨機搜尋食物源(可行解)?;氐椒涑埠螅總€偵察蜂根據(jù)各自持有可行解的質(zhì)量選擇成為雇傭蜂或觀察蜂。雇傭蜂回到原食物源繼續(xù)搜索,觀察蜂則留守蜂巢。當雇傭蜂再次回到蜂巢后,觀察蜂根據(jù)一定概率接受雇傭蜂的招募,選擇跟隨雇傭蜂或取代雇傭蜂。 如果雇傭蜂經(jīng)過一定次數(shù)搜尋后,未能找到更好的食物源,則放棄當前食物源成為偵察蜂, 隨機搜尋新的食物源。圖2給出了蜂群的基本工作過程。圖2中偵察蜂SB1、SB2搜索到食物源后回到蜂巢分別轉(zhuǎn)變?yōu)楣蛡蚍銭Bl和觀察蜂UB1。其中,EBl根據(jù)食物源A找到了鄰域食物源B,比較后選擇了 B,并回到蜂巢在舞蹈區(qū)與UBl互換信息,UBl探訪了 B的鄰域食物源C,并比較了 B、C的豐裕度,如果B較優(yōu),EBl會根據(jù)B繼續(xù)搜索,進而發(fā)現(xiàn)D,反之,EBl跟隨UB1,從而發(fā)現(xiàn)E ;EB2在經(jīng)過前期反復搜尋,在搜索到G后,沒有招募到觀察蜂,繼續(xù)回到原來位置搜索;EB3在I處的搜索歷經(jīng)多次沒有改善,放棄I并轉(zhuǎn)化為偵察蜂SB3。本發(fā)明的有益效果主要表現(xiàn)在采用基本人工蜂群算法作為算法主體架構,建立了基于BCO和NEH的群體初始化算法提高算法初始種群質(zhì)量,建立了變鄰域的鄰域搜索算法提高算法搜索精度,建立了最優(yōu)控制算法提高了種群多樣性,基于模擬退火算法優(yōu)化了雇傭蜂算法,簡化并優(yōu)化了觀察蜂算法,增加了算法的求解效率和準確度,對混流裝配車間生產(chǎn)提供了一種系統(tǒng)性的優(yōu)化方法。


      圖1是裝配線生產(chǎn)過程的示意圖。圖2是蜂群工作模型圖。圖3是改進人工蜂群算法總體流程圖。圖4是BCO方法流程圖。圖5是雇傭蜂算法流程圖。圖6是最優(yōu)控制算法流程圖。圖7是Beecross過程的示意圖。
      具體實施方式
      下面結合附圖對本發(fā)明作進一步描述。參照圖1 圖7,一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法, HBCA算法從總體上分為初始化算法(NEH初始算法、BCO初始算法)、雇傭蜂算法、觀察蜂算法、偵察蜂算法和最優(yōu)控制算法五個子算法,包含5個參數(shù),分別是種群規(guī)模SN,迭代次數(shù) maxcycle、全局調(diào)節(jié)參數(shù)limit、最優(yōu)控制參數(shù)bestlimit、初始鄰域規(guī)模S,參照圖3,其總體上的技術步驟如下步驟1,參數(shù)初始化,根據(jù)問題規(guī)模設定算法參數(shù)。算法主要參數(shù)為種群規(guī)模SN、 全局控制參數(shù)limit、最優(yōu)控制參數(shù)bestlimit和初始鄰域參數(shù)S。通過標準benchmark庫算例實驗驗證,對于小規(guī)模問題種群數(shù)可取50-100,limit取值6較優(yōu);對于中大規(guī)模問題, 種群規(guī)??扇?00,limit取值8較優(yōu)。Bestlimit均取值為pop/6較優(yōu),初始鄰域S均取值η/2較優(yōu)。步驟2,種群初始化,針對混流裝配線調(diào)度的問題特征,初始化函數(shù)選擇隨機+NEH 方法。具體方法見5. 3. 2中詳細設計。步驟3,鄰域規(guī)模調(diào)整,根據(jù)初始規(guī)模和算法進程,動態(tài)調(diào)整鄰域的搜索規(guī)模;步驟4,雇傭蜂算法,遍歷所有雇傭蜂群并對每一個雇傭蜂執(zhí)行雇傭蜂算法,當雇傭蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換雇傭蜂,雇傭蜂與偵察蜂具體步驟見5. 3. 3與 5. 3.6中的說明。步驟5,觀察蜂算法,遍歷所有觀察蜂群并對每一個觀察蜂執(zhí)行觀察蜂算法,當觀察蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換觀察蜂。步驟6,最優(yōu)控制算法,對雇傭蜂種群和觀察蜂群執(zhí)行最優(yōu)控制算法,置換種群中重復的個體,提高種群多樣性。步驟7,判斷迭代條件,判斷是否滿足maxcycle迭代終止條件,滿足則終止,否則重復步驟3-7。種群編碼與解碼對于混流加工裝配車間,MBCA采用加工序列的串行編碼方式, 如7個產(chǎn)品的加工序列即為{5,7,3,2,4,1,6},產(chǎn)品按編號依次裝配。解碼階段,根據(jù)序列中對應的數(shù)字順序即可得到產(chǎn)品投產(chǎn)的排列順序。種群初始化過程在混流裝配調(diào)度的種群初始化中,針對雇傭蜂群和觀察蜂群分別建立基于BCO以及NEH+隨機的混合方法產(chǎn)生初始種群,提高初始種群質(zhì)量和多樣性。(2. 1)其中雇傭蜂初始化步驟如下步驟2. 1. l,step = st印+1,并按序取一個雇傭蜂,從未選擇的工件集中選擇工件并更新序列編碼;步驟2. 1. 2,判斷是否遍歷所有雇傭蜂,未完成則重復步驟2. 1. 1,否則繼續(xù);步驟2. 1.3,在雇傭蜂中重新按序取一只雇傭蜂,判斷是否滿足概率,概率由公式 1得到,滿足則繼續(xù)步驟2. 1. 4,否則跳至步驟2. 1. 5 ;步驟2. 1. 4,從余下雇傭蜂中輪盤賭選擇一個解替代當前解;步驟2. 1.5,判斷是否遍歷所有雇傭蜂,滿足則繼續(xù)步驟2. 1.6,否則跳轉(zhuǎn)至步驟 2. 1. 3 ;步驟2. 1. 6,判斷st印是否等于工序數(shù),滿足則結束,否則跳轉(zhuǎn)至步驟2. 1. 1 ;步驟2. 1.7,為雇用蜂群初始化數(shù)組Iimitarrayl (),數(shù)組長度SN/2,記錄每個雇傭蜂未更新代數(shù);pdc =e-(H)公式 ι .圖5描述了 BCO方法流程圖,其中step從1到SN/2取值,當前雇傭蜂丟棄概率 Pd。根據(jù)公式1取值,其中fitbest為當前種群最好適應度,fit。為當前雇傭蜂適應度。其具體步驟為(2. 2)觀察蜂NEH+隨機方法初始化步驟如下在NEH方法中,首先將所有工件按總加工時間遞減排序,選擇前兩個工件經(jīng)比較保留完成時間最短的序列;其次,將第三個工件插入序列中的各個位置,同樣保留完成時間最短序列;最后,將剩余工件重復上步操作,得到一個可行解,將此可行解插入到雇用蜂群中,蜂群其他個體則采用隨機方法生成。步驟2. 2. 1計算所有工件的總加工時間,并按時間遞減排序;步驟2. 2. 2選擇排在序列頂端的第一個工件形成編碼,Solution^),其中i = 1 表示編碼長度,將選擇的工件從工件序列中剔除;步驟2. 2. 3從工件序列中選擇排在頂端的工件,將工件插入Solution(i)中各個位置形成i+Ι個solution,根據(jù)適應度保留最好的記為solution (i+1),將該工件從工件序列剔除;步驟2. 2. 4判斷工件序列是否為空,如果是則進入步驟2. 2. 5,否則跳轉(zhuǎn)至步驟 2. 2. 4 ;步驟2. 2. 5 隨機生成(SN/2-1)個 solution ;步驟2. 2. 5為種群初始化數(shù)組limitarray2 (0,數(shù)組長度SN/2,記錄觀察蜂個體未更新代數(shù)。雇傭蜂算法過程為雇傭蜂承擔了優(yōu)秀解的搜索任務。在MBCA中建立了一種隨迭代過程變化搜索區(qū)域范圍的變鄰域搜索算法,雇傭蜂在給定內(nèi)范圍鄰域進行搜索并更新種群。在搜索區(qū)域的設定上,首先設定一個搜索范圍S,則當前迭代次數(shù)對應的鄰域范圍服從公式2 S' = ceil (SX (1-cycle/(literation+1)))公式 2Iiteration表示迭代次數(shù),cycle表示當前迭代代數(shù),ceil表示對括號中內(nèi)容向下取整。為保證迭代末期的有效鄰域范圍,設定S’不小于5。區(qū)別于定鄰域搜索的固定搜索范圍,變鄰域搜索的鄰域規(guī)模在初始值S的基礎上隨迭代過程不斷變小,即越到算法執(zhí)行過程的后期,搜索范圍越窄。在變鄰域的支持下,算法初期可提高算法的全局尋優(yōu)能力, 算法后期可加快算法的收斂速度,從總體上提高了算法的執(zhí)行效率。鄰域搜索中的鄰域解產(chǎn)生方法采用交叉變異策略(Swap),對于混流裝配問題,隨機選取編碼序列中兩個位置并交換對應的編碼值得到新個體。雇傭蜂算法的具體流程如圖6,步驟描述如下步驟4. 1,順序選擇一個雇傭蜂EB1,并判斷是否是群中最優(yōu)解,滿足則跳至步驟 4. 3,否則繼續(xù);步驟4. 2,基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為EB2,跳至步驟4. 9 ;步驟4. 3,對EBl進行模擬退火操作,設定SA初溫、未溫以及退溫系數(shù);步驟4. 4,再次對基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為
      11EB2 ;步驟4. 5,比較EBl與EB2,如果EB2劣于EBl則繼續(xù)步驟4. 6,否則跳至步驟4. 7步驟4. 6,比較產(chǎn)生(0 1)隨機數(shù)并與概率P比較,P服從公式3,如果隨機數(shù)小于概率則繼續(xù)步驟7,否則跳至步驟8 ;步驟4. 7,EBl = EB2 ;步驟4. 8,根據(jù)公式4、公式5更新T與S’如果T < Tend,則繼續(xù)步驟4. 9,否則重復步驟4. 4-4. 8 ;步驟4. 9,貪婪法則比較EBl與冊2,如果EB2不優(yōu)于冊1,則limitarrayl (i)= limitarrayl (i)+l, i表示EBl序列號,否則跳至步驟4. 11 ;步驟4. 10,如果limitarrayl (i) = limit,調(diào)用偵察蜂算法替換EB1,并跳至步驟 4. 12,否則直接跳至步驟4. 12 ;步驟4. 11,EBl = EB2,并且 limitarrayl (i) = 0 ;步驟4. 12,是否遍歷所有雇傭蜂,即如果i = SN/2,則算法結束,否則跳至步驟 4. 1。觀察蜂算法的過程為MBCA的雇傭蜂算法中,因為變鄰域搜索已增加了雇用蜂群搜索廣度,模擬退火算法增加了雇用蜂群優(yōu)秀解的搜索深度,已有效提高了算法的尋優(yōu)能力。因此,觀察蜂在選中雇傭蜂后不再進行二次搜索,僅根據(jù)貪婪法則進行更新,保持種群的優(yōu)秀個體;同時,在觀察蜂群中引入數(shù)組limitarray2,記錄各個觀察蜂群連續(xù)未更新代數(shù)。當觀察蜂在limitarray2中對應數(shù)值滿足limit,觸發(fā)偵察蜂算法替換該觀察蜂。其具體步驟如下步驟5. 1,順序選擇一個觀察蜂OBl,根據(jù)適應度輪盤賭選擇雇傭蜂EBl ;步驟5. 2,貪婪法則比較OBl與冊1,如果EBl不優(yōu)于0B1,貝丨J limitarray2 (j)= limitarray2(j)+l, j表示OBl序列號,否則跳至步驟5. 4 ;步驟5. 3,如果limitarray2(j) = limit,調(diào)用偵察蜂算法替換0B1,并跳至步驟 5,否則直接跳至步驟5. 5;步驟5. 4,OBl = EB1,并且 limitarray2(i) = 0;步驟5. 5,是否遍歷所有觀察蜂,即如果j = SN/2,則算法結束,否則跳至步驟5. 1。最優(yōu)控制算法的過程為種群相似度過大會引起早熟現(xiàn)象,算法中雖然引入了 limit對種群個體進行控制,但經(jīng)過雙種群協(xié)同優(yōu)化后,種群最優(yōu)解擴展速度快,限制了算法的全局搜索能力。因此,設計了最優(yōu)控制算法用于減少兩種群中最優(yōu)解的重復度。以雇用蜂群為例算法流程如圖7,具體過程為步驟6. 1. 1計算種群中最優(yōu)解的數(shù)量bestnum ;步驟6. 1. 2如果bestnum > bestlimit,則i = i+Ι并繼續(xù),否則算法結束;步驟6. 1. 3隨機選擇兩個最優(yōu)解beel與bee2,如果beel與bee2編碼不相同則繼續(xù)步驟6. 1.4,否則跳至步驟6. 1.6 ;步驟6. 1.4對beel與bee2進行beecross操作,四個hdex變量為隨機產(chǎn)生的位 P = exp (- (fit (EB2) -fit (EBl)))
      公式3T = kXTendS' = ceil(kXS')
      公式4 公式5
      參數(shù)種群規(guī)模50,迭代次數(shù)200,limit取6,bestlimit取pop/6,初始鄰域規(guī)模S =11。實施例以最短完工時間為目標,分別比較是否包含考慮切換時間的問題。其中包含切換時間所得最小生產(chǎn)循環(huán)序列之一為{AAAABEBBCDEBBDDCEBBEAA},僅考慮加工時間最小生產(chǎn)循環(huán)序列之一為{AAAABBEBCEBDBDDEBCBEAA},按照該序列連續(xù)加工20個循環(huán)即可完成日加工任務。采用專利方法可以順利解決混流裝配車間的調(diào)度排序問題,并且在求解效率上有不同程度的提升,系統(tǒng)、一致的方法也便于執(zhí)行與管理。對混流裝配生產(chǎn)的管理規(guī)劃具有明顯幫助。
      置,beel與bee2通過序列中隨機產(chǎn)生的子序列與對方交換并去掉重復部分得到兩個新解 finalbeel 與 finalbee2 ;步驟6. 1. 5判斷,如果beel與bee2仍為最優(yōu),則繼續(xù),否則跳至步驟6. 1. 7 ;步驟6. 1. 6對beel與bee2分別進行偵察蜂算法;步驟6. 1. 7 如果 i < (bestnum-bestlimit)/2,跳至步驟 6. 1. 3步驟6.1.8對剩余所有最優(yōu)解做模擬退火操作;觀察蜂種群最優(yōu)控制過程采用與雇傭蜂同樣的操作步驟。經(jīng)過最優(yōu)控制算法操作后,群體的最優(yōu)個體必然控制在bestlimit之內(nèi)。為提高優(yōu)秀蜂群的搜索能力,對未選入交叉操作的剩余個體采用模擬退火算法優(yōu)化,同時為平衡搜索效率,此處模擬退火算法中鄰域產(chǎn)生法則采用單次交叉的方法。經(jīng)過最優(yōu)控制算法,控制了種群中最優(yōu)解數(shù)量,在保證不丟失最優(yōu)解的前提下增加了種群多樣性,提高了算法的全局搜索性能。偵察蜂算法的過程為偵察蜂算法scoutO采用隨機搜索的初始化方法產(chǎn)生一個隨機解,并替代原有的個體。實例某電機裝配車間總裝線C采用混流生產(chǎn)方式,該線裝配5種產(chǎn)品,含10個工作站,日計劃產(chǎn)量分別為A品120臺、B品140臺、C品40臺、D品60臺、E品80臺,切換時間為5??傻米钚∩a(chǎn)循環(huán)為6A,7B,2C,3D,4E,共22個工件。各產(chǎn)品對應工站加工時間如表1。表1工件加工時間表
      權利要求
      1.一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,其特征在于所述混流裝配生產(chǎn)調(diào)度控制方法包括以下步驟步驟1,參數(shù)初始化根據(jù)混流裝配生產(chǎn)調(diào)度問題規(guī)模設定算法參數(shù),所述參數(shù)包括種群規(guī)模SN、全局控制參數(shù)limit、最優(yōu)控制參數(shù)bestlimit和初始鄰域參數(shù)S ;步驟2,種群初始化針對混流裝配線調(diào)度的問題特征,初始化函數(shù)選擇BCO方法初始雇傭蜂群,隨機+NEH方法初始觀察蜂群;步驟3,鄰域規(guī)模調(diào)整根據(jù)初始規(guī)模和算法進程,動態(tài)調(diào)整鄰域的搜索規(guī)模; 步驟4,雇傭蜂算法遍歷所有雇傭蜂群并對每一個雇傭蜂執(zhí)行雇傭蜂算法,當雇傭蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換雇傭蜂;步驟5,觀察蜂算法遍歷所有觀察蜂群并對每一個觀察蜂執(zhí)行觀察蜂算法,當觀察蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換觀察蜂;步驟6,最優(yōu)控制算法,對雇傭蜂種群和觀察蜂群執(zhí)行最優(yōu)控制算法,置換種群中重復的個體,其中,雇傭蜂種群和觀察蜂種群最優(yōu)控制過程均為 步驟6. 1. 1,計算種群中最優(yōu)解的數(shù)量bestnum;步驟6. 1. 2,如果bestnum > bestlimit,則i = i+Ι并繼續(xù),否則算法結束; 步驟6. 1. 3,隨機選擇兩個最優(yōu)解beel與bee2,如果beel與bee2編碼不相同則繼續(xù)步驟6. 1.4,否則跳至步驟6. 1.6 ;步驟6. 1.4,對beel與bee2進行beecross操作,四個Index變量為隨機產(chǎn)生的位置,beel與bee2通過序列中隨機產(chǎn)生的子序列與對方交換并去掉重復部分得到兩個新解 finalbeel 與 finalbee2 ;步驟6. 1. 5,判斷,如果beel與bee2仍為最優(yōu),則繼續(xù),否則跳至步驟6. 1. 7 ; 步驟6. 1.6,對beel與bee2分別進行偵察蜂算法,即采用隨機搜索的初始化方法產(chǎn)生一個隨機解,并替代原有的個體;步驟 6. 1.7,如果丨 < (bestnum-bestlimit)/2,跳至步驟 6. 1.3 步驟6. 1. 8,對剩余所有最優(yōu)解做模擬退火操作;步驟7,判斷是否滿足maxcycle迭代終止條件,滿足則終止,否則重復步驟3 步驟7。
      2.如權利要求1所述的基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,其特征在于所述步驟2中,針對雇傭蜂群和觀察蜂群分別建立基于BCO以及NEH+隨機的混合方法產(chǎn)生初始種群,(2. 1)雇傭蜂初始化步驟如下步驟2. 1. l,step = st印+1,并按序取一個雇傭蜂,從未選擇的工件集中選擇工件并更新序列編碼;步驟2. 1. 2,判斷是否遍歷所有雇傭蜂,未完成則重復步驟2. 1. 1,否則繼續(xù); 步驟2. 1. 3,在雇傭蜂中重新按序取一只雇傭蜂,判斷是否滿足概率,概率由公式1得到,滿足則繼續(xù)步驟2. 1. 4,否則跳至步驟2. 1. 5 ;步驟2. 1. 4,從余下雇傭蜂中輪盤賭選擇一個解替代當前解;步驟2. 1. 5,判斷是否遍歷所有雇傭蜂,滿足則繼續(xù)步驟2. 1. 6,否則跳轉(zhuǎn)至步驟 2. 1. 3 ;步驟2. 1. 6,判斷step是否等于工序數(shù),滿足則結束,否則跳轉(zhuǎn)至步驟2. 1. 1 ; 步驟2. 1. 7,為雇用蜂群初始化數(shù)組Iimitarrayl (),數(shù)組長度SN/2,記錄每個雇傭蜂未更新代數(shù);pdc公式 1 .其中step從1到SN/2取值,當前雇傭蜂丟棄概率Pd。根據(jù)公式1取值,其中f Ubest為當前種群最好適應度,fit。為當前雇傭蜂適應度。(2. 2)觀察蜂NEH+隨機方法初始化首先將所有工件按總加工時間遞減排序,選擇前兩個工件經(jīng)比較保留完成時間最短的序列;其次,將第三個工件插入序列中的各個位置,同樣保留完成時間最短序列;最后,將剩余工件重復上步操作,得到一個可行解,將此可行解插入到雇用蜂群中,蜂群其他個體則采用隨機方法生成,具體圖過程為 步驟2. 2. 1計算所有工件的總加工時間,并按時間遞減排序; 步驟2. 2. 2選擇排在序列頂端的第一個工件形成編碼,Solution (i),其中i = 1表示編碼長度,將選擇的工件從工件序列中剔除;步驟2. 2. 3從工件序列中選擇排在頂端的工件,將工件插入Solution^)中各個位置形成i+Ι個solution,根據(jù)適應度保留最好的記為solution (i+1),將該工件從工件序列剔除;步驟2. 2. 4判斷工件序列是否為空,如果是則進入步驟2. 2. 5,否則跳轉(zhuǎn)至步驟 2. 2. 4 ;步驟 2. 2. 5 隨機生成(SN/2-1)個 solution ;步驟2. 2. 5為種群初始化數(shù)組limitarray2 (),數(shù)組長度SN/2,記錄觀察蜂個體未更新代數(shù)。
      3.如權利要求1或2所述的基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,其特征在于所述步驟4中,所述雇傭蜂算法的具過程如下步驟4. 1,順序選擇一個雇傭蜂EB1,并判斷是否是群中最優(yōu)解,滿足則跳至步驟4. 3, 否則繼續(xù);步驟4. 2,基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為EB2,跳至步驟 4. 9 ;步驟4. 3,對EBl進行模擬退火操作,設定SA初溫、未溫以及退溫系數(shù); 步驟4. 4,再次對基于EBl進行鄰域搜索,得到S’個新個體,并選擇其中最優(yōu)作為EB2 ; 步驟4. 5,比較EBl與EB2,如果EB2劣于EBl則繼續(xù)步驟4. 6,否則跳至步驟4. 7 步驟4. 6,比較產(chǎn)生(0 1)隨機數(shù)并與概率P比較,P服從公式3,如果隨機數(shù)小于概率則繼續(xù)步驟7,否則跳至步驟8 ;P = exp (- (fit (EB2) -fit (EBl)))公式 3步驟 4. 7,EBl = EB2 ;步驟4. 8,根據(jù)公式4、公式5更新T與S’如果T < Tend,則繼續(xù)步驟4. 9, 否則重復步驟4. 4-4. 8 ;T = kXTend公式 4S' = ceiKkXS')公式 5步驟4. 9,貪婪法則比較EBl與EB2,如果EB2不優(yōu)于EB1,則limitarrayl (i)=limitarrayl (i)+l, i表示EBl序列號,否則跳至步驟4. 11 ;步驟4. 10,如果limitarrayl (i) = limit,調(diào)用偵察蜂算法替換EB1,并跳至步驟 4. 12,否則直接跳至步驟4. 12 ;步驟 4. 11,EBl = EB2,并且 limitarrayl (i) = 0 ;步驟4. 12,是否遍歷所有雇傭蜂,S卩如果i = SN/2,則算法結束,否則跳至步驟4. 1。
      4.如權利要求1或2所述的基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,其特征在于所述步驟5中,所述觀察蜂算法的具過程如下步驟5. 1,順序選擇一個觀察蜂OBl,根據(jù)適應度輪盤賭選擇雇傭蜂EBl ; 步驟5.2,貪婪法則比較OBl與EB1,如果EBl不優(yōu)于0B1,則limitarray2 (j)= limitarray2(j)+l, j表示OBl序列號,否則跳至步驟5. 4 ;步驟5. 3,如果limitarray2(j) = limit,調(diào)用偵察蜂算法替換0B1,并跳至步驟5,否則直接跳至步驟5. 5 ;步驟 5. 4,OBl = EBl,并且 limitarray2(i) = 0 ;步驟5. 5,是否遍歷所有觀察蜂,S卩如果j = SN/2,則算法結束,否則跳至步驟5. 1。
      全文摘要
      一種基于蜂社會自組織模型的混流裝配生產(chǎn)調(diào)度控制方法,包括以下步驟步驟1,根據(jù)混流裝配生產(chǎn)調(diào)度問題規(guī)模設定算法參數(shù);步驟2,針對混流裝配線調(diào)度的問題特征,初始化函數(shù)選擇隨機+NEH方法;步驟3,動態(tài)調(diào)整鄰域的搜索規(guī)模;步驟4,對每一個雇傭蜂執(zhí)行雇傭蜂算法,當雇傭蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換雇傭蜂;步驟5,對每一個觀察蜂執(zhí)行觀察蜂算法,當觀察蜂滿足limit參數(shù)時,觸發(fā)偵察蜂算法替換觀察蜂;步驟6,對雇傭蜂種群和觀察蜂群執(zhí)行最優(yōu)控制算法;步驟7,如果滿足迭代條件則終止,否則重復步驟3~步驟7。本發(fā)明速度較快、有效避免陷入局部最優(yōu)、鄰域搜索精度高、求解效率高、控制效果良好。
      文檔編號G05B13/04GK102411306SQ20111036639
      公開日2012年4月11日 申請日期2011年11月17日 優(yōu)先權日2011年11月17日
      發(fā)明者李修琳, 湯洪濤, 魯建廈 申請人:浙江工業(yè)大學
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1