You are on page 1of 16

Dynamic production planning and rescheduling for complex assemblies

Song, D.P.1, Hicks C.2 and Earl C.F.3


1
Department of Earth Science and Engineering, Royal School of Mines,
Imperial College, London, SW7 2BP, UK
2
Department of Mechanical, Materials and Manufacturing Engineering
University of Newcastle upon Tyne, NE1 7RU, UK
3
Department of Design and Innovation, The Open University
Walton Hall, Milton Keynes, MK7 6AA, UK

Email: Dongping.Song@ic.ac.uk, Chris.Hicks@ncl.ac.uk, C.F.Earl@open.ac.uk

ABSTRACT
This paper considers dynamic production scheduling for manufacturing systems
producing complex products with multiple levels of manufacturing and assembly. Two
types of dynamic planning problems are identified: (1) incremental planning which aims
to design a schedule for the incoming orders without affecting the schedules for the
existing orders; (2) regenerative planning which aims to regenerate a schedule for the
existing orders as well as for the new orders. This paper focuses on the incremental
planning issue and presents heuristic and Evolution Strategy methods to find optimal
schedules to minimise the total earliness and tardiness costs. Case studies using industrial
data from an engineer-to-order company demonstrate the effectiveness of the methods.

1 INTRODUCTION
Scheduling is defined as “the allocation of resources over time to perform a collection of
tasks” (Baker 1974). This involves both operation sequencing and timing on resources
(Baker and Scudder 1990). According to the availability of jobs prior to the creation of
the schedule, scheduling systems can be classified as static and dynamic. In static
scheduling, all jobs (orders or operations) are identified when creating the schedule, and
once the production sequences are defined, they are assumed not to be changed during
processing. In dynamic scheduling, jobs arrive dynamically over time and are scheduled
after arrival. A good survey of articles involving dynamic job shops scheduling was
presented in Ramasesh (1990). In engineer-to-order (ETO) manufacturing systems, each
order can be considered as a project involving many activities (manufacturing and
assembly) and resources (Earl et al, 2002). The interacting effects between dynamic
arriving orders are high. It is therefore necessary to perform dynamic production planning
for ETO products (Song 2001).

Dynamic scheduling or rescheduling is often triggered by unplanned events. Tang (2000)


identified four sources of unplanned events: (a) uncertainty in external demand; (b)
uncertainty in supply conditions; (c) effect of the rolling planning horizon; and (d) a
system effect which is caused by the above three uncertainty sources. Li et al. (1993)
stated that typical events to trigger the rescheduling include machine breakdowns, job
arrival or cancellation, job priority (or due date) changes, quality problems, over- or
underestimation of process times, shortage of materials, and being behind or beyond the
schedule because of transportation, tools or personnel delays. A rescheduling system
creates a new schedule by altering the schedule being used and adapting it to the new
shop status and production requirements.

Rescheduling can be done by either regeneration or net change. Regeneration aims to


produce a new schedule covering all unstarted operations while net change only produces
a schedule for part of operations (e.g. the operations contained in a newly arrived order).
These ideas are similar to those used in floor shop rescheduling.

A number of authors have studied rescheduling problems for a variety of scheduling


environments. Church and Uzsoy (1992) developed a hybrid event-driven rescheduling
strategy (i.e. combining periodically time-driven and event-driven modes) for single- and
parallel-machine models with dynamic job arrivals. Their system reschedules the facility,
periodically taking into account work that is already in the system. Regular events
occurring between routine rescheduling are ignored until the next rescheduling moment.
However, when an event is classified as an exception, immediate action should be taken,
with the entire facility being rescheduled and the resulting schedule implemented until the
next schedule generation point. Vieira et al. (2000) described analytical models that
predict the performance (such as average flow time and machine utilisation) of a single
machine system under periodic and event-driven rescheduling strategies in an
environment where different job types arrive dynamically and set-ups incurred when
production changes from one production to another. A first-in first-out rule based
algorithm was used to reschedule the new jobs up to the rescheduling moment, along with
those jobs from the last schedule that did not begin processing.

