No-Idle, No-Wait: When Shop Scheduling Meets Dominoes, Eulerian and Hamiltonian Paths

Similar documents
Single Machine Models

Algorithm Design. Scheduling Algorithms. Part 2. Parallel machines. Open-shop Scheduling. Job-shop Scheduling.

Minimizing Mean Flowtime and Makespan on Master-Slave Systems

1 Ordinary Load Balancing

Deterministic Models: Preliminaries

Single machine scheduling with forbidden start times

Single Machine Scheduling with a Non-renewable Financial Resource

LPT rule: Whenever a machine becomes free for assignment, assign that job whose. processing time is the largest among those jobs not yet assigned.

Metode şi Algoritmi de Planificare (MAP) Curs 2 Introducere în problematica planificării

4 Sequencing problem with heads and tails

CS 301: Complexity of Algorithms (Term I 2008) Alex Tiskin Harald Räcke. Hamiltonian Cycle. 8.5 Sequencing Problems. Directed Hamiltonian Cycle

Flow Shop and Job Shop Models

University of Twente. Faculty of Mathematical Sciences. Scheduling split-jobs on parallel machines. University for Technical and Social Sciences

Single Machine Problems Polynomial Cases

M 2 M 3. Robot M (O)

Embedded Systems 14. Overview of embedded systems design

Chapter 3: Discrete Optimization Integer Programming

P C max. NP-complete from partition. Example j p j What is the makespan on 2 machines? 3 machines? 4 machines?

Algorithms. Outline! Approximation Algorithms. The class APX. The intelligence behind the hardware. ! Based on

IBM Research Report. Minimizing Makespan in No-Wait Job Shops

Improved Bounds for Flow Shop Scheduling

Partition is reducible to P2 C max. c. P2 Pj = 1, prec Cmax is solvable in polynomial time. P Pj = 1, prec Cmax is NP-hard

Chapter 3: Discrete Optimization Integer Programming

On Machine Dependency in Shop Scheduling

Algorithms Design & Analysis. Approximation Algorithm

Complexity analysis of job-shop scheduling with deteriorating jobs

RCPSP Single Machine Problems

Scheduling Lecture 1: Scheduling on One Machine

Lecture 2: Scheduling on Parallel Machines

A polynomial-time approximation scheme for the two-machine flow shop scheduling problem with an availability constraint

An improved approximation algorithm for two-machine flow shop scheduling with an availability constraint

On the Complexity of Mapping Pipelined Filtering Services on Heterogeneous Platforms

Average-Case Performance Analysis of Online Non-clairvoyant Scheduling of Parallel Tasks with Precedence Constraints

New scheduling problems with interfering and independent jobs

On improving matchings in trees, via bounded-length augmentations 1

Data Structures and Algorithms (CSCI 340)

Applied Integer Programming: Modeling and Solution

A comparison of sequencing formulations in a constraint generation procedure for avionics scheduling

Low-Complexity Algorithms for Sequencing Jobs with a Fixed Number of Job-Classes

Asymmetric Traveling Salesman Problem (ATSP): Models

Combinatorial optimization problems

Embedded Systems 15. REVIEW: Aperiodic scheduling. C i J i 0 a i s i f i d i

IE418 Integer Programming

Complexity of flow shop scheduling problems with transportation constraints

Table of Contents. Best-Case Lower Bounds in a Group Sequence for the Job Shop Problem. Group Sequencing. Introduction IFAC 2008 WC

4/30/14. Chapter Sequencing Problems. NP and Computational Intractability. Hamiltonian Cycle

Scheduling and Optimization Course (MPRI)

Non-Work-Conserving Non-Preemptive Scheduling: Motivations, Challenges, and Potential Solutions

Scheduling Lecture 1: Scheduling on One Machine

Multiplicity and complexity issues in contemporary production scheduling

Shop problems in scheduling

Chapter 34: NP-Completeness

4/12/2011. Chapter 8. NP and Computational Intractability. Directed Hamiltonian Cycle. Traveling Salesman Problem. Directed Hamiltonian Cycle

Hamiltonian paths in tournaments A generalization of sorting DM19 notes fall 2006

