xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 6KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-04
  • 語言: Matlab
  • 標簽: 單機??排序??MATLAB??

資源簡介

將各種優先規則綜合在一起編寫了單機排序問題MATLAB求解的通用函數程序。

資源截圖

代碼片段和文件信息

function?[ScheduleStartTimeFinishTimeMeanOTMakespanMeanETMeanPTMeanWIPMeanTotalResultArray]?=?Ch6_SingleMachine_Rank(TimeArray)
%%?程序功能說明
%第6章:單機作業排列排序問題(單維規則)
%====輸出參數====
???%Schedule??????:給定優先級規則下的排序方案
???%StartTime?????:開始時間
???%FinishTime????:流程時間
???%MeanOT????????:平均流程時間
???%Makespan??????:完工時間
???%MeanET????????:平均提前時間
???%MeanPT????????:平均超期時間
???%MeanWIP???????:平均在制品庫存量
???%MeanTotal?????:平均總庫存量
???%ResultArray???:模型結果
%====輸入參數====
???%TimeArray?????:業務時間矩陣,按照接到業務訂單的先后順序給出(3×n的矩陣)
???%第1行為業務順序代號,第2行為加工時間,第3行為希望交貨時間
%編寫時間:2012年03月;完善時間:2012年4月

%%?程序主體部分
%根據優先級規則確定工件的加工方案
[mn]?=?size(TimeArray);
if?m?~=?3
????error(‘加工時間矩陣必須為三行‘)
end

%定義存放計算結果的矩陣
??ResultArray?=?zeros(8n);?????????????????????%設置存放建模的矩陣,共8行

%%?給定優先級規則并建模
Number?=?input(‘請選擇優先級規則的代號<1.FCFS;2.SPT;3.LCFS;4.EDD;5.STR;6.RANDOM>Number=:‘);
if?Number?==?1
????%(1)先到先服務(FCFS)規則建模
????ResultArray(1:)?=?TimeArray(1:);??????????%第1行存放工件加工順序
????ResultArray(3:)?=?TimeArray(2:);??????????%第3行存放加工時間
????ResultArray(5:)?=?TimeArray(3:);??????????%第5行存放期望交貨時間
????
elseif?Number?==?2
????%(2)最短加工時間(SPT)規則建模
????TimeArray_New?=?TimeArray‘;?????????????????%將時間矩陣轉置,以便進行排序
????TimeArray?=?(sortrows(TimeArray_New2))‘;???%得到按加工時間非遞減排序
????ResultArray(1:)?=?TimeArray(1:);??????????%第1行存放工件加工順序
????ResultArray(3:)?=?TimeArray(2:);??????????%第3行存放加工時間
????ResultArray(5:)?=?TimeArray(3:);??????????%第5行存放期望交貨時間
elseif?Number?==?3
????%(3)后到先服務(LCFS)規則建模
????TimeArray_New?=?-TimeArray‘;????????????????%將時間矩陣轉置,以便進行排序
????TimeArray?=?-(sortrows(TimeArray_New1))‘;??%得到按后到排序在前
????ResultArray(1:)?=?TimeArray(1:);??????????%第1行存放工件加工順序
????ResultArray(3:)?=?TimeArray(2:);??????????%第3行存放加工時間
????ResultArray(5:)?=?TimeArray(3:);??????????%第5行存放期望交貨時間
elseif?Number?==?4
????%(4)最短交貨期(EDD)規則建模
????TimeArray_New?=?TimeArray‘;?????????????????%將時間矩陣轉置,以便進行排序
????TimeArray?=?(sortrows(TimeArray_New3))‘;???%得到按后到排序在前
????ResultArray(1:)?=?TimeArray(1:);??????????%第1行存放工件加工順序
????ResultArray(3:)?=?TimeArray(2:);??????????%第3行存放加工時間
????ResultArray(5:)?=?TimeArray(3:);??????????%第5行存放期望交貨時間
elseif?Number?==?5
????%(5)剩余松弛時間(STR)規則建模
????SlackTime?=?TimeArray(3:)-TimeArray(2:);???????%計算剩余松弛時間
????TimeArray_New?=?[TimeArray‘?SlackTime‘];?????????%將剩余松弛時間列入新矩陣中
????TimeArray_Rank?=?(sortrows(TimeArray_New4))‘;???%按剩余松弛時間非遞減排序
????for?i?=1:length(TimeArray(2:))-1
????????if?TimeArray_Rank(4i)?==?TimeArray_Rank(4i+1)
????????????if?TimeArra

評論

共有 條評論