Upload
lcm3766l
View
217
Download
0
Embed Size (px)
Citation preview
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
1/19
manuscript No.
(will be inserted by the editor)
A greedy heuristic and simulated annealing approach for a
bicriteria flowshop scheduling problem with precedence
constraints - A practical manufacturing case
Samer Hanoun Saeid Nahavandi
Abstract This paper considers a flowshop scheduling problem with two criteria, where
the primary (dominant) criterion is the minimization of material waste and the sec-
ondary criterion is the minimization of the total tardiness time. The decision maker
does not authorize trade-offs between the criteria. In view of the nature of this problem,
a hierarchical (lexicographical) optimization approach is followed. An effective greedy
heuristic is proposed to minimize the material waste and a simulated annealing (SA)
algorithm is developed to minimize the total tardiness time, subjective to the constraint
computed for the primary criterion. The solution accuracy is compared with the opti-
mal solution obtained by complete enumeration for randomly generated problem sets.
From the results, it is observed that the greedy heuristic produces the optimal solutionand the SA solution does not differ significantly from the optimal solution.
Keywords Flowshop scheduling Lexicographical optimization Simulated anneal-
ing Multicriteria scheduling
1 Introduction
The problem of scheduling for minimizing material waste (cost) exists in many man-
ufacturing domains. Joineries, corrugated board plants and glass manufacturing are
typical examples. In joinery manufacturing, products such as kitchens, bathrooms,and cabinets are produced mainly from two materials. The cost of any product is de-
termined largely by the material used for the front, which is far more expensive than
the melamine material used for the sides and the rear. The dominant objective is al-
ways to increase the profit by minimizing the waste in the front material. Additionally,
the second objective is to minimize the tardiness of the jobs. The tardiness could,
in theory, be relaxed based on the schedule that provides the maximum cost savings,
however, achieving the minimum tardiness is required to satisfy the customers required
due dates. This multiobjective nature of the problem requires reaching an acceptable
Samer Hanoun Saeid Nahavandi
Centre for Intelligent Systems Research,Deakin University,Australiae-mail: [email protected]
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
2/19
2
compromise, where the quality of a solution has to satisfy the two criteria in the order
specified.
The multiobjective optimization problem (also called multicriteria) is the problemof finding the vectorX= [x1, x2, . . . , xk]T which will satisfy the following m inequality:
gi(X) 0, i= 1, 2, 3, . . . . . . , m (1)
thel equality constraints:
hi(X) = 0, i= 1, 2, 3, . . . . . . , l (2)
and optimize the objective vector
F(X) = [f1(X), f2(X), . . . . . . , f N(X)]T (3)
where X = [x1, x2, . . . , xk]T is the vector of decision variables and N is the number
of objective functions. The decision variables can either be all continuous within therespective lower and upper bounds (xL and xU) or a mixture of continuous, binary
(i.e., 0 or 1) and integer variables. The inequality and equality constraints restrict the
solution space to be searched for the optimal solutions and define the feasible region
for vector X. The number of equality and inequality constraints can be none, a few
or many depending on the application. For example, in manufacturing, the inequal-
ity constraints, g(x), which can be min or max (i.e., g(x) 0 or g(x) 0), are due
to equipment, material, safety and other considerations. Examples of inequality con-
straints are the requirement that the pressure in a die casting machine should be below
a specified value to avoid process run-away, failure of the material used for fabrication
and undesirable defective products. In chemical engineering, the equality constraints,
h(x) = 0, arise from mass, energy and momentum balances and can be algebraic and/ordifferential equations.
There have been tremendous efforts to solve multiobjective flowshop scheduling
problems. Evans [1] and Fry et al. [2] broadly classify the approaches as: (a) a priori
approaches in which the objectives are combined into one composite utility function
and only one solution (optimum solution) is computed (e.g., Nagar et al. [3]; Sridhar
and Rajendran [4]; Framinan et al. [5]); and (b) a posterioriapproaches in which a set
of efficient (or non-dominated or Pareto-optimal) solutions is developed and presented
to the decision maker to choose the best solution according to the preferences at the
time of decision making. (e.g., Framinan et al. [5]; Tkindt et al. [6]). The posteriori
approach is effective if it is hard to design one composite function to aggregate all
the objectives, it is unknown what the function looks like or minimizing the utilityfunction is computationally inaccessible. In such cases, the idea is to develop from the
set of solutions a subset that contains the optimum solution and let the decision maker
choose; thus following a generate-first-choose-later approach.
The use of these approaches is distinguished based on the decision makers prefer-
ences (ordering or relative importance of objectives and goals), and the presentation of
the solutions (unique solution or a set of Pareto optima). Marler and Arora [7] surveyed
the different methods for combining the criteria into one utility function for the priori
approach. A comprehensive literature survey of multicriteria scheduling problems and
solutions is given by Tkindt and Billaut [8].
In the case, no trade-off between the criteria is authorized by the decision maker,
lexicographical optimization is applied to minimize the objective functions in a lexi-
cographic order. The objective functions are arranged in order of importance and the
following optimization problems are solved one at a time:
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
3/19
3
minxX
Fi(X) (4)
subject to Fj (X) Fj (Xj),
j = 1, 2, . . . , i 1, i >1, i= 1, 2, . . . , k.
Here, i represents a functions position in the preferred sequence, and Fj (Xj) represents
the optimum of the j th objective function, found in the j th iteration. Note that, after
the first iteration (j = 1), Fj (Xj ) is not necessarily the same as the independent
minimum ofFj (X), because new constraints have been introduced.
For a bicriteria optimization, Hoogeveen [9] explains that if one performance cri-
terion, say f, is far more important than the other one g, then an obvious approach
is to find the optimum value with respect to criterion f, which is denoted by f, and
then choose from among the set of optimum schedules for f the one that performsbest on g . In the first stage, the value of the more important criterion f is minimized,
whereas in the second stage, the second criterion g is minimized subject to the addi-
tional constraint thatff. The resulting bicriteria problem is polynomially solvable
only, if the primary criterion is the minimax type, like Lmax, Tmax or fmax, and the
secondary criterion is one of
jCj , Lmax, Tmax or fmax and strongly NP-hard for
jwj Cj . The computational complexity is still open to some problems with
j
Ujas the primary criterion andLmax,Tmaxor Emaxas the secondary criterion [9]. Prob-
lems with minisum such as
jCj ,
jTj and
j
Fj criteria are more difficult to
solve and are combinatorial problems.
The methods and approaches for solving combinatorial scheduling problems are
classified into two groups: (a) finding the exact optimal solution using implicit enumer-ation methods which are based on either branch-and-bound or dynamic programming;
(2) finding a near optimal solution using heuristic techniques. Heuristics are catego-
rized as either constructive (e.g., Nawaz et al. [10], Panneerselvam [11]) or improvement
derived from meta-heuristic approaches, such as genetic algorithm (GA) and simulated
annealing (SA) (e.g., Reeves [12], Rajendran et al. [13], Noorul Haq et al. [14], Suman
[15]).
Simulated annealing, was formally introduced for solving combinatorial optimiza-
tion problems in 1983 by Kirkpatrick et al. [16], has since proven very effective for
obtaining an optimal solution to a single objective optimization problems and for ob-
taining a Pareto set of solutions for a multiobjective optimization problems [17], [18].
SA has been widely used to solve many scheduling problems, for job shop [19], openshop [20], and flowshop problems [21], [22]. A comprehensive review of SA for solving
single and multiobjective optimization problems is provided by Suman and Kumar [23].
Theoretical research focused for many decades on solving the m-machine, two-
machine and two-job flowshop problems to minimize the makespan. Methods such as
mathematical programming has been mainly used, while in practice, it has been aban-
doned because of its excessive computational burden and heuristic solution procedures
are being developed instead. Also, in industry, other objectives such as the total flow-
time and the total tardiness are becoming more important for some manufacturers
than the makespan. Research in flowshop scheduling should be inspired more by real
life problems rather than problems encountered in mathematical abstractions and must
be motivated by what the researchers can achieve rather that what is important.
This research is motivated by a real and practical flowshop industry problem exist-
ing in the joinery manufacturing domain. The scheduling of jobs is carried out under
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
4/19
4
the cost reduction and the tardiness objectives. The cost of the product is determined
by the amount of material sheets used in manufacturing. Minimizing the amount of
waste in each material sheet can minimize the number of material sheets required,therefore, increasing the profit. This can be achieved by scheduling jobs with similar
materials together. For example, given jobs J1 and J2 requiring 25 and 35 material
sheets respectively. For a savings factor of 5% in scheduling these two jobs together,
then the reduction in cost is $1500 for a material sheet of price $500. This shows the
amount of profit that can be achieved as well as the practicality of the problem.
The joinery setup resembles a flowshop model, where the jobs are processed through-
out five sequential stages. Each stage has a single machine. The stages required to
process a job depend mainly on the jobs type of operations (i.e., a job may skip some
stages according to its technological operations). All jobs are processed through the
first stage, which determines the total material cost. The tardiness of a job depends on
its number of operations, processing time of each operation, and the processing stagesit requires. The tardiness of a job is determined once its last operation is completed.
The decision maker orders the criteria by specifying a higher priority for the cost re-
duction criterion over the total tardiness time. This influences our methodology of the
proposed solution as maximizing the cost reduction criterion must be carried out first
before minimizing the total tardiness criterion.
In this paper, we introduce the problem and explain the formulation in Section 2.
Then, in Section 3, we present the proposed approach to solve the problem. In Section
4, the experimental results obtained are shown for the proposed algorithms. Finally,
Section 5 presents the conclusion.
2 Problem Description
The problem addressed in this paper can be described as follows. Given a set ofn jobs
to be processed through a five-stage flowshop (l = 5). Each stage has one machine
available (i.e., m(l) = 1). All jobs have to operate through stage 1, 3 and 4 but may
not operate through stage 2, and 5 depending on their technological requirements (i.e.,
type of operations). Each job Ji has ni operations and it is not necessary that ni =l
(3 ni 5). Jobs are manufactured from different material types. Jobs with similar
materials can be scheduled together in stage 1 to decrease the amount of material
waste. Every two jobs with the same material type have a savings factor, which shows
the reduction in material that can be achieved when producing the two jobs in sequencein stage 1. Each machine can perform only one operation at a time and the precedence
between the operations must be preserved (i.e., operation Oij+1 cannot start unless
operation Oij has finished). Figure 1 shows a schematic view of the possible routings
followed by the jobs depending on the operations each job is requiring. It is worth
noting that even though a job may have its own processing route, the job must visit
the stages in its order of operations. The tardiness of a job is determined based on the
completion time of its last operation and its due date.
It is desired to find the order (schedule) in which these n jobs should be processed
through the five-stage flowshop to minimize the material waste (maximize the cost
reduction) in stage 1 and minimize the total tardiness time throughout the five stages.
The decision maker does not authorize any trade-offs between the objectives. In this
case, the cost reduction criterion has a higher priority than the total tardiness time
criterion.
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
5/19
5
S1 S5S4S3S2
Fig. 1 Schematic view of the jobs routings in the five-stage flowshop
The problem of minimizing the material waste is found in other manufacturing
domains such as corrugated board plants and glass industry. For example, in corru-
gated board plants, corrugated board is produced from rolls of paper, and cut and slit
into sheets of board. Approximately 30 cardboard qualities are produced from approx-
imately 25 qualities of paper. Boxes are produced from these cardboard sheets. The
main objective is to schedule the jobs with the same quality of cardboard in order
for the slitting and cutting of that specific quality of cardboard into cardboard sheetsis optimized to minimize the material waste. The same objective exists in the glass
industry where products have different qualities as well as the used glass sheets.
In our presented problem, the following assumptions are made:
Jobs are available at time zero and no preemption is allowed (i.e., any started
operation has to be completed without interruptions).
A machine can perform only one operation at a time of the same type as the stage
it belongs to.
An operation of a job can be performed by only one machine at a time.
Once an operation has begun on a machine, it must not be interrupted. An operation of a job cannot be performed until its preceding operations are com-
pleted.
Operation processing time and number of operations for each job are known in
advance.
Each operation is processed as early as possible.
The first stage, stage 1, in the flowshop is the one affecting the cost of production.
Each jobi is produced using two materials (i.e material Ai and material Bi). The cost
of material A is far more expensive than the cost of material B. The profit revenue
is determined mainly by the number of sheets used from material A. Jobs may have
different types for material A but all have the same type for material B. Every two
jobs, i and k, with the same type for material A have a savings factor Sik, which
shows the reduction in material that can be achieved when producing the two jobs in
sequence, where Sik = Ski. Given the number of material sheets Xi and Xk and the
cost of material sheetCosti andCostk, the cost savings factor CSik and C Ski, whereCSik = CSki, is calculated as:
CSik =Costi (Xi+ Xk) Sik (5)
CSki =Costk (Xk+ Xi) Ski (6)
ifAi = Ak; 0 otherwise, where i= 1, . . . , n , k = 1, . . . , n
The total cost savingsC S, that must be maximized by sequencing the jobs in stage
1, is defined by
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
6/19
6
Table 1 Jobs and operation stages
S1 S2 S3 S4 S5
J1 X X X X XJ2 X X XJ3 X X X X
Job
Time
J1
J2
J3
Fig. 2 The schedule of jobs J1, J2, J3 through the five-stage flowshop
CS=
n
i=1
i
k=1
CSik (7)
For stage 2 to 5, the jobs operate based on the type of their operations. A job
proceeds directly to the stage that its current operation requires. In the case that the
machine in the required stage is busy, then the job waits until the current machine
finishes. Table 1 gives an illustrative example of three jobs J1, J2, and J3, and their
operating stages. Figure 2 and Figure 3 show the overall schedule throughout the
five stages, given that {J1 J2 J3} is the schedule that produces the maximum
cost savings in stage 1. It is not necessary for the jobs to be scheduled according to
the schedule produced from stage 1, however, it depends mainly on the number of
operations, types of operations and the processing time of the operations in stage 2 to
stage 5. This appears when operation S3 of job J2 starts before the same operation of
jobJ1 because S3 ofJ1 has to wait for its preceding operation to finish and stage 3 is
idle and not processing any jobs.The tardiness Ti of job i is determined by the completion time Ci of its last oper-
ation. It is calculated as:
Ti = max(0, Ci di) (8)
wheredi is the due date of job i.
The total tardiness T, that must be minimized, is calculated as:
T =
n
i=1
Ti (9)
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
7/19
7
Stage
Time
S1
S2
S3
S4
S5
Fig. 3 The schedule of the five stages for jobs J1, J2, J3
3 Proposed Approach
The proposed approach is based on heuristic solutions to obviate the inherent compu-
tational complexity of the problem. The approach consists of two phases; each acts on
solving one of the required criteria. The phases are carried out in order to satisfy the
priority ordering of the criteria.
In phase one, jobs with similar materials are clustered into batches and the schedule
that maximizes the total cost savings for each batch is computed using a greedy heuris-
tic. Clustering of jobs into batches increases the cost savings as jobs with different mate-rials have zero cost savings (i.e., cost saving between different batches equals zero). For
a set of materialsM={M1, M2, . . . , M k}, the constructed batches areB1, B2, . . . , Bk,
each with a computed optimum schedule S1, S2, . . . , S k and corresponding total cost
savings CS1, CS2, . . . , C S k. The global schedule produced by phase one is:
SG = S1+ S2+ . . . + Sk (10)
and its total cost saving is:
CSG =
k
i=1
CSi (11)
The constructed global schedule preserves that the total cost savings criterion is
always maximized and independent of the order in which the batches are sequenced.
For example, batches B1, B2, B3, with schedules S1 = {1, 3, 5}, S2 = {6, 2}, S3 =
{4, 8, 7} and corresponding total cost savings CS1 = 120, CS2 = 400, CS3 = 310, the
constructed global schedule SG will always have a total cost savings CSG = 830 for
all possible sequences of S1, S2, S3. This is achieved as the cost saving between the
batches equals zero.
In phase two, the batches are sequenced using a simulated annealing (SA) algorithm
to minimize the total tardiness time of the constructed global schedule SG. The batch
due date dbatch is considered to be the due date of the earliest job in the batch and
its processing time pbatch is the sum of processing times of all jobs in the batch. The
reason for choosing dbatch is to impose a high level of tightness on the SA algorithm
for achieving the global optimum solution.
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
8/19
8
dbatchi = min(d1, d2, . . . , dnb), i= 1 . . . k (12)
pbatchi =
nb
j=1
pj , i= 1 . . . k (13)
The tardiness Ti of each job is calculated based on its completion time and due
date. The completion time of a job is affected by 1) the position of the job in the global
scheduleSG, 2) the completion time of its last operation, 3) the number and processing
time of each operation and 4) the assignment algorithm used for allocating the opera-
tions to the designated stages. The assignment algorithm assigns the ready operation
to its designated stage once the stage is available and applies a FIFO (First-in-First-
out) dispatching rule for resolving the conflicts between waiting operations. The FIFO
rule is preferred over other dispatching rules such as SPT (shortest processing time),based on a manufacturing requirement to minimize the idle gaps between the jobs
operations.
3.1 Greedy Heuristic
In this section, the steps of the proposed greedy heuristic to maximize the cost savings
for each batch are presented. The algorithm computes a set of schedules for each batch
and the schedule with the maximum cost savings is considered the dominant schedule
for the batch.
Step 1 Input the following:
Number of jobs (nb) in the batch
The jobs in the batch [Ji, i= 1 . . . nb]
Cost savings matrix of the batch [CSi,j, i= 1 . . . nb,
j = 1 . . . nb]
Step 2 Initialize the following:
List of schedules Si,j = 0, i= 1 . . . nb, j = 1 . . . nb List of costs Ci = 0, i= 1 . . . nb
Step 3
/* Case only one job in the batch */
if nb = 1 thenS1,1 = J1proceed to Step 5
else
proceed to Step 4
end if
Step 4
/* Case two or more jobs in the batch */
for i= 1 to nb doSi,1 = Ji
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
9/19
9
Table 2 The cost savings matrix for a set of five jobs
J1 J2 J3 J4 J5
J1 0 3739.68 2626.68 3635.8 3005.1J2 3739.68 0 3339 3739.68 1840.16J3 2626.68 3339 0 3940.02 2018.24J4 3635.8 3739.68 3940.02 0 3339J5 3005.1 1840.16 2018.24 3339 0
Ci = 0
current job = Jifor k = 1 to nb 1 do
next job = Job with maximum cost savings value in row (CScurrent job)
and not currently in row (Si)Si,k+1 = next jobCi = CScurrent job,next jobcurrent job = next job
end for
end for
Step 5
return schedule Si that has the maximum Ci, i= 1 . . . nb
The proposed greedy algorithm is explained with the help of a numerical illustra-
tion. Consider five jobs with the same material type (i.e., all jobs belong to the samebatch) with their corresponding cost savings matrix presented in Table 2. The algorithm
computes a set of five schedules, each schedule has one of the given jobs as the starting
job. Once these schedules are computed, the schedule that has the maximum cost sav-
ingsC is considered the best schedule for these jobs. Each schedule is constructed in a
greedy manner based on the cost savings matrix. For example, in iteration i = 1, the
first computed schedule S1 starts with job J1, S1= {1}. During iteration k= 1, J2 is
added to S1 because J2 is the job with maximum cost savings value in CS1 and not
in S1,S1 = {1 2} and C1 = 3739.68. In iteration k= 2, J4 is added to S1 similar toJ2,S1 = {1 2 4} and C1 = 7479.36. Note that the algorithm avoids choosing J1 as
the job with the maximum cost savings because J1 already exists inS1. This condition
prevents any loops from occurring in the produced schedule. In iteration k = 3, J3satisfies the required condition leading to S1 = {1 2 43} and C1 = 11419.38.
Finally, in iteration k = 4, J5 is the last job which leads to S1 ={1 2 4 3 5}
and C1 = 13437.62. Figure 4 shows the greedy construction for schedule S1 at every
iteration of the algorithm. In each iteration, the possible choices are shown and the job
that has the maximum cost savings value and is not in S1 is considered to be the next
job selected.
The algorithm continues to compute the other remaining schedules (i.e., S2,S3,S4and S5) and finally returns schedule S3 = {34215}, the one that has the
maximum total cost savings among the computed set of schedules. Table 3 presents the
detailed summary of the procedure described above. It is worth noting that for n jobs,
the heuristic constructs n schedules and selects among the one that has the maximum
cost savings. The complexity of the heuristic is O(n2) compared toO(n!) for obtaining
the optimal schedule by enumeration.
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
10/19
10
1
2
45
3
4
35
3739.68
3635.83005.12626.68
3739.68
33391840
35
3940.023339
5
2018.24
j = 1
j = 2
j = 3
j = 4
Fig. 4 The greedy construction of schedule S1
3.2 Simulated Annealing
Simulated annealing (SA) is a meta-heuristic algorithm based on the basic idea of
neighborhoods. It was derived from the analogy between the simulation of the anneal-
ing of solid and the strategy of solving combinatorial optimization problems [16]. A
neighboring solution is derived from its originator solution by a random move, whichresults a new slightly different solution. This increases the chance of finding an im-
proved solution within a neighborhood more than in less correlated areas of the search
space. Also, SA overcomes the problem of getting stuck in local minima, by allowing
worse solutions (lesser quality) to be taken some of the time (i.e., allowing some uphill
steps). The simplicity of the approach and its substantial reduction in computation
time [24], [25] has made it a valuable tool for solving flowshop scheduling problems
with the objective of minimizing the tardiness [26], [27].
In this section the main components of the SA algorithm are presented. The im-
plementation details of the algorithm are described, as well as the procedure followed
for setting the parameters. The initial sequence of batches (i.e., initial solution) is
constructed using the EDD (earliest due date) rule and the Randomly Pairwise Inter-
change mechanism is used for obtaining the neighboring solution. The total tardiness
time Tis the cost function applied to each of the obtained neighboring solutions.
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
11/19
11
Table 3 Summary of the greedy heuristic algorithm
Iteration Iteration Schedule Cost
i k Si Ci1 {1} 01 {12} 3739.682 {124} 7479.363 {1243} 11419.384 {12435} 13437.62
2 {2} 01 {21} 3739.682 {214} 7375.483 {2143} 11315.54 {21435} 13333.74
3 {3} 01 {34} 3940.022 {342} 7679.73 {3421} 11419.384 {34215} 14424.48
4 {4} 01 {43} 3940.022 {432} 7279.023 {3421} 11018.74 {43215} 14023.8
5 {5} 01 {54} 33392 {543} 7279.023 {5432} 10618.024 {54321} 14357.7
3.2.1 Initial Temperature
The selection of an initial temperature value influences the behavior of the SA algo-
rithm. The starting temperature must be hot enough to allow a move to any neighbor-
hood state. If this is not done, then the ending solution will be the same (or very close)
to the starting solution. Ideally, if the maximum distance (cost function difference)
between one neighbor and another is known, then it can be used for determining the
starting temperature. One choice is starting with a too high value so as the search can
move to any neighbor, however, this transforms the search (at least in the early stages)
into a random search, but effectively, the search will act as a SA when the temperature
is cool enough. Another choice is starting with a very high temperature and cooling
it rapidly until about 60% of the worst solutions are being accepted. This forms an
accurate starting temperature and it can now be cooled more slowly.
In our approach, the initial temperature is chosen by experimentation. The range of
change, f0 in the value of the objective function with different moves is determined.
The initial value of temperature To is calculated based on the initial acceptance ratioo, and the average increase in the objective function, f0:
To = f0ln(o)
(14)
The following steps describe the algorithm used to calculate the value ofTo. Non-
improver solutions are accepted with a probability of about 95 percent in the primary
iterations (i.e., o = 0.95).
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
12/19
12
Step 1:
/* Q represents the number of samples */
for q= 1 to Q do
repeat
Generate two solutions X1 andX2 at random
until Z(X1) =Z(X2)
Tqo =|Z(X1)Z(X2)|
ln(0.95)
end for
Step 2:
To = 1
Q
Q
q=1Tqo
3.2.2 Cooling Schedule
The cooling schedule determines the way the temperature is changed. Enough iter-
ations should be allowed at each temperature, so that the system stabilizes at that
temperature; however, the number of iterations at each temperature to achieve this
might be very high compared to the problem size. As this is impractical, a compromise
is required. Either running large number of iterations at a few temperatures or a small
number of iterations at many temperatures or a balance between the two.
In our approach, the temperature is decremented in a proportional manner:
T(i + 1) = T(i) (15)
where is the cooling factor constant and chosen to be 0.98.
3.2.3 Number of Iterations
The number of iterations at each temperature is chosen so that the system is sufficiently
close to the stationary distribution at that temperature. Enough number of iterationsat each temperature are carried out to ensure that all represented states are searched
and to enable reaching the global optimum. For our problem, a 150 non-improving
iterations are used to terminate the current temperature level.
3.2.4 Stopping Criterion
Various stopping criteria have been developed: i) Total number of iterations and number
of iterations to move at each temperature. ii) A minimum value of temperature and
number of iterations to move at each temperature. iii) Number of iterations to move
at each temperature and a predefined number of iterations to get a better solution.
In our approach a final temperature value Tf equals to 5 percent of the initial
temperatureTo is used for stopping the algorithm (i.e., Tf = 0.05 To).
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
13/19
13
3.2.5 SA Algorithm
Table 4 summarizes the parameter settings for the SA algorithm. The following stepsrepresent the basic structure of the SA algorithm.
Step 1: Parameters Settings
Obtain the initial temperature To according to the preliminary experiment
Initialize non-improving iterations at each temperature (nt = 150), cooling factor
= 0.98 and final temperature Tf = 0.05 To
Step 2: Initial Solution
Generate initial sequence of batches using the EDD rule (the EDD rule is used
based on Johnson et al. [29] for starting with a good initial seed)
Construct the global schedule SG for
Assign operations of jobs in SG to stages in the flowshop and compute the total
tardiness time s
Step 3:
letT =To, best= , best= swhileTTf do
let n= 1whilen nt do
- Generate a neighbor sequence by randomly interchanging two batches in
- Construct the global schedule SG for
- Assign operations of jobs in SG to stages in the flowshop and compute s
if(s , s)< 0 then=
s = s
if(s , best)< 0 thenbest =
best = s
n= 1end if
else
Generate a random number U
if U
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
14/19
14
Table 4 Settings for the SA algorithm
Parameter Setting
Initial sequence EDD (earliest due date)Neighborho od structure Interchange two randomly selected batches
Initial temperature To = f0ln(o)
, o = 0.95
Cooling schedule T(i+ 1) = T(i), = 0.98Probability of acceptance Pa = exp(/T)Relative percentage deviation in cost func-tion
= (s s)100/s
Number of iteration per temperature 150 non-improving iterationFinal temperature Tf = 0.05To
4 Experimental Study
In this section, we address the computational results obtained from our proposed greedy
heuristic and the SA algorithm developed in this paper. The objective is to compare
the solution accuracy of the algorithms with the optimal solution for the addressed
problem. The optimal solution is obtained using the complete enumeration method.
The data for the set of problems used is randomly generated, based on existing rules in
the application domain under consideration. The data generation rules are summarized
as:
1. A job belongs to one of three size categories: small, medium and large. 30 percent
of jobs are small size jobs, 50 percent are medium size jobs, and 20 percent are large
size jobs. A small job consists of 20 to 30 material sheets, medium jobs consist of
40 to 60 material sheets and large jobs consist of 70 to 90 material sheet. All jobshave a ratio of 2:3 of front material (material A) to melamine material (material
B).
2. 80 percent of the jobs have a stage 5 operation, while 30 percent of the jobs have
a stage 2 operation.
3. The cost of a front material sheet ranges from $100 to $1000.
4. The savings factor ranges from 5 percent to 10 percent, depending mainly on the
design and layout of the job.
5. The set of front materials (material A) consists of 10 materials.
6. The processing time of one material sheet in stage 1 or stage 2 is approximately
10 minutes. For example, a small job consisting of 25 sheets would require around
250 minutes in stage 1 while a large job consisting of 80 sheets needs around 800minutes in stage 1. The processing time of the operations in stage 3 to stage 5 is
relative to the job size, design and layout. The job size determines the number of
material sheets while the design and layout specifies the number of pieces to cut
and the holes to drill on every sheet. Table 5 shows the range of the processing
times of the operations in stages 3 to 5 relative to the job size. The processing time
pi of job i is the sum of the processing times of its operations throughout the five
stages. It is calculated as:
pi =
5
k=1
Oik (16)
whereOik is the processing time of job i at stage k.
The due dates are generated with different levels of tightness as proposed in [28].
Once the processing times of all jobs are generated, the total processing time P =
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
15/19
15
Table 5 Range of processing times in stages 3 to 5 relative to the job size
Job Size Processing Times Range (in hours)
Stage 3 Stage 4 Stage 5
Small [0.5, 1] [3, 4] [8, 10]Medium [1, 2] [6, 7] [16, 20]Large [2, 3] [9, 10] [24, 30]
Table 6 Problem no. 1: Cost savings matrix for 5 jobs
J1 J2 J3 J4 J5J1 0 373 262 363 300J2 373 0 333 373 184J3 262 333 0 394 201J4 363 373 394 0 333
J5 300 184 201 333 0
Table 7 Problem no. 2: Cost savings matrix for 6 jobs
J1 J2 J3 J4 J5 J6J1 0 916 549 1133 879 961J2 916 0 357 845 1030 320J3 549 357 0 567 732 288J4 1133 845 567 0 881 453J5 879 1030 732 881 0 769J6 961 320 288 453 769 0
Table 8 Problem no. 3: Cost savings matrix for 7 jobs
J1 J2 J3 J4 J5 J6 J7J1 0 149 224 465 191 289 275J2 149 0 144 241 161 239 223J3 224 144 0 339 231 256 149J4 465 241 339 0 437 517 446J5 191 161 231 437 0 229 289J6 289 239 256 517 229 0 353J7 275 223 149 446 289 353 0
ni=1pi is computed. Then the due date for each job is generated from the uniform
distribution:
[P(1 T FRDD
2 )), P(1 T F+
RDD
2 ))] (17)
where T F is the average tardiness factor and RDD is the range of due dates. The
settings of T F = 0.6 and RDD = 0.4 are used. Note that these settings produce
tighter due dates.
The relative percentage deviation (RPD) in the objective value from the optimal
is used as the performance measured and is calculated as:
RP D=
Oheuristic OoptimalOoptimal 100 (18)
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
16/19
16
Table 9 Problem no. 4: Cost savings matrix for 8 jobs
J1 J2 J3 J4 J5 J6 J7 J8
J1 0 377 495 435 406 600 413 304J2 377 0 466 385 556 548 565 652J3 495 466 0 208 295 580 369 365J4 435 385 208 0 263 371 436 365J5 406 556 295 263 0 548 614 440J6 600 548 580 371 548 0 684 574J7 413 565 369 436 614 684 0 478J8 304 652 365 365 440 574 478 0
Table 10 Problem no. 5: Cost savings matrix for 9 jobs
J1 J2 J3 J4 J5 J6 J7 J8 J9J1 0 174 252 242 198 252 365 284 270
J2 174 0 165 348 240 110 185 216 121J3 252 165 0 226 145 156 180 270 193J4 242 348 226 0 444 264 453 503 317J5 198 240 145 444 0 261 416 249 185J6 252 110 156 264 261 0 300 210 154J7 365 185 180 453 416 300 0 298 255J8 284 216 270 503 249 210 298 0 191J9 270 121 193 317 185 154 255 191 0
Table 11 Problem no. 6: Cost savings matrix for 10 jobs
J1 J2 J3 J4 J5 J6 J7 J8 J9 J10J1 0 143 143 198 275 255 232 356 287 325
J2 143 0 99 182 184 95 154 181 171 196J3 143 99 0 202 158 171 232 113 171 98J4 198 182 202 0 284 282 314 223 169 259J5 275 184 158 284 0 240 246 304 309 209J6 255 95 171 282 240 0 202 245 243 193J7 232 154 232 314 246 202 0 299 337 206J8 356 181 113 223 304 245 299 0 245 187J9 287 171 171 169 309 243 337 245 0 276J10 325 196 98 259 209 193 206 187 276 0
Table 12 Computational results of the greedy heuristic for the sample problem set
Problem no. Jobs Optimal Solution Copt Heuristic Solution CHeu1 5 {34215} 1440 {34215} 14402 6 {614523} 4362 {614523} 43623 7 {1 4 6 7 5
32}1999 {1 4 6 7 5
32}1999
4 8 {3 6 7 5 2841}
3886 {3 6 7 5 2841}
3886
5 9 {3 8 4 7 56192}
2546 {3 8 4 7 56192}
2546
6 10 {21018597463}
2594 {21018597463}
2594
Additionally, the mean relative percentage deviation (MRPD) is calculated for each
problem set. The greedy heuristic is tested on problem sets consisting of 5, 6, 7, 8, 9 and
10 jobs. These jobs are all clustered in one batch (i.e they all have the same material).
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
17/19
17
Table 6 to Table 11 show the cost savings matrix for a sample of the problem sets. The
total cost savings using the greedy heuristic and the optimal total cost savings obtained
by the complete enumeration method are presented in Table 12. Results show that thegreedy heuristic achieves the optimal solution for the sample problem sets presented.
The heuristic was tested on a total number of 150 problem sets consisting of 5 to 10
jobs and achieved the optimal solution for every problem set.
The SA algorithm is tested on problem sets with combinations of n jobs and b
batches. The RPD is calculated for every problem and the MRPD for every problem
set to show the percentage of accuracy of the SA solution to the optimal solution. The
results are summarized in Table 13. The SA achieved the optimal solution for small size
problems and produced solutions within 0.56% of the optimal solution on the average
with a maximum deviation of 1.87%. Given the experimental results, the SA produced
very high quality solutions with low computational complexity based on the NP-hard
nature of the problem.
5 Conclusion
In this paper, a greedy heuristic and a SA algorithm were considered to minimize the
material cost and the total tardiness time. The problem is NP-hard and is significantly
practical for many industrial applications, especially in the joinery manufacturing. The
proposed greedy heuristic achieved the optimal solution for minimizing the material
total cost savings. This is proven by comparing the accuracy of the produced solution
to the optimal solution obtained by the complete enumeration method. Additionally,
the SA algorithm obtained solutions at a significant level of 0.56% from the optimalsolution. This shows that both algorithms are very practical for use by industry prac-
titioners based on their simplicity and low computations requirements.
In summary, the experimental results presented in this paper are very encouraging
and promising for the application of both the greedy heuristic and the SA algorithm
in the joinery manufacturing domain. For future work, the flowshop model will be ex-
tended to handle parallel machines in each stage. This research may also be extended
in the direction of providing the decision maker with the set of Pareto optimal solu-
tions by optimizing both criteria simultaneously, based on a linear composite objective
function, which gives the decision maker the flexibility of choosing the solution that
best satisfies his or her preferences.
References
1. Evans GW (1984) An overview of techniques for solving multiobjective mathematical pro-grams. Manage Sci 30:1268-1282
2. Fry TD, Armstrong RD, Lewis H (1999) A framework for single machine multiple objectivesequencing research. Omega 17:595-607
3. Nagar A, Heragu SS, Haddock J (1995) A branch and bound approach for a two-machineflowshop scheduling problem. J Oper Res Soc 46:721-734
4. Sridhar J, Rajendran C, (1996) Scheduling in flowshop and cellular manufacturing systemswith multiple objectives a genetic algorithmic approach. Prod Plan Control 7:374-382
5. Framinan JM, Leisten R, Ruiz-Usano R (2002) Efficient heuristics for flowshop sequencingwith the objectives of makespan and flowtime minimisation. Eur J Oper Res 141:559-569
6. Tkindt V, Billaut J-C, Proust C (2001) Solving a bicriteria scheduling problem on unrelatedparallel machines occurring in the glass bottle industry. Eur J Oper Res 135:42-49
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
18/19
18
Table 13 Computational results of the SA algorithm
Problem T RPD MRPD(nb) Optimal SA
10 5 45 45 020 5 226 230 1.7740 5 1386 1386 0 0.29560 5 3632 3632 080 5 6094 6094 0100 5 10186 10186 010 6 43 43 020 6 223 223 040 6 1558 1578 1.28 0.21360 6 3175 3175 080 6 8997 8997 0
100 6 10584 10584 010 7 25 25 020 7 206 208 0.9740 7 1579 1607 1.77 0.47160 7 2975 2975 080 7 6071 6071 0100 7 9605 9614 0.0910 8 40 40 020 8 366 366 040 8 1229 1252 1.87 0.64160 8 3089 3124 1.1380 8 6030 6053 0.38100 8 9462 9506 0.4710 9 32 32 0
20 9 192 195 1.5640 9 1211 1232 1.73 0.72560 9 2736 2748 0.4480 9 5400 5400 0100 9 10265 10329 0.6210 10 21 21 020 10 198 201 1.5240 10 1118 1132 1.25 1.0260 10 3358 3381 0.6880 10 4810 4872 1.29100 10 8860 8982 1.38
Average RPD 0.561
7. Marler RT, Arora JS (2004) Survey of multi-objective optimization methods for engineering.Struct Multidisc Optim 26:369-395
8. Tkindt V, Billaut J-C (2001) Multicriteria scheduling problems: A survey. RAIRO OperRes 35:143-163
9. Hoogeveen H (2005) Multicriteria scheduling. Eur J Oper Res 167:592-623
10. Nawaz M, Enscore E, Ham L (1983) A heuristic for the m-machine n-job flowshop se-quencing problem. Omega II:91-95.
11. Panneerselvam R (2006) Simple heuristic to minimize total tardiness in a single machinescheduling problem. Int J Adv Manuf Tech 30:722-726
12. Reeves CR (1995) A genetic algorithm for flowshop sequencing. Comput Oper Res 22:5-13
13. Rajendran C, Ziegler H (2004) Ant-colony algorithms for permutation flowshop schedulingto minimize makespan/total flowtime of jobs. Eur J Oper Res 155:426-38
14. Noorul Haq A, Saravanan M, Vivekraj AR, Prasad T (2006) A scatter search algorithmfor general flowshop scheduling problem. Int J Adv Manuf Tech 31:731-736
8/13/2019 A Greedy Heuristic and Simulated Annealing Approach for a Bicriteria
19/19
19
15. Suman B (2002) Multiobjective simulated annealinga metaheuristic technique for multi-objective optimization of a constrained problem. Found Comput Decis Soc 27:171-191
16. Kirkpatrick S, Gelatt CD, Vecchi MP (1983) Optimization by simulated annealing. Science
20:671-68017. Eglese RW (1990) Simulated annealing: a tool for operational research. Eur J Oper Res
46:271-281.18. Ehrgott M, Gandibleux X (2000) A survey and annotated bibliography of multiobjective
combinatorial optimization. OR Spektrum 22:425-460.19. Van Laarhoven PJM, Aarts EHL, Lenstra JK (1992) Job shop scheduling by simulated
annealing. Oper Res 40:113-12520. Liaw CF (1999) Applying simulated annealing to the open shop scheduling problem. IIE
T 31:457-46521. Dipak L, Chakraborty UK (2009) An efficient hybrid heuristic for makespan minimization
in permutation flow shop scheduling. Int J Adv Manuf Tech 44:559-56922. Varadharajan TK, Rajendran C (2005) A multi-objective simulated-annealing algorithm
for scheduling in flowshops to minimize the makespan and total flowtime of jobs. Eur J Oper
Res 167:772-79523. Suman B, Kumar P (2006) A survey of simulated annealing as a tool for single andmultiobjective optimization. J Oper Res Soc 57:1143-1160
24. Rajasekaran S (1990) On the Convergence Time of Simulated Annealing. University ofPennsylvania Department of Computer and Information Science, Technical Report No. MS-CIS-90-89
25. Bertsimas D, Tsitsiklis J (1993) Simulated Annealing. Statistical Science 8(1):10-1526. Ben-Daya M, Al-Fawzan M (1996) A simulated annealing approach for the one-machine
mean tardiness scheduling problem. Eur J Oper Res 93:61-6727. Parthasarathy S, Rajendran C (1997) A simulated annealing heuristic for scheduling to
minimize mean weighted tardiness in a flowshop with sequence-dependent setup times ofjobs-a case study. Prod Plan Control 8:475-483
28. Potts CN, Van Wassenhove LN (1991) Single machine tardiness sequencing heuristics. IIET 23(4):346-354.
29. Johnson DS, Aragon CR, Mcgeoch LA, Schevon C (1989) Optimisation by simulatedannealing: an experimental valuation. Part I, Graph partitioning, Oper Res 37:865-891.