Yamamoto and Nof (1985) used a regeneration method in developing their scheduling
systems in job shop situations. The method reschedules the entire set of operations (or
jobs) including those unaffected by the change in conditions, demands and/or constraints.
They compared three scheduling procedures to deal with machine breakdowns. However,
they did not address the problems of other uncertainties such as rush orders, increased
priority and order cancellations. Matsuura et al. (1993) used simulation to investigate
rescheduling, and approached the problem by selecting between sequencing and
dispatching in the case of uncertainties. Where sequencing refers to establish an order for
all jobs while dispatching refers to the use of local rules for selection from the queue of
jobs. They claimed that it was desirable to maintain the initial sequences in a planning
period as much as possible from the standpoint of shop management and administrative
cost. A schedule is first determined by using a branch and bound technique. This
approach is switched to dispatching, which uses either the first come first served or
shortest processing time first rule, when there is a change in production conditions (e.g.
machine breakdown, specification changes and rush orders).

Li et al. (1993) considered the problem of rescheduling in response to changes that take
place on a factory shop-floor. They proposed a heuristic rescheduling algorithm that
revises schedules by rescheduling only those operations that need to be revised. One
limitation of the algorithm is that it can only deal with rescheduling when there is no
change in the existing operation sequence for each machine. They did not consider the
alternate operation sequences for rescheduling. Abumaizar and Suestka (1997)
investigated the rescheduling problem in a job shop situation in response to machine
breakdown disruptions. They did not consider the rescheduling response to new order
arrivals.
Jain and Elmaraghy (1997) dealt with a scheduling problem in flexible manufacturing
system, which was stated as: “given alternative process plans (routing flexibilities) for
each part, the objective is to find a feasible schedule for a given set of part types such that
some given performance criterion is optimised”. They used Genetic Algorithms to obtain
an initial schedule and then developed rescheduling algorithms that generated a new
schedule without re-evaluating all tasks in the old schedule. Four types of uncertainties
were considered: machine breakdown, the arrival of rush orders, increased order priority
and order cancellation. In each of above cases, tasks were performed in accordance with
the predetermined task sequence, even after the disturbance occurs. If a task was unable
to continue as scheduled, then based on its priority an attempt was made first to find an
alternative free machine. The system state such as machines and tasks status and ready
and completion time for each task were updated whenever a task either was ready to start
or was completed, or when an interruption occurred. They rescheduled only those tasks
which were to be scheduled at the time of interruption, hence focusing only on local
rescheduling.

Most of above papers addressed the rescheduling problems in job shop situations, which
implied that no assembly and product structure were considered. For complex products,
particularly ETO products, they involve many levels of manufacturing and assembly and
may highly interact with each other through competing for finite capacity resources. Little
has been done on rescheduling complex assemblies. This paper will deal with the
rescheduling problem for complex products by using heuristic and Evolution Strategy
optimisation methods. For simplicity, it is assumed that the operation processing times are
deterministic and the events to trigger rescheduling are the new order arrival (other
uncertainties such as stochastic processing times and machine breakdowns might be taken
into account during generating the initial schedule). Two sub-problems, incremental
planning and regenerative planning, are identified. Incremental planning aims to find a
schedule for the new coming orders without affecting the schedules for the existing orders
even if the same machines are required. Regenerative planning regenerates a schedule for
the operations in the new orders and for those unstarted operations in the existing orders.
This paper will only focus on the incremental planning problem. For regenerative
planning issue, one can refer to Song (2001).

2 INCREMENTAL PLANNING FOR ARRIVING ORDERS


A schedule for the new order consists of timing and sequencing of operations of the new
order subject to arising constraints. In addition to the constraints such as resource
constraints, operation precedence constraints, assembly co-ordination constraints and due
date constraints (which exist in static scheduling problems), there are two extra kinds of
constraints that must be considered in the incremental scheduling problem. Firstly, the
initial start time for the new order cannot be earlier than its arrival time. Secondly, the
resource constraints not only come from the same order but also from the existing orders.

When the production of the existing orders (that have been scheduled) is not allowed to
be affected, the net result of the existing orders can be “holes” in the capacity for a
resource. The incoming orders should be loaded to fill in these holes if they are feasible
for the arriving operations. However, if these holes are not large enough to perform the
operations in the new orders, then these operations should be performed at later or earlier
time.
2.1 Problem formulation
To formulate the problem, the following notation is required. Let Γ1, L1 and R1 denote the
total operation set, product set and resource set for the existing orders respectively. Let
Γ2, L2 and R2 denote the total operation set, product set and resource set for the new
arriving order respectively. Let Γ=Γ1∪Γ2, L=L1∪L2, R=R1∪R2. Other notation is defined
as follows.
si – the planned start time for item/activity i.
xi – the processing time for item/activity i.
ai – the actual processing start time for item/activity i.
ci – the actual processing completion time for item/activity i.
di – the due date for item/activity i.
hi / hi- – unit time earliness / tardiness costs for item/activity i.
Ci – the immediate predecessors (the “children” in the tree) of item/activity i.
ρ(i) – the item/activity that immediately follows the item/activity i in the product
structure.
ϕ(i) – the item/activity that immediately precedes the item/activity i on the resource r(i).
r(i) – the resource which performs the item/activity i.

