Two-machine shop scheduling: Compromise between flexibility and makespan value

https://doi.org/10.1016/j.ejor.2004.01.029Get rights and content

Abstract

In this paper, we consider the problem of providing flexibility to solutions of two-machine shop scheduling problems. We use the concept of group-scheduling to characterize a whole set of schedules so as to provide more choice to the decision-maker at any decision point. A group-schedule is a sequence of groups of permutable operations defined on each machine where each group is such that any permutation of the operations inside the group leads to a feasible schedule. Flexibility of a solution and its makespan are often conflicting, thus we search for a compromise between a low number of groups and a small value of makespan. We resolve the complexity status of the relevant problems for the two-machine flow shop, job shop and open shop. A number of approximation algorithms are developed and their worst-case performance is analyzed. For the flow shop, an effective heuristic algorithm is proposed and the results of computational experiments are reported.

Introduction

Most of the classical scheduling studies address the problems that arise in perfectly deterministic environment, so that all problem parameters are assumed to be a priori fully known. However, in practice there nearly always exist many restrictions that could not be taken into account, since either the resulting problem becomes too complex to be handled by the classical methods or simply many of these restrictions cannot be anticipated at the time of taking scheduling decisions. For example, the decision-maker could face uncertain task durations, staff illness, unavailable material, dynamic arrival of important jobs, machine breakdowns, etc.

Given a scheduling problem, a realistic solution process can be seen as consisting of two phases: the first phase which is aimed at finding one or several baseline schedules under certain simplified assumptions, and the second phase, where the aim is to react in real-time to the actually occurring events. Most of the classical studies in scheduling literature generally tackle the first phase. On the other hand, there are studies that deal with dynamic scheduling and rescheduling problems, which is more in line with the second phase of the described solution process. When an unexpected event occurs, the decision-maker has to react and, if necessarily, to revise the schedule in progress in a quick and cost-effective manner. Rescheduling is often used to minimize the impact of a perturbation in the system, and can be done either periodically or in response to significant unexpected events. In [26], Vieira et al. propose some definitions and a general framework for rescheduling problems.

The challenging issue of dealing with uncertainty in scheduling has recently been quite widely addressed. Davenport and Beck [7] give a literature review and identify two main approaches to deal with uncertainty: proactive scheduling and reactive scheduling. These approaches are also identified by Herroelen and Leus [15] as essential, among other methods, some of which more adapted to project scheduling.

Proactive scheduling consists in providing a baseline schedule by taking into account unexpected but likely events. The aim is to propose a schedule that is well-prepared to certain risks. Kouvelis et al. [19] consider the two-machine flow shop problem with variable processing times. The authors propose a branch-and-bound algorithm and a heuristic to provide a baseline schedule that optimizes the worst-case makespan. Mehta and Uzsoy [23] describe an algorithm that determines a schedule for the single machine total tardiness problem and consider the machine breakdown case. The proposed algorithm includes voluntary idle times in the schedule to decrease the consequences of likely disruptions. Leon et al. [20] tackle the job shop problem with variable processing times. They propose a genetic algorithm that optimizes the average makespan and provide a robust baseline schedule.

On the other hand, reactive scheduling uses a baseline schedule that is not explicitly appropriate for a better response to any uncertainty and decisions to react to an unexpected event are taken in real-time. In [6], Branke and Mattfeld deal with the job shop problem with dynamic arrival of new jobs. They propose a genetic algorithm that solves the problem with the “roll scrolling horizon approach”.

As noticed in [7] by Davenport and Beck, a scheduling system that efficiently deals with uncertainty is likely to employ both proactive and reactive approaches. Indeed, a pure proactive system would hardly be able to deal with all possible kinds of unexpected events. On the other hand, a pure reactive scheduling system would probably not be adapted, except in highly perturbed environments or in environments where the response time is not prohibitive, since having one adapted proactive schedule could represent an important help for globally optimizing and dynamically handling uncertainty.

As a consequence, a good way to deal with uncertainty is to combine the proactive approach that produces a good schedule with the reactive approach that is based on this schedule and uses its flexibility to be able to react properly to possible disruptions and changed conditions.

The approach we consider in this paper fits into this more general framework. Our goal is to provide the decision-maker at any decision point with a set of actions compatible with the constraints and with the state of the workshop, and to update this set when events occur. This set of actions is obtained by searching for a set of schedules instead of a single schedule. In order to obtain this set, without the drawbacks of an enumeration, we search on each machine for a sequence of groups of permutable operations, obtaining what is called a group-schedule. A group of permutable operations is such that any permutation of the operations inside the group gives a schedule compatible with the problem constraints and does not alter a guaranteed value of the criterion. Since any permutation is allowed within each group, this group-schedule characterizes a set of schedules among which the decision-maker selects, in real-time, the schedule he wants to implement to react to the current situation.

Finding a group-schedule can be seen as a part of a two-phase global approach to solving scheduling problems. The first phase is static which consists in generating a group-schedule that provides sequential flexibility to the proposed scheduling solution. The second phase is dynamic, and in fact can be viewed as a decision support system linked to the control system of the workshop, based on the group-schedule determined during the first phase. The objective of the second phase is to update in real-time the group-schedule, according to the occurred events and to the previous decisions actually taken in the workshop, and to propose a decision aid to the decision-maker as mentioned by Billaut and Roubellat [4]. By incorporating a static algorithm that determines a group-schedule into the decision support system described by Billaut and Roubellat [5], we obtain a global resolution procedure. Other studies have already dealt with this global approach (see [3]), and the software package ORDO® used in more than sixty French companies is an implementation of these concepts.

Our study is related to the paper by Mauguière et al. [22] that determines a group-schedule for the single machine problem with release dates and delivery times. Aloulou and Portmann [1] and Aloulou et al. [2] consider a partial order between operations instead of groups of permutable operations. The authors propose some measures of flexibility and some complexity results for the single machine problem.

In this paper, we study the problem of finding group-schedules for the two-machine flow shop, and extend the results to the two-machine job shop and open shop models. The goal of the proposed methods is to include as much flexibility as possible in the proposed group-schedule.

The remainder of this paper is organized as follows. In Section 2 we give the required preliminary material that is needed throughout the paper: the concept of group of permutable operations is formally defined, the scheduling models that are considered here are presented and necessary definitions and notation are given. 3 Flow shop: Complexity and approximation, 4 Flow shop: Heuristic algorithm tackle the two-machine flow shop model. The complexity status of the two relevant problems is established and an approximation algorithm is given for one of them in Section 3. Section 4 describes a heuristic algorithm for the second two-machine flow shop problem and provides the results of computational experiments that show its effectiveness. Section 5 handles the two-machine job shop model. The complexity status of the problem is determined, a number of optimal solutions are identified and a heuristic algorithm is proposed for the general case. Section 6 deals with the open shop model, and complexity and approximability issues are resolved. Final remarks can be found in Section 7.

Section snippets

Preliminaries

We are given a set N={1,2,…,n} of jobs to be processed on two machines denoted by M1 and M2. Each job consists of two operations. In shop scheduling, there are three basic models classified according to the structure of a processing route. In the flow shop, for each job the operation processed on M1 should precede the one processed on M2, i.e., the processing route is (M1,M2). A job shop is a generalization of the flow shop; in this paper, we consider the job shop problems with at most two

Flow shop: Complexity and approximation

In this section we study the two-machine group-scheduling flow shop problems. For the relevant models, we discuss the complexity issues and analyze a possible increase of the makespan if a more flexible schedule is required.

Recall that if no grouping is required, then for the classical two-machine problem F2∥Cmax there exists an optimal solution that is a permutation schedule, i.e., a schedule in which both machines process the jobs in the same sequence. The problem is solvable in O(nlogn) time

Flow shop: Heuristic algorithm

We present now a heuristic algorithm for problem F2|Cmaxα|#Gps.

The proposed heuristic algorithm [10] is called Greedy Forward Grouping and is denoted by GFG. Its running time does not exceed O(nlogn).

We denote by Cmax(G1,…,Gk) the makespan of the group-schedule in which each machine processes k consistent groups G1,…,Gk in this order. Algorithm GFG can be described as follows:
Algorithm GFG

  • 1.

    If necessarily, renumber the jobs according to Johnson's rule.

  • 2.

    Form group G1={1,2,…,j1} where j1=j is such

Job shop

In this section we consider a more general two-machine problem, namely the job shop problem in which each job consists of at most two operations. In any two-machine job shop instance, the set of jobs is divided into four subsets depending on the job routing: N1 and N2 are the sets of jobs that consist of one operation each, to be processed on M1 or on M2, respectively; set N12 contains the jobs that are processed first on M1 and then on M2; each job of set N21 is first processed on M2 and then

Open shop

We now pass to considering the two-machine open shop problem with group-scheduling. Recall that for any schedule S for the classical open shop problem O2∥Cmax with no grouping the following lower bound holds:Cmax(S)⩾max{maxj∈N{aj+bj},T},where T=max{a(N),b(N)} denotes the largest machine workload.

Problem O2∥Cmax can be solved by any of available linear-time algorithms based on different ideas:

  • transformation of a flow shop schedule into an optimal open shop schedule by changing the route of one

Conclusion

This paper considers scheduling problems in the two-machine shop environment and addresses the trade-off issues between the quality of a group-schedule, measured by its makespan, and its flexibility that is related to the number of groups of permutable operations on each machine. The aim of the presented approach is to provide the decision-maker with more choice of assigning jobs at various decision points. We study two related, and in a way dual, models: to minimize the makespan of a schedule

References (26)

  • D. de Werra

    Graph-theoretical models for preemptive scheduling

  • R.L. Graham et al.

    Optimization and approximation in deterministic sequencing and scheduling: A survey

    Annals of Discrete Mathematics

    (1979)
  • C.N. Potts et al.

    Scheduling with batching: A review

    European Journal of Operational Research

    (2000)
  • M.A. Aloulou, M.-C. Portmann, Incorporating flexibility in job sequencing for the single machine total weighted...
  • M.A. Aloulou, M.-C. Portmann, A. Vignier. Predictive–reactive scheduling for the single machine problem, in: Eighth...
  • C. Artigues et al.

    Characterization of a set of schedules in a resource constrained multi-project scheduling problem with multiple modes

    International Journal of Industrial Engineering

    (1999)
  • J.-C. Billaut, F. Roubellat, A decision support system for real time scheduling, in: International Conference on...
  • J.-C. Billaut et al.

    A new method for workshop real time scheduling

    International Journal of Production Research

    (1996)
  • J. Branke et al.

    Anticipation in dynamic optimization: The scheduling case

  • A.J. Davenport, J.C. Beck, A survey of techniques for scheduling with uncertainty. Unpublished, available from...
  • J. Erschler et al.

    Finding some essential characteristics of the feasible solutions for a scheduling problem

    Operations Research

    (1976)
  • C. Esswein, J.-C. Billaut, Trade-off between flexibility and maximum completion time in the two-machine flowshop...
  • M.R. Garey et al.

    Computers and Intractability. A Guide to the Theory of NP-Completeness

    (1979)
  • Cited by (20)

    • On the optimality conditions of the two-machine flow shop problem

      2018, European Journal of Operational Research
      Citation Excerpt :

      These techniques are particularly important for robust scheduling approaches (Herroelen & Leus, 2005) as they offer the decision maker the possibility of switching from a solution to another one in case of disruption. To achieve this goal, authors (Baptiste, 1996; Briand, La, & Erschler, 2006; Esswein, Billaut, & Strusevich, 2005; Wu, Byeon, & Storer, 1999) commonly exploit the notion of a group sequence. According to this concept, the jobs are partitioned into a number of groups (in which the order may be arbitrary), and then a sequence of groups is specified, which allows the characterization of a whole set of solutions.

    View all citing articles on Scopus
    View full text