Decision Diagrams for Sequencing and Scheduling

Similar documents
Decision Diagrams for Discrete Optimization

Decision Diagrams: Tutorial

Optimization Bounds from Binary Decision Diagrams

The Separation Problem for Binary Decision Diagrams

Alternative Methods for Obtaining. Optimization Bounds. AFOSR Program Review, April Carnegie Mellon University. Grant FA

Stochastic Decision Diagrams

Logic, Optimization and Data Analytics

Job Sequencing Bounds from Decision Diagrams

Consistency as Projection

How to Relax. CP 2008 Slide 1. John Hooker Carnegie Mellon University September 2008

Projection in Logic, CP, and Optimization

Decision Diagram Relaxations for Integer Programming

Representations of All Solutions of Boolean Programming Problems

Projection, Inference, and Consistency

Projection, Consistency, and George Boole

Hybrid Optimization Methods for Time-Dependent Sequencing Problems

The core of solving constraint problems using Constraint Programming (CP), with emphasis on:

Lessons from MIP Search. John Hooker Carnegie Mellon University November 2009

Multivalued Decision Diagrams. Postoptimality Analysis Using. J. N. Hooker. Tarik Hadzic. Cork Constraint Computation Centre

Travelling Salesman Problem

Scheduling with Constraint Programming. Job Shop Cumulative Job Shop

MDD-based Postoptimality Analysis for Mixed-integer Programs

1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT

Integer Programming ISE 418. Lecture 8. Dr. Ted Ralphs

Chapter 3: Discrete Optimization Integer Programming

Operations Research as Empirical Modeling

Integer and Constraint Programming for Batch Annealing Process Planning

Integer Linear Programming (ILP)

Introduction to Bin Packing Problems

Chapter 3: Discrete Optimization Integer Programming

with Binary Decision Diagrams Integer Programming J. N. Hooker Tarik Hadzic IT University of Copenhagen Carnegie Mellon University ICS 2007, January

A Time Bucket Formulation for the TSP with Time Windows

Graph Coloring Inequalities from All-different Systems

Single-Facility Scheduling by Logic-Based Benders Decomposition

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

Network Flows. 6. Lagrangian Relaxation. Programming. Fall 2010 Instructor: Dr. Masoud Yaghini

Mixed Integer Programming Solvers: from Where to Where. Andrea Lodi University of Bologna, Italy

Solving Elementary Shortest-Path Problems as Mixed-Integer Programs

Scheduling Home Hospice Care with Logic-Based Benders Decomposition

3.7 Cutting plane methods

Integer Programming, Constraint Programming, and their Combination

arxiv: v1 [cs.cc] 5 Dec 2018

Tutorial: Operations Research in Constraint Programming

Integrating CP and Mathematical Programming

Bounds on the Traveling Salesman Problem

MVE165/MMG630, Applied Optimization Lecture 6 Integer linear programming: models and applications; complexity. Ann-Brith Strömberg

Time Dependent Traveling Salesman Problem with Time Windows: Properties and an Exact Algorithm

A Framework for Integrating Optimization and Constraint Programming

Branch-and-Bound. Leo Liberti. LIX, École Polytechnique, France. INF , Lecture p. 1

Integer Linear Programming

A Global Constraint for Total Weighted Completion Time for Unary Resources

An Exact Algorithm for the Steiner Tree Problem with Delays

Solving Time Dependent Traveling Salesman Problems with Time Windows

is called an integer programming (IP) problem. model is called a mixed integer programming (MIP)

Chapter 3: Proving NP-completeness Results

Outline. Relaxation. Outline DMP204 SCHEDULING, TIMETABLING AND ROUTING. 1. Lagrangian Relaxation. Lecture 12 Single Machine Models, Column Generation

Complexity Theory VU , SS The Polynomial Hierarchy. Reinhard Pichler

Outline. Complexity Theory EXACT TSP. The Class DP. Definition. Problem EXACT TSP. Complexity of EXACT TSP. Proposition VU 181.

Decision Procedures An Algorithmic Point of View

More on NP and Reductions

Combining Optimization and Constraint Programming

MVE165/MMG631 Linear and integer optimization with applications Lecture 8 Discrete optimization: theory and algorithms

Recoverable Robustness in Scheduling Problems