The incremental planning aims to find an optimal schedule for all operations in Γ2 (i.e. si,
i∈Γ2) by minimising the following cost function
J(s) = ∑i∈Γ2\L2 hi(aρ(i) - ci) + ∑i∈L2 himax(di - ci, 0) + ∑i∈L2 hi-max(ci - di, 0) (1)
s.t. for any i∈Γ2
ai =max(si, cϕ(i), {cj | j∈Ci}) (2)
ci = ai + xi (3)
ai ≥ arrivalTime (4)
ai ≥ cj or ci ≤ aj, for any j∈{j∈Γ1 | r(j)=r(i)} (5)
Where s is a vector of si (i∈Γ2). Equation (2) represents the three constraints: planning
constraints (i.e. actual start times are later than planned start times), resource constraints,
and precedence constraints. Equation (3) represents that an operation is not allowed to be
interrupted. Inequalities (4) and (5) represent two new extra constraints for the operations
in the new coming orders. However, there are two special conditions that may eliminate
the constraint (5). First, if the new order arrival time is later than max{ci | i∈Γ1}, then
there is no interaction between the new order and the existing orders and (5) is satisfied.
Second, if R1∩R2 = φ, i.e. the new order and the existing orders have no common
resources, then (5) is also satisfied.

In the formulation of (1), the associated operation sequences of a schedule are implied by
timings. Therefore, the two parts of a schedule, sequences and timings, are treated
together. Traditionally, this optimisation problem is decomposed into two subproblems:
sequencing and timing (Baker and Scudder 1990). For example, it can be represented by
(Brandimarte and Maiocco 1999)
minsequences {mintimings J(s) | for fixed sequences}
The internal minimisation in the above expression aims to insert optimal idle times for
given sequences. It is relatively easy for single machine job-shop situations. Several
optimal timing algorithms were proposed with the complexity of O(nlogn) and O(n2),
where n is the number of operations (Garey et al. 1988, Yano and Kim 1991). However,
no research has been reported on the algorithm and complexity of optimal timing for
multiple machines with assembly operations. In addition, since external minimisation in
above expression is a discrete combinatorial optimisation problem, the solution space is
extremely large. This makes the internal timing algorithm critical because the internal
minimisation should be performed for each sequence. This is probably why Brandimarte
and Maiocco (1999) stated that solving timing sub-problem was a relatively time-
consuming task.

Instead of decomposing the scheduling problem into sequencing plus timing, this paper
aims to develop effective algorithms of directly timing. The sequences are therefore
implied by the timings.

To implement incremental planning, the horizontal finite loading scheme (Vollmann et al.
1992) is often employed. Horizontal loading loads one entire order (the order with the
highest priority) for all its operations, then the second highest priority order, and so on.
The lower priority orders are therefore filled in the idle periods of resources. In the
situation under study, it simply assumes that the incremental planning is performed
whenever a new order arrives. That means, the new order has a lower priority than
existing orders. Another related concept in the literature is job-oriented scheduling, which
schedules one job at a time where one job may have multiple sequential operations (e.g.
Yeh 1997).

Three methods are presented to deal with this problem. The first two are heuristic, which
are based upon forward and backward finite loading and priority rules. The ideas within
heuristic methods are extracted from Vollman et al. (1992) and Yeh (1997). The third is
the Evolution Strategy random search method based on Schwefel (1995).

2.2 Forward incremental planning


The main idea of forward incremental planning (FIP) is described as follows. It starts
from the new order arrival time and the ready-operation set that is composed of all
operations that have no preceding operation. First, it selects the highest priority operation
from the ready-operation set according to a specified priority rule. Based on the
information of resource capacity allocation for those existing orders, it finds the first
“feasible” idle period of the corresponding resource. Here “feasible” means that this idle
period is large enough to perform the selected operation and the start time of the new
operation is later than the order arrival time. After finishing the planning of the current
operation, check whether its immediately successive operation is ready. If it is, put this
operation into the ready-operation set. Then, select the next operation from the ready-
operation set. A feasible idle period for this operation must satisfy that the start time is
not earlier than the maximum of its immediately preceding operations’ completion times,
and this idle period should be large enough to perform the operation. This procedure
continues until all operations of the new order are planned.

