Elsevier

Operations Research Letters

Volume 36, Issue 5, September 2008, Pages 574-578
Operations Research Letters

High-multiplicity cyclic job shop scheduling

https://doi.org/10.1016/j.orl.2008.06.005Get rights and content

Abstract

We consider the High-Multiplicity Cyclic Job Shop Scheduling Problem. There are two objectives of interest: the cycle time and the flow time. We give several approximation algorithms after showing that a very restricted case is APX-hard.

Introduction

Job shop scheduling is a widely studied and difficult combinatorial optimization problem [10]. We are given a collection of jobs and a set of machines. Each job consists of a sequence of operations, which must be performed in order. Each operation has a particular processing time and must be performed on a specific machine. Here we consider what we term the High-Multiplicity Cyclic Job Shop Scheduling Problem, in which the jobs are all the same and the schedule must process them in a cyclic fashion; that is, the schedule must repeat the same pattern of operations every τ time steps for some cycle time τ where τ measures the throughput of a schedule. We will also be interested in the flow time F, that is, the time it takes to complete one job. This measure of latency is of interest by itself, and it also indicates the amount of work-in-progress at any time during steady state.

Practical sources of this and similar problems are in integrated circuit (IC) fabrication [6], [17], machine shops [6], and printed circuit board manufacturing [18]. In IC fabrication, for instance, large numbers of identical silicon wafers are produced. Each wafer has multiple layers of circuitry and thus must pass through the stages of the photolithographic process multiple times. The problem is important in other environments as well. Shop floors are considered easier to manage if production follows a repeating pattern [11]. Compilers in high-performance computing environments schedule loops of code to be repeated many times [9]. It is desirable to maximize throughput and at the same time minimize work-in-progress in many manufacturing environments [9].

We now formally define the High-Multiplicity Cyclic Job Shop Scheduling Problem. We are given a set of identical jobs that must be processed on a given set M={M1,,Mm} of m machines. The number of jobs is not important, as will be seen; we may assume the set is infinite. Each job j consists of a sequence of μ operations O1,,Oμ that must be processed in this order, that is called the precedence relation. Operation Ok must be processed on machine Mπk, during pk time units. A machine can process at most one operation at a time, and each job may be processed by at most one machine at any time. It will be convenient to number the jobs starting at 0 and also to index time starting at 0; we assume job 0 starts at time 0. We require that there exists some τ, the cycle time, such that at every time t0 and for every machine i, if i processes operation Ok of job j at time t, then i processes operation Ok of job j+1 at time t+τ. Let Sj and Cj be the starting and completion times of job j. Thus a new job starts every τ time steps; i.e., Sj=τj. There are two objectives of interest in this scheduling problem: the cycle time τ and the flow time F=CjSj=C0.

For each machine i, let i be the total amount of work in a single job processed by machine i. Let =iMi=k=1μpk denote the total length of each job and let τ̄=maxi=1,,mi denote the per-job maximum load on any machine. Obviously we must have F and ττ̄. We will make use of the following folklore result.

Proposition 1

For any instance, there exists a schedule with cycle time τ=τ̄ .

Proof

For a given operation k, let i be the machine that processes k and let p be the sum of all pk for operations processed by i with k<k. We schedule operation k in job j to start at time τ̄(j+k)+p and finish at time τ̄(j+k)+p+pk. It should be clear that all processing times and precedence constraints are satisfied and that our schedule is cyclic with τ=τ̄.

Fix a time t0 and a machine i. If there is no operation in any job scheduled on machine i at time t, we do not need to prove anything. Otherwise we need to prove that only one operation is scheduled on i at time t. Let r=tmodτ̄. Suppose t=τ̄(j1+k1)+r=τ̄(j2+k2)+r. By our schedule’s definition r determines a unique k such that only operations k (in any jobs) might be scheduled on machine i at time t. Thus k1=k2 and then j1=j2, and we are done. 

Note that the flow time of the schedule constructed in the proof of Proposition 1 might be much greater than the minimal flow time over all schedules with cycle time τ=τ̄.

Graves et al. [6] initiated the study of the High-Multiplicity Cyclic Job Shop Scheduling Problem and gave a heuristic for minimizing flow time subject to a given cycle time. Roundy [15] showed NP-hardness of the problem of minimizing flow time subject to the minimum cycle time. McCormick and Rao [11] further showed that even if each machine has only two operations in each job, but with different processing times, and the “cyclic machine structure” (see [15] or [11] for a definition) is fixed, it is still NP-hard to minimize flow time. Mittendorf and Timkovsky [13] give a simple greedy algorithm with an absolute error bound of i=1m(li2li)/2 on the flow time and a more complicated algorithm with a slightly better bound, improving somewhat on the trivial flow time of τ̄ which follows from the proof of Proposition 1. They also show the NP-hardness of the special case in which all machines but one have a single unit time operation in each job. Hall, Lee, and Posner [7] study the problem in which there are many copies of each of a small number of different job types and give various NP-hardness results and polynomial time algorithms. Timkovsky [17] surveys a wide range of environments for periodic scheduling including the problem studied in this paper. Hanen and Munier [9] also survey periodic variants of various scheduling problems. We refer the reader to these surveys for details.

Section snippets

Our results

Theorem 2

Minimizing flow time subject to minimum cycle time τ=τ̄ in the High-Multiplicity Cyclic Job Shop Scheduling Problem is APX-hard even for unit time operations and at most 2 operations (in each job) per machine, so that τ̄=2 .

This problem is shown to be essentially equivalent to the Max Cut in 4-regular graphs. Below, in our next Theorem, we establish a connection between the Max Res Cut Problem and the High-Multiplicity Cyclic Job Shop Scheduling Problem in the case when τ̄=2. In the Max Res Cut

Hardness of minimizing F subject to τ=τ̄

Proof of Theorem 2

We reduce the Max Cut on 4-regular graphs, which has been observed to be APX-hard [12], to the problem of finding a minimum flow-time cyclic schedule with τ=τ̄=2 for jobs with at most 2 operations on each machine. All operations are unit processing time.

In a schedule with τ=2, say an operation is scheduled with offset 0 if it is scheduled in an even time slot and offset 1 otherwise. We can assume that no operation is delayed two or more steps, since, otherwise, we could shift all copies of such

Approximation algorithms

Proof of Theorem 3

In Section 3 we showed the reduction from the High-Multiplicity Cyclic Job Shop Scheduling Problem with unit processing times subject to the constraint τ2 to the maximum satisfiability problem with clauses of the type uv and uv̄. Maximizing the number of satisfied clauses is exactly the Max Res Cut Problem since the clause uv corresponds to an edge (u,v)E+ and the clause uv̄ corresponds to an edge (u,v)E. Since each variable appears in at most four clauses in the satisfiability

References (18)

There are more references available in the full text version of this article.

Cited by (7)

  • Minimizing the number of workers in a paced mixed-model assembly line

    2019, European Journal of Operational Research
    Citation Excerpt :

    Levner, Kats, Alcaide, and Cheng (2010) provided a survey of the computational complexity results for cyclic scheduling problems. The papers of Bartholdi, Orlin, and Ratliff (1980), Dauscha, Modrow, and Neumann (1985), Chretienne (1991); Lutz and Davis (1994), Brucker and Kampmeyer (2008), Che, Kats, and Levner (2017), Hall, Lee, and Posner (2002), Hanen and Munier (1995), Hochbaum and Levin (2006), Kimbrel and Sviridenko (2008), Kouvelis and Karabati (1999), Sawik (2014), Timkovsky (2004) and Bobrova and Servakh (2017) contain additional results. A perfect periodic scheduling problem is similar, but there is a frequency request for each job and the objective is to find a schedule that minimizes deviations from the frequencies in each cycle.

  • A hybridization of simulated annealing and electromagnetism-like mechanism for a periodic job shop scheduling problem

    2011, Expert Systems with Applications
    Citation Excerpt :

    In contrast with the first category, the cyclic job shop scheduling problem (CJSSP) contains the resource constraints. Kimbrel and Sviridenko (2008) introduced a bi-objective CJSSP, in which the jobs are all the same, and the schedule is processed in a cyclic mode, where the objectives are minimizing the cycle time and the flow time. Cavory, Dupas, and Goncalves (2005) studied the CJSSP with linear precedence constraints and presented a general approach based on the coupling of a genetic algorithm and a scheduler that utilizes a Petri-net modeling the linear precedence constraints between cyclic tasks.

  • Cyclic schedules for pipeline assembly processes

    2014, Proceedings - UKSim-AMSS 16th International Conference on Computer Modelling and Simulation, UKSim 2014
  • A genetic algorithm for the job shop on an ASRS warehouse

    2012, Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
View all citing articles on Scopus
View full text