HOME

TheInfoList



OR:

Flow-shop scheduling is an
optimization problem In mathematics, computer science and economics, an optimization problem is the problem of finding the ''best'' solution from all feasible solutions. Optimization problems can be divided into two categories, depending on whether the variables ...
in
computer science Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (includi ...
and
operations research Operations research ( en-GB, operational research) (U.S. Air Force Specialty Code: Operations Analysis), often shortened to the initialism OR, is a discipline that deals with the development and application of analytical methods to improve decis ...
. It is a variant of
optimal job scheduling Optimal job scheduling is a class of optimization problems related to scheduling. The inputs to such problems are a list of ''jobs'' (also called ''processes'' or ''tasks'') and a list of ''machines'' (also called ''processors'' or ''workers''). The ...
. In a general job-scheduling problem, we are given ''n'' jobs ''J''1, ''J''2, ..., ''Jn'' of varying processing times, which need to be scheduled on ''m'' machines with varying processing power, while trying to minimize the
makespan In operations research, the makespan of a project is the length of time that elapses from the start of work to the end. This type of multi-mode resource constrained project scheduling problem (MRCPSP) seeks to create the shortest logical project sc ...
– the total length of the schedule (that is, when all the jobs have finished processing). In the specific variant known as ''flow-shop scheduling'', each job contains exactly ''m'' operations. The ''i''-th operation of the job must be executed on the ''i''-th machine. No machine can perform more than one operation simultaneously. For each operation of each job, execution time is specified. Flow-shop scheduling is a special case of
job-shop scheduling Job-shop scheduling, the job-shop problem (JSP) or job-shop scheduling problem (JSSP) is an optimization problem in computer science and operations research. It is a variant of optimal job scheduling. In a general job scheduling problem, we are give ...
where there is strict order of all operations to be performed on all jobs. Flow-shop scheduling may apply as well to
production Production may refer to: Economics and business * Production (economics) * Production, the act of manufacturing goods * Production, in the outline of industrial organization, the act of making products (goods and services) * Production as a stati ...
facilities as to
computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes, and development of both hardware and software. Computing has scientific, ...
designs. A special type of flow-shop scheduling problem is the permutation flow-shop scheduling problem in which the
processing Processing is a free graphical library and integrated development environment (IDE) built for the electronic arts, new media art, and visual design communities with the purpose of teaching non-programmers the fundamentals of computer programming ...
order of the jobs on the resources is the same for each subsequent step of processing. In the standard three-field notation for optimal-job-scheduling problems, the flow-shop variant is denoted by F in the first field. For example, the problem denoted by " F3, p_, C_\max" is a 3-machines flow-shop problem with unit processing times, where the goal is to minimize the maximum completion time.


Formal definition

There are ''n'' machines and ''m'' jobs. Each job contains exactly ''m'' operations. The ''i''-th operation of the job must be executed on the ''i''-th machine. No machine can perform more than one operation simultaneously. For each operation of each job, execution time is specified. Operations within one job must be performed in the specified order. The first operation gets executed on the first machine, then (as the first operation is finished) the second operation on the second machine, and so on until the ''n''-th operation. Jobs can be executed in any order, however. Problem definition implies that this job order is exactly the same for each machine. The problem is to determine the optimal such arrangement, i.e. the one with the shortest possible total job execution makespan.


Sequencing performance measurements (γ)

The sequencing problem can be stated as determining a sequence S such that one or several sequencing objectives are optimized. # (Average) Flow time, \sum (w_i) F_i # Makespan, Cmax # (Average) Tardiness, \sum (w_i) T_i # .... detailed discussion of performance measurement can be found in Malakooti(2013).Malakooti, B (2013). Operations and Production Systems with Multiple Objectives. John Wiley & Sons. .


Complexity of flow-shop scheduling

As presented by Garey et al. (1976),Garey, M. R., Johnson, D. S., & Sethi, R. (1976)
The complexity of flowshop and jobshop scheduling
Mathematics of operations research, 1(2), 117–129.
most of extensions of the flow-shop-scheduling problems are NP-hard and few of them can be solved optimally in O(nlogn); for example, F2, prmu, Cmax can be solved optimally by using Johnson's Rule.Johnson, S. M. (1954)
Optimal two-and three-stage production schedules with setup times included
Naval research logistics quarterly, 1(1), 61–68.
Taillard provides substantial benchmark problems for scheduling flow shops, open shops, and job shops.


Solution methods

The proposed methods to solve flow-shop-scheduling problems can be classified as
exact algorithm In computer science and operations research, exact algorithms are algorithms that always solve an optimization problem to optimality. Unless P = NP, an exact algorithm for an NP-hard optimization problem cannot run in worst-case polynomial time. ...
such as
branch and bound Branch and bound (BB, B&B, or BnB) is an algorithm design paradigm for discrete and combinatorial optimization problems, as well as mathematical optimization. A branch-and-bound algorithm consists of a systematic enumeration of candidate solut ...
and
heuristic algorithm In mathematical optimization and computer science, heuristic (from Greek εὑρίσκω "I find, discover") is a technique designed for solving a problem more quickly when classic methods are too slow for finding an approximate solution, or whe ...
such as genetic algorithm.


Minimizing makespan, Cmax

F2, prmu, Cmax and F3, prmu, Cmax can be solved optimally by using Johnson's Rule but for general case there is no algorithm that guarantee the optimality of the solution. The flow shop contains n jobs simultaneously available at time zero and to be processed by two machines arranged in series with unlimited storage in between them. The processing time of all jobs are known with certainty. It is required to schedule n jobs on machines so as to minimize makespan. The Johnson's rule for scheduling jobs in two-machine flow shop is given below. In an optimal schedule, job i precedes job j if ''min < min''. Where as, p1i is the processing time of job i on machine 1 and p2i is the processing time of job i on machine 2. Similarly, p1j and p2j are processing times of job j on machine 1 and machine 2 respectively. For Johnson's algorithm: :Let p1j be the processing time of job j on machine 1 :and p2j the processing time of job j on machine 2 Johnson's algorithm: # Form set1 containing all the jobs with p1j < p2j # Form set2 containing all the jobs with p1j > p2j, the jobs with p1j = p2j may be put in either set. # Form the sequence as follows: #: (i) The job in set1 go first in the sequence and they go in increasing order of p1j (SPT) #: (ii) The jobs in set2 follow in decreasing order of p2j (LPT). Ties are broken arbitrarily. This type schedule is referred as SPT(1)–LPT(2) schedule. A detailed discussion of the available solution methods are provided by Malakooti (2013).


See also

*
Open-shop scheduling Open-shop scheduling or open-shop scheduling problem (OSSP) is an optimization problem in computer science and operations research. It is a variant of optimal job scheduling. In a general job-scheduling problem, we are given ''n'' jobs ''J''1,  ...
*
Job-shop scheduling Job-shop scheduling, the job-shop problem (JSP) or job-shop scheduling problem (JSSP) is an optimization problem in computer science and operations research. It is a variant of optimal job scheduling. In a general job scheduling problem, we are give ...


References

{{Scheduling problems Optimal scheduling Workflow technology