The details of the FIP algorithm are omitted here. Let n1 denote the total number of
operations in the existing orders and n2 denote the number of operations in the new order.
Then, the computational complexity of FIP is less than O(n22+n1n2) (Song 2001).

Forward scheduling dispatches the operations as soon as possible. The resultant plan is
feasible but may be not good due to the following facts. Firstly, since the plan is designed
starting from the new order arrival time, the final product of the new order may be
finished much earlier than the due date if the work load is not tight. Secondly, dispatching
jobs as soon as possible may incur holding cost at downstream stages where the holding
cost is higher since value and time are added to the item. The first disadvantage can be
partially overcome by introducing an iterative procedure which replaces the order arrival
time by the initial planned start time. An optimal initial start time can then be found to
reach a trade-off between product earliness and tardiness.

2.3 Backward incremental planning


The backward incremental planning (BIP) procedure is as follows. It starts from the last
operation of the new order and its due date. Based on the information of resource capacity
allocation for those existing orders, it finds the first “feasible” idle period of the
corresponding resource that performs the last operation of the new order. Here “feasible”
means that this idle period is large enough to perform the operation and the processing
can be finished earlier than the product due date. Then, the next operation whose
successive operation has been planned is selected from those operations of the new order
according to some priority rules. A feasible idle period for this operation should satisfy
that it is large enough to perform the operation and the processing can be finished earlier
than its immediately successive operation’s start time. This procedure continues until all
operations of the new order are planned.

The BIP procedure is symmetrical to FIP, because BIP loads the operations of the
incoming orders backwards from the due dates whilst FIP loads the operations of the
incoming orders forwards from the arrival dates. The computational complexity of BIP is
also less than O(n22 + n1n2).

According to the backward incremental planning procedure, each operation of the new
order is scheduled as late as possible but not later than the due date. This is fulfilled by
scheduling the operation at earlier time if the resource idle period is not large enough to
perform this operation. However, note that there is a constraint (4) for the initial start time
of the new order, the resultant incremental plan may break (4) and become infeasible. If
this does occur, the product due date in the procedure should be replaced by a bigger
number (i.e. planned product due date or completion time) and an iterative procedure is
then required to find the appropriate planned product due date and the incremental plan.

2.4 Evolution Strategy incremental planning


For the heuristic method in above sections, it is not clear how close the results are to the
optimum. This section aims to find a global optimal or near-optimal solution by applying
the Evolution Strategy random search method. The idea is to generate timings of
operations directly and evaluate their costs in a random search. The problem with doing
this is that the timings which are generated may not correspond to a feasible schedule.
When the schedule is implemented it will not be possible to keep exactly to the timings.
Thus evaluating the cost of a generated schedule is not a trivial problem. It is necessary to
evaluate the cost of some implementation of the schedule, bearing in mind that the mode
of implementation chosen may not be the best for that schedule. This section describes
how to evaluate the timings first and then illustrates the outline of Evolution Strategy
method.

The performance (total cost) of a schedule is determined by simulating its


implementation. In the simulation, operations will start at actual start times {ai} with
actual completion times ci = ai + xi assuming that operations are not interrupted. Every
operation in the new orders will be processed exactly at the planned start times {si} if
there is no contention at resources during its processing duration. In this situation ai≡si.
However, when there is a queue of operations at a resource in the simulation then it is
necessary to decide which operation to start first. In the simulation used here the
operation in the queue with the earliest planned start time (EPST) is started first. In
addition, the processing of the operations in the new orders should not affect the
schedules for the existing orders. The simulation is discrete event driven by starting
events (activated by planned starting times {si}) and completion events (i.e. starting time
plus operation time. The events may belong to the existing orders). Several types of
constraint are applied. Precedence constraints specify that a starting event on an operation
cannot occur before all immediately preceding operations Ci are completed. Resource
constraints specify that two competing operations cannot be processed at the same time.
Planning constraints specify that an operation cannot start before its planned start time (ai
≥ si ). Incremental constraints specify that the operations in the new orders can only be
processed in the “holes” of the existing schedules. The detailed procedure of the discrete
event-driven (DED) simulation for evaluating cost incurred by a given incremental plan
{si, i∈Γ2} without affecting the processing of the existing orders is given by Song (2001).

