0
点赞
收藏
分享

微信扫一扫

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码

1 简介

车间生产调度问题是典型的 NP 问题‚近年来随着免疫算法的出现和发展‚用来解决车间生产调度问题的免 疫思想和方法也层出不穷。本文对克隆选择算法解决生产调度问题的各个步骤所采用的方法进行总结‚分析了各种方法 的适用范围‚为设计更好的算法奠定了良好的基础。

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_d3

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_参考文献_02

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_调度问题_03

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_调度问题_04

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_d3_05

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_参考文献_06

2 部分代码

function [MK,c,st]=makespan(m,n,J,OperationTime)
c=zeros(m,n);
st=zeros(m,n);
for i=1:m;
for j=1:n;
N(i,j)=OperationTime(i,J(j));
end
end
st(1,1)=0;
c(1,1)=N(1,1);
for i=2:m
st(i,1)=c(i-1,1);
c(i,1)=st(i,1)+N(i,1);
end
for j=2:n
for i=1:m
if i==1
st(i,j)=c(i,j-1);
c(i,j)=st(i,j)+N(i,j);
else
wait=0;
wait=c(i,j-1)-c(i-1,j);
if wait>0
st(i,j)=c(i,j-1);
c(i,j)=st(i,j)+N(i,j);
for l=1:i-1
st(l,j)=st(l,j)+wait;
c(l,j)=st(l,j)+N(l,j);
end
else
st(i,j)=c(i-1,j);
c(i,j)=st(i,j)+N(i,j);
end
end
end
end
MK=0;
for i=1:m
for j=1:n
if MK<c(i,j)
MK=c(i,j);
end
end
end

3 仿真结果

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_d3_07

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_调度问题_08

4 参考文献

[1]顾嘉荣, 余建军, 徐学军. 基于免疫算法的车间生产调度问题综述[C]// 物流系统工程学术研讨会. 中国系统工程学会, 2011.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。

【生产调度】基于免疫算法求解生产调度零等待问题含Matlab源码_调度问题_09



举报

相关推荐

0 条评论