arxiv: v2 [cs.dm] 2 Mar 2017

On bilevel machine scheduling problems

NP-Completeness. Until now we have been designing algorithms for specific problems

Scheduling chains of operations on a batching machine with disjoint sets of operation compatibility

Solving a Production Scheduling Problem as a Time-Dependent Traveling Salesman Problem

Routing Equal-Size Messages on a Slotted Ring

Scheduling Online Algorithms. Tim Nieberg

these durations are not neglected. Little is known about the general problem of scheduling typed task systems: Jae [16] and Jansen [18] studied the pr

Fixed-sequence single machine scheduling and outbound delivery problems

APTAS for Bin Packing

8.5 Sequencing Problems

Massachusetts Institute of Technology 6.042J/18.062J, Fall 02: Mathematics for Computer Science Professor Albert Meyer and Dr.

Scheduling jobs on two uniform parallel machines to minimize the makespan

Logic-based Benders Decomposition

SEQUENCING A SINGLE MACHINE WITH DUE DATES AND DEADLINES: AN ILP-BASED APPROACH TO SOLVE VERY LARGE INSTANCES

HYBRID FLOW-SHOP WITH ADJUSTMENT

Quantum Algorithms for Graph Traversals and Related Problems

Batch delivery scheduling with simple linear deterioration on a single machine 1

NP-completeness. Chapter 34. Sergey Bereg

A Dynamic Programming algorithm for minimizing total cost of duplication in scheduling an outtree with communication delays and duplication

An O(n log n) Algorithm for the K-Template Traveling Salesman Problem

ECS122A Handout on NP-Completeness March 12, 2018

CS521 CSE IITG 11/23/2012

Polynomially solvable and NP-hard special cases for scheduling with heads and tails

Approximation Algorithms for scheduling

Resource Management in Machine Scheduling Problems: A Survey

Deterministic Scheduling. Dr inż. Krzysztof Giaro Gdańsk University of Technology

Lecture 15 - NP Completeness 1

Data Structures and Algorithms

Contents college 5 and 6 Branch and Bound; Beam Search (Chapter , book)! general introduction

On-line Scheduling of Two Parallel Machines. with a Single Server

Minimizing the weighted completion time on a single machine with periodic maintenance

Classical Complexity and Fixed-Parameter Tractability of Simultaneous Consecutive Ones Submatrix & Editing Problems

Graph Theory and Optimization Computational Complexity (in brief)

Chapter 8. NP and Computational Intractability. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Linear Programming. Scheduling problems

An Approximation Algorithm for a Bottleneck Traveling Salesman Problem

Data Gathering and Personalized Broadcasting in Radio Grids with Interferences

ACO Comprehensive Exam October 14 and 15, 2013

On Preemptive Scheduling on Uniform Machines to Minimize Mean Flow Time

Scheduling for Parallel Dedicated Machines with a Single Server

8.5 Sequencing Problems. Chapter 8. NP and Computational Intractability. Hamiltonian Cycle. Hamiltonian Cycle

Complexity Theory Part II

CS 583: Algorithms. NP Completeness Ch 34. Intractability

Approximation Schemes for Parallel Machine Scheduling Problems with Controllable Processing Times

CS 580: Algorithm Design and Analysis. Jeremiah Blocki Purdue University Spring 2018

Transcription:

No-Idle, No-Wait: When Shop Scheduling Meets Dominoes, Eulerian and Hamiltonian Paths J.C. Billaut 1, F.Della Croce 2, Fabio Salassa 2, V. T kindt 1 1. Université Francois-Rabelais, CNRS, Tours, France 2. Politecnico di Torino, Torino, Italy Monash University Melbourne, February 19th, 2018 1 / 31

Flow Shop Scheduling There are m machines and n jobs. Each job contains exactly m operations. For each operation of each job a processing time is specified. No machine can perform more than one operation simultaneously. Operations cannot be interrupted (no preemption). 2 / 31

Flow Shop Scheduling 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 until the m-th operation. Jobs can be executed in any order. The problem is to determine an optimal arrangement of jobs. 3 / 31

