1.一种新的模拟退火算法解决作业车间调度问题,该算法涉及作业车间调度技术领域,其特征是:该算法设定了简单的状态矩阵的转移函数,减少了算法的运行时间;且设定接受新解的判定准则,使算法不容易陷入局部最优;设定了算法的终止条件,使算法的解更加精确;算法的具体实施步骤如下:
步骤1:初始化算法参数:初始温度T0(保证充分大),初始解状态矩阵C(是算法迭代的起点),工序时间矩阵P,迭代次数L;
步骤2:计算当前解:用数学模型描述如下:
目标函数:
; (1)
约束条件:
(2)
(3)
(4)
(5)
(6)
其中,式(1)表示目标函数,即完成时间(Makespan);式(2)表示工艺约束条件决定的每个工件的操作的先后顺序;式(3)表示加工每个工件的每台机器的先后顺序;式(4)表示完工时间变量约束条件;式(5)表示变量可能的取值大小;上述公式中所涉及的符号定义含义如下: 分别为第o个订单(或阶数)中的第i个工件在机器k上的完成时间点和加工时间长度;M是一个足够大的整数;式(6)表示第o个订单的所有工件最大完成时间小于订单周期的时间约束;分别为指示系数和指示变量,其含义为:
步骤3:降温:采用经典的衰退函数降温: ,其中,k为迭代次数,k=1,2,…n;
步骤4:产生新解:
(1)新解的产生机制:
状态矩阵C的变化:;
迭代次数L=L-1;
将更新后的数据代入步骤2所列的方程,计算新的临时解;
(2)计算新的临时解与当前解的目标函数差:;
(3)接受新解准则: 如果满足,则,否则以概率接受S(k)作为新的当前解;
步骤5:如果满足终止条件输出当前解作为最优解,输出对应的状态矩阵C,工序时间矩阵P,结束程序,否则转步骤2,终止条件为:
满足, ,其中和是温度下降阈值和精确度,是正实数。