Gestion de la production. Book: Linear Programming, Vasek Chvatal, McGill University, W.H. Freeman and Company, New York, USA

Integrating Solution Methods. through Duality. US-Mexico Workshop on Optimization. Oaxaca, January John Hooker

Exact and Heuristic Algorithms for the Symmetric and Asymmetric Vehicle Routing Problem with Backhauls

A dynamic programming algorithm for single machine scheduling with ready times

Integer vs. constraint programming. IP vs. CP: Language

Introduction to Arti Intelligence

A Mixed-Integer Linear Program for the Traveling Salesman Problem with Structured Time Windows

Workforce Scheduling. Outline DM87 SCHEDULING, TIMETABLING AND ROUTING. Outline. Workforce Scheduling. 1. Workforce Scheduling.

An Integrated Approach to Truss Structure Design

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

On the exact solution of a large class of parallel machine scheduling problems

BATCH PROCESSING WITH SEQUENCE DEPENDENT SETUP TIMES: NEW RESULTS

Constraint Programming Overview based on Examples

Extended Formulations, Lagrangian Relaxation, & Column Generation: tackling large scale applications

The Maximum Flow Problem with Disjunctive Constraints

On mathematical programming with indicator constraints

Duality in Optimization and Constraint Satisfaction

New Integer Programming Formulations of the Generalized Travelling Salesman Problem

On the Generation of Circuits and Minimal Forbidden Sets

TRAVELING SALESMAN PROBLEM WITH TIME WINDOWS (TSPTW)

Algorithms Design & Analysis. Approximation Algorithm

Integer Programming Part II

Lecture 4: NP and computational intractability

CMSC 722, AI Planning. Planning and Scheduling

3.10 Lagrangian relaxation

A Global Constraint for Parallelizing the Execution of Task Sets in Non-Preemptive Scheduling

The traveling salesman problem

Decomposition-based Methods for Large-scale Discrete Optimization p.1

3.4 Relaxations and bounds

Technische Universität München, Zentrum Mathematik Lehrstuhl für Angewandte Geometrie und Diskrete Mathematik. Combinatorial Optimization (MA 4502)

Scheduling and Optimization Course (MPRI)

Interleaved Alldifferent Constraints: CSP vs. SAT Approaches

An Integrated Method for Planning and Scheduling to Minimize Tardiness

Discrete (and Continuous) Optimization WI4 131

Distributed Optimization. Song Chong EE, KAIST

CHAPTER 16: SCHEDULING

Finite-Domain Cuts for Graph Coloring

Transcription:

Decision Diagrams for Sequencing and Scheduling Willem-Jan van Hoeve Tepper School of Business Carnegie Mellon University www.andrew.cmu.edu/user/vanhoeve/mdd/

Plan What can MDDs do for Combinatorial Optimization? Compact representation of all solutions to a problem Limit on size gives approximation Control strength of approximation by size limit MDDs for Discrete Optimization 9:00am-10:0am tutorial (John Hooker) MDD as discrete relaxation for lower and upper bound Exact branch-and-bound search scheme (on MDD states) MDDs for Sequencing and Scheduling MDD-based constraint propagation Constraint-based scheduling with MDDs State-dependent costs 2