Flow Shop Scheduling Example j J 1 J 2 J 3 J 4 p 1,j 2 4 5 1 p 2,j 3 4 2 1 p 3,j 4 2 1 1 Machine Makespan M 1 p 14 p 11 p 12 p 13 M 2 p 21 p 22 p 23 p 24 M 3 p 31 p 32 p 33 p 34 Time 4 / 31

Problem Description We consider flow shop scheduling problems with (machine) no-idle, (job) no-wait constraints and makespan as objective. Machine no-idle constraint: use of very expensive equipment with the fee determined by the actual time consumption. Job no-wait constraint: in metal-processing industries (e.g., hot rolling) where delays between operations interfere with the technological process (e.g., cooling down). We focus on problem F 2 no-idle, no-wait C max. 5 / 31

Literature Problem F 2 C max (Johnson rule O(nlogn)) P. Problem F 2 no-idle C max (trivially packing the jobs on the second machine to the right from Johnson s schedule) P. Problem F 2 no-wait C max (special case of Gilmore-Gomory TSP) P. Problem F 3 C max is NP-hard. 6 / 31

Literature Problem F 2 no-wait G (minimizing the number of interruptions on the last machine in a 2-machine no-wait flow shop) is solvable in O(n 2 ) time (Hohn et al. 2012). Problem F 3 no-wait G is NP-hard. (Hohn et al. 2012). Problems F 2 C j, F 2 no-wait C j, F 2 no-idle C j, F 2 no-idle, no-wait C j are NP-hard (Adiri and Pohoryles 1982). 7 / 31

F 2 no-idle, no-wait C max Two Machines M 1, M 2. Flow Shop environment. n jobs 1, 2,..., n with processing times p 1j and p 2j. No-idle time is allowed (both machines M 1, M 2 must work continuously). No-wait discipline (no buffer each job must start on M 2 right after its completion on M 1 ). Makespan (i.e. total time that elapses from the beginning to the end) objective. 8 / 31

F 2 no-idle, no-wait C max The no-idle, no-wait constraint is a very strong requirement. Machine C 1[1] C 1[2] C 1[3] C 1[4] M 1 p 1[1] p 1[2] p 1[3] p 14 M 2 p 2[1] p 2[2] p 2[3] p 2[4] C 2[1] C 2[2] C 2[3] C 2[4] p i[j] denotes the processing time of the j-th job of a sequence σ on machine M i. C i[j] denotes the completion time of the j-th job of a sequence σ on machine M i. 9 / 31

F 2 no-idle, no-wait C max Lemma (1) (C1) A necessary condition to have a feasible solution for problem F 2 no idle, no wait C max is that there always exists an indexing of the jobs so that p 1,2,...p 1,n and p 2,1,..., p 2,n 1 constitute different permutations of the same vector of elements. j J 1 J 2 J 3 J 4 J 5 p 1,j 5 8 7 6 7 p 2,j 8 5 6 7 7 10 / 31

F 2 no-idle, no-wait C max Lemma (1) (C1) A necessary condition to have a feasible solution for problem F 2 no idle, no wait C max is that there always exists an indexing of the jobs so that p 1,2,...p 1,n and p 2,1,..., p 2,n 1 constitute different permutations of the same vector of elements. (C2) When the above condition (C1) holds, then Case 1 if p 1,1 p 2,n, every feasible sequence must have a job with processing time p 1,1 in first position and a job with processing time p 2,n in last position. Case 2 if p 1,1 = p 2,n and there exists a feasible sequence, then there do exist at least n feasible sequences each starting with a different job by simply rotating the starting sequence as in a cycle. 11 / 31

F 2 no-idle, no-wait C max Lemma (2) The makespan of any feasible sequence σ is given by the processing time of the last (first) job on the second (first) machine plus the sum of jobs processing times on the first (second) machine. Machine C 1[1] C 1[2] C 1[3] C 1[4] M 1 p 1[1] p 1[2] p 1[3] p 14 M 2 p 2[1] p 2[2] p 2[3] p 2[4] C 2[1] C 2[2] C 2[3] C 2[4] 12 / 31