The scheduling problem (1) is thus a numerical optimisation problem on timings. The
random search is applicable by using simulation to evaluate costs at each iteration.
Evolution Strategy (ES) is a stochastic search optimisation method that is based upon the
principle of biological evolution. Both ES and Genetic Algorithms (GA) have iterative
procedures which contain operators such as “selection”, “recombination/crossover” and
“mutation”. The apparent difference is that ES uses continuous variables and is thus more
suitable for numerical optimisation problems (Schwefel 1995, Schwefel and Back 1998).
GAs use either binary, string or real coding representations of the object variables suitable
for combinatorial problems.

Applying ES to scheduling is straightforward since the solution is characterised by start


times {si, i∈Γ2}. Figure 1 describes the structure of the algorithm. The chromosome of an
individual schedule can be represented by the vector s =(s1,s2, …). Each chromosome in
the offspring generation is created by crossover on two selected parents. Crossover
randomly chooses starting times of two operations in two parent schedules and
interchanges them. Mutation adds a random number from a Normal distribution N(0, σ)
to all the starting times in a schedule. The standard deviation σ represents the degree of
mutation allowed and is reduced by a factor α if there has been no improvement in NS
generations. An initial value σ0 is specified. The sizes of the parent and offspring
populations are specified as PP and PO, respectively. If PO > PP then the best PP
chromosomes are selected from the offspring population to form the parents of the next
generation.
Initialisation

Randomly select candidate(s)


from the parent population

Randomly copy elements from parents


Crossover
columnwise to generate offspring

Add a random number from Normal


Mutation
distribution for mutation
Reducing standard
deviation of mutation
if no improvement is Adjust the offspring
made in consective 1. Shift the whole schedule
NS generations 2. Reflect precedence constraints
3. Make it bigger than initial start time

Evaluate cost function for the offspring


by simulating DED model

No
Finish offspring generation ?

Yes
Select a set of best offspring
Selection
to replace the parent population

No
Check stop criteria ?
Yes
Return the vector of actual start times
as the optimal planned start times

Figure 1 Scheduling by Evolution Strategy method

After all offspring are generated, they can be adjusted so that significant and obvious
ways in which they fail to be feasible schedules are repaired. Three adjustment operations
are performed. Firstly, the whole schedule is shifted by a random number. This is optional
but it has been found to be effective if the initial solution is far away from the optimum,
e.g. if the initial solution is created by MRP backwards scheduling with infinite capacity.
Secondly, planned start times of each operation are adjusted so that they are larger than
preceding operations’ planned start times. This reflects precedence constraints. However,
this step is also optional since the execution of the discrete event-driven simulation model
implies precedence constraints. Experiments suggest that this step is helpful if the initial
solution is not too bad, but may reduce the search speed if the initial solution is far away
from the optimum. This can be partially explained by the fact that a poor si may result in
unsatisfactory planned start times for all those successive operations due to this
adjustment. Thirdly, planned start times are adjusted to be larger than the initial
production start time. This step is essential since the production is not allowed to start
before the initial start time (e.g. order arrival date). The adjusted schedule is simulated by
the discrete event-driven model and the corresponding cost is evaluated.

The discrete event-driven simulation is used to evaluate the cost for each offspring
schedule. Finally the procedure is terminated if there is no improvement within a total of
NG consecutive generations or the total number of generations reaches a specified limit N.

3 NUMERICAL EXAMPLES
In this section, three incremental planning methods, the forward incremental planning
(FIP), backward incremental planning (BIP) and Evolution Strategy Incremental Planning
(ESIP) are applied to three examples with data obtained from a collaborating capital
goods company (Hicks 1998). The characteristics of the scheduling problems are
summarised in table 1. The reason to choose the existing order is because this part has
large size and complex product structure (see figure 2). The selection of three cases of
new orders is based on: (a) they represent small, medium and large sizes; (b) the new
orders share several resources with the existing order.

Order Product code Machining/Assembly Existing/New


(Hicks 1998 ) operations = total Resources = total
Existing order 228 100/13 = 113 13/0=13
New order: case 1 448 8/9 = 17 1/1=2
New order: case 2 252 46/6 = 52 3/2=5
New order: case 3 312 102/7 = 109 2/3=5
Table 1 Characteristics of dynamic scheduling problems

228

229 237 245

230 238 242 246

231 234 239 243 247

226 232 233 235 236 240


241:7 244:9 248:8
:15 :12 :12 :10 :16 :11
...

...

