1.一种基于改进启发式算法的车间生产调度方法,其特征在于,包括以下步骤:S1、初始化,确定冷却进度表的参数,冷却进度表的参数包括初始温度T0、决定如何降温的温度衰减函数,每个温度下迭代的次数Lk、控制参数的终值Tf,根据调度任务复杂度高低确定初始温度T0;
初始温度T0取值按公式(1)计算;
式中x表示任务的复杂性,x取决于调度任务的工序数和机床数,x=(0.1~0.2)*工序数*机床数;
温度衰减函数采用分段函数,在迭代前期采用较小的退火因子α,在迭代后期采用较大的退火因子α,温度衰减函数如公式(2)所示;
公式(2)中,α1<α2<α3;
Lk为100~200次;终值Tf取数值1~2;
S2、定义车间生产调度任务中,包括n个作业任务,分别记为:J1,J2,…,Jn,每个作业的工序数分别为O1,O2,…,On;
编码采用O1个J1,O2个J2,…,On个Jn字符构成的一个字符串,字符J1,J2,…,Jn在该字符串中出现的顺序代表其工序号;
S3、构建目标函数:以完成所有加工任务的时间跨度最小为目标函数;
S4、随机排列O1个J1,O2个J2,…,On个Jn字符10~20次,产生10~20个初始解,并分别计算其目标函数值,求平均值,作为目标函数值阈值;构建禁忌集合,将产生的初始解加入禁忌集合中,并保存完成所有加工任务的时间跨度最小的初始解作为当前最优解和当前解;
S5、产生新解:比较当前解的目标函数值和目标函数值阈值,确定在当前解中任选两个不同字符交换位置的次数并产生新解,并判断新解是否存在于禁忌集合,继而是否重新产生新解;
S6、判断是否接收新解:根据公式(3)所示的Metropolis准则对应的转移概率P决定是否接受新解;根据新解目标函数值是否优于当前解,来判断新解是否代替当前最优解;
在公式(3)中f是目标函数,a是当前解,a'是新解,t是当前温度;
S7、重复S5和S6,直至满足当前温度下迭代的次数Lk;
S8、降温:判断当前温度是否达到终值Tf,确定是否以当前最优解作为最终的调度结果。
2.根据权利要求1所述的一种基于改进启发式算法的车间生产调度方法,其特征在于,所述S1中当调度任务的复杂性较低,初始温度T0取较大的值;当调度任务的复杂性较高,初始温度T0取较小的值。
3.根据权利要求1所述的一种基于改进启发式算法的车间生产调度方法,其特征在于,所述S5中若当前解的目标函数值大于目标函数值阈值的两倍,则执行2~3次在当前解中任选两个不同字符交换位置,从而产生新解;若当前解的目标函数值小于目标函数值阈值的两倍且大于目标函数值阈值,则执行1~2次在当前解中任选两个不同字符交换位置,从而产生新解;若当前解的目标函数值小于目标函数值阈值,则执行1次在当前解中任选两个不同字符交换位置,从而产生新解。
4.根据权利要求1或3所述的一种基于改进启发式算法的车间生产调度方法,其特征在于,所述S5中若新解存在于禁忌集合中,则舍弃之,重新产生新解,否则将新解加入禁忌集合中。
5.根据权利要求1所述的一种基于改进启发式算法的车间生产调度方法,其特征在于,所述S6中如果新解目标函数值优于当前解,则将新解代替当前最优解;
当新解的目标函数值比当前解小时,总是接受新解,而新解的目标函数值比当前解大时,判断当前解的目标函数值是否优于当前最优解,若当前解的目标函数值优于当前最优解,则用当前解代替当前最优解。