• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于布谷鳥搜索算法求解流水車間調(diào)度

      2018-01-06 00:56張珊靚王慶喜
      電腦知識(shí)與技術(shù) 2017年35期
      關(guān)鍵詞:調(diào)度

      張珊靚+王慶喜

      摘要:調(diào)度是研究資源如何配置問題的理論,流水車間問題是車間調(diào)度問題領(lǐng)域的一個(gè)子問題,是通過對(duì)制造過程作業(yè)計(jì)劃,以實(shí)現(xiàn)流水車間環(huán)境下生產(chǎn)過程的優(yōu)化調(diào)度,其廣泛應(yīng)用于實(shí)際生產(chǎn),尤其適用于單件大批量生產(chǎn)背景的制造企業(yè)。該文主要研究的是使用布谷鳥搜索算法優(yōu)化車間調(diào)度中的流水車間調(diào)度的問題。

      關(guān)鍵詞:布谷鳥搜索算法;流程車間;調(diào)度

      中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2017)35-0104-02

      流水車間調(diào)度問題是一個(gè)經(jīng)典的理論問題,擁有簡潔的形式,廣泛的關(guān)聯(lián)性和高度的計(jì)算復(fù)雜度。該問題的簡潔性體現(xiàn)在,任務(wù)集合上的一個(gè)排列就代表了一個(gè)調(diào)度序列。而關(guān)聯(lián)性和復(fù)雜性體現(xiàn)在,該問題代表了一大類具有排列性質(zhì)的問題,許多組合優(yōu)化問題都可以歸約到它。在計(jì)算理論中,它是NP-難的。

      1 布谷鳥搜索算法

      布谷鳥搜索算法自從2009年問世以來廣泛醫(yī)用于多個(gè)領(lǐng)域,已經(jīng)成功優(yōu)化多種問題,其搜索能力和優(yōu)化能力被大量證明,該算法的思想可以從如下代碼解釋。

      for i=1:n,

      nest(i,:)=Lb+(Ub-Lb).*rand(size(Lb));

      end

      fitness=10^10*ones(n,1);

      [fmin,bestnest,nest,fitness]=get_best_nest(nest,nest,fitness);

      N_iter=0;

      while (fmin>Tol),

      new_nest=get_cuckoos(nest,bestnest,Lb,Ub);

      [fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness); N_iter=N_iter+n;

      new_nest=empty_nests(nest,Lb,Ub,pa) ;

      [fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness); N_iter=N_iter+n;

      if fnew

      fmin=fnew;

      bestnest=best;

      end

      end

      2 流水車間問題求解

      流水車間調(diào)度問題是典型的組合優(yōu)化問題。假設(shè)有N個(gè)工件,每個(gè)工件都按相同的順序經(jīng)過M臺(tái)機(jī)器加工,求解各工件的加工順序,使某種預(yù)先規(guī)定的目標(biāo)函數(shù)達(dá)到最優(yōu)。其最優(yōu)時(shí)間求解在Matlab中的實(shí)現(xiàn)采用矩陣思想,主要代碼如下。

      function [F, PI] = FSPFitness( Problem, x )

      P = Problem';

      [M, N] = size(Problem);

      [aaa, ROV] = sort(x);

      C = zeros(N, M);

      C(ROV(1), 1) = P(ROV(1), 1);

      for i = 2:N

      C(ROV(i), 1) = C(ROV(i-1), 1) + P(ROV(i), 1);

      end

      for k = 2:M

      C(ROV(1), k) = C(ROV(1), k-1) + P(ROV(1), k);

      end

      for i = 2:N

      for k = 2:M

      C(ROV(i), k) = max(C(ROV(i-1), k), C(ROV(i), k-1)) + P(ROV(i), k);

      end

      end

      F = C(ROV(N), M);

      PI = ROV;

      end

      3 布谷鳥求解流水車間問題

      在用布谷鳥求解流水車間調(diào)度問題時(shí),經(jīng)過隨機(jī)鍵編碼方式,布谷鳥找到的每個(gè)鳥巢代表了調(diào)度問題的一個(gè)解,主要代碼如下。

      function [fmin,bestnest]=cuckoo_search_fsp(Problem,params)

      [numMachines,numJobs] = size(Problem);

      if size(params) == [1, 3]

      numNests = params(1);

      pa=params(3);

      MaxGeneration = params(2);

      else

      numNests = 300;

      pa=0.25;

      MaxGeneration = 1000;

      end

      result = zeros(1, MaxGeneration);

      nest = rand(numNests, numJobs);

      fitness = 10e5*ones(1, numNests);

      [fmin,bestnest,nest,fitness]=get_best_nest(nest,nest,fitness,Problem)

      for i=1:MaxGeneration,

      new_nest=get_cuckoos(nest,bestnest);

      [fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness,Problem);

      new_nest=empty_nests(nest,pa) ; [fnew,best,nest,fitness]=get_best_nest(nest,new_nest,fitness,Problem);

      if fnew

      fmin=fnew;

      bestnest=best;

      end

      result(i)=fmin;

      %fprintf('best:%f\n',fmin);

      end

      plot(result);

      4 仿真測試

      仿真測試的測試函數(shù)采用Car問題和Rec問題。為了獲得較好準(zhǔn)確的結(jié)果,求解流水車間調(diào)度問題時(shí)獨(dú)立運(yùn)行程序20詞,求出20詞中求得最優(yōu)解的次數(shù),然后求出尋優(yōu)率,根據(jù)尋優(yōu)率,對(duì)比多種算法的優(yōu)劣。主要代碼

      Car7=[692 310 832 630 258 147 255;

      581 582 14 214 147 753 806;

      475 475 785 578 852 2 699;

      23 196 696 214 586 356 877;

      158 325 530 785 325 565 412;

      796 874 214 236 896 898 302;

      542 205 578 963 325 800 120]';

      Problem = Car7;

      BESTANSWER = 6590;

      runTimes = 20;

      for i=1:runTimes

      subplot(2,1,1);

      hold on

      [Best(i), paixu] = cuckoo_search_fsp(Problem, [25, 500, 0.25]);

      hold off

      subplot(2,1,2);

      xlim([1,runTimes]);

      hold on

      plot(Best);

      hold off

      drawnow;

      end

      count = 0;

      for i=1:runTimes

      if Best(i) == BESTANSWER

      count = count + 1;

      end

      end

      為了驗(yàn)證布谷鳥算法求解FSP的性能,對(duì)算法沒有采取改進(jìn)策略,完全依靠算法自身進(jìn)化機(jī)制尋優(yōu)。選擇Car類基準(zhǔn)測試問題進(jìn)行仿真測試,并與螢火蟲算法在離散空間的優(yōu)化性能進(jìn)行對(duì)比。仿真測試的一組結(jié)果如圖1所示。

      5 結(jié)論

      本文將布谷鳥搜索算法這一優(yōu)秀的元啟發(fā)式算法應(yīng)用于流水車間調(diào)度問題領(lǐng)域。雖然流水車間調(diào)度問題是一個(gè)古老的課題,但由于它不可忽略的現(xiàn)實(shí)和理論意義,對(duì)該問題進(jìn)一步探索守非常有意義的。本文針對(duì)求解以最小時(shí)間跨度的流水車間調(diào)度問題,具體設(shè)計(jì)布谷鳥算法,所做的工作有。求解質(zhì)量是指,在給定的迭代次數(shù)內(nèi)所求解的質(zhì)量的好壞。本文基于該考慮,觀察和設(shè)計(jì)布谷鳥算法的各個(gè)組成要素,盡可能使算法能夠得到較優(yōu)的調(diào)度。

      參考文獻(xiàn):

      [1] 王慶喜, 趙珊. 基于改進(jìn)布谷鳥搜索算法的工程設(shè)計(jì)優(yōu)化[J]. 黑龍江大學(xué)自然科學(xué)學(xué)報(bào), 2017, 345(2):247-52.

      [2] 陳超. 改進(jìn)CS算法結(jié)合決策樹的云工作流調(diào)度[J]. 電子科技大學(xué)學(xué)報(bào), 2016, 46(6):974-980.

      [3] 謝麗霞, 王志華. 基于布谷鳥搜索優(yōu)化BP神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)安全態(tài)勢(shì)評(píng)估方法[J]. 計(jì)算機(jī)應(yīng)用,2017, 37(7):1926-1930.

      [4] 王慶喜, 魏勝利. 基于混沌和非線性規(guī)劃的螢火蟲算法[J]. 科技通報(bào), 2017, 33(5):120-123.

      猜你喜歡
      調(diào)度
      交通運(yùn)輸行政執(zhí)法指揮調(diào)度管理系統(tǒng)
      《調(diào)度集中系統(tǒng)(CTC)/列車調(diào)度指揮系統(tǒng)(TDCS)維護(hù)手冊(cè)》正式出版
      電力調(diào)度自動(dòng)化中UPS電源的應(yīng)用探討
      基于強(qiáng)化學(xué)習(xí)的時(shí)間觸發(fā)通信調(diào)度方法
      一種基于負(fù)載均衡的Kubernetes調(diào)度改進(jìn)算法
      虛擬機(jī)實(shí)時(shí)遷移調(diào)度算法
      CTC調(diào)度集中與計(jì)算機(jī)聯(lián)鎖通信接口的分析
      調(diào)度自動(dòng)化系統(tǒng)不間斷電源的選擇
      枯期風(fēng)電調(diào)度模式探討
      談?wù){(diào)度絞車的安全性
      瓦房店市| 许昌县| 库尔勒市| 肃北| 太原市| 舞阳县| 高台县| 马公市| 平乡县| 调兵山市| 泰和县| 上蔡县| 茶陵县| 莱阳市| 资兴市| 延津县| 武乡县| 阿瓦提县| 安康市| 阿坝县| 昌邑市| 黑山县| 四子王旗| 南陵县| 都兰县| 宜宾县| 仙游县| 灵台县| 钟山县| 晋州市| 剑河县| 平果县| 忻城县| 全椒县| 富民县| 宁波市| 商都县| 南华县| 昌图县| 玉山县| 土默特右旗|