...

...

...

...

...

...

...

15 opers 12 opers 12 opers 10 opers 16 opers 11 opers 7 opers 9 opers 8 opers

226:1 232:1 233:1 235:1 236:1 240:1 241:1 244:1 248:1

Figure 2 Product structure for the existing product 228 (Hicks 1998)
In all three cases, the existing order is the same. For simplicity, it is assumed that the
existing order is planned using forward finite loading method and the product is finished
exactly at its due date. Its initial start date is 0 and the due date is 144 days. The
complexities of the new orders in three cases are different. The total number of operations
varies such as 17, 52 and 109. The new order may use the existing or new resources,
which is described in the last column in table 1.

The work in progress holding costs (HC), product earliness cost (PEC), product tardiness
cost (PTC) and total cost (TotalC) are compared. Assume that the holding cost coefficient
after the operation i is hi = 0.01 × (sum of all operation times already spent on this item).
The increasing of holding cost coefficients can be partially explained by the cumulative
investment in the product. It is assumed that the product tardiness penalty coefficient is
twice the corresponding product earliness penalty coefficient, i.e. hl- = 2hl for l∈L. The
cost unit is in thousand pounds sterling (i.e. GBP(£)×1000). The costs of the existing
order are: HC=1963.77, PEC=PTC=0, TotalC=1963.77.

The priority rule used in the heuristic methods is the first in first out (FIFO/FCFS) for
FIP, and the last possible completion time last (LCT) for BIP. In each case, two situations
are investigated. One has a tight due date for the new order and the other has a relatively
loose due date.

For the FIP, as mentioned in section 2.2, two schedules can be obtained. One is obtained
by starting the incremental planning from the new order arriving time (denoted by FIP)
and the other is the optimal one by adjusting the initial start time (denoted by Opt_FIP).

For the BIP method, if the due date for the new order is loose it can yield a feasible
schedule. Otherwise, it may result in an infeasible solution whose initial start time is
earlier than the new order arrival time. However, an optimal feasible solution for BIP can
be obtained by adjusting the planned due date (i.e. product completion time) as mentioned
in section 2.3. In all three cases, for BIP method only the optimal feasible schedule is
given (denoted by Opt_BIP) since the initial BIP schedule may be infeasible.

For ESIP method, the initial parameters for their Evolution Strategy algorithm are PP=20,
PO/N=200/200, σ0=10.00, α=0.90, NS=10 and NG=50 with bisexual crossover for all three
examples. These values of initial parameters are based on the preliminary results of case
studies in Song (2001), which showed that they are appropriate for the similar size of
scheduling problems.

Example 1. The arriving date for the new order is 110 days. Two situations are
considered with due date 140 days (which is tight) and 160 days (which is loose)
respectively for the new order. The costs of the new order for these two situations under
FIP, Opt_FIP, Opt_BIP and ESIP planning methods are given in table 2.

Due date Method HC PEC PTC TotalC


FIP 56.15 0.00 144.80 200.95
d=140 Opt_FIP 42.49 0.00 144.80 187.29
(tight) Opt_BIP 47.68 0.00 133.73 181.42
ESIP 44.78 0.00 122.51 167.29

FIP 56.15 16.76 0.00 72.91


d=160 Opt_FIP 43.21 0.10 0.00 43.31
(loose) Opt_BIP 46.44 0.00 0.00 46.44
ESIP 42.55 0.02 0.00 42.57
Table 2 Costs for incremental planning methods in example 1

For the tight due date situation (d=140) in table 2, the new order is finished later than the
due date and there is no product earliness cost (PEC=0). According to the total cost, the
order of the methods from the best to the worst is: ESIP, Opt_BIP, Opt_FIP and FIP.

For the loose due date situation (d=160) in table 2, the new order can be finished before
the due date and there is no product tardiness cost (PTC=0). The best to the worst cases in
order are: ESIP, Opt_FIP, Opt_BIP and FIP. In addition, FIP incurs product earliness cost
due to the facts that it starts processing at the new order arrival time and the due date is
relatively loose.

Example 2. The arriving date for the new order is 50 days. Two situations are considered
with due date 120 days and 150 days respectively for the new order. The costs of the new
order for these two situations under FIP, Opt_FIP, Opt_BIP and ESIP planning methods
are given in table 3.

Due date Method HC PEC PTC TotalC


FIP 559.10 0.00 582.81 1141.91
d=120 Opt_FIP 400.70 0.00 635.81 1036.51
(tight) Opt_BIP 315.57 0.00 610.56 926.13
ESIP 309.36 0.00 609.31 918.67

