A Branch-and-Price Algorithm for Parallel Machine Scheduling Using ZDDs and Generic Branching

We study the parallel machine scheduling problem to minimize the sum of the weighted completion times of the jobs to be scheduled (problem Pm||ΣwjCj in the standard three-field notation). We use the set covering formulation that was introduced by van den Akker et al. (1999) for this problem, and we improve the computational performance of their branch-and-price (B&P) algorithm by a number of techniques, including a different generic branching scheme, zero-suppressed binary decision diagrams (ZDDs) to solve the pricing problem, dual-price smoothing as a stabilization method, and Farkas pricing to handle infeasibilities. We report computational results that show the effectiveness of the algorithmic enhancements, which depends on the characteristics of the instances. To the best of our knowledge, we are also the first to use ZDDs to solve the pricing problem in a B&P algorithm for a scheduling problem.

[1]  Walid Ben-Ameur,et al.  Acceleration of cutting‐plane and column generation algorithms: Applications to network design , 2007, Networks.

[2]  Gilles Savard,et al.  Time-Indexed Formulations and the Total Weighted Tardiness Problem , 2005, INFORMS J. Comput..

[3]  Salah E. Elmaghraby,et al.  On the Scheduling of Jobs on a Number of Identical Machines. , 1972 .

[4]  David Bergman,et al.  Discrete Optimization with Decision Diagrams , 2016, INFORMS J. Comput..

[5]  Paul Wentges Weighted Dantzig-Wolfe decomposition for linear mixed-integer programming , 1997 .

[6]  Sheldon H. Jacobson,et al.  Branch-and-bound algorithms: A survey of recent advances in searching, branching, and pruning , 2016, Discret. Optim..

[7]  Ruslan Sadykov,et al.  Automation and Combination of Linear-Programming Based Stabilization Techniques in Column Generation , 2018, INFORMS J. Comput..

[8]  Wayne E. Smith Various optimizers for single‐stage production , 1956 .

[9]  Warren B. Powell,et al.  Solving Parallel Machine Scheduling Problems by Column Generation , 1999, INFORMS J. Comput..

[10]  Meral Azizoglu,et al.  On the minimization of total weighted flow time with identical and uniform parallel machines , 1999, Eur. J. Oper. Res..

[11]  Martin W. P. Savelsbergh,et al.  Time-Indexed Formulations for Machine Scheduling Problems: Column Generation , 2000, INFORMS J. Comput..

[12]  Han Hoogeveen,et al.  Combining Column Generation and Lagrangean Relaxation to Solve a Single-Machine Common Due Date Problem , 2002, INFORMS J. Comput..

[13]  Edward G. Coffman,et al.  Scheduling independent tasks to reduce mean finishing time , 1974, CACM.

[14]  Reha Uzsoy,et al.  A new dynamic programming algorithm for the parallel machines total weighted completion time problem , 1992, Oper. Res. Lett..

[15]  Shin-ichi Minato,et al.  Zero-Suppressed BDDs for Set Manipulation in Combinatorial Problems , 1993, 30th ACM/IEEE Design Automation Conference.

[16]  Chris N. Potts,et al.  Scheduling Identical Parallel Machines to Minimize Total Weighted Completion Time , 1994, Discret. Appl. Math..

[17]  J. M. Moore,et al.  A Functional Equation and its Application to Resource Allocation and Sequencing Problems , 1969 .

[18]  David Thomas,et al.  The Art in Computer Programming , 2001 .

[19]  Jan Karel Lenstra,et al.  Complexity of machine scheduling problems , 1975 .

[20]  William J. Cook,et al.  Maximum-weight stable sets and safe lower bounds for graph coloring , 2012, Mathematical Programming Computation.

[21]  Sheldon H. Jacobson,et al.  Solving the Pricing Problem in a Branch-and-Price Algorithm for Graph Coloring Using Zero-Suppressed Binary Decision Diagrams , 2014, INFORMS J. Comput..

[22]  Marcus Poggi de Aragão,et al.  Exact algorithm over an arc-time-indexed formulation for parallel machine scheduling problems , 2010, Math. Program. Comput..

[23]  Han Hoogeveen,et al.  Parallel Machine Scheduling by Column Generation , 1999, Oper. Res..

[24]  Saburo Muroga,et al.  Binary Decision Diagrams , 2000, The VLSI Handbook.

[25]  Martin E. Dyer,et al.  Formulating the single machine sequencing problem with release dates as a mixed integer program , 1990, Discret. Appl. Math..

[26]  C. Y. Lee Representation of switching circuits by binary-decision programs , 1959 .

[27]  Ruslan Sadykov,et al.  Column generation for extended formulations , 2011, EURO J. Comput. Optim..

[28]  José M. Valério de Carvalho,et al.  A branch-and-price algorithm for scheduling parallel machines with sequence dependent setup times , 2007, Eur. J. Oper. Res..

[29]  Michael H. Rothkopf,et al.  Scheduling Independent Tasks on Parallel Processors , 1966 .