Decision Diagrams : 0 : 1 f(x1, f x, x2, x, x) x ) = (-x1 x* -x2 x* -x x+ ) x1 (* xx1 * x x2 ) + ( x2 x * x) ( 1 2 1 2 1 2 2 x Binary Decision Diagrams were introduced to compactly represent Boolean functions [Lee, 1959], [Akers, 1978], [Bryant, 1986] BDD: merge isomorphic subtrees of a given binary decision tree MDDs are multi-valued decision diagrams (i.e., for arbitrary finite-domain variables)

Brief background Original application areas: circuit design, verification Usually reduced ordered BDDs/MDDs are applied fixed variable ordering minimal exact representation Application to discrete optimization (exponential-size) cut generation [Becker et al., 2005] 0/1 vertex and facet enumeration [Behle & Eisenbrand, 2007] post-optimality analysis [Hadzic & Hooker, 2006, 2007] set bounds propagation [Hawkins, Lagoon, Stuckey, 2005] Scalable variant (polynomial-size) relaxed MDDs [Andersen, Hadzic, Hooker & Tiedemann, CP 2007] 4

Exact MDDs for discrete optimization : 0 : 1 r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 1 x 2 x x 4 x 5 l l l l l l l l l l 0 0 l l 0 0 l l l 0 l l l 0 l l 0 0 0 0 0 0 5

Exact MDDs for discrete optimization : 0 : 1 r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 1 x 2 x x 4 x 5 l l l l l l l l l l 0 0 l l 0 0 l l l 0 l l l 0 l l 0 0 0 0 0 6

Exact MDDs for discrete optimization : 0 : 1 r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 1 x 2 x x 4 x 5 l l l l l l l l l l l l l l l l l l l l 7

Exact MDDs for discrete optimization : 0 : 1 r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 1 x 2 x x 4 x 5 l l l l l l l l l l l l l l l l l l 8

Exact MDDs for discrete optimization x 1 : 0 : 1 root r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 2 x x 4 x 5 Each path corresponds to a solution terminal 1 t (1,0,1,1,0) 9

Limited-size MDDs Exact MDDs can be of exponential size in general We can limit the size of the MDD and still have a meaningful representation: First proposed by Andersen et al. [2007] for improved constraint propagation: Limit the width of the MDD (the maximum number of nodes on any layer) 10

MDDs for Constraint Programming 11

Motivation Constraint Programming applies systematic search and inference techniques to solve combinatorial problems Inference mainly takes place through: Filtering provably inconsistent values from variable domains Propagating the updated domains to other constraints x 1 > x 2 x 1 + x 2 = x alldifferent(x 1,x 2,x,x 4 ) domain propagation can be weak, however x 1 {1,2}, x 2 {0,1,2,}, x {2,}, x 4 {0,1} 12

Illustrative example alldifferent(x 1,x 2,x,x 4 ) (1) x 1 + x 2 + x 9 (2) x i {1,2,,4} (1) and (2) both domain consistent (no propagation) List of all solutions to alldifferent: x 1 x 2 x x 4 1 2 4 1 2 4 1 2 4 4 2 1 Suppose we could evaluate (2) on this list projection: D(x i ) = {1,2,,4} 1

Illustrative example alldifferent(x 1,x 2,x,x 4 ) (1) x 1 + x 2 + x 9 (2) x i {1,2,,4} List of all solutions to alldifferent: x 1 x 2 x x 4 2 4 1 2 4 1 2 4 1 4 2 1 Suppose we could evaluate (2) on this list D(x 1 ) = D(x 2 ) = D(x ) = {2,,4} projection: D(x 4 ) = {1} 14

Illustrative example (cont d) alldifferent(x 1,x 2,x,x 4 ) (1) x 1 + x 2 + x 9 (2) x i {1,2,,4} List of all solutions: use MDDs x 1 x 2 x x 4 2 4 x 1 2 4 1 2 4 1 4 2 4 2 x 2 2 4 1 4 2 x 4 2 1 1 x 4 15

Motivation for MDD propagation Conventional domain propagation projects all structural relationships among variables onto the domains Potential solution space implicitly defined by Cartesian product of variable domains (very coarse relaxation) We can communicate more information between constraint using MDDs [Andersen et al. 2007] Explicit representation of more refined potential solution space Limited width defines relaxed MDD Strength is controlled by the imposed width 16

MDD-based Constraint Programming Maintain limited-width MDD Serves as relaxation Typically start with width 1 (initial variable domains) Dynamically adjust MDD, based on constraints Constraint Propagation Edge filtering: Remove provably inconsistent edges (those that do not participate in any solution) Node refinement: Split nodes to separate edge information Search As in classical CP, but may now be guided by MDD 17

Specific MDD propagation algorithms Linear equalities and inequalities [Hadzic et al., 2008] [Hoda et al., 2010] Alldifferent constraints [Andersen et al., 2007] Element constraints [Hoda et al., 2010] Among constraints [Hoda et al., 2010] Disjunctive scheduling constraints [Hoda et al., 2010] [Cire & v.h., 2011, 201] Sequence constraints (combination of Amongs) [Bergman et al., 2014] Generic re-application of existing domain filtering algorithm for any constraint type [Hoda et al., 2010] 18

Example: Among Constraints Given a set of variables X, and a set of values S, a lower bound l and upper bound u, Among(X, S, l, u) := l x X ( x S ) u among the variables in X, at least l and at most u take a value from the set S Applications in, e.g., nurse scheduling must work between 1 and 2 night shifts each 10 days 19

Propagating Among Constraints backtracks time (s) width 1 vs 16 width 1 vs 16 (Systems of overlapping Among constraints) 20

Example: Sequence Constraints Employee must work at most 7 days every 9 consecutive days sun mon tue wed thu fri sat sun mon tue wed thu x 1 x 2 x x 4 x 5 x 6 x 7 x 8 x 9 x 10 x 11 x 12 0 x 1 0 +x 2 + x 2 0... +x +x + x 9 0... +x +x 4 7+ x 410... +x +x 5 + 7 11... +x 7 12 7 =: Sequence([x 1,x 2,...,x 12 ], q=9, S={1}, l=0, u=7) Sequence(X, q, S, l, u) := l x X ( x S ) u X =q Among(X, S, l, u) 21

Performance Comparison for Sequence 22

Sequence vs. Among A large MDD by itself may not be sufficient! 2

Coming up MDDs can handle objective functions as well Important for many CP problems e.g., disjunctive scheduling minimize makespan, weighted completion times, etc. We will develop an MDD approach to disjunctive scheduling combines MDD propagation and optimization reasoning 24

Handling objective functions x 1 : 0 : 1 4 r (1) x 1 + x 2 + x 1 (2) x 1 + x 4 + x 5 1 () x 2 + x 4 1 x 2 Suppose we have an objective: x 1 1 1 1 min 4x 1 +x 2 +x +2x 4 +5x 5 x 4 x 5 2 2 5 5 2 shortest path computation 1 t (0,0,1,1,0) 25

MDDs for Disjunctive Scheduling Cire and v.h. Multivalued Decision Diagrams for Sequencing Problems. Operations Research 61(6): 1411-1428, 201. 26

Disjunctive Scheduling 27

Disjunctive Scheduling in CP Sequencing and scheduling of activities on a resource Activities Processing time: p i Release time: r i Deadline: d i Start time variable: s i Activity 1 Activity 2 Activity 0 1 2 4 Resource Nonpreemptive Process one activity at a time 28

Extensions Precedence relations between activities Sequence-dependent setup times Various objective functions Makespan Sum of setup times (Weighted) sum of completion times (Weighted) tardiness number of late jobs 29

Inference Inference for disjunctive scheduling Precedence relations Time intervals in which an activity can be processed Sophisticated techniques include: Edge-Finding Not-first / not-last rules 0 1 2 4 Examples: 1 s Activity 1 Activity 2 Activity 0

Assessment of CP Scheduling Disjunctive scheduling may be viewed as the killer application for CP Natural modeling (activities and resources) Allows many side constraints (precedence relations, time windows, setup times, etc.) Among state of the art while being generic methodology However, CP has some problems when objective is not minimize makespan (but instead, e.g., weighted sum of lateness) setup times are present optimization What can MDDs bring here? 1

MDDs for Disjunctive Scheduling Three main considerations: Representation How to represent solutions of disjunctive scheduling in an MDD? Construction How to construct this relaxed MDD? Inference techniques What can we infer using the relaxed MDD? 2

MDD Representation Natural representation as permutation MDD Every solution can be written as a permutation π π 1, π 2, π,, π n : activity sequencing in the resource Schedule is implied by a sequence, e.g.: ssssssssss ππii sstttttttt ππii 1 + pp ππii 1 ii = 2,, nn

MDD Representation {1} π 1 Act r i p i d i 1 0 2 2 4 2 9 {2} {} π 2 8 Path {1} {} {2} : {} {2} π 0 start 1 1 6 start 2 7 start 5 4

Exact MDD Compilation Theorem: Constructing the exact MDD for a Disjunctive Instance is an NP-Hard problem We work with MDD relaxations instead Bounded size in specific cases, e.g. (Balas [99]): TSP defined on a complete graph Given a fixed parameter k, we must satisfy ii jj if jj ii kk for cities i, j Theorem: The exact MDD for the TSP above has O(n2 k ) nodes

MDD-based propagation Propagation: remove infeasible arcs from the MDD We can utilize several structures/constraints: Alldifferent for the permutation structure Earliest start time and latest end time Precedence relations For a given constraint type we maintain specific state information at each node in the MDD both top-down and bottom-up 6

Propagation (cont d) State information at each node i {1,2} r {} π 1 labels on all paths: A i labels on some paths: S i {1,2} {} {1} π 2 earliest starting time: E i latest completion time: L i {} u {1} {2} π Top down example for arc (u,v) v {1,2,,4,5} π 4 7

Alldifferent Propagation {1,2} r {} π 1 All-paths state: A u Labels belonging to all paths from node r to node u A u = {} Thus eliminate {} from (u,v) {1,2} {} {} {1} u {2} {1} π 2 π {1,2,4,5} {1,2,,4,5} π 4 v [Andersen et al., 2007] 8

Alldifferent Propagation Some-paths state: S u Labels belonging to some path from node r to node u S u = {1,2,} Identification of Hall sets Thus eliminate {1,2,} from (u,v) {1,2} {1,2} {} r {} {} {1} {2} u {4,5} {1,2,4,5} {1} π 1 π 2 π π 4 v 9

Propagate Earliest Completion Time {1,2} r {} π 1 Earliest Completion Time: E u Minimum completion time of all paths from root to node u {1,2} {} {} {1} {2} {1} π 2 π Similarly: Latest Completion Time u v {4,5} π 4 40

Propagate Earliest Completion Time Act r i d i p i 1 0 4 2 2 7 1 8 4 5 6 1 5 2 10 {1,2} 4 2 {1,2} {} 7 0 {} r {1} u {} {2} {1} π 1 π 2 π E u = 7 Eliminate 4 from (u,v) {5} {4,5} π 4 v 41

Propagate Precedence Relations Arc with label j infeasible if ii jj and i not on some path from r Suppose 4 5 S u = {1,2,} Since 4 not in S u, eliminate 5 from (u,v) {1,2} {1,2} {} r {} {1} u {5} {} {2} {1} π 1 π 2 π π 4 Similarly: Bottom-up for jj ii v 42

More MDD Inference Theorem: Given the exact MDD M, we can deduce all implied activity precedences in polynomial time in the size of M For a node u, AA uu : values in all paths from root to u AA uu : values in all paths from node u to terminal r i Precedence relation ii jj holds if and only if for all nodes u in M Same technique applies to relaxed MDD t j u 4

Extracting precedence relations Build a digraph GG=(V, E) where V is the set of activities For each node u in M if jj AA uu and ii AA uu add edge (i,j) to E represents that ii jj cannot hold Take complement graph GG complement edge exists iff ii jj holds (Ø, 124) (AA uu, AA uu ) r (, 124) 1 2 (1, 24) (2, 14) 2 1 4 1 2 4 2 4 1 2 4 GG 1 2 4 GG (12, 4) 4 1 t (124, Ø) (24, 1) 44

Extracting precedence relations Build a digraph GG=(V, E) where V is the set of activities For each node u in M if jj AA uu and ii AA uu add edge (i,j) to E represents that ii jj cannot hold Take complement graph GG complement edge exists iff ii jj holds Time complexity: O( M n 2 ) Same technique applies to relaxed MDD add an edge if jj SS uu and ii SS uu complement graph represents subset of precedence relations 45

Comparison to other methods Existing CP inference methods may not dominate the MDD propagation, even for small widths Act r i d i p i 1 0 25 11 2 1 27 10 14 5 5 [Vilim, 2004] Edge finding and not-first/not-last deduce that 1 and 2, but no changes in time bounds MDD finds the same precedences, and deduces that s 10 + 11 = 21 46

Communicate Precedence Relations 1. Provide precedence relations from MDD to CP update start/end time variables other inference techniques may utilize them (some of the precedence relations found by the MDD may not be detected by existing CP methods) 2. Filter the MDD using precedence relations from other (CP) techniques 47

Top-down MDD compilation π 1 {1,2,} {2} {} {2} {} π 2 {1,2,} {1,2,} {1,2,} {2} {} {1} π {1,2,} {1,2,} {1,2,} {1,2,} precedence: << 1 (exact MDD) To refine the MDD, we generally want to identify equivalence classes among nodes in a layer NP-hard, but can be based on state information in practice, e.g., EST, LCT, alldifferent constraint (A i and S i states), 48

Computational Evaluation MDD propagation implemented in IBM ILOG CPLEX CP Optimizer 12.4 (CPO) State-of-the-art constraint based scheduling solver Uses a portfolio of inference techniques and LP relaxation Three different variants CPO (only use CPO propagation) MDD (only use MDD propagation) CPO+MDD (use both) 49

Problem classes Disjunctive instances with sequence-dependent setup times release dates and deadlines precedence relations Objectives minimize makespan minimize sum of setup times minimize total tardiness Benchmarks Random instances with varying setup times TSP-TW instances (Dumas, Ascheuer, Gendreau) Sequential Ordering Problem 50

Importance of setup times CPO Backtracks / MDD Backtracks Random instances - 15 jobs - lex search - MDD width 16 - min makespan Importance of setup times (increasing average length of setup times) 51

TSP with Time Windows Pure MDD time (s) Dumas/Ascheuer instances - 20-60 jobs - lex search - MDD width: 16 CPO time (s) 52

Minimize Total Tardiness Consider activity i with due date δ i Completion time of i: c i = s i + p i Tardiness of i: max{0, c i δ i } Objective: minimize total (weighted) tardiness 120 test instances 15 activities per instance varying r i, p i, and δ i, and tardiness weights no side constraints, setup times (measure only impact of objective) lexicographic search, time limit of 1,800s 5

Total Tardiness Results MDD-128 MDD-64 MDD-2 MDD-16 MDD-128 MDD-64 MDD-2 CPO MDD-16 CPO total tardiness total weighted tardiness 54

Sequential Ordering Problem (TSPLIB) * * * * solved for the first time 55

Extension: Lagrangian bounds Observation: MDD bounds can be very loose Main cause: repetition of activities π 1 {1} Proposed remedy: π 2 {2} {} add Lagrangian relaxation penalize repeated activities π {2} {} Shortest path with updated weights 56

Example: Relaxed Decision Diagram r Arc Tasks Release Date 5 First task 2 4 4 4 r = 2 r = 1 4 2 2 Second task r = 1 2 Third task t 4 57

Shortest Path: Lower Bound r Arc Tasks Release Date 5 First task 2 4 4 4 r = 2 r = 1 4 2 2 Second task r = 1 t 2 4 Third task Shortest path Length: Lower bound on the optimal solution value 58

Shortest Path: Lower Bound r Arc Tasks Release Date 5 First task 2 4 4 4 r = 2 r = 1 4 2 2 Second task r = 1 Completion Time: 8 2 Third task 2 2 t 4 1 8 59

Issues 5 r 4 4 First task Solutions of a relaxed DD may violate several constraints of the problem 4 2 2 Second task Violation: All tasks performed once for all tasks i 2 Third task t 4 60

Remedy: Lagrangian Relaxation min s.t. z = shortest path e v(e)=i x e = 1, for all tasks i (+other problem constraints) [Bergman et al., 2015] Lagrangian multipliers λ i min z = shortest path + i λ i (1 - e v(e)=i x e ) s.t. (other problem constraints) This is done by updating shortest path weights! 61

General Approach We penalize infeasible solutions in a relaxed DD: Any separable constraint of the form f 1 (x 1 ) + f 2 (x 2 ) + + f n (x n ) c that must be satisfied by solutions of an MDD can be dualized We need only to focus on the shortest path solution Identify a violated constraint and penalize Systematic way directly adapted from LP Shortest paths are very fast to compute 62

Improving Relaxed Decision Diagram r 5 4 4 2 First task 4 Arc Tasks Release Date r = 2 r = 1 r = 1 4 2 2 Second task 2 Third task t 4 6

Improving Relaxed Decision Diagram r 5 First task 4 4 Arc Tasks Release Date 2 4 r = 2 r = 1 r = 1 4 2 2 Second task Completion Time: 8 2 2 t 2 4 Third task Penalization: If a task is repeated, increase its arc weight If a task is unused, decrease its arc weight 64

Improving Relaxed Decision Diagram r 5 4 4 2 First task 4 Arc Tasks Release Date r = 2 r = 1 r = 1 4 2 2 Second task Completion Time: 8 2 2 t 2 4 Third task Penalization: If a task is repeated, increase its arc weight If a task is unused, decrease its arc weight 65

Improving Relaxed Decision Diagram r 4 First task 5 4 Arc Tasks Release Date 2 4 r = 2 r = 1 r = 1 Second task Completion Time: 8 2 2 t Third task Penalization: If a task is repeated, increase its arc weight If a task is unused, decrease its arc weight 66

Improving Relaxed Decision Diagram r 4 First task 5 4 Arc Tasks Release Date 2 4 r = 2 r = 1 r = 1 Second task Third task New shortest path: 10 Guaranteed to be a valid lower bound for any penalties t 67

Cost-Based Filtering 5 r 4 4 If minimum solution value through an arc exceeds max(d(z)) then arc can be deleted 4 2 2 2 Suppose a solution of value 10 is known MDD filtering extends to Lagrangian weights: More filtering possible t 4 68

Impact on TSP with Time Windows TSPTW instances (Constraints, 2015) 69

State-Dependent Costs Kinable, Cire and v.h. Hybrid Optimization for Time-Dependent Sequencing. Under Review. 70

Context and Motivation Time-dependent sequencing machine scheduling, routing Challenging problem best results so far use dedicated methods not easy to extend with side constraints Utilize constraint programming framework? strengthened constraint propagation with MDDs improved bounds via additive bounding with LP evaluate on TD-TSP and TD-SOP 71

Time-Dependent Sequencing Activities processing time p i Activity 1 0 1 2 4 5 6 7 released date r i deadline d i Activity 2 Activity Resource non-preemptive process one activity at a time sequence-dependent setup times: also depend on position! = setup time between i and j if i is at position t tt δδ ii,jj 72

Constraint Programming Model Variables π i : label of i th activity in the sequence L i : position of activity i in the sequence Weak model: objective and AllDiff are decoupled 7

MDD-based propagation Update MDD propagation algorithms: Alldifferent for the permutation structure unchanged Precedence relations unchanged Earliest start time and latest end time tt adapt rule: δδ ii,jj becomes δδ ii,jj Objective minimize sum of setup times 74

Updated CP Model Stronger model: objective handled within MDD constraint 75

Additive Bounding (Fischetti & Toth, 1989) Add LP reduced costs to MDD relaxation Continuous LP relaxation discretized through MDD Stronger bounds Improved cost-based filtering 76

MIP and LP relaxation Time-space network model (Picard & Queyranne, 1978) Variables if i is performed at t and followed by j otherwise Constraints: flow conservation; perform each activity Valid inequalities: subtour and 4-cycle elimination 77

Embedding reduced costs in MDD State information at each node i shortest path from root to i with respect to root node initialized with LP objective value Since MDD is relaxation, shortest path is valid bound filter edges that do not participate in improving shortest path {2} 0 {} 0 4 {2} {} 2 0 {1} 0 {1} {2} MDD maintains both the original objective and this new additive bound constraint 78

Experiments Time-dependent TSP and SOP benchmarks 8 instances from TSPLIB (14-107 jobs) tt δδ ii,jj = (n t)*δδ ii,jj [Abeledo et al. 201] Time limit: 0 minutes MDD added to IBM ILOG CP Optimizer 12.4 maximum width 1024 MIP model (IBM ILOG CPLEX 12.4) state-space integer program subtour and 4-cycle elimination constraints LP relaxation takes several hours for 90 vertices 79

Results on Time-dependent TSP 0 25 20 Instances(#) 15 10 MDD (W 1024) + AB MDD (W 1024) 5 MIP 0 0 450 900 150 1800/ 0 25 50 75 100 time(s) optimality gap(%) Note: Dedicated branch, price and cut algorithm (Abeledo et al., 201) solves more TD-TSP instances optimally 80

Results on Time-dependent SOP #Solved MIP 6/0 Pure CP 5/0 CP + MDD + Additive Bounding 10/0 On average, additive MDD+LP bound improves - LP root node bound by 51.41% - MDD root node bound by 9.54% 81

Conclusion MDD propagation natural generalization of domain propagation Strength of MDD relaxation can be controlled by the width Huge reduction in solution time is possible For sequencing/disjunctive scheduling problems MDD can handle all side constraints and objectives from existing CP scheduling systems Polynomial cases (e.g., Balas variant) MDD propagation algorithms (alldifferent, time windows, ) Extraction of precedence constraints from MDD Can be enriched with math programming relaxations Great addition to constraint-based systems 82