FIP 559.10 26.60 0.00 585.69


d=150 Opt_FIP 400.70 0.10 0.00 400.80
(loose) Opt_BIP 314.31 0.00 0.00 314.31
ESIP 307.92 0.00 0.03 307.95
Table 3 Costs for incremental planning methods in example 2

For the tight due date situation in table 4, the results have the same pattern as those in
table 2. For both tight and loose due date situations, the order of the methods from the
best to the worst is: ESIP, Opt_BIP, Opt_FIP and FIP.

Example 3. The arriving date for the new order is 20 days. Two situations are considered
with due date 220 days and 250 days respectively for the new order. The costs of the new
order for these two situations under FIP, Opt_FIP, Opt_BIP and ESIP planning methods
are given in table 4.

Due date Method HC PEC PTC TotalC


FIP 3684.46 0.00 1013.97 4698.42
d=220 Opt_FIP 3683.12 0.00 1013.97 4697.09
(tight) Opt_BIP 2849.12 0.00 1094.36 3943.48
ESIP 2855.24 0.00 1013.97 3869.21

FIP 3684.46 404.98 0.00 4089.43


d=250 Opt_FIP 3667.88 0.51 0.00 3668.39
(loose) Opt_BIP 2849.12 0.00 0.00 2849.12
ESIP 2841.44 0.00 0.12 2841.56
Table 4 Costs for incremental planning methods in example 3

For both tight and loose due date situations in table 6, the order of planning methods from
the best to the worst is: ESIP, Opt_BIP, Opt_FIP and FIP. The ESIP and Opt_BIP are
quite close, but are much better than Opt_FIP and FIP.

In general, for the incremental planning problem, the following results can be observed
from above case studies.
(1). From the best to the worst, those methods are ordered by ESIP > Opt_BIP > Opt_FIP
> FIP.
(2). The Opt_BIP appears to be a good heuristic method, which has a performance close
to ESIP. The Opt_FIP and FIP are much worse than the ESIP.
(3). For the tight due date situation, all methods have zero product earliness cost and their
product tardiness costs are not significantly different.
(4). For the loose due date situation, product earliness and tardiness costs are equal or
close to zero for ESIP, Opt_BIP and Opt_FIP, but the FIP always incurs product
earliness cost.
(5). Since PEC and PTC are dependent on the due date situations and they are quite
similar for those planning methods, reducing the work-in-progress holding cost is
critical in the problems under study. That is, a good planning method should have
strong ability to reduce holding cost (HC).

An interesting application of incremental planning is to the environments where


resource maintenance should be taken into account. During the resource
maintenance periods, it is not allowed to perform any operation. If the resource
maintenance is regarded as an existing scheduled order that will be performed on
those resources, then the scheduling problem turns to be an incremental planning
problem, which aims to fill the operations in those resource non-maintenance
periods.

To intuitively show the detailed schedule for a dynamic production system, a Graphical
User Interface (GUI) program was developed using tcl-tk language. The program can
display the operation duration on each machine. As an example, the Gantt charts of
operations on resources for example 2 with d=120 days are shown in figure 3 ~ figure 4,
which correspond to the existing order, and the existing and new orders under ESIP. In
figure 3~4 the horizontal-axis represents the time and the vertical-axis represents the
different machines. Each bar or box represents an operation and its duration on the
corresponding machine. The second part of the graph indicates the infeasible operations
that violate the resource capacity constraints or precedence constraints. The total cost
(TotalC) consists of three parts (HC, PET and PTC) and is shown in the right-bottom
corner of the figures.
Note: the operation bar with bold frame represents the final product.
Figure 3 Gantt chart of the existing order
Note: the shadowed bars represents the operations in the new order.
Figure 4 Gantt chart of the existing and new orders under ESIP

In this example, the new order competes the machines 1000, 1211 and 1315 with the
existing order. Particularly, the machine 1211 is a bottleneck resource. Using ESIP
method, the operations of the new order on machine 1211 have to be scheduled at a late
time. This makes the new order be finished at d=148 days (see figure 4).

