In a reactive scheduling approach, no schedule is generated in advance. Each time a conflict arises in the choice of the next operation to perform on a resource that becomes free, a priority rule (also called a dispatching rule) is applied to make the decision.
9.2.1.1 Priority Rules Based on Operation Times
In (Panwalkar and Iskander, 1977), 113 priority rules have been enumerated.
Some of these rules are recalled hereafter.
Rule 1: Priority to the product whose next operation has the minimal operation time (SPT that stands for “shortest processing time”).
It is advised not to apply this rule in the case of significant setup times or well- diversified operation times. It is worth mentioning the rule that gives priority to the product the next operation of which has the minimal weighted operation time
332 9 Dynamic Scheduling and Real-time Assignment or WSPT (weighted shortest processing time). This rule minimizes the weighted mean flow time and the weighted percentage of tardy product completion times, see (French, 1982) and (Haupt, 1989). This rule is efficient when the system is highly loaded.
In (Jayamohan and Rajendran, 2004), two types of weights (denoted, respec- tively, by Wi,1 and Wi,2) are considered for each product i:
•
i
i h
W 1
1
, = , where hi is the holding cost of a product of type i for one unit of time.
•
i
i r
W 1
2
, = , where ri is the tardiness cost of product i when the completion time of one unit of product is one unit of time late with regard to the deadline.
1 ,
Wi favors products having a high holding cost, while Wi,2 favors products with a high penalty cost.
Rule 2: Priority to the product whose next operation has the minimal sum of op- eration time and setup time.
This rule generalizes the previous one and should be avoided when the sums of operation and setup times are well diversified.
These two rules reduce the length of the files in front of the resources (ma- chines, transportation resources, etc.).
We obtain two more rules by replacing “minimal” by “maximal” in Rules 1 and 2. These rules may lead to important queues in front of some machines.
Rule 3: Priority to the product such that the sum of the operation times of the op- erations that have not been performed yet is minimal.
This rule gives the priority to the products that are the closest (in terms of dura- tion) from completion.
Another rule is obtained by replacing “minimal” by “maximal” in Rule 3. This rule gives the priority to the products that are at the beginning of their manufactur- ing cycle. As a consequence, it increases the WIP (work-in-progress) but tends to improve productivity.
Note: these rules make it difficult to forecast product completion times.
9.2.1.2 Priority Rules Based on Deadlines
Rule 4: Priority to the most urgent products (EDD that stands for “earliest due date”).
The most urgent product is the one for which the difference between the dead- line and the current time is minimal among the products that compete for the same assignment. This rule does not take into account either the number of operations that are not performed at the time of the decision nor the sum of the operation times of these operations. The primary goal of this rule is to meet the deadlines, but some side effects may appear such as delaying the manufacturing of products that require many operations and/or a long remaining total manufacturing time that, in turn, leads to exceeding the deadlines.
Rule 5: Priority to the product having the greatest relative urgency.
The relative urgency is measured by the ratio of the total manufacturing time of the operations that remain to be performed over the difference between the dead- line and the current time. The greater this ratio is, the greater the relative urgency of the product. It should be noted that if the ratio is less than 1, then it might be possible to complete the product before the deadline, otherwise the delivery of the product will be late.
Rule 6: Priority based on the slack per remaining operation.
We define the slack si of a product i at time t by:
∑=
−
−
= ni
j k
k i i
i D t t
s , , where:
Di is the deadline for product ,i
k
ti, is the processing time of the k-th operation of product ,i t is the time at which the decision is made (current time),
j is the rank of the next operation to perform,
ni is the number of operations to be performed to complete product .i The priority of product i is measured by:
( )
⎪⎩
⎪⎨
⎧
<
+
−
× + ≥
= −
0 1
1 0
i i
i
i i
i i
s if j n s
s j if
n s Z
The lower Zi, the greater the priority of product i. Usually, this rule leads to a reduction of the mean tardiness.
To conclude, Rules 4 and 5 tend to favor the criterion that satisfies the dead- lines but, since these rules do not take into account the other products in process, unexpected side effects may arise.
334 9 Dynamic Scheduling and Real-time Assignment 9.2.1.3 Priority Rules Based on the Number of Operations
The following rules are similar to the previous ones, except that we do not con- sider the manufacturing times of the remaining operations, only their number.
Rule 7: Priority to the product having the greatest number of remaining opera- tions.
This rule is of importance when the setup times are not negligible compared to the operation times. A negative side effect is the increase of WIP (work-in- progress).
Rule 8: Priority to the product having the smallest number of remaining opera- tions.
The primary objective of this rule is to evacuate from the production system any products that are close to completion (in terms of the number of remaining operations).
9.2.1.4 Priority Rules Based on the Costs
Rule 9: Priority to the product that has the greatest value or that guarantees the greatest benefit.
With the former, the goal is to avoid tying up capital, as to the latter the goal is to complete as soon as possible products that provide a maximum of new capital.
Rule 10: Priority to the product to which the greatest penalty applies when com- pleted after deadline.
Rule 11: Priority to the product to which the greatest relative penalty applies when it is completed after its deadline.
In this rule, the relative penalty is the product of the penalty by the relative ur- gency defined in Rule 5.
9.2.1.5 Priority Based on the Setup Times
Rule 12: Priority to the product having the smallest setup time.
This rule is particularly interesting when the setup times depend on the se- quence of operations performed by the machine under consideration. The rule tends to locally minimize the sum of setup times related to each machine.
Rule 13: Priority to the product having the smallest relative setup time.
The relative setup time is the setup time divided by the operation time of the candidate operation. This rule is particularly interesting when the relative setup times are various and/or depend on the sequence of operations performed by the machine under consideration.
9.2.1.6 Priority Based on the Release Dates
Rule 14: Rule FIFO (first in, first out).
The priority is given to the product that arrived in front of the machine first.
The rule tends to reduce the standard deviation of the waiting times.
Rule 15: Priority to the product that arrived in the system first.
In other words, the priority goes to the product that spent the greatest amount of time in the system (this rule is called AT that stands for “arrival time”).
This rule tends to balance the manufacturing cycles of the products.
Rule 16: Rule LIFO (last in, first out).
The priority is given to the product that arrived in front of the machine last.
This rule is rarely used in practice, since when the system is very loaded, it may happen that some products remain “blocked”.
9.2.1.7 Priority Based on a Rough Evaluation of the Near Future
Rule 17: Priority to the product that will next visit the machine having the shortest file in front of it.
Rule 18: Priority to the product that will visit next the machine having the lowest load or, in other words, such that the sum of the operation times for the operations waiting in front of the next machine is the lowest.
These rules are an attempt to take the near future into account. The rules that integrate some information concerning the future belong to the set of global dis- patching rules. The rule COVERT that will be presented hereafter is also a global dispatching rule.
336 9 Dynamic Scheduling and Real-time Assignment 9.2.1.8 Various Priority Rules
Some other rules that have been studied are listed hereafter.
Rule 19: Mixed rule (FIFO + operation time).
In this rule, a threshold T is given by the user. Let E be the set of products that are waiting in front of the machine for a time greater than T. If E is not empty, the priority is given to a product of E on a FIFO basis, otherwise rule 1 applies. The goal of this rule is to avoid blocking some products in front of a ma- chine. Indeed, the consequences of this rule closely depend on the value of T. Rule 20: In this rule, FIFO and Rule 1 are used alternately.
Rule 21: The user chooses a threshold u∈[0,1]. Let F be the set of products the relative urgency (see Rule 5) of which is greater than u . If F is not empty Rule 1 applies to the products of F , otherwise the same rule applies to the complete set of products.
Rule 22: Apply Rule 1 to the subset of products that will visit the less loaded ma- chine after the current one.
Rule 23: COVERT (that stands for “cost over time”) rule (Russell et al., 1987).
For this rule, the priority index is defined as follows:
⎪⎪
⎩
⎪⎪
⎨
⎧
≥
<
− ≤
<
=
WT 0
WT WT 0
WT
0 1
1
,
i i
i i i
i i
i
j i i
s if
s s if
s if
Z t
si and ti,j have been defined in Rule 6.
WTi is the sum of expected waiting time for product’s uncompleted operations.4
Thus, ∑
=
= ni
k j
j i
i WT,
WT , where k is the first uncompleted operation and ni the last operation of product .i 5
4 WTi is a look-ahead component of the dispatching rule. A way to evaluate this parameter if the sys- tem is not expected to change drastically over the short run is to consider that the current system status is a good representation of the future system status. This method is used in (Holthaus, 1999) and (Raghu and Rajendran, 1993).
We observe that the greater Zi, the greater the priority for product i.
It is difficult to anticipate the consequences of a dispatching rule when applied to a manufacturing system. Indeed, some rules are known to improve particular criteria. For example, FIFO is usually effective for minimizing the maximum flow time and the variance of flow times, Rules 1 and 2 tend to reduce WIP, etc. Never- theless, before applying a dispatching rule to a specific production system, it is worth testing the rule by simulation, and to restart the test when some parameters like system load, ratios of product types to manufacture, mean percentage of ma- chine breakdowns, etc., change significantly.