回溯法之批处理作业调度
1. 问题描述
n个作业集合{1, 2, ..., n}。每个作业先由机器1处理,再由机器2处理。作业i需要机器j处理的时间为Mij 。
Mij
机器1
机器2
作业1
2
1
作业2
3
1
作业3
2
3
对于一个确定的作业调度,设Fij 是作业i在机器j上完成的具体时间。所有作业在机器2上完成的具体时间(时刻)之和f称为该作业调度的完成时间和。
要求:对于给定的n个作业,制定最佳作业调度方案(一个排列),使其完成时间和达到最小
2. 问题分析
3个作业的6种可能的调度方案是1-2-3;1-3-2;2-1-3;2-3-1;3-1-2;3-2-1;它们所相应的完成时间和分别是19,18,20,21,19,19。易见,最佳调度方案是1-3-2,其完成时间和为18。
Fi1、Fi2表示事件i分别在机器1和机器2上完成的时间。
作业顺序
Fi1
Fi2
f
begin
0
0
0
①
2
3
3
③
4
7
10
②
7
8
18
假设此时1-2-3的作业调度已经完成计算,遍历到了1-3-2的序列。
首先是①,将调用f1