生产计划与控制实践大作业.docx

生产计划与控制实践大作业.docx

ID:59146012

大小:160.89 KB

页数:8页

时间:2020-09-11

生产计划与控制实践大作业.docx_第1页
生产计划与控制实践大作业.docx_第2页
生产计划与控制实践大作业.docx_第3页
生产计划与控制实践大作业.docx_第4页
生产计划与控制实践大作业.docx_第5页
资源描述:

《生产计划与控制实践大作业.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、生产计划与控制实践大作业遗传算法求解车间作业调度问题课程名称:生产计划与控制实践报告题目:遗传算法求解车间作业调度问题指导老师:高杰组员姓名:王佳昀、姚泽坤、方正所在组号:第十二组二0一四年12月22日1、问题回顾车间作业调度问题(1)PPT中例子(如下图所示)的求解编写MATLAB遗传算法GA_JSP函数M文件代码(源代码较长)见附录之后在命令窗口调用GA_JSP函数求解的文件主程序编写如下:%%文件主体部分clc,clear%清除命令窗口,清除工作空间NIND=40;%种群所包含个体数目MAXGEN=50;%最大遗传代数GGAP=0.9;%代沟P_Cross=0.8;%

2、交叉率P_Mutation=0.6;%变异率Jm={123;132;213};%工序机器矩阵T={332;153;323};%加工时间矩阵MakeSpan=GA_JSP(NIND,MAXGEN,GGAP,P_Cross,P_Mutation,Jm,T);fprintf('最小加工流程时间为:')disp(MakeSpan)程序运行结果如下:最小加工流程时间为11,比课件图中给出的两种方案用时少,此方案更优图中201表示第二个工件的第一道工序,其余类推(2)公邮中TXT文本FisherandThompson6x6instance的求解采用与(1)相同的方法,输入工序机器矩

3、阵Jm和加工时间矩阵T即可求解其中:Jm={312465;235614;346125;213456;325614;246153};%工序机器矩阵T={136736;851010104;548917;555389;935431;3391041};%加工时间矩阵运行结果截图:附录1MATLAB遗传算法GA_JSP函数M文件的部分主要代码(由于代码较长,此处仅保留了主函数代码):functionMakeSpan=GA_JSP(NIND,MAXGEN,GGAP,P_Cross,P_Mutation,Jm,T)%%程序功能说明%基于遗传算法的作业车间调度问题的求解程序(GA_JSP)

4、%====输入变量====%NIND:种群所包含个体的数目%MAXGEN:最大遗传代数%GGAP:代沟%P_Cross:交叉概率%P_Mutation:变异概率%Jm:各工序的可选机器集合,为m×n的元胞矩阵,m为机器数(工序),n为工件数%T:加工时间矩阵%====输出变量====%MakeSpan:最小的最大完工时间%%主函数程序部分gen=0;%迭代计数器JmNumber=Max_Cell(Jm);%调用Max_Cell子函数求机器的数量[PNumber,MNumber]=size(Jm);%PNumber为工件个数,MNumber为工序个数trace=zeros(2

5、,MAXGEN);%寻优结果的初始值,一行存放各代的最优解,一行存放各代解的均值TotalOP_Number=PNumber*MNumber;%工序总个数%(1)初始化Number=zeros(1,PNumber);%Number存放每个工件的工序数,PNumber工件个数fori=1:PNumberNumber(i)=MNumber;%MNumber工序个数end%染色体个体编码:代码分为两层,第一层表示工序,第二层表示机器Chrom=zeros(NIND,2*TotalOP_Number);%染色体的长度为2*TotalOP_Numberforj=1:NIND%逐代寻优

6、WPNumberTemp=Number;fori=1:TotalOP_Number%随机产生工序val=unidrnd(PNumber);whileWPNumberTemp(val)==0val=unidrnd(PNumber);end%第一层代码表示工序Chrom(j,i)=val;WPNumberTemp(val)=WPNumberTemp(val)-1;%第二层代码表示机器Temp=Jm{val,MNumber-WPNumberTemp(val)};SizeTemp=length(Temp);%随机产成工序机器Chrom(j,i+TotalOP_Number)=uni

7、drnd(SizeTemp);endend%(2)计算目标函数值[PVal,ObjV,P,S]=cal(Chrom,JmNumber,T,Jm);%调用子函数程序cal求个体适应度值%(3)循环寻找最优解whilegen

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。