4 CONCLUSIONS
This paper addresses incremental dynamic planning problems when a new order arrives.
The new order arrival time may be random but the operation processing times are
assumed to be deterministic.
Three methods, Forward Incremental Planning (FIP), Backward Incremental Planning
(BIP) and Evolution Strategy Incremental Planning (ESIP), are presented to deal with the
incremental planning problem. The case studies show that in both tight and loose due date
situations (for the new order), the ESIP is the best and FIP is the worst. In some
situations, BIP has a close performance to ESIP.
The regenerative planning problem has been addressed in Song (2002). An interesting
result is that the Evolution Strategy Regenerative Planning (ESRP) provides a better
performance than ESIP at a cost of more computational effort. However, if the new order
is small, it appears that ESIP and ESRP have close optimal costs in both tight and loose
due date situations. Further research is required on rescheduling problems with other
uncertainties such as stochastic processing times and failure-prone machines.

REFERENCES
Abumaizar, R.J. and Suestka, J.A. (1997), Rescheduling job shops under disruptions.
International Journal of Production Research, 35, 2065-2082.
Baker, K.R. (1974), Introduction to sequencing and scheduling, Wiley & Sons, New
York.
Baker, K.R. and Scudder, G.D. (1990), Sequencing with earliness and tardiness penalties:
A review. Operations Research, 38(1), 22-36.
Brandimarte, P. and Maiocco, M. (1999), Job shop scheduling with non-regular objective:
a comparison of neighbourhood structures based on a sequencing/timing
decomposition, International Journal of Production Research, 37(8), 1697-1715.
Church, L.K. and Uzsoy, R. (1992), Analysis of periodic and event-driven rescheduling
policies in dynamic shops. International Journal of Computer Integrated
Manufacturing, 5, 153-163.
Earl C.F., Hicks C. and Song D.P. Planning and manufacture in complex enginer-to-order
products, The 4th International Conference on Integrated Design and Manufacturing
in Mechanical Engineering (IDMME 2002), Clermont-Ferrard, France, 14-16th May,
2002.
Garey, M.R., Tarjan, R.E. and Wilfong, G.T. (1988), One-processor scheduling with
symmetric earliness and tardiness penalties, Mathematics of Operations Research,
13(2), 330-348.
Hicks, C. (1998), Computer aided production management (CAPM) systems in make to
order/engineering to order heavy engineering companies, PhD Thesis, Newcastle
University.
Jain, A.K. and Elmaraghy, H.A. (1997), Production scheduling/rescheduling in flexible
manufacturing system, International Journal of Production Research, 35, 281-309.
Li, R.K., Shyu, Y.T. and Adiga, S. (1993), A heuristic rescheduling algorithm for
computer-based production scheduling systems, International Journal of Production
Research, 31, 1815-1826.
Matsuura, H., Tsubone, H. and Kanezashi, M. (1993), Sequencing, dispatching and
switching in a dynamic manufacturing environment, International Journal of
Production Research, 31, 1671-1688.
Ramasesh, R. (1990), Dynamic job shop scheduling: a survey of simulation research,
OMEGA International Journal of Management Science, 18(1), 43-57.
Schwefel, H.P. (1995), Evolution and Optimum Seeking, Wiley, New York.
Schwefel H.P. and Back,T. (1998), Artificial evolution: how and why?, in Genetic
Algorithm and Evolution Strategies in Engineering and Computer Science, Edited by
Quagliarella,D., Periaux,J., Poloni,C. and Winter,G., John Wiley & Sons, England,
pp1-20.
Song, D.P. (2001), Stochastic models in planning complex engineer-to-order products,
PhD Thesis, Newcastle University.
Tang, O. (2000), Planning and Replanning within the Material Requirements Planning
Environment - A Transform Approach. Profile 16, Production-Economic Research in
Linkoping, Sweden, ISBN 91-971999-6-6.
Vieira, G.E., Herrmann, J.W. and Lin, E. (2000), Analytical models to predict the
performance of a single-machine system under periodic and event-driven
rescheduling strategies, International Journal of Production Research, 38(8), 1899-
1915.
Vollmann, T.E., Berry, W.L. and Whybark, D.C. (1992), Manufacturing Planning and
Control Systems, Irwin, Homewood, IL.
Yamamoto, M. and Nof, S.Y. (1985), Scheduling/rescheduling in the manufacturing
operating system environment. International Journal of Production Research, 23,
705-722.
Yano, C.A. and Kim, Y.D. (1991), Algorithms for a class of single machine weighted
tardiness and earliness problems, European Journal of Operational Research, 52,
167-178.
Yeh, C.H. (1997), A fast finite loading algorithm for job oriented scheduling, Computer
and Operations Research, 24(2), 193-198

You might also like