F 2 no-idle, no-wait C max Lemma (2) The makespan of any feasible sequence σ is given by the processing time of the last (first) job on the second (first) machine plus the sum of jobs processing times on the first (second) machine. Machine C 1[1] C 1[2] C 1[3] C 1[4] M 1 p 1[1] p 1[2] p 1[3] p 14 M 2 p 2[1] p 2[2] p 2[3] p 2[4] C 2[1] C 2[2] C 2[3] C 2[4] 13 / 31

F 2 no-idle, no-wait C max : an example A 9-job instance of problem F 2 no idle, no wait C max. j J 1 J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 p 1,j 5 3 4 6 1 5 3 2 4 p 2,j 3 4 6 1 5 3 2 4 5 and the corresponding optimal solution C max = 34 p 15 M 1 p 16 p 17 p 18 p 19 p 11 p 12 p 13 p 14 p 24 M 2 p 25 p 26 p 27 p 28 p 29 p 21 p 22 p 23 4 8 12 16 20 24 28 32 34 14 / 31

F 2 no-idle, no-wait C max Due to Lemma 1 and F 2 no idle, no wait G problem, the optimal solution can be calculated in O(n 2 ) time......but......we decided to link the problem to the game of dominoes 15 / 31

Dominoes The Single Player Domino (SPD) problem (where a single player tries to lay down all dominoes in a chain with the numbers matching at each adjacency) is polynomially solvable: it can be seen as a eulerian path problem on an undirected multigraph. Here, we refer to the oriented version of SPD called OSPD where all dominoes have an orientation (given a tile with numbers i and j, only the orientation i j is allowed but not viceversa). Problem OSPD is polynomially solvable (can be seen as a eulerian path problem on a directed multigraph). 16 / 31

Problem F 2 no idle, no wait C max vs OSPD Proposition F 2 no idle, no wait C max OSPD. Proof. By generating for each job J j a related domino tile {p 1,j, p 2,j }, any complete sequence of oriented dominoes in OSPD corresponds to a feasible sequence for F 2 no idle, no wait C max. Then, due to Lemma 1, the jobs processing times either respect case 1 or case 2 of condition C2. 17 / 31

An example A 9-job instance of problem F 2 no idle, no wait C max. i J 1 J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 p 1,j 5 3 4 6 1 5 3 2 4 p 2,j 3 4 6 1 5 3 2 4 5 J1 J2 J3 J4 and the corresponding dominoes of the related OSPD problem J5 J6 J7 J8 J9 18 / 31

An example A 9-job instance of problem F 2 no idle, no wait C max. j J 1 J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 p 1,j 5 3 4 6 1 5 3 2 4 p 2,j 3 4 6 1 5 3 2 4 5 and the corresponding OSPD solution J 2 J 3 J 4 J 1 J 5 J 9 J 8 J 7 J 6 19 / 31

An example A 9-job instance of problem F 2 no idle, no wait C max. i J 1 J 2 J 3 J 4 J 5 J 6 J 7 J 8 J 9 p 1,i 5 3 4 6 1 5 3 2 4 p 2,i 3 4 6 1 5 3 2 4 5 and the corresponding oriented multigraph J 7 2 3 J 8 J 2 1 J 6 J 1 4 J 4 J 5 J 3 J 9 6 5 20 / 31

Complexity of F 2 no-idle, no-wait C max Proposition Problem F 2 no idle, no wait C max can be solved in O(n) time. Proof. [Sketch]: The generation of the oriented multigraph can be done in linear time and the graph has O(n) arcs. Besides, it is known (Fleischner 1991) that computing an Eulerian path in an oriented graph with n arcs can be done in O(n) time. 21 / 31

F 2 no-idle, no-wait C max vs the Hamiltonian Path problem Problem F 2 no idle, no wait C max is also linked to a special case of the Hamiltonian Path problem on a connected digraph. Consider a digraph G(V, A) that has the following property: v i, v j V, either S i S j =, or S i = S j where we denote by S i the set of successors of vertex v i. In other words, each pair of vertices either has no common successors or has all successors in common. We denote the Hamiltonian path problem in that graph as the Common/Distinct Successors Hamiltonian Oriented Path (CDSHOP ) problem. 22 / 31

