matlab甘特圖

      網友投稿 1014 2025-04-02

      matlab甘特圖


      本文目錄一覽:

      用遺傳算法求解作業(yè)車間調度的MATLAB程序問題

      你好歹看一下程序嘛,人家都給你注釋了輸入輸出都是啥,你使用的時候得先給輸入賦值。在命令行輸入M=啥,N=啥···然后再輸[Zp,Y1p,Y2p,Y3p,Xp,LC1,LC2]=JSPGA(M,N,Pm,T,P)

      左邊這些就是輸出了,要是運行成功會在workspace里面看到

      大家好,請問誰有基于matlab的遺傳算法源代碼,很需要呀

      function [Zp,Y1p,Y2p,Y3p,Xp,LC1,LC2]=JSPGA(M,N,Pm,T,P)

      matlab甘特圖

      %--------------------------------------------------------------------------

      % JSPGA.m

      % 車間作業(yè)調度問題遺傳算法

      %--------------------------------------------------------------------------

      % 輸入參數列表

      % M 遺傳進化迭代次數

      % N 種群規(guī)模(取偶數)

      % Pm 變異概率

      % T m×n的矩陣,存儲m個工件n個工序的加工時間

      % P 1×n的向量,n個工序中,每一個工序所具有的機床數目

      % 輸出參數列表

      % Zp 最優(yōu)的Makespan值

      % Y1p 最優(yōu)方案中,各工件各工序的開始時刻,可根據它繪出甘特圖

      % Y2p 最優(yōu)方案中,各工件各工序的結束時刻,可根據它繪出甘特圖

      % Y3p 最優(yōu)方案中,各工件各工序使用的機器編號

      % Xp 最優(yōu)決策變量的值,決策變量是一個實數編碼的m×n矩陣

      % LC1 收斂曲線1,各代最優(yōu)個體適應值的記錄

      % LC2 收斂曲線2,各代群體平均適應值的記錄

      % 最后,程序還將繪出三副圖片:兩條收斂曲線圖和甘特圖(各工件的調度時序圖)

      %第一步:變量初始化

      [m,n]=size(T);%m是總工件數,n是總工序數

      Xp=zeros(m,n);%最優(yōu)決策變量

      LC1=zeros(1,M);%收斂曲線1

      LC2=zeros(1,N);%收斂曲線2

      %第二步:隨機產生初始種群

      farm=cell(1,N);%采用細胞結構存儲種群

      for k=1:N

      X=zeros(m,n);

      for j=1:n

      for i=1:m

      X(i,j)=1+(P(j)-eps)*rand;

      end

      end

      farm=X;

      end

      counter=0;%設置迭代計數器

      while counter

      %第三步:交叉

      newfarm=cell(1,N);%交叉產生的新種群存在其中

      Ser=randperm(N);

      for i=1:2:(N-1)

      A=farm;%父代個體

      B=farm;

      Manner=unidrnd(2);%隨機選擇交叉方式

      if Manner==1

      cp=unidrnd(m-1);%隨機選擇交叉點

      %雙親雙子單點交叉

      a=[A(1:cp,:);B((cp+1):m,:)];%子代個體

      b=[B(1:cp,:);A((cp+1):m,:)];

      else

      cp=unidrnd(n-1);%隨機選擇交叉點

      a=[A(:,1:cp),B(:,(cp+1):n)];%雙親雙子單點交叉

      b=[B(:,1:cp),A(:,(cp+1):n)];

      end

      newfarm=a;%交叉后的子代存入newfarm

      newfarm=b;

      end

      %新舊種群合并

      FARM=[farm,newfarm];

      %第四步:選擇復制

      FITNESS=zeros(1,2*N);

      fitness=zeros(1,N);

      plotif=0;

      for i=1:(2*N)

      X=FARM;

      Z=COST(X,T,P,plotif);%調用計算費用的子函數

      FITNESS(i)=Z;

      end

      %選擇復制采取兩兩隨機配對競爭的方式,具有保留最優(yōu)個體的能力

      Ser=randperm(2*N);

      for i=1:N

      f1=FITNESS(Ser(2*i-1));

      f2=FITNESS(Ser(2*i));

      if f1=f2

      farm=FARM;

      fitness(i)=FITNESS(Ser(2*i-1));

      else

      farm=FARM;

      fitness(i)=FITNESS(Ser(2*i));

      end

      end

      %記錄最佳個體和收斂曲線

      minfitness=min(fitness)

      meanfitness=mean(fitness)

      LC1(counter+1)=minfitness;%收斂曲線1,各代最優(yōu)個體適應值的記錄

      LC2(counter+1)=meanfitness;%收斂曲線2,各代群體平均適應值的記錄

      pos=find(fitness==minfitness);

      Xp=farm;

      %第五步:變異

      for i=1:N

      if Pmrand;%變異概率為Pm

      X=farm;

      I=unidrnd(m);

      J=unidrnd(n);

      X(I,J)=1+(P(J)-eps)*rand;

      farm=X;

      end

      end

      farm=Xp;

      counter=counter+1

      end

      %輸出結果并繪圖

      figure(1);

      plotif=1;

      X=Xp;

      [Zp,Y1p,Y2p,Y3p]=COST(X,T,P,plotif);

      figure(2);

      plot(LC1);

      figure(3);

      plot(LC2);

      這是什么資源甘特圖?怎么用MATLAB畫啊?

      data=[

      ????0?3?0?6?2;?%x范圍?y范圍?編號

      ????3?8?0?7?4;

      ????3?9?7?9?5;

      ????8?14?0?2?6;

      ????9?11?2?7?7

      ????12?13?2?9?3

      ????13?17?2?8?8

      ????17?19?0?2?9];

      x=data(:,[1?1?2?2])';

      y=data(:,[3?4?4?3])';

      %抽出data第一行看

      %data(1,[1?1?2?2])=[0?0?3?3]

      %data(1,[3?4?4?3])=[0?6?6?0]

      %表示(0,0)-(0,6)-(3,6)-(3,0)四點組成的矩形

      %用patch就可以畫出這個矩形

      %不過patch要求每一列畫一個多邊形,所以最后要轉置

      cla;

      patch('xdata',x,'ydata',y,...?%根據x,y畫框框

      ????'facecolor','none','edgecolor','k');%框框面和邊的顏色

      xl=(data(:,1)+data(:,2))/2;%x的平均值作為標記的x坐標

      yl=(data(:,3)+data(:,4))/2;%y的平局值作為標記的y坐標

      label=num2str(data(:,5));%data的第5列轉為字符,作為標記內容

      text(xl,yl,label);%顯示標記

      VS2013中調用matlab甘特圖能正常生成,發(fā)布到iis中,matlab能計算但無法形成甘特圖

      %machine num time1 time2

      a=[1 1 0 2;

      1 3 2 8;

      2 2 0 5;

      3 4 0 4;

      4 4 4 10;

      4 2 10 13;

      5 1 2 7;

      5 3 8 10;

      6 3 10 13;

      8 1 7 9;

      8 2 13 18;

      9 4 10 18];

      figure(1);clf;

      w=0.5; %橫條寬度

      set(gcf,'color','w');

      for ii=1:size(a,1)

      x=a(ii,[3 3 4 4]);

      y=a(ii,1)+[-w/2 w/2 w/2 -w/2];

      p=patch('xdata',x,'ydata',y,'facecolor','none','edgecolor','k');

      text(a(ii,3)+0.5,a(ii,1),num2str(a(ii,2)));

      end

      xlabel('processing time(s)');

      ylabel('Machine');

      axis([0 20 0 10]);

      set(gca,'Box','on');

      set(gca,'YTick',0:10);

      set(gca,'YTickLabel',[{''};num2str((1:9)','M%d');{''}]);

      matlab的一個M函數,用于繪圖,現在我想讓其可以把運行時生成的圖像自動保存,怎么加語句?

      str1='d:\work\test\file'; %存放的目錄,及文件名前部分

      for i=1:50

      str=[str1 num2str(i) '.fig']; %生成需要保存圖象的文件名=

      畫圖

      saveas(gcf,str);

      end

      matlab中甘特圖畫法

      %machine?num?time1?time2

      a=[1????1???0???2;

      ???1????3???2???8;

      ???2????2???0???5;

      ???3????4???0???4;

      ???4????4???4???10;

      ???4????2???10??13;

      ???5????1???2???7;

      ???5????3???8???10;

      ???6????3???10??13;

      ???8????1???7???9;

      ???8????2???13??18;

      ???9????4???10??18];

      figure(1);clf;

      w=0.5;???????%橫條寬度

      set(gcf,'color','w');

      for?ii=1:size(a,1)

      ????x=a(ii,[3?3?4?4]);

      ????y=a(ii,1)+[-w/2?w/2?w/2?-w/2];

      ????p=patch('xdata',x,'ydata',y,'facecolor','none','edgecolor','k');

      ????text(a(ii,3)+0.5,a(ii,1),num2str(a(ii,2)));

      end

      xlabel('processing?time(s)');

      ylabel('Machine');

      axis([0?20?0?10]);

      set(gca,'Box','on');

      set(gca,'YTick',0:10);

      set(gca,'YTickLabel',[{''};num2str((1:9)','M%d');{''}]);

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:辦公表格軟件剪切圖片(辦公表格軟件剪切圖片怎么操作)
      下一篇:利用excel vba編程在窗體上繪制簡筆畫蘑菇
      相關文章
      亚洲精品乱码久久久久久蜜桃不卡| 国产精品亚洲αv天堂无码| 国产成人亚洲综合无码| 久久精品国产亚洲AV电影网| 亚洲中文字幕无码av永久| 91亚洲视频在线观看| 亚洲图片激情小说| 亚洲人成网站日本片| 亚洲一卡二卡三卡| 亚洲综合丁香婷婷六月香| 久久狠狠爱亚洲综合影院| 亚洲五月丁香综合视频| ass亚洲**毛茸茸pics| 亚洲一级在线观看| 亚洲精品天堂在线观看| 亚洲欧美黑人猛交群| 亚洲av无码片vr一区二区三区| 亚洲av无码片vr一区二区三区| 国产亚洲人成在线播放| 亚洲AV无码成人精品区大在线| 亚洲成a人片在线观看老师| 亚洲精品黄色视频在线观看免费资源| 亚洲福利在线播放| a级亚洲片精品久久久久久久| 国产亚洲av片在线观看16女人| 亚洲va无码专区国产乱码| 久久久久亚洲Av片无码v| 4480yy私人影院亚洲| 亚洲一区在线视频观看| 亚洲中文字幕无码一去台湾| 亚洲国产精品无码久久98 | 亚洲国产日韩一区高清在线| 亚洲一区二区成人| 亚洲国产av高清无码| 亚洲精品国产高清在线观看| 亚洲精品无码专区久久同性男| 亚洲中文久久精品无码| 亚洲A∨无码一区二区三区| 亚洲欧洲日产国码在线观看| 亚洲中文无码卡通动漫野外| 激情小说亚洲图片|