Graduate Theses, Dissertations, and Problem Reports
2001
Scheduling flexible flowshops with sequence -dependent setup
Scheduling flexible flowshops with sequence -dependent setup
times
times
Kanchana Sethanan
West Virginia University
Follow this and additional works at: https://researchrepository.wvu.edu/etd
Recommended Citation Recommended Citation
Sethanan, Kanchana, "Scheduling flexible flowshops with sequence -dependent setup times" (2001). Graduate Theses, Dissertations, and Problem Reports. 2349.
https://researchrepository.wvu.edu/etd/2349
This Dissertation is protected by copyright and/or related rights. It has been brought to you by the The Research Repository @ WVU with permission from the rights-holder(s). You are free to use this Dissertation in any way that is permitted by the copyright and related rights legislation that applies to your use. For other uses you must obtain permission from the rights-holder(s) directly, unless additional rights are indicated by a Creative Commons license in the record and/ or on the work itself. This Dissertation has been accepted for inclusion in WVU Graduate Theses, Dissertations, and Problem Reports collection by an authorized administrator of The Research Repository @ WVU. For more information, please contact [email protected].
SCHEDULING FLEXIBLE FLOWSHOPS
WITH SEQUENCE DEPENDENT SETUP TIMES
Kanchana Sethanan
Dissertation submitted to the
College of Engineering and Mineral Resources
at West Virginia University
in partial fulfillment of the requirements
for the degree of
Doctor of Philosophy
in
Decision Sciences and Production System
Wafik H. Iskander, Ph.D., Chair
Alan R. McKendall, Jr., Ph.D.
John L. Harpell, Jr., D.B.A.
Majid Jaraiedi, Ph.D.
Ralph W. Plummer, Ph.D.
Department of Industrial and Management Systems Engineering
Morgantown, West Virginia
2001
Keywords: Flexible Flowshop, Hybrid Flowshop, Dependent Setup Times,
Tabu Search, Heuristics
ABSTRACT
Scheduling Flexible Flowshops with Sequence Dependent Setup Times
Kanchana Sethanan
This dissertation addresses the scheduling problem in a flexible flowshop with sequence-dependent setup times. The production line consists of S production stages, each of which may have more than one non-identical (uniform) machines. Prior to processing a job on a machine at the first stage, a setup time from idling is needed. Also sequence dependent setup times (SDST) are considered on each machine in each stage. The objective of this research is to minimize the makespan. A mathematical model was developed for small size problems and two heuristic algorithms (Flexible
Flowshop with Sequence Dependent Setup Times Heuristic (FFSDSTH) and Tabu
Search Heuristic (TSH)) were developed to solve larger, more practical problems. The FFSDSTH algorithm was developed to obtain a good initial solution which can then be improved by the TSH algorithm. The TSH algorithm uses the well-known Tabu Search metaheuristic. In order to evaluate the performance of the heuristics, two lower bounds (Forward and Backward) were developed. The machine waiting time, idle time, and total setup and processing times on machines at the last stage were used to calculate the lower bound. Computational experiments were performed with the application of the heuristic algorithms and the lower bound methods. Two quantities were measured: (1) the performance of the heuristic algorithms obtained by comparing solutions with the lower bounds and (2) the relative improvement realized with the application of the TSH algorithm to the results obtained with the FFSDSTH algorithm. The performance of the heuristics was evaluated using two measures: solution quality and computational time. Results obtained show that the heuristic algorithms are quite efficient. The relative improvement yielded by the TSH algorithm was between 2.95 and 11.85 percent.
iii
ACKNOWLEDGEMENTS
I am deeply grateful to my dissertation advisor, Dr. Wafik Iskander, who spent
numerous hours to share his knowledge and intelligence. He continuously provided
valuable guidance, comments, and encouragement throughout this work. He has
always been available for help and advice in a friendly atmosphere that inspired
creativity and motivation. Without his help, I would have never finished this research.
I am also grateful to my dissertation committee, Dr. John Harpell, Dr. Alan
McKendall, Dr. Majid Jaraiedi, and Dr. Ralph Plummer, for their positive comments and
suggestions, which greatly improved the quality of this research.
I am profoundly grateful to my dearest friends in Thailand who always gave me
excellent encouragement throughout my graduate studies in the USA. I also thank Thai
students and fellow graduate students in the Industrial and Management Systems
Engineering Department at West Virginia University, who made my life and stay in
Morgantown such a joyful and truly exceptional experience.
Special thanks to the department of Industrial and Management Systems
Engineering, West Virginia University, which furnished hospitality for learning and
conducting research and provided me with financial support throughout my graduate
years in the department.
Finally, my deep appreciation goes to my parents, sisters, and brother, no matter
how far you were, you were always there for me. Your endless love, confidence, great
support, and excellent encouragement were crucial to my accomplishments and my
iv
Dedicated to Luang Por Prarajchabhavanavisuthi, my parents Sunee and Pichai Sethanan, my sisters Wachiraporn and Amornrat Sethanan,
v
TABLE OF CONTENTS Page ABSTRACT... ii ACKNOWLEDGEMENTS... iii DEDICATION... iv TABLE OF CONTENTS... vLIST OF TABLES... viii
LIST OF FIGURES... xi
CHAPTER 1: INTRODUCTION... 1
1.1 Background... 1
1.1.1 Scheduling ... 1
1.1.2 The Place of Scheduling within an Organization... 4
1.1.3 Classification of Sequencing Problems... 6
1.1.4 The General Flowshop Scheduling Problem... 7
1.1.5 A Flexible Flowshop Environment ... 9
1.1.6 Dependent Setup Times... 9
CHAPTER 2: STATEMENT OF THE PROBLEM... 13
2.1 Introduction ... 13
2.2 Manufacturing Background ... 14
2.3 Problem Statement ... 15
2.4 Assumptions ... 16
2.5 Research Objectives... 17
CHAPTER 3: LITERATURE REVIEW... 18
3.1 Introduction and Overview ... 18
vi
3.3 Flowshop Scheduling Models... 21
3.3.1 Flowshop Scheduling Models without SDST Considerations... 21
3.3.2 Flowshop Scheduling Models with SDST Considerations... 25
3.3.3 Applications of Tabu Search to the Flowshop Scheduling Problem ... 32
CHAPTER 4: EXACT ALGORITHM... 39
4.1 Introduction ... 39
4.2 Mathematical Formulation... 39
CHAPTER 5: HEURISTIC ALGORITHMS... 48
5.1 Phase 1: Obtaining an Initial Solution Using the FFSDSTH Algorithm... 48
5.1.1 Start Time Determination ... 54
5.1.2 A Detailed Description of the FFSDSTH Algorithm... 56
5.2 Illustration of the FFSDSTH Algorithm ... 74
5.3 Phase 2: Improving the Initial Solution Using the TSH Algorithm ... 98
5.3.1 Implementing the TS Heuristic with the FFs(Qm1, Qm2,…,Qms)/Sipm/Cmax Problem... 98
5.3.2 Tabu List ... 101
5.3.3 Neighborhood Size... 104
5.3.4 Tabu Restriction ... 105
5.3.5 Admissible Moves ... 110
CHAPTER 6: LOWER BOUNDS... 121
6.1 Introduction ... 121
6.2 Lower Bound Determination... 121
6.2.1 Forward Method ... 125
vii
6.3 Illustration of the Lower Bound Calculations... 132
CHAPTER 7: COMPUTATIONAL EXPERIMENTS... 143
7.1 Introduction ... 143
7.2 Comparison of the Results of Heuristic Algorithms with the Lower Bounds... 145
7.3 Comparison between the FFSDSTH Algorithm and the TSH Algorithm ... 154
CHAPTER 8: CONCLUSIONS AND RECOMMENDATIONS... 158
8.1 Introduction ... 158
8.2 Summary of the Research ... 158
8.3 Contribution of the Research ... 160
8.4 Recommendations of for Future Research... 160
REFERENCES... 162
APPENDICIES... 167
APPENDIX A ... 168
APPENDIX B ... 174
viii
LIST OF TABLES
Table 3.1 Summary of Previous Research on
FFS Scheduling Problems... 30
Table 4.1 The Notation Used in the Mixed Integer Programming Model... 41
Table 4.2 Speeds of Machines at Each Stage... 44
Table 4.3 Processing Time of Each Product at Each Stage on the Standard Machine ... 45
Table 4.4 Setup Time from Idling for Each Product in Stage 1 ... 45
Table 4.5 Changeover Times between Products of Each Stage... 46
Table 5.1 Speeds of Machines at Each Stage... 74
Table 5.2 Processing Time of Each Product at Each Stage on the Standard Machine ... 75
Table 5.3 Setup Time from Idling for Each Product in Stage 1 ... 75
Table 5.4 Changeover Times between Products of Each Stage... 76
Table 6.1 Processing Times on the Fastest Machine at Each Stage and Changeover Times of Each Product on Each Stage... 133
Table 6.2 The Summations of Setup Time from Idling of the First Stage and Cumulative Processing Times of Each Product on the Fastest Machine from Stages 1 through S-1 ... 134
Table 6.3 The Values of CT(i) and β(i) Used to Calculate the Backward Lower Bound ... 138
Table 7.1 Values of Parameters Used with the Different Data Types ... 144
Table 7.2 Computational Results for Set 1 Type A: Heuristic Algorithms vs. Lower Bound ... 146
ix
Table 7.3 Computational Results for Set 1 Type B:
Heuristic Algorithms vs. Lower Bound ... 147
Table 7.4 Computational Results for Set 1 Type C:
Heuristic Algorithms vs. Lower Bound ... 147
Table 7.5 Computational Results for Set 1 Type D:
Heuristic Algorithms vs. Lower Bound ... 148
Table 7.6 Computational Results for Set 1 Type E:
Heuristic Algorithms vs. Lower Bound ... 148
Table 7.7 Computational Results for Set 1 Type F:
Heuristic Algorithms vs. Lower Bound ... 145
Table 7.8 Computational Results for Set 2 Type A:
Heuristic Algorithms vs. Lower Bound ... 145
Table 7.9 Computational Results for Set 2 Type B:
Heuristic Algorithms vs. Lower Bound ... 150
Table 7.10 Computational Results for Set 2 Type C:
Heuristic Algorithms vs. Lower Bound ... 150
Table 7.11 Computational Results for Set 2 Type D:
Heuristic Algorithms vs. Lower Bound ... 151
Table 7.12 Computational Results for Set 2 Type E:
Heuristic Algorithms vs. Lower Bound ... 151
Table 7.13 Computational Results for Set 2 Type F:
Heuristic Algorithms vs. Lower Bound ... 152
Table 7.14 Average of Computational Results for Sets 1 and 2 for all Data Types
Heuristic Algorithms vs. Lower Bound ... 152
x
Table 7.16 Relative Improvement Results for the Different Data Types in Set 2:.... 155
xi
LIST OF FIGURES
Figure 1.1 Information Flow Diagram in a Manufacturing System
(Pinedo, 1995)... 5
Figure 1.2 A Classification of Sequencing Problems ... 7
Figure 1.3 A Schematic Representation of a Flexible Flowshop Environment ... 10
Figure 3.1 The General Tabu Search Technique ... 35
Figure 3.2 Selecting the Best Admissible Move... 36
Figure 5.1 A Process Flow of the FFSDSTH and TSH Algorithms... 49
Figure 5.2 Flowchart of the Look Ahead Rule... 69
Figure 5.3 The Assignment of all Families to the First-Stage Machines... 82
Figure 5.4 Sequences of Products on the Machines at Stage 1 ... 88
Figure 5.5 Final Sequences of Products on the Machines at Stage 1... 90
Figure 5.6 Product Sequences on Machines at Stage 2 ... 96
Figure 5.7 Sequences of Products on Machines at the Last Stage... 97
Figure 5.8 Tabu List of a Move (s,m1,x,m2,y)... 102
Figure 5.9 Tabu Restriction when Jobs are Moved within a Machine ... 106
Figure 5.10 Tabu Restriction when Jobs are Moved between Machines ... 108
Figure 5.11 Flow Process of Moving Families between (or within) Machines at the First Stage... 115
CHAPTER 1 INTRODUCTION
1.1. Background
1.1.1 Scheduling
Scheduling is defined as the determination of relative position of jobs with
respect to a processing machine, including the assignment of definite times at which
processing occurs (Nawaz et al., 1983). Another view of scheduling is defined as
the "allocation of limited resources to jobs over time to perform a number of tasks"
(Baker, 1974, p. 2). Examples of resources include machines, operators, facilities,
computers, and transporters.
The problem of scheduling n jobs on m machines is one of the classical
problems in flowshop manufacturing that have been studied by researchers for
many years. Additionally, scheduling plays an essential role in the entire
manufacturing system. Production scheduling problems exist frequently in
production environments whenever resources are required to perform a set of
operations on jobs, and also when each operation can be accomplished in more
than one way (Randhawa & Kuo, 1997). Normally, there are two categories of
constraints that are commonly found in scheduling problems. First, there are
restrictions on the capacity of available resources and, second, there are
technological limits on the order in which jobs can be performed. Resource
constraints generally refer to processor capacities and limitations. Technological
constraints include alternative routing and precedence relationships. Alternate
routing means that the product can be produced on more than one processor, while
precedence constraints mean that the processor cannot process a specific job if
machines to various jobs and determination of the order in which the jobs will be
performed in order to optimize some criteria while satisfying the shop constraints.
Generally, there are three issues concerned with scheduling jobs on a set of
machines (Cheng & Sin, 1990):
1. What machine should be allocated to which job?
2. How to sequence the jobs in order to obtain the best schedule and meet the
constraints?
3. How can the reasonableness of a schedule be rationalized?
Hence, the scheduler wishes to optimize some measures of effectiveness
(such as minimization of makespan, mean flow time, lateness, or inventory) which
may vary from one situation to another, and to satisfy the production constraints
(e.g. production requirements, resource capacities, or operation procedures).
There are three issues that need to be specified when defining a scheduling
problem. These three issues, as presented by Cutright (1990), are:
1. Length of planning horizon,
2. Nature of tasks that will be scheduled, and
3. Criteria used to determine the best schedule.
Planning Horizon
Planning (time) horizons are usually classified as long-term,
intermediate-term (or medium-intermediate-term), and short-range. Long-intermediate-term planning typically involves
capacity and strategic issues and is the responsibility of the top management.
Management formulates policy-related questions such as gross labor-hours,
machine-hours, floor space, customer policies, new product development, research
long-term planning horizon is at least five years. This research assumes that all
long-term decisions have been made.
Once the long-term planning is made, operation managers begin
intermediate-range planning in order to meet the objectives of the firm, subjected to
a set of constraints imposed by the long-range planning decisions. Intermediate
planning involves activities such as the determination of production plans, workforce
levels, and forecasting product demand. Typically, the time horizon of short range
planning is in months. It is also assumed in this research that all of these decisions
have been determined and that workforce levels are fixed.
Short-range planning is dependent on both long and intermediate-range
planning decisions. Operations managers make these plans in conjunction with
supervisors and foremen who desegregate the intermediate plan into weekly, daily,
or hourly schedules. Short-range planning uses the production plan and workforce
level from the intermediate planning stage to determine job scheduling through the
resources in order to meet the criteria. The time horizon of short-range planning is
usually in days.
Nature of the tasks in the shop-floor system
The nature of tasks (or jobs) to be scheduled involves the following issues
and questions:
1. Can a job be split in case there are more than one processors capable of
performing it?
2. Are there several processors that can perform the same job?, or
Scheduling Criteria
Scheduling criteria are always a function of completion time of the jobs and
may also be a function of the due date. Examples include minimization of flow time,
lateness, or tardiness.
1.1.2 The Place of Scheduling within an Organization
The scheduling function must interface with many other important functions
in the manufacturing systems (e.g. production planning, master production planning,
material and capacity planning, etc.) as shown in the information flow diagram in
Figure 1.1. In order to provide the departments in an organization access to the
necessary scheduling information and enable the departments to provide the
scheduling system with relevant information (e.g. changes in jobs’ data and status
of machines), a management information system (MIS) or a decision support
system (e.g. forecasting, aggregate planning, and master production scheduling) is
probably needed (Chen, 1997). The process of scheduling begins with capacity
planning (also called long-term planning) which involves facility and equipment
acquisition. Intermediate planning includes aggregate and master production
planning. In the aggregate planning stage, decisions regarding the use of facilities,
people, and inventories are made. The master schedule then desegregates the
aggregate planning and develops an overall schedule for outputs. Short-term
schedules then translate capacity decisions, intermediate planning, and master
schedules into job sequences, specific assignments of personnel, machinery, and
ORDERS, DEMAND FORECASTS CAPACITY STATUS
SCHEDULING CONSTRAINTS MATERIAL REQUIREMENT
SCHEDULING
SCHEDULE PERFORMANCE
SHOP STATUS
DATA COLLECTION JOB LOADING
PRODUCTION PLANNING , MASTER SCHEDULING MRP, CAPACITY PLANNING SCHEDULING AND RESCHEDULING DISPATCHING SHOPFLOOR MANAGEMENT SHOPFLOOR
1.1.3 Classification of Sequencing Problems
To classify the major scheduling models, it is necessary to characterize the
configuration of resources and the nature of tasks. For instance, a model may
contain one resource type (single-stage problems) or several resource types
(multistage problems). If the set of tasks available for scheduling does not change
over the time, the system is called static. Conversely, if new tasks arise over time,
the system is called dynamic (Baker, 1974).
Day and Hottenstein (1970) depict a schema for classifying sequencing
problem as presented in Figure 1. 2. The framework shows that the sequencing
problems have been categorized according to the following components:
1. the nature of job arrivals, such as fixed batch size or continuous arrivals which
are given by a probability density function.
2. the number of machines involved, for instance, single machine production
(m = 1) or multi-machine production (m > 1), and
3. the nature of job route.
Further classification could be added to this figure which would include
characteristics such as setup time (e.g. dependent or independent of job sequence
on a given machine) and due date considerations.
This research focuses on a static scheduling problem: A flexible (hybrid)
flowshop with dependent setup times, which minimizes the maximum completion
time of all jobs. The jobs are available at time zero and have sequence dependent
setup times on machines at each production stage. All parameters such as
1.1.4 The General Flowshop Scheduling Problem
Flowshop scheduling problems can be classified into two categories: general
flowshop and permutation flowshop (Pinedo, 1995; Chen,1997). For the
permutation flowshop, each of the n jobs is processed on the machines (m =1, 2,
..., M) in the same order (Osman & Potts, 1989). On the other hand, the processing
sequences of jobs on machines from one stage to another could be different in the
general flowshop. In addition, flowshop scheduling may be classified as static or
SEQUENCING PROBLEM
MXN PROBLEMS
(FIX BATCH SIZE)
CONTINUOUS ARRIVALS (STOCHASTIC PROCESS) ONE MACHINE PROBLEM MULTI-MACHINE PROBLEM MULTI-MACHINE QUEUEING PROBLEM SINGLE CHANNEL QUEUEING PROBLEM PARALLEL ROUTING SERIAL ROUTING
(FLOWSHOP&JOBSHOP)
HYBRID SHOP PARALLEL ROUTING
SERIAL ROUTING
(FLOWSHOP&JOBSHOP)
HYBRID SHOP
(STATIC CASE)
(DYNAMIC CASE)
ROUTINGS
ROUTINGS
dynamic. In general, a static scheduling problem specifies a number of n jobs and
an optimal schedule is to be found with respect to the n jobs only (Dudek et al.,
1992), while a dynamic scheduling problem specifies that jobs are constantly
entering and leaving the job file according to some probability distribution in the
stochastic process (Day & Hotenstein, 1970).
The majority of the research published has thus far been devoted to the
static problem. The early work started with Johnson (1954) for the two-machine
case. Johnson's algorithm finds an optimal sequence that minimizes the maximum
flow time (called makespan) for all jobs. The simplicity of Johnson's method
encouraged other researchers to extend his idea in order to find optimal sequences
for the M-machine problem. For the M machine case, the Campbell, Dudek, and
Smith’s (1970) heuristic (CDS), which extends Johnson's algorithm, is considered to
be a very effective and robust heuristic (Ho & Chang, 1991). Generally, the static
flowshop problems have the following characteristics (Baker, 1974; Gupta, 1977;
Stafford and Tseng, 1990; and Sarin& Lefoka, 1993, and Pinedo, 1995).
1. Each machine can process at most one job at a time.
2. Each job can be processed on at most one machine at a time.
3. Preemption and splitting of any particular job are not allowed.
4. Jobs are processed on each machine in the same order.
5. All N jobs are available for processing at time zero.
6. All machines are available at time zero and are independent.
7. The processing time of each job on each machine is a known value.
1.1.5 A Flexible Flowshop Environment (FFS)
A flexible flowshop (FFS) is a generalization of the flowshop and the parallel
processor environments. A flexible flowshop is alternatively called a hybrid
flowshop or multiprocessor flowshop. In the most general setting of a flexible
flowshop environment, there are multiple stages (S stages), each of which consists
of m(s) (s = 1, 2, 3,…,S) parallel processors). A schematic representation of a
flexible flowshop environment is given in Figure 1.3. The processors in each stage
may be identical, uniform, or unrelated. Machines are uniform if the time to process
a job on any machine is a constant ratio of its processing time on other machines. In
other words, uniform machines are identical processors that do not have equal
speeds. Unrelated machines are machines for which the time to process a job on
any machine has no particular relationship of its processing time on any other
machine (Cheng & Sin, 1990). In a FFS environment, each job is processed first at
stage 1, then at stage 2, and so on. Normally, a job requires only one machine at
each stage and any machine can process any job.
1.1.6 Dependent Setup Times
Setup time is the time used to prepare the process of jobs on machines
(Allahverdi et al., 1999). Consequently, the requirements of setup times of jobs are
very common in many real manufacturing situations. This includes setting up tools
such as jigs and fixtures, cleanup, inspecting material, and positioning the jobs.
The issue of setup time has been of much interest in the past few decades.
According to the Goldratt Theory Of Constraint (TOC) (Goldratt, 1990), setup
reduction efforts can improve performance, but only if concentrated on production
bottlenecks or constraints. The total time for a machine can be classified as either
waste time (i.e., time spent processing material that cannot be converted into
throughput; for instance, time to process products for which there is no demand). It
is possible to improve the efficiency or capacity of a resource by reducing idle time
and waste time, cutting or reducing the total setup time, and reducing the production
time per unit of the product.
STAGE 1 STAGE 2 STAGE S
………... ………. ………..
:
:
:
:
:
:
:
:
:
……….. m1,1 m2,1 mS,1 m1,2 m2,2 mS,2 m1,3 m2,3 mS,3 m1,m(1) m2,m(2) mS,m(S) IN OUTTypically, there are two categories of setup times. In the first category,
setup time is sequence independent. That is, i.e., it depends only on the job to be
processed. In the second, setup time is sequence dependent as it depends on both
the job to be processed and the preceding job. Another view of setup time
classification adopted by Randhawa and Kuo (1997) includes: (1) processor
dependent, (2) product dependent, and (3) both processor and product dependent.
Processor dependent setup time deals with the setup time that depends only on the
processor, regardless of the job type, while product dependent setup time refers to
the setup time that depends only on the product, regardless of the machine type.
Sequence dependent properties (e.g. setup times or costs) are considered
to be important factors in the manufacturing environment, especially, when a shop
floor is operated at or near its full capacity (Wilbrecht & Prescott, 1969). Sequence
dependent setups are commonly found both in a single machine type or a multiple
machine type. Even though there exists an enormous amount of research on the
flowshop scheduling problem, research study has rarely been conducted in the case
where setup times are sequence dependent (Simon Jr., 1992; Allahverdi, 1999).
Hence, the results of these research studies lack a practical solution for applications
that require the treatment of setup times. For this reason, dependent setup times
cannot be neglected and hence are considered in this research.
Sequence dependent setups occur especially in process industry
operations, where machine setup time is significant and is needed when products
change. The magnitude of setup time depends on the similarity in technological
processing requirements (routing and precedence relationships) for the successive
jobs (Srikan & Ghosh, 1986). Normally, similar technological requirements for two
current products processed on the machine are from the same family that consists
of a set of similar products (or jobs) in terms of processing, then the changeover
time between those two products is small. The changeover times depend on the
family of products. This type of production system can be found in many industries
such as pharmaceutical, cosmetic, chemical, and food and brewing industries. The
following are real life examples of dependent setup times:
1. In printing industry, the cleaning and setting of presses are dependent on the
color of ink and size of paper.
2. In textile industry, weaving and dyeing setup operations depend on jobs.
3. In brewing and food industry (for container and bottling section), settings are
changed when the containers or bottle sizes change.
This research focuses on the scheduling problem in a flexible flowshop with
sequence dependent setup times. A complete description of the problem is given in
CHAPTER 2
STATEMENT OF THE PROBLEM
2.1 Introduction
Nowadays, manufacturing companies are faced with market demands for a
variety of high quality products. These companies must, therefore, make their
production systems more flexible, reduce costs related to production, and respond
rapidly to demand fluctuations. Hence, companies need to have advanced techniques
and an increasingly high degree of automation.
Production and operation management has been an interesting topic in
manufacturing, especially in such areas as job scheduling and system control. The
development of production schedules is a remarkably important task in industry. Many
scheduling researchers have focused their research on sequencing and timing the
scheduling of multiple non-identical jobs through one or more machine stations (Egbelu,
1991). A challenge facing many manufacturing and service industries is job assignment
to parallel processors (e.g., workers or machines). Parallel processing is the situation
where a job can be processed by more than one processor, but only one processor can
actually work on one job. This type of production system where multiple products are
processed on parallel, non-identical machines is common in both manufacturing and
service industries. For instance, airline companies may assign one of several types of
airplanes to service a route. In industries such as semiconductor manufacturing, it is
common to find newer or more modern machines running side by side with older and
less efficient machines. Even though the older machines are less efficient, they may be
kept in the production lines because of their high replacement costs. The older
machines may perform the same operations as the newer ones, but would generally
plants assigning jobs to looms and paper plants assigning products to different paper
machines (Randhawa & Smith, 1995). So, even though those resources may be of
similar type, their production rates may be different. This research will focus on
scheduling non-identical jobs in a flexible flowshop (or hybrid) environment with
sequence dependent setup times as described in the following section.
2.2 Manufacturing Background
Nature of the Tasks in the Shop-floor System
In this research, production is restricted by resource and technological
constraints. Processors (or machines) can process the same jobs but differ in their
speeds. Thus, the production rate for the same job may be different between machines
at the same stage, which results in different production costs per unit of the product.
This research deals with the general flexible flowshop, with S production stages,
in which the job sequence may not be the same on each machine at each stage. The
problem on hand has several distinct product families, and within each family there are
different product types. Each production stage may be composed of more than one
machine. If a stage has multiple machines, all machines would be similar in function but
different in their performance. All products may be processed on any of the machines in
a stage. It is assumed that the slowest machine in each stage has the lowest production
performance for all products. The problem hence will be developed and solved for the
parallel processing case with uniform processors.
Each product i of family j requires PTime(j,i,s,m) units of processing time on
machine m of stage s. A production line requires a setup time to change over from one
product to another. Machine changeover is needed when the product changes both
within a family and between families. In this research, two types of machine
the changeover time required if the previous product belongs to the same family. On the
other hand, if the previous product was of a different family, a major changeover time
would be required. The changeover time for machine m of stage s between product i of
family j and product p of family q is denoted by ch(j,i,q,p,s). If j = q, then this
changeover time is minor, but if j ≠ q, then it is a major one. The changeover time in this research is assumed to be asymmetric. This means that ch(j,i,q,p,s) may not be
necessarily equal to ch(q,p,j,i,s). It is also assumed that changeover times are equal for
all machines in the same stage of a production line when changing from one product to
another, but the changeover time may be different between stages.
The processing on all stages is not preemptive, which means that a new product
cannot enter into the stage until the previous product has been completely processed.
2.3 Problem Statement
This research addresses the problem of scheduling jobs in a flexible flowshop in
which machines are uniform. A job used in this study is synonymous with an order and
represents an individual, distinct demand for a product. Each production stage may be
composed of more than one machine. Prior to processing a job on a machine in a
production line, there is an associated setup time. Setup times are considered
significant and typically depend on the sequence of the jobs through the processors.
The problem considered in this study is complex in three ways:
1. Even though the flexible flowshop scheduling problems have been studied by
several previous researchers, very few of them have considered both
products and families in their models. This research addresses products
which are grouped into families to be processed in a flexible flowshop
environment. There are different products within each family, and there are
2. Both major and minor setup times are considered. A major setup time is
required if a machine at any stage switches from one family to another. On
the other hand, a minor setup time is needed if the previous product belongs
to the same family.
3. The system consists of S stages of production. Each production stage may
consist of more than one non-identical (uniform) machines. The production
line may have different number of machines in each stage. The system can
produce a number of products and families, and all products and families can
be produced on every processor.
This research addresses the problem of scheduling all products on the machines
at the different stages in order to minimize the makespan.
2.4 Assumptions
The assumptions made in formulating the problem are as follows:
1. It is assumed that the decisions about production plans, workforce levels, and layout
of the facility have been made from the long and intermediate-range planning.
2. Production is make-for-stock; hence, there are no due dates associated with batches
or products.
3. All jobs and machines are available at the beginning of the scheduling process (at
time zero).
4. There are many stages in the flowshop production line. Each stage may have
several non-identical but uniform machines.
5. Jobs may not be necessarily scheduled in the same order in all stages.
6. Jobs can wait between two production stages (or stations) and the intermediate
7. Within the same product family, minor changeover times may not be equal between
products. Likewise, major setup times may not be equal between families.
8. Setup times for jobs on each machine are dependent on the order in which jobs are
processed, but it is also assumed that setup times are equal for all machines in the
same stage when changing from one product to another.
9. No job splitting is allowed. A job must be completely finished on one machine before
it can be manufactured on the succeeding machine.
10. There is no job preemption.
2.5 Research Objectives
The major objectives of this research are:
1. To formulate a mathematical model to solve the problem and to produce an optimal
schedule in order to minimize the total makespan.
2. To develop efficient scheduling heuristics to find approximate solutions for large-size
problems.
3. To evaluate the heuristics developed by comparing their results to good lower
CHAPTER 3 LITERATURE REVIEW
3.1 Introduction and Overview
This research focuses on a static sequencing of a flexible flowshop (FFS)
environment. In a FFS environment, there are S production stages with one or more
machines at each stage. Sequence dependent setup times (SDST) are considered on
each machine. A review of previous work on flowshop scheduling is performed, along
with a review of the SDST flowshop literature. Also, a review of the literature on the
application of the Tabu search (TS) algorithm relevant to this study is presented.
A popular notation used in scheduling problems has the form of α/β/γ. The first parameter (α) describes the machine environment and contains a single entry. The second parameter (β) is a field providing the details of processing characteristics and constraints. The β field may contain no entry, a single entry, or multiple entries. The last parameter (γ) contains the objective to be minimized and usually contains a single entry. Flowshop problems deal with m stages in series and with one machine in each stage,
and are denoted, in general, as Fm//Cmax when makespan is to be minimized. If there
are several processors in each stage and all of them are identical, the problem becomes
a flexible flowshop, denoted as FFs(Pm1,Pm2,…,PmS)//Cmax. If the machines are
uniform in the flexible flowshop, then Pms are replaced with Qms for s =1,2,…,S. When
setup times are involved, the notation becomes FFs(Pm1,Pm2,…,PmS)/sip/Cmax and
Fm/sip/Cmax for the flexible flowshop and regular flowshop problems, respectively. In
addition, if the setup time between job i and p depends on the machine, then the
subscript m is added, that is, it becomes sipm. A complete list of the notation used in this
Before reviewing the literature on flowshop scheduling, a review of the
methodology for solving sequencing problems in general is presented in the following
section.
3.2 Solution Methodologies for Scheduling Problems
After determining the context in which scheduling is being defined, the
methodology for selecting a "good" schedule solution is determined. Day and
Hottenstein (1970) state that there are four common approaches used to solve the static
scheduling problem. These approaches are described below:
3.2.1 Combinatorial approach
Combinatorial approaches are based on the changing of one permutation
to another by switching jobs around in order to optimize a given objective
function.
3.2.2 Enumerative optimal methods
The most general techniques are mathematical formulations (including
linear programming, dynamic programming, integer programming, or mixed
integer programming), and branch and bound methods.
Scheduling problems are typically represented as an optimization
problem subject to a set of constraints. The problem takes the form of a
mathematical model that expresses the desired objective subject to the
constraints set forth in the problem. However, there are many difficulties in
formulating mathematical models. These difficulties include the complexity of the
interactions among many variables in a system, the difficulty in the attempt to
optimize the schedule from the system, and the difficulty in gaining an agreement
among these variables on what is essential for the good of the system (Cutright,
Typically, the mathematical model for the problem is either too difficult or
too time-consuming to solve in reasonable time. Since the development of a
mathematical model is a time-consuming task and requires a thorough
understanding of the system being represented, it is necessary to find solution
techniques that are easy to implement even though they may not always lead to
an optimal solution. These techniques include heuristic approaches and Monte
Carlo sampling which are described below.
3.2.3 Heuristic approach
Generally, difficulties arise in solving scheduling problems. Exact solution
procedures may not exist or may be too expensive to apply for large-sized
problems. One then has to use procedures that yield good (but not necessarily
optimal) solutions. These methods are termed heuristics. Heuristic approaches
can be divided into:
1. exact solution to a relaxed problem such as LP relaxation and
Lagrangian relaxation,
2. local search procedures including search techniques such as tabu
search (TS), genetic algorithm (GA), or simulated annealing (SA), and
3. ad hoc decision rules.
3.2.4 Monte Carlo sampling
Monte Carlo method is a technique for the solution of a model using
random (or pseudo random) numbers. For this approach, a scheduling problem
is solved by taking random samples of feasible solutions and using the best of
3.3 Flowshop Scheduling Models
In order to discuss relevant research in the area of flowshop scheduling, the
topics reviewed are divided into three categories: (1) models without SDST
consideration, (2) models which explicitly consider SDST, and (3) previous work
concerned with TS application to solve the flowshop scheduling problems.
3.3.1 Flowshop Scheduling Models without SDST Considerations 3.3.1.1 General Flowshop Scheduling (Fm/ /Cmax)
The flowshop scheduling problem with no setup times has been
researched extensively over the past five decades. Work on these problems was
pioneered by Johnson (1954), who presented a simple algorithm for solving the
F2//Cmax problems to optimality in a polynomial time. A wealth of research then
followed but will not be covered here as it is not relevant to the problem at hand.
3.3.1.2 Flexible Flowshop Scheduling (FFs/ /Cmax)
A flexible flowshop environment consists of S production stages, each of
which having m(s) parallel machines, s =1,2,…,S. The machines in each stage
may be identical, uniform, or unrelated. This section reviews previous work
performed in a flexible flowshop environment without SDST considerations.
3.3.1.2.1 Exact Approaches
Two-stage cases: FF2(Pm1,Pm2)//Cmax
Arthanary and Ramaswamy (1971) were the first to develop the FFS
problem (Soewandi, 1998). They proposed a branch and bound algorithm for the
two-stage FFS problem in which there are m identical machines in stage 1 but
only one machine in stage 2, FF2(Pm1, Pm2 =1)//Cmax. They could optimally
solve problems with up to 10 jobs with reasonable computational effort.
According to Gupta (1988), the two-stage flowshop problem in which
NP-complete. He proposed a heuristic to solve a special case when there is
only one machine in the second stage in order to minimize the makespan,
FF2(Pm1,Pm2=1)//Cmax. Computational experiments showed that the
effectiveness of the proposed heuristic increases as the problem-size increases.
Gupta and Tunc (1991) considered the FFs(Pm1=1,Pm2)//Cmax and
established approximate solution algorithms. They also developed a branch and
bound algorithm using the heuristic solution as an upper bound on makespan.
Their results showed that when the number of machines at stage 2 is equal to or
greater than the total number of jobs, the Longest Processing Time (LPT)
scheduling rule yields optimal solutions. For the case in which the total number
of jobs is greater than the number of machines in stage 2, they developed two
heuristics to minimize the makespan. Computational results indicated that the
effectiveness of the algorithms increases with the increase of the total number of
jobs. For the cases in which the deviations of the heuristic makespans were
relatively large from the lower bounds, an improved branch and bound algorithm
was developed. The maximum number of jobs reported in their work was only
eight jobs.
Multiple stage cases (FFs(Pm1,Pm2,…,PmS)//Cmax)
Brah and Hunsucker (1991) and Ragendran and Chaudhuri (1992)
developed branch and bound algorithms for the FFs(Pm1,Pm2,…,PmS)//Cmax.
Both studies can solve only small-sized problems. Portmann et al. (1998) also
studied the FFs(Pm1,Pm2,…,PmS)//Cmax problem. They improved the lower bound
of Brah’s and reduced the number of branches used in the search tree. They
also used a genetic algorithm (GA) approach to improve the search. Their
computational experiments indicated that optimal solutions using their branch
could solve problems with up to five stages (3, 3, 1, 2, and 2 machines in stages
1 through 5, respectively) and 15 jobs with an average deviation of 3% from the
results of the branch and bound algorithm.
Moursli (1995) also investigated on the FFs(Pm1,Pm2,…,PmS)//Cmax
problem. He derived three improvements from Brah’s algorithm and three new
lower bounds. His computational experiments showed that his algorithm could
solve problems with up to 20 jobs to optimality. Both number of nodes
investigated and running time were drastically reduced in his approach. Another
study was done by Vignier et al. (1996). They developed a branch and bound
approach to solve FFs(Pm1,Pm2,…,PmS)//Cmax and solve problems with up to 15
jobs.
3.3.1.2.2 Heuristic Approaches
Two stage cases (FF2(Pm1,Pm2)//Cmax)
Lee and Vairaktarakis (1994) developed five new lower bounds for the
FF2(Pm1,Pm2)//Cmax problem. They also proposed a heuristic to solve the
FF2(Pm1,Pm2,…,PmS)//Cmax problem. However, their results were not reported.
In 1996, Guinet et al. studied the scheduling for the FF2(Pm1,Pm2)//Cmax
problems. They developed a heuristic and three lower bounds. The
computational results showed that the average gap compared between the
heuristic solution and lower bounds are less than 0.73%. Another study was
done by Haouari and Hallah (1997). They developed a new lower bound and
used the Simulated Annealing (SA) and TS approaches to solve the problems.
According to the solutions of these problems, the TS based heuristic yielded an
optimal solution for 35 % of the cases and an average relative error of only
0.82%. In 1998, Soewandi developed a new procedure, which he termed
FF3(Pm1,Pm2,Pm3)//Cmax problems. He also considered the two-stage FFS with
uniform machines at each stage (FF2(Qm1,Qm2)//Cmax) and developed a solution
procedure adapted from Johnson's rule. Additionally, he proved that his heuristic
has a worst case performance Bound1 (w.c.p.b) for the FF2(Qm1,Qm2) problem
as 1+max{( 11)( ,1), 1 , 1 1 1
∑
= − m n n m v v m∑
=−
2 2 2 2 1,
)
2
,
)(
1
(
m n n mv
v
m
} where vm is the speed of machine m,
and ms is the number of machines in stage s. Further, he developed two
heuristics for FF3(Pm1=1,Pm2,Pm3=1)//Cmax. Riane and Artiba (1997) and Riane
et al. (1998) studied FF3(Pm1,Pm2,Pm3)//Cmax problems, and developed two
heuristics to cope with realistic problems. The experimental results indicated that
their heuristics can solve problems with up to 130 jobs with a relative errors less
than 1% of the lower bound.
Multiple stage cases : FFs(Pm1,Pm2, …, PmS)//Cmax)
In 1994, Ding and Kittichartphayak developed three heuristics for
scheduling in FFs(Pm1,Pm2, …, PmS)//Cmax. The computational results showed
that one of their heuristics, called the combined approach, is the best and can
solve problem sets with number of jobs up to 8 with an average error less than
3% of the optimal solutions.
Multiple stage cases : FFs(Qm1,Qm2, …, QmS)//Cmax)
A multi-stage FFS scheduling problem in which jobs are identical and
machines are uniform at each stage was considered by Verma and Dessouky
(1999) with the objective of minimizing the makespan. They compared the Latest
Start Time (LST) rule with other heuristics: the Fastest Available Machine
1
An index that indicates the deviation of the performance values yielded by an algorithm, in the worst case, from the optimal solution for a given problem, or in some cases, from the values of the best known solutions or lower bounds.
Heuristic (FAMH), the Earliest Completion Time Heuristic (ECTH), and the Mix
Heuristic (MH). Their results indicated that the FAMH had a worst case absolute
bound that was twice as large as the ECTH, LSTH, and MH heuristics.
3.3.2 Flowshop Scheduling Models with SDST Consideration 3.3.2.1 General Flowshop Scheduling (Fm/ sipm /Cmax)
Allahverdi et al. (1999) presented a review of scheduling problems
involving setup considerations. They classified scheduling into batch and
non-batch, sequence-dependent, and sequence-independent setup. They also
summarized the results from the existing research and provided guidelines for
future research.
3.3.2.1.1Exact Approaches
Two-machine cases (F2/sipm /Cmax)
Prior to the research of the multiple machine problem, the two-machine
scheduling problem had been investigated by several researchers (e.g. Corwin &
Esogbue, 1974; Gupta, 1986, etc.). Corwin and Esogbue (1974) considered two
different flowshop scheduling problems with one of the machines having no setup
times. The objective of their study was to find the minimum makespan. After
establishing the optimality of permutation schedules, they solved the problem
using a dynamic programming formulation. Their findings showed that, from
computational standpoint, their formulation was comparable to that of the
traveling salesman problem (TSP). On the other hand, Gupta (1986) formulated
the Fm/sipm,no wait/Cmax problem as a TSP for the case in which jobs are
processed continuously through the shop. He showed that the flowshop
scheduling problem with SDST is NP-hard for the cases of limited or infinite
results from the TSP formulation of the continuous processing case were used to
describe an approximate solution for the cases in which the storage spaces were
limited or finite.
In addition to Corwin & Esogbue’s and Gupta’s studies, one of the studies
of Szwarc and Gupta (1987) was in terms of a special flowshop scheduling
problem with sequence dependent additive setup times. They developed a
polynomially bounded approximate method with the objective of minimizing
makespan.
Multiple machine cases (Fm/ sipm /Cmax)
Excellent efforts to solve the SDST for the m-machine flowshop problem
to optimality were performed by Srikar and Ghosh (1986). They developed a
method to reduce the number of constraints and binary variables in a MILP
formulation of the m-machine flowshop in order to minimize the makespan. They
could solve problems with up to six machines and six jobs; however, the time
required to solve problem was too large (22 minutes of CPU on a Prime 550
computer). Stafford and Tseng (1990) later discovered an error in Srikar and
Ghosh's model. They corrected it and solved the problem using LINDO. They
developed new MIP formulations for the regular flowshop problem and for the no
intermediate queues (NIQ) flowshop problem.
Exact optimization schemes are mostly based on the application of a
branch and bound (B&B) algorithm. The important part of a successful B&B
procedure lies in the computation of the lower bounds. In 1997, Rios-Mercado
developed several inequalities for two MIP formulations of the Fm/sipm/Cmax
problem. He used a branch and cut (B&C) procedure and found that this
main difference between the B&C and B&B procedures is that B&C algorithms
reduce the problem size (or a set of unevaluated nodes) by adjoining valid
inequalities (cutting planes or cuts). This, in turn, provides a stronger linear
programming-representation.
Recently, Rios-Mercado (1997) and Rios-Mercado and Bard (1999)
presented a branch and bound scheme for the SDST permutation flowshop
scheduling problem in order to minimize the makespan. Their algorithm included
the implementation of lower bounds and upper bounds and a dominance
elimination criterion, and yielded a significantly better performance over previous
work. They also could solve 100%, 43%, and 23% of 10-, 15-, and 20-job
problems, respectively, within a 1 % optimality gap. Gupta (1982) proposed a
branch and bound algorithm for the solution of the SDST flowshop with the
objective of minimizing the total setup times of machines. Unfortunately, the
computational results from the experiments were not reported. Because of the
complexity of the multiple machine scheduling problem, thus far no approach has
been found to solve the SDST flowshop to optimality for large-size problems.
3.3.2.1.2 Heuristic Approaches
Heuristic algorithms for the Fm/sipm/Cmax problem were developed by
Simons (1992), Rios-Mercado (1997), and Rios-Mercado (1999). Simons (1992)
developed four heuristics and compared them with three existing approaches (or
benchmark) that represent generally practiced approaches to scheduling in this
environment. However, only two of their proposed heuristics (called SETUP and
TOTAL) produced better results than the other heuristics tested. In addition,
computational experiments showed that problems with up to 15 machines and 15
Evidently, the most relevant work on heuristics for the Fm/sipm/Cmax
problem was conducted by Rios-Mercado (1997; 1999). They developed two
heuristics called HYBRID and GRASP to solve the problem. Experimental
results showed that the HYBRID heuristic outperforms GRASP when the number
of machines is small and when setup time fluctuations are large.
Moreover, Rios-Mercado and Bard (1998) made a comparison between
Simons's and Rios-Mercado and Bard's heuristics in relation to the Fm/sipm/Cmax
problems and concluded that, in general, Rios-Mercado and Bard’s heuristics
outperformed Simons’s SETUP heuristic. Nonetheless, in terms of better
solutions for the cases in which both setup and processing times are identically
distributed, Simons’s SETUP heuristic is relatively superior to Rios-Mercado and
Bard’s algorithms.
Another performance measure investigated by several researchers is the
minimization of the sum of weighted tardiness. Scheduling jobs on parallel
machines with SDST considerations were considered by Lee and Pinedo (1997).
They developed a three-phase heuristic, and a local search technique using SA
that is applied at the last phase. Additionally, Randhawa and Smith (1995)
investigated the factors that affected scheduling environments consisting of
parallel and non-identical processors. These factors are the processing capacity
relationships, sequencing and assignment rules, job sizes, and demand
distributions. They measured the effects of variables by comparing the mean flow
time, processor utilization spread, and proportion of tardy jobs. Computational
experiments showed that, setup times and system loading parameters were
3.3.2.2. Flexible Flowshop Scheduling (FFs/sipm /Cmax)
To date, no literature in the flexible flowshop with sequence dependent
setup time has been found. However, some literature is available on flexible
flowshops with independent time for the FFs(Pm1,Pm2,…,PmS)//Cmax problem as
presented below.
Setup times may simply be included in the processing times in the
situations where the entire batch of products is processed on one machine.
Conversely, if the same batch of products is partly assigned to several machines,
the same amount of setup time is still needed for the machines they are partly
assigned to and cannot be simply added to the processing times.
Li (1997) considered a two-stage FFS with a single machine at the first
stage and several identical machines at the second stage, and independent
setup times with the objective of minimizing the makespan, FF2(Pm1=1,Pm2)/ /Cmax.
He developed two heuristics adapted from previous work to solve the problem.
Gupta and Tunc (1994) developed polynomial heuristics for the two-stage FFS
scheduling problems in which there is only one machine in stage 1 and identical
machines in stage 2 but the number of machines at this stage is equal to or
larger than the total number of jobs. They also considered setup and removal
times independent from the processing times. The computational results
indicated that the effectiveness of the proposed algorithms increases when the
number of jobs increases. The contributions found in the literature for the FFS
scheduling problem are summarized in Table 3.1.
Exact algorithms based on branch and bound (B&B) and mixed integer
programming (MIP) were found in the literature to solve the problem. However,
the results of the computational experiments showed that B&B algorithms
because of their large size even for a small number of jobs and machines.
Hence, approximation methods such as TS have been paid attention to recently.
Table 3.1: Summary of Previous Research on FFS Scheduling Problems.
Problem Type References Methodology Problem size
FF2(Pm1,Pm2=1)//Cmax 1. Arthanary and Ramaswany (1971)
2. Gupta (1988)
Branch and Bound (B&B) Hueristic (w.c.p.b)
6-8 jobs 3 - (2 / m)
FF2((Pm1,Pm2=1)//Cmax Gupta and Tunc (1991) Heuristic
FF2(Pm1,Cm) //Cmax
(Cm= continuous flowshop)
Gupta (1997) Heuristic (w.c.p.b) 2- (1 / m)
FF2(Pm1,Pm2)//Cmax 1. Brah and Hunsucker (1991)
2. Lee and Vairaktarakis (1994) 3. Rajendran and Chaudhari (1992) 4. Moursli (1995)
5. Guinet et al. (1996) 6. Haouari and Hallah (1997) 7. Soewandi (1998) B&B Heuristic (w.c.p.b) B&B B&B Heuristic Heuristic Heuristic (w.c.p.b) ≤8 jobs 2- (1/max{m1,m2}) ≤ 8 jobs ≤ 20 jobs 2 –(1/max{m1,m2}) FF2(1,Pm2)//Cmax (independent setup is considered) Li (1997) Heuristic FF2(1,Pm2)//Cmax
(both independent setup and removal items are considered)
Table 3.1: Summary of Previous Research on FFS Scheduling Problems (continued).
Problem Type References Methodology Problem size
FFs(Pm1,Pm2,…,Pms)//Cmax 1. Lee and Vairaktarakis
(1994)
2. Moursli (1995) 3. Vignier et al. (1996) 4. Portmann et al. (1998) 5. Soewandi (1998)
6. Ding and Kittchartphayak (1996)
7. Novicki and Smutnicki (1996)
8. Franca et al. (1996)
9. Novicki and Smutnicki (1998)
Heuristic (w.c.p.b)
B&B B&B
B&B and B&B+GA Heuristic (w.c.p.b) Heuristic Heuristic (TS approach) Heuristic (TS approach) Heuristic (TS approach) S-(1/max{m1,m2}) - … - (1/max{m1-1,mS}
≤ 6 jobs for 5 stages
≤ 15 jobs
≤ 15 jobs for 5 stages 4- 1/max{m1,m2} – 1/m3 for Proc. SP1 10/3- 1/max{m1,m2} – 1/3m3 for Proc. SP2 8 jobs ≤ 500 jobs , 20 machines ≤ 50 jobs , 5 machines ≤ 150 jobs , 60 machines
FF2(Qm1,Qm2)//Cmax Soewandi (1998) Heuristic (w.c.p.b) {1+ (m-1)vm}/V
FFs(Qm1,Qm2,…,QmS)//Cmax
(for jobs are identical only)
3.3.3 Applications of Tabu Search (TS) to the Flowshop Scheduling Problem 3.3.3.1 Introduction and Overview
Tabu search is a heuristic designed for finding a near optimal solution for
combinatorial problems. It is considered as a metaheuristic (Hertez and Werra 1989,
1990, and Skorin-Kapov and Vakharia, 1993). This heuristic was first proposed by
Glover in 1989. It attempts to find a better solution than an initial. A key difference
between TS algorithm and other hill-climbing algorithms is that TS is not trapped at local
minima. The search process is provided with a mechanism that allows the objective
function to deteriorate and, in a controlled way, allows it to escape from local minima.
Researchers have shown that many combinatorial problems are NP-hard; hence,
near-optimal solutions are obtained. A heuristic method is often used to find an initial
solution which is then improved in an effort to find a near-optimal solution. Basically, the
application of TS is characterized by several components such as a move,
neighborhood, memory, initial solution, tabu list, aspiration level, and stopping criteria.
A move, a neighborhood, and a tabu list
A move is a function that transforms one solution to another. The subset of
moves applicable to a given solution generates a collection of solutions called the
neighborhood. TS begins with an initial solution which may be obtained from a heuristic
or from a random generation. At each step, the neighborhood of the current solution is
examined in order to find an appropriate neighbor. Typically, there are two fundamental
methods to examine an appropriate neighborhood. The first method is to examine the
entire neighborhood and select the best neighbor. This method is appropriate for
problems with small neighborhoods. The second method, which is useful with large
neighborhoods, is to examine a smaller neighborhood determined by some appropriate
technique. A trade-off exists between the effort spent in searching the neighborhood
performed and the resulting solution becomes the new current solution to initiate the
next iteration. The search allows for moves that yield solutions inferior to the best
solution obtained so far in order to avoid being trapped at a local optimum.
Since the search always chooses the best new movement, it may well fall back
into the local minimum from which it previously emerged. At any stage of the process, a
tabu list of mutation that the procedure is not allowed to perform is kept. The goal of
utilizing the tabu list is to exclude moves that would bring us back to the point where we
were at some previous iterations and keep us trapped in a local minimum. To avoid
cycling, the reverse of a movement that has been recently performed is forbidden (tabu)
and inserted on the top of tabu list. All other entries are pushed down one position and
the bottom entry is deleted. In other words, a tabu list is operated as a FIFO strategy.
The length of the tabu list is an important parameter. If the number of entries in the tabu
list is too small, cycling may occur. Conversely, if the number of entries is too large, the
computation time may increase significantly. The tabu list may be of several types such
as position of jobs or pairs of jobs that may not be interchanged (Tillard,1990).
Memory
Normally, there are three types of memories: short-term, intermediate, and
long-term memories. A fundamental component of the TS algorithm is a short-term
strategy called “simple TS” (Glover,1989; Glover, 1990; Werra & Hertz, 1989).
The fundamental memory structure in the simple TS algorithm is the so-called
tabu list. As mentioned earlier, each move in a tabu list is memorized after each
iteration. The best move is selected among the set of candidates which are not in the
tabu list. Normally, a short-term memory is a method that keeps limited track of a search
trajectory in order to guide the search out of a local optimum. The functions of
intermediate and long-term memories are employed within tabu search to achieve
solution space produces good solutions, then it is good to intensify the search in that
region (intensification). Conversely, instead of inducing the search to focus more
intensively on regions that contain good solutions previously found, the long-term
memory (diversification) guides the process to regions that markedly contrast with those
examined so far.
Aspiration level condition
An improvement can be realized in the TS is due to the fact that too many
solutions may be forbidden. An aspiration level is defined as the value of the best
schedule obtained so far. The aspiration level provides flexibility to choose good moves
by allowing the tabu status of a move to be overridden, after comparing the values of the
schedules, if it seems desirable to do so. Criteria for removing the tabu status will be
expressed by aspiration level condition.
Stopping criteria
Stopping criteria are rules to stop the search. Some stopping rules are defined
such as maximum number of iterations, maximum computation time, maximum CPU
time, or the maximum number of iterations have been performed without improving the
best solution obtained so far. Figures 3.1 and 3.2 describe the process of the tabu
search with short-term memory (Glover, 1990).
3.3.3.2 Review of TS Applications
During the last two decades, the Tabu Search (TS) technique has been
found to be a remarkably effective approach to solve combinatorial optimization
problems. Barnes and Laguna (1993) reviewed some of the research related to
TS applications in production scheduling and provided synthesis of the TS
methods that have been employed. Some suggestions for future research were
Terminate Globally or Transfer
A transfer initiates an long term memory components (intensification or diversification).
Generate An Initial Solution
It may be obtained from: ! an improvement heuristic ! a randomization.
Create a candidate list of moves (neighborhood)
! It is either not tabu or it is. If it is tabu, it can be overridden by the aspiration criteria.
! Each move would generate a new solution from the current solution.
Choose the best admissible move by evaluation each candidate move
! Select the best admissible move leading to the next solution
! record it as the new best solution if it improves on the previous best.
(Note: Detail is presented in Figure 3.2)
Stopping criteria
Stop the search if:
! a specified maximum number of iterations between two improvements of the objective function has reached
! a specified maximum number of iterations has reached, or
! the last best solution was found
Update Admissibility conditions
! Update Tabu restrictions, and ! Update aspiration level criteria
allowing the tabu status of a move to be overridden under appropriate circumstances
STOP CONTINUE
Figure 3.2: Selecting the Best Admissible Move Evaluate each candidate move
Does the move give the better solution than any other move found from the set of admissible candidates?
Check Tabu Status
Is the candidate is forbidden (tabu)?
YES
YES NO
Check Aspiration level
Does the move meet the aspiration level?
Move is admissible
The move is recorded as the best admissible candidate.
YES
Candidate List Check
Is there any probability of bettermove left, or should candidate list be extended?
NO
NO