F 2 no-idle, no-wait C max vs the Hamiltonian Path problem F 2 no idle, no wait C max CDSHOP easily holds. The CDSHOP problem corresponding to the considered F 2 no-idle, no-wait C max instance. J 1 i p 1,i p 2,i J 1 5 3 J 2 3 4 J 3 4 6 J 4 6 1 J 5 1 5 J 6 5 3 J 7 3 2 J 8 2 4 J 9 4 5 5,3 J 9 J 4,5 3,4 2 J 8 2,4 4,6 J 3 3,2 J 7 6,1 J4 5,3 J 6 1,5 J 5 23 / 31

Complexity of CDSHOP Proposition CDSHOP F 2 no idle, no wait C max, hence, CDSHOP P. Proof. [Sketch]: For any instance of CDSHOP with n vertices, we generate an instance of F 2 no idle, no wait C max with n jobs where, if there is an arc from v i to v j, then, we have p 2,i = p 1,j. If a feasible sequence of F 2 no idle, no wait C max exists, then, for each consecutive jobs J i, J j with J i J j, p 2,i = p 1,j holds. Hence, there is an arc from v i to v j. Thus, the corresponding sequence of vertices in CDSHOP constitutes an hamiltonian directed path. Conversely, if a path exists for CDSHOP, the related sequence of jobs in F 2 no idle, no wait C max is also feasible. 24 / 31

Problem F no-idle, no-wait C max The no-idle, no-wait constraint on m machines. 25 / 31

Problem F no-idle, no-wait C max Lemma (3) (C3) A necessary condition to have a feasible solution for problem F no idle, no wait C max is that there always exists an indexing of the jobs so that p j+1,1,..., p j+1,n 1 and p j,2,..., p j,n, for j = 1,...m 1, constitute different permutations of the same vector of elements. (C4) When the above condition (C3) holds, then Case 1 if (p 1,1 p 2,n or p 2,1 p 3,n or... or p m 1,1 p m,n ), every feasible sequence must have a job with processing times (p 1,1,..., p m 1,1 ) on machines 1 to (m 1) in first position and a job with processing time (p 2,n,..., p m,n ) on machines 2 to m in last position. Case 2 if (p 1,1 = p 2,n and p 2,1 = p 3,n and... and p m 1,1 = p m,n ) and there exists a feasible sequence, then there do exist at least n feasible sequences each starting with a different job by simply rotating the starting sequence as in a cycle. 26 / 31

Problem F no-idle, no-wait C max We can evince that in an optimal sequence, if job J i immediately precedes job J k, we have that p j+1,i = p j,k, j = 1,..., m 1 holds. Then, for a feasible 3-job subsequence (l, i, k) we must have: 1. [p 2,l ;...; p m,l ] = [p 1,i ;...; p m 1,i ] and, 2. [p 2,i ;...; p m,i ] = [p 1,k ;...; p m 1,k ]. This can be represented in terms of vectorial dominoes as follows. 27 / 31

Problem F no-idle, no-wait C max : an example As an example, a 3-job instance on 4 machines of problem F no idle, no wait C max. i J 1 J 2 J 3 p 1,i 5 3 4 p 2,i 3 4 9 p 3,i 4 9 7 p 4,i 9 7 2 induces the following vectorial dominoes domino 1 domino 2 domino 3 5 3 4 3 4 9 3 4 9 4 9 7 4 9 7 9 7 2 28 / 31

Problem F no-idle, no-wait C max Proposition Problem F no idle, no wait C max can be solved to optimality in O(mnlog(n)) time. Proof. [Sketch]: The result can be proved by showing that any instance of the F no idle, no wait C max problem can be reduced in polynomial time to a vectorial OSPD that is always solved by computing an Eulerian path in an oriented graph with n arcs. 29 / 31

Complexity of problems (J2, O2) no-idle, no-wait C max Job-shop (J) problem: operations of a job totally ordered Open-shop (O) problem: no ordering constraints on operations Proposition Problems J2 no idle, no wait C max and O2 no idle, no wait C max are NP-hard in the strong sense. Proof. [Sketch of proof for problem J2 no idle, no wait C max ]: We show that NMTS (Numerical Matching with Target Sums) reduces to J2 no idle, no wait C max. 30 / 31

Thank You. 31 / 31