Propagating Separable Equalities. in an MDD Store. Peter Tiedemann INFORMS John Hooker. Tarik Hadzic. Cork Constraint Computation Centre

Size: px
Start display at page:

Download "Propagating Separable Equalities. in an MDD Store. Peter Tiedemann INFORMS John Hooker. Tarik Hadzic. Cork Constraint Computation Centre"

Transcription

1 Propagating Separable Equalities in an MDD Store Tarik Hadzic Cork Constraint Computation Centre John Hooker Carnegie Mellon University Peter Tiedemann Configit Software Slide 1 INFORMS 2008

2 Slide 2 Constraint Programming Strength of CP processes individual constraints. Exploits problem substructure. Weakness of CP processes individual constraints. No global point of view. Overlooks implications of combined constraints. Two compensating strategies: Global constraints Domain store relaxation

3 The domain store Stores the current variable domains Values that occur in some feasible solution Provides a global point of view. to some extent. Pools results of individual constraint processing. Basis for constraint propagation. Slide 3

4 Advantages of domain store Provides natural input into filtering algorithms. Filters start with current domains when processing a constraint. Guides branching (on variables) in a natural way. Simply split the domain in the current domain store. Slide 4

5 Slide 5 Disadvantages of domain store Transmits relatively little information. A weak relaxation of the problem. Ignores interactions between variables. Feasible set is simply a Cartesian product of domains. Unbalanced tradeoff. Search trees too large. Too little processing at nodes.

6 A stronger discrete relaxation Relaxed multivalued decision diagram can serve as a constraint store. Generalization of binary decision diagram, used in circuit verification, configuration problems, etc. An MDD is a compact representation of a search tree for the problem. Isomorphic subtrees are merged. MDD is relaxed by limiting its width. Slide 6

7 Slide 7 Advantages of MDD store A much stronger relaxation than domain store. Strength of relaxation is adjustable, ranging from domain store to original problem. Guides branching in a natural way. More guidance than domain store. Justifies more processing at search tree nodes. Better integration of CP/IP.

8 Example problem x + x = 4 x 1 3 x 1 x 2 x = 3 3 x 1 + x 2 5 j { 1,2,3 } (,, ) (1,1,2) Slide 8

9 Search tree x x x Infeasible Feasible Slide 9

10 Remove infeasible solutions 1 2 x 1 3 x x Slide 10

11 Merge isomorphic subtrees 1 2 x 1 3 x 2 {2,3} 1 {1,2,3} x Slide 11 {1,2}

12 Remove redundant edge 1 2 x 1 3 x 2 {2,3} 1 {1,2,3} x Slide 12 {1,2}

13 Reduced MDD x x 2 {2,3} 1 x Slide 13 {1,2}

14 x + x = 4 x 1 3 x 1 x 2 x = 3 3 x 1 + x 2 5 j { 1,2,3 } (,, ) (1,1,2) x 1 Edge domain x 2 {2,3} x 3 Slide 14 u 1 u 2 u 3 u 4 u 5 u 6 1 {1,2}

15 Each path represents a cartesian product of solutions {2,3} Slide 15 x 1 x 2 {2,3} u 1 u 2 u 3 {1,2} x 3 u 4 u 5 u 6 1

16 Each path represents a cartesian product of solutions {1,2,3} Slide 16 x 1 x 2 {2,3} u 1 u 2 u 3 {1,2} x 3 u 4 u 5 u 6 1

17 MDD Relaxation Let s use relaxed MDD with max width of 2 Full MDD: 8 solutions Relaxed MDD: 14 solutions Slide 17 x 1 x 2 {2,3} u 1 u 2 u 3 {1,2} x 3 u 4 u 5 {1,2} 1

18 MDD Relaxation MDD relaxation with width 1 is just the domain store. Full MDD: 8 solutions Relaxed MDD: 14 solutions Domain store: = 27 solutions Slide 18 x 1 x 2 x 3 u 1 {1,2,3} u 2 {1,2,3} u 5 {1,2,3} 1

19 Branching search using relaxed MDD x 1 {1,2,3} x 2 {1,2,3} x 1 x 2 {2,3} u 1 u 2 u 3 {1,2} x 3 u 4 u 5 {1,2} Slide 19 1

20 Branching search using relaxed MDD x 1 {1,2,3} x 2 {1,2,3} {2,3} x 3 {1,2} x 1 x 2 x 3 u 1 u 2 u 3 {1,2} u 4 u 5 {1,2} Slide 20 1

21 Branching search using relaxed MDD x 1 {1,2,3} x 2 {1,2,3} {2,3} {2,3} x 3 {1,2} x 3 x 1 x 2 u 1 u 2 u 3 {1,2} x 3 u 4 u 5 {1,2} Slide 21 1

22 Branching search using relaxed MDD x 1 {1,2,3} {2,3} x 2 {1,2,3} x 2 {1,2,3} {2,3} x 3 {1,2} x 3 x 1 x 2 {2,3} u 1 u 2 u 3 {1,2} Slide 22 And so forth. Less branching than with domain store. x 3 u 4 u 5 1 {1,2}

23 Propagation in MDDs We can propagate a constraint in an MDD relaxation by edge domain filtering and refinement (node splitting). We take care not to exceed max width. Example: We will propagate alldiff in an MDD relaxation of width 3. Slide 23 Andersen, Hadzic, Hooker & Tiedemann, A constraint store based on multivalued decision diagrams, 2007

24 Propagation in MDDs Current MDD relaxation Slide 24 u 1 u 2 u 3 {1,2} u 4 {1,2,3} u 5 {1,2} u 6 u 6

25 Propagation in MDDs First filter edge domains using alldiff Slide 25 u 1 u 2 u 3 {1,2} u 4 {1,2,3} u 5 {1,2} u 6 u 6

26 Propagation in MDDs First filter edge domains using alldiff Slide 26 u 1 u 2 u 3 u 4 {1,2} u 5 {1,2} u 6 u 6

27 Propagation in MDDs To split u 5 : Identify equivalence classes of incoming edges Slide 27 u 1 u 2 u 3 u 4 {1,2} u 5 {1,2} u 6 u 6

28 Propagation in MDDs To split u 5 : Identify equivalence classes of incoming edges These are equivalent for alldiff because they lead to the same set of feasible paths. u 1 u 2 u 3 u 5 {1,2} u 4 Slide 28 u 6 u 6

29 Propagation in MDDs To split u 5 : Identify equivalence classes of incoming edges Slide 29 These are equivalent for alldiff because they lead to the same set of feasible paths. Easy to check equivalence for alldiff all incoming paths use same values u 1 u 2 u 3 {1,2} u 6 u 5 u 6 u 4

30 Propagation in MDDs To split u 5 : u 1 Identify equivalence classes of incoming edges. u 2 u 3 u 4 Split u 5 to receive 3 equivalence classes. u 5 u 5 u 5 {1,2} Slide 30 u 6 u 6

31 Propagation in MDDs Duplicate outgoing edges. Slide 31 u 1 u 2 u 3 u 4 u 5 u 5 u 5 {1,2} u 6 u 6

32 Propagation in MDDs Duplicate outgoing edges. u 1 u 2 u 3 u 4 u 5 u 5 u 5 {1,2} {1,2} Slide 32 u 6 {1,2} u 6

33 Propagation in MDDs Filter domains. u 1 u 2 u 3 u 4 u 5 u 5 u 5 {1,2} {1,2} Slide 33 u 6 {1,2} u 6

34 Propagation in MDDs Filter domains. u 1 u 2 u 3 u 4 u 5 u 5 u 5 Slide 34 u 6 u 6

35 Propagation in MDDs Alldiff has now been propagated. u 1 u 2 u 3 u 4 Hadzic, Hooker, O Sullivan & Tiedemann, Approximate compilation of constraints into multivalued decision diagrams, 2008 Slide 35 u 5 u 5 u 5 u 6 u 6

36 Slide 36 Computational results

37 Problems Multiple alldiffs. Three overlapping alldiffs variables alldiff(,, ) x 1 x n Separable equalities. Three nonlinear equalities in 15 variables. Variable domains contain 3 values. i g i ( x i ) = β Slide 37

38 Results Multiple alldiffs Conventional domain store About a million search tree nodes. MDD constraint store No backtracking. Even for width as small as 5. Wider MDDs require fewer splits. Slide 38

39 Slide 39 Number of branches + number of splits Domain store MDD-based Max width of MDD

40 Slide 40 Computation time (milliseconds) Domain store MDD-based Max width of MDD

41 MDDs are faster for all but smallest widths. Speed advantage of MDDs increases with maximum width. Up to a factor of about 30. Within the range of widths studied. Slide 41

42 Results Separable Equalities MDD propagation cannot compete with MILP for solving separable equalities alone. Slide 42

43 Results Separable Equalities MDD propagation cannot compete with MILP for solving separable equalities alone. MDD propagation is designed for problems that are suitable for CP. but contain some separable equalities. We want effective propagation of the equalities. Slide 43

44 Results Separable Equalities MDD propagation cannot compete with MILP for solving separable equalities alone. MDD propagation is designed for problems that are suitable for CP. but contain some separable equalities. We want effective propagation of the equalities. We compare MDD propagation for equalities with MDD propagation for 2 inequalities i.e., replacing each equality with 2 inequalities And propagating each inequality separately. Slide 44

45 Filter edge domains with dynamic programming. Applied separately for each equality. Use shortest and longest path lengths to the terminus to prune the calculation. Slide 45

46 Checking for edge equivalence is hard. Two partial solutions (x 1,, x k ) = (a 1,, a k ) (x 1,, x k ) = (b 1,, b k ) are equivalent iff k n g i ( a i ) + g i ( x i ) = β i = 1 i = k + 1 has same solutions as k n g i ( b i ) + g i ( x i ) = β i i k = 1 = + 1 Slide 46

47 Checking for edge equivalence is hard. Checking whether k k = g ( a ) g ( b ) i i i i i = 1 i = 1 is too strict Slide 47

48 Check for approximate equivalence. This is constraint-specific. Allows us to exploit special structure. In the case of equalities, check whether k k g ( a ) g ( b ) i i i i i = 1 i = 1 Slide 48

49 Actually, we did something else. Split on the nodes u i for which L max ( u i ) L min ( u i ) Longest path from u i to terminus Shortest path from u i to terminus Slide 49

50 MDD propagation of an equality is much faster than propagation of 2 inequalities. Both performance and advantage increase with MDD width. Slide 50

51 Slide 51 MDD propagation of inequalities MDD propagation of equalities

52 Slide 52 Conclusions and research issues

53 Conclusions MDD store provides substantial advantage over constraint store in multiple alldiff problems. Wider MDDs yield greater speedups (factor of 30). No backtracking, even with narrow MDDs. MDD store is slower than MILP for separable equalities, but much faster than using inequality propagator. Slide 53

54 Conclusions Intensive processing at search tree nodes can pay off when constraint store is richer. Ideally, use integrated problem solving Continuous relaxation, cutting planes, etc. MDD propagation, filtering, in parallel. Slide 54

55 Research Issues Are MDDs superior for optimization problems? Optimal solution = shortest path to terminus How to adjust width of relaxed MDD? Can always set width = 1 if MDDs not useful. How to propagate other global constraints in an MDD-based constraint store? Regular constraint (and special cases, pattern & stretch) Sequence constraint (and special case, among) Slide 55

Propagating separable equalities in an MDD store

Propagating separable equalities in an MDD store Propagating separable equalities in an MDD store T. Hadzic 1, J. N. Hooker 2, and P. Tiedemann 3 1 University College Cork t.hadzic@4c.ucc.ie 2 Carnegie Mellon University john@hooker.tepper.cmu.edu 3 IT

More information

Discrete Optimization with Decision Diagrams

Discrete Optimization with Decision Diagrams Discrete Optimization with Decision Diagrams J. N. Hooker Joint work with David Bergman, André Ciré, Willem van Hoeve Carnegie Mellon University Australian OR Society, May 2014 Goal Find an alternative

More information

Large-Scale Optimization and Logical Inference

Large-Scale Optimization and Logical Inference Large-Scale Optimization and Logical Inference John Hooker Carnegie Mellon University October 2014 University College Cork Research Theme Large-scale optimization and logical inference. Optimization on

More information

Graph Coloring Facets from a Constraint Programming Formulation

Graph Coloring Facets from a Constraint Programming Formulation Graph Coloring Facets from a Constraint Programming Formulation David Bergman J. N. Hooker Carnegie Mellon University INFORMS 2011 Motivation 0-1 variables often encode choices that can be represented

More information

Postoptimality Analysis for Integer Programming Using Binary Decision Diagrams

Postoptimality Analysis for Integer Programming Using Binary Decision Diagrams Postoptimality Analysis for Integer Programming Using Binary Decision Diagrams Tarik Hadzic 1 and J. N. Hooker 2 1 Cork Constraint Computation Center t.hadzic@4c.ucc.ie 2 Carnegie Mellon University john@hooker.tepper.cmu.edu

More information

Cost-Bounded Binary Decision Diagrams for 0-1 Programming

Cost-Bounded Binary Decision Diagrams for 0-1 Programming Cost-Bounded Binary Decision Diagrams for -1 Programming Tarik Hadžić 1 and J. N. Hooker 2 1 IT University of Copenhagen tarik@itu.dk 2 Carnegie Mellon University john@hooker.tepper.cmu.edu Abstract. In

More information

Beyond Valid Domains in Interactive Configuration

Beyond Valid Domains in Interactive Configuration Beyond Valid Domains in Interactive Configuration Tarik Hadzic Barry O Sullivan Cork Constraint Computation Centre (UCC) July 21, 2008 Introduction Calculation of Valid Domains (CVD) is one of the major

More information

Lagrangian Relaxation in CP

Lagrangian Relaxation in CP Lagrangian Relaxation in CP Willem-Jan van Hoeve CPAIOR 016 Master Class Overview 1. Motivation for using Lagrangian Relaxations in CP. Lagrangian-based domain filtering Example: Traveling Salesman Problem.

More information

Manipulating MDD Relaxations for Combinatorial Optimization

Manipulating MDD Relaxations for Combinatorial Optimization Manipulating MDD Relaxations for Combinatorial Optimization David Bergman, Willem-Jan van Hoeve, J. N. Hooker Tepper School of Business, Carnegie Mellon University 5000 Forbes Ave., Pittsburgh, PA 15213,

More information

Cost-Bounded Binary Decision Diagrams for 0-1 Programming

Cost-Bounded Binary Decision Diagrams for 0-1 Programming Cost-Bounded Binary Decision Diagrams for -1 Programming Tarik Hadzic 1 and J. N. Hooker 2 1 IT University of Copenhagen tarik@itu.dk 2 Carnegie Mellon University john@hooker.tepper.cmu.edu Abstract. In

More information

Binary decision diagrams for computing the non-dominated set

Binary decision diagrams for computing the non-dominated set Binary decision diagrams for computing the non-dominated set July 13, 2015 Antti Toppila and Ahti Salo 27th European Conference on Operational Research, 12-15 July 2015, University of Strathclyde, Glasgow,

More information

Decision Diagrams for Optimization

Decision Diagrams for Optimization Carnegie Mellon University Tepper School of Business Doctoral Dissertation Decision Diagrams for Optimization Andre Augusto Cire August, 2014 Submitted to the Tepper School of Business in Partial Fulfillment

More information

Multivalued Decision Diagrams for a Prize-Collecting Sequencing Problem

Multivalued Decision Diagrams for a Prize-Collecting Sequencing Problem 375 Multivalued Decision Diagrams for a Prize-Collecting Sequencing Problem Johannes Maschler Günther R. Raidl Abstract Recent years have shown that multivalued decision diagrams (MDD) are a powerful tool

More information

3 INTEGER LINEAR PROGRAMMING

3 INTEGER LINEAR PROGRAMMING 3 INTEGER LINEAR PROGRAMMING PROBLEM DEFINITION Integer linear programming problem (ILP) of the decision variables x 1,..,x n : (ILP) subject to minimize c x j j n j= 1 a ij x j x j 0 x j integer n j=

More information

BDD-Guided Clause Generation

BDD-Guided Clause Generation BDD-Guided Clause Generation Brian Kell 1, Ashish Sabharwal 2, and Willem-Jan van Hoeve 3 1 Dept. of Mathematical Sciences, Carnegie Mellon University, Pittsburgh, PA 15213 bkell@cmu.edu 2 Allen Institute

More information

Integer Programming as Projection

Integer Programming as Projection Integer Programming as Projection H. P. Williams London School of Economics John Hooker Carnegie Mellon University INFORMS 2015, Philadelphia USA A Different Perspective on IP Projection of an IP onto

More information

Discrete Optimization with Decision Diagrams

Discrete Optimization with Decision Diagrams TSpace Research Repository tspace.library.utoronto.ca Discrete Optimization with Decision Diagrams David Bergman, Andre A. Cire, Willem-Jan van Hoeve, J. N. Hooker Version Post-print/accepted manuscript

More information

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Advanced Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras Lecture 16 Cutting Plane Algorithm We shall continue the discussion on integer programming,

More information

Program Analysis and Constraint Programming

Program Analysis and Constraint Programming Program Analysis and Constraint Programming Joxan Jaffar National University of Singapore CPAIOR MasterClass, 18-19 May 2015 1 / 41 Program Testing, Verification, Analysis (TVA)... VS... Satifiability/Optimization

More information

The goal of this paper is to develop models and methods that use complementary

The goal of this paper is to develop models and methods that use complementary for a Class of Optimization Problems Vipul Jain Ignacio E. Grossmann Department of Chemical Engineering, Carnegie Mellon University, Pittsburgh, Pennsylvania, 15213, USA Vipul_Jain@i2.com grossmann@cmu.edu

More information

General Methods and Search Algorithms

General Methods and Search Algorithms DM811 HEURISTICS AND LOCAL SEARCH ALGORITHMS FOR COMBINATORIAL OPTIMZATION Lecture 3 General Methods and Search Algorithms Marco Chiarandini 2 Methods and Algorithms A Method is a general framework for

More information

The Separation Problem for Binary Decision Diagrams

The Separation Problem for Binary Decision Diagrams The Separation Problem for Binary Decision Diagrams André A Ciré and J N Hooker Carnegie Mellon University, Pittsburgh, USA jh38@andrewcmuedu, andrecire@cmuedu Abstract The separation problem is central

More information

CS 343: Artificial Intelligence

CS 343: Artificial Intelligence CS 343: Artificial Intelligence Constraint Satisfaction Problems Prof. Scott Niekum The University of Texas at Austin [These slides are based on those of Dan Klein and Pieter Abbeel for CS188 Intro to

More information

Chapter 10 Part 1: Reduction

Chapter 10 Part 1: Reduction //06 Polynomial-Time Reduction Suppose we could solve Y in polynomial-time. What else could we solve in polynomial time? don't confuse with reduces from Chapter 0 Part : Reduction Reduction. Problem X

More information

Arrays aren t going to work. What can we do? Use pointers Copy a large section of a heap, with a single pointer assignment

Arrays aren t going to work. What can we do? Use pointers Copy a large section of a heap, with a single pointer assignment CS5-008S-0 Leftist Heaps 0-0: Leftist Heaps Operations: Add an element Remove smallest element Merge two heaps together 0-: Leftist Heaps Operations: Add an element Remove smallest element Merge two heaps

More information

CS 188: Artificial Intelligence. What is Search For? Constraint Satisfaction Problems. Constraint Satisfaction Problems

CS 188: Artificial Intelligence. What is Search For? Constraint Satisfaction Problems. Constraint Satisfaction Problems CS 188: Artificial Intelligence Constraint Satisfaction Problems Constraint Satisfaction Problems N variables domain D constraints x 1 x 2 Instructor: Marco Alvarez University of Rhode Island (These slides

More information

12/7/2006. Outline. Generalized Conflict Learning for Hybrid Discrete/Linear Optimization. Forward Conflict-Directed Search

12/7/2006. Outline. Generalized Conflict Learning for Hybrid Discrete/Linear Optimization. Forward Conflict-Directed Search 2/7/26 Massachusetts Institute of Technology Generalized Conflict Learning for Hybrid Discrete/Linear Optimization Hui Li and Brian Williams Computer Science and Artificial Intelligence Laboratory Massachusetts

More information

CS 440 Theory of Algorithms /

CS 440 Theory of Algorithms / CS 440 Theory of Algorithms / CS 468 Algorithms in Bioinformaticsi Brute Force. Design and Analysis of Algorithms - Chapter 3 3-0 Brute Force A straightforward approach usually based on problem statement

More information

6.034 Quiz 1, Spring 2004 Solutions

6.034 Quiz 1, Spring 2004 Solutions 6.034 Quiz 1, Spring 2004 Solutions Open Book, Open Notes 1 Tree Search (12 points) Consider the tree shown below. The numbers on the arcs are the arc lengths. Assume that the nodes are expanded in alphabetical

More information

BDD-Based Heuristics for Binary Optimization

BDD-Based Heuristics for Binary Optimization Journal of Heuristics manuscript No. (will be inserted by the editor) BDD-Based Heuristics for Binary Optimization David Bergman Andre A. Cire Willem-Jan van Hoeve Tallys Yunes Received: date / Accepted:

More information

Modelling of LP-problems (2WO09)

Modelling of LP-problems (2WO09) Modelling of LP-problems (2WO09) assignor: Judith Keijsper room: HG 9.31 email: J.C.M.Keijsper@tue.nl course info : http://www.win.tue.nl/ jkeijspe Technische Universiteit Eindhoven meeting 1 J.Keijsper

More information

Data Structures and Algorithms

Data Structures and Algorithms Data Structures and Algorithms CS5-008S-0 Leftist Heaps David Galles Department of Computer Science University of San Francisco 0-0: Leftist Heaps Operations: Add an element Remove smallest element Merge

More information

Balanced Search Trees

Balanced Search Trees Balanced Search Trees Computer Science E-22 Harvard Extension School David G. Sullivan, Ph.D. Review: Balanced Trees A tree is balanced if, for each node, the node s subtrees have the same height or have

More information

Announcements. Homework 1: Search. Project 1: Search. Midterm date and time has been set:

Announcements. Homework 1: Search. Project 1: Search. Midterm date and time has been set: Announcements Homework 1: Search Has been released! Due Monday, 2/1, at 11:59pm. On edx online, instant grading, submit as often as you like. Project 1: Search Has been released! Due Friday 2/5 at 5pm.

More information

An AVL tree with N nodes is an excellent data. The Big-Oh analysis shows that most operations finish within O(log N) time

An AVL tree with N nodes is an excellent data. The Big-Oh analysis shows that most operations finish within O(log N) time B + -TREES MOTIVATION An AVL tree with N nodes is an excellent data structure for searching, indexing, etc. The Big-Oh analysis shows that most operations finish within O(log N) time The theoretical conclusion

More information

Hybrid Constraint Solvers

Hybrid Constraint Solvers Hybrid Constraint Solvers - An overview Why Hybrid Solvers CP and SAT: Lazy Clause Generation CP and LP: Reification of Linear Constraints Conclusions 9 November 2011 Pedro Barahona - EPCL - Hybrid Solvers

More information

Boolean Representations and Combinatorial Equivalence

Boolean Representations and Combinatorial Equivalence Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discusses the applications of these representations for proving

More information

B553 Lecture 12: Global Optimization

B553 Lecture 12: Global Optimization B553 Lecture 12: Global Optimization Kris Hauser February 20, 2012 Most of the techniques we have examined in prior lectures only deal with local optimization, so that we can only guarantee convergence

More information

Implementing Scalable Parallel Search Algorithms for Data-Intensive Applications

Implementing Scalable Parallel Search Algorithms for Data-Intensive Applications Implementing Scalable Parallel Search Algorithms for Data-Intensive Applications Ted Ralphs Industrial and Systems Engineering Lehigh University http://www.lehigh.edu/~tkr2 Laszlo Ladanyi IBM T.J. Watson

More information

is shown that this problem can be modeled as an MILP, a CP, a combined MILP-CP OPL model (Hentenryck (1999)), and a hybrid MILP/CP model. The computat

is shown that this problem can be modeled as an MILP, a CP, a combined MILP-CP OPL model (Hentenryck (1999)), and a hybrid MILP/CP model. The computat Algorithms for hybrid MILP/CP models for a class of optimization problems Vipul Jain Λ and Ignacio E. Grossmann y Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 October

More information

Lagrangean Relaxation of the Hull-Reformulation of Linear Generalized Disjunctive Programs and its use in Disjunctive Branch and Bound

Lagrangean Relaxation of the Hull-Reformulation of Linear Generalized Disjunctive Programs and its use in Disjunctive Branch and Bound Lagrangean Relaxation of the Hull-Reformulation of Linear Generalized Disjunctive Programs and its use in Disjunctive Branch and Bound Francisco Trespalacios, Ignacio E. Grossmann Department of Chemical

More information

Algorithms for Decision Support. Integer linear programming models

Algorithms for Decision Support. Integer linear programming models Algorithms for Decision Support Integer linear programming models 1 People with reduced mobility (PRM) require assistance when travelling through the airport http://www.schiphol.nl/travellers/atschiphol/informationforpassengerswithreducedmobility.htm

More information

Background: disk access vs. main memory access (1/2)

Background: disk access vs. main memory access (1/2) 4.4 B-trees Disk access vs. main memory access: background B-tree concept Node structure Structural properties Insertion operation Deletion operation Running time 66 Background: disk access vs. main memory

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Tuomas Sandholm Carnegie Mellon University Computer Science Department [Read Chapter 6 of Russell & Norvig] Constraint satisfaction problems (CSPs) Standard search problem:

More information

Cluster Analysis. Angela Montanari and Laura Anderlucci

Cluster Analysis. Angela Montanari and Laura Anderlucci Cluster Analysis Angela Montanari and Laura Anderlucci 1 Introduction Clustering a set of n objects into k groups is usually moved by the aim of identifying internally homogenous groups according to a

More information

Overview. Overview. Example: Full Adder Diagnosis. Example: Full Adder Diagnosis. Valued CSP. Diagnosis using Bounded Search and Symbolic Inference

Overview. Overview. Example: Full Adder Diagnosis. Example: Full Adder Diagnosis. Valued CSP. Diagnosis using Bounded Search and Symbolic Inference Overview Diagnosis using Bounded Search and Smbolic Inference Martin Sachenbacher and Brian C. Williams MIT CSAIL Soft Constraints Framework Characteriing Structure in Soft Constraints Eploiting Structure

More information

Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe

Constraint Satisfaction Problems. slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Constraint Satisfaction Problems slides from: Padhraic Smyth, Bryan Low, S. Russell and P. Norvig, Jean-Claude Latombe Standard search problems: State is a black box : arbitrary data structure Goal test

More information

Memory Systems IRAM. Principle of IRAM

Memory Systems IRAM. Principle of IRAM Memory Systems 165 other devices of the module will be in the Standby state (which is the primary state of all RDRAM devices) or another state with low-power consumption. The RDRAM devices provide several

More information

The University of Jordan Department of Mathematics. Branch and Cut

The University of Jordan Department of Mathematics. Branch and Cut The University of Jordan Department of Mathematics Heythem Marhoune Amina-Zahra Rezazgui Hanaa Kerim Sara Chabbi Branch and Cut Prepared and presented by : Sid Ahmed Benchiha Ibtissem Ben Kemache Lilia

More information

Target Cuts from Relaxed Decision Diagrams

Target Cuts from Relaxed Decision Diagrams Target Cuts from Relaxed Decision Diagrams Christian Tjandraatmadja 1, Willem-Jan van Hoeve 1 1 Tepper School of Business, Carnegie Mellon University, Pittsburgh, PA {ctjandra,vanhoeve}@andrew.cmu.edu

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Search and Lookahead Bernhard Nebel, Julien Hué, and Stefan Wölfl Albert-Ludwigs-Universität Freiburg June 4/6, 2012 Nebel, Hué and Wölfl (Universität Freiburg) Constraint

More information

CSCE 411 Design and Analysis of Algorithms

CSCE 411 Design and Analysis of Algorithms CSCE 411 Design and Analysis of Algorithms Set 4: Transform and Conquer Slides by Prof. Jennifer Welch Spring 2014 CSCE 411, Spring 2014: Set 4 1 General Idea of Transform & Conquer 1. Transform the original

More information

Course Summary! What have we learned and what are we expected to know?

Course Summary! What have we learned and what are we expected to know? Course Summary! What have we learned and what are we expected to know? Overview! Introduction Modelling in MiniZinc Finite Domain Constraint Solving Search Linear Programming and Network Flow Mixed Integer

More information

Solving the Euclidean Steiner Tree Problem in n-space

Solving the Euclidean Steiner Tree Problem in n-space Solving the Euclidean Steiner Tree Problem in n-space Marcia Fampa (UFRJ), Jon Lee (U. Michigan), and Wendel Melo (UFRJ) January 2015 Marcia Fampa, Jon Lee, Wendel Melo Solving the Euclidean Steiner Tree

More information

Search and Optimization

Search and Optimization Search and Optimization Search, Optimization and Game-Playing The goal is to find one or more optimal or sub-optimal solutions in a given search space. We can either be interested in finding any one solution

More information

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems

What is Search For? CS 188: Artificial Intelligence. Constraint Satisfaction Problems CS 188: Artificial Intelligence Constraint Satisfaction Problems What is Search For? Assumptions about the world: a single agent, deterministic actions, fully observed state, discrete state space Planning:

More information

Experiments On General Disjunctions

Experiments On General Disjunctions Experiments On General Disjunctions Some Dumb Ideas We Tried That Didn t Work* and Others We Haven t Tried Yet *But that may provide some insight Ted Ralphs, Serdar Yildiz COR@L Lab, Department of Industrial

More information

1 Tree Search (12 points)

1 Tree Search (12 points) 1 Tree Search (12 points) Consider the tree shown below. The numbers on the arcs are the arc lengths. Assume that the nodes are expanded in alphabetical order when no other order is specified by the search,

More information

Clustering Billions of Images with Large Scale Nearest Neighbor Search

Clustering Billions of Images with Large Scale Nearest Neighbor Search Clustering Billions of Images with Large Scale Nearest Neighbor Search Ting Liu, Charles Rosenberg, Henry A. Rowley IEEE Workshop on Applications of Computer Vision February 2007 Presented by Dafna Bitton

More information

15.083J Integer Programming and Combinatorial Optimization Fall Enumerative Methods

15.083J Integer Programming and Combinatorial Optimization Fall Enumerative Methods 5.8J Integer Programming and Combinatorial Optimization Fall 9 A knapsack problem Enumerative Methods Let s focus on maximization integer linear programs with only binary variables For example: a knapsack

More information

Algorithm classification

Algorithm classification Types of Algorithms Algorithm classification Algorithms that use a similar problem-solving approach can be grouped together We ll talk about a classification scheme for algorithms This classification scheme

More information

4 Search Problem formulation (23 points)

4 Search Problem formulation (23 points) 4 Search Problem formulation (23 points) Consider a Mars rover that has to drive around the surface, collect rock samples, and return to the lander. We want to construct a plan for its exploration. It

More information

Chapter 12: Indexing and Hashing. Basic Concepts

Chapter 12: Indexing and Hashing. Basic Concepts Chapter 12: Indexing and Hashing! Basic Concepts! Ordered Indices! B+-Tree Index Files! B-Tree Index Files! Static Hashing! Dynamic Hashing! Comparison of Ordered Indexing and Hashing! Index Definition

More information

External Sorting Sorting Tables Larger Than Main Memory

External Sorting Sorting Tables Larger Than Main Memory External External Tables Larger Than Main Memory B + -trees for 7.1 External Challenges lurking behind a SQL query aggregation SELECT C.CUST_ID, C.NAME, SUM (O.TOTAL) AS REVENUE FROM CUSTOMERS AS C, ORDERS

More information

Chapter 11: Indexing and Hashing

Chapter 11: Indexing and Hashing Chapter 11: Indexing and Hashing Basic Concepts Ordered Indices B + -Tree Index Files B-Tree Index Files Static Hashing Dynamic Hashing Comparison of Ordered Indexing and Hashing Index Definition in SQL

More information

Announcements. Homework 4. Project 3. Due tonight at 11:59pm. Due 3/8 at 4:00pm

Announcements. Homework 4. Project 3. Due tonight at 11:59pm. Due 3/8 at 4:00pm Announcements Homework 4 Due tonight at 11:59pm Project 3 Due 3/8 at 4:00pm CS 188: Artificial Intelligence Constraint Satisfaction Problems Instructor: Stuart Russell & Sergey Levine, University of California,

More information

CS 4100 // artificial intelligence

CS 4100 // artificial intelligence CS 4100 // artificial intelligence instructor: byron wallace Constraint Satisfaction Problems Attribution: many of these slides are modified versions of those distributed with the UC Berkeley CS188 materials

More information

CISC 235: Topic 4. Balanced Binary Search Trees

CISC 235: Topic 4. Balanced Binary Search Trees CISC 235: Topic 4 Balanced Binary Search Trees Outline Rationale and definitions Rotations AVL Trees, Red-Black, and AA-Trees Algorithms for searching, insertion, and deletion Analysis of complexity CISC

More information

V Advanced Data Structures

V Advanced Data Structures V Advanced Data Structures B-Trees Fibonacci Heaps 18 B-Trees B-trees are similar to RBTs, but they are better at minimizing disk I/O operations Many database systems use B-trees, or variants of them,

More information

Chapter 12: Indexing and Hashing

Chapter 12: Indexing and Hashing Chapter 12: Indexing and Hashing Basic Concepts Ordered Indices B+-Tree Index Files B-Tree Index Files Static Hashing Dynamic Hashing Comparison of Ordered Indexing and Hashing Index Definition in SQL

More information

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs

Computational Integer Programming. Lecture 12: Branch and Cut. Dr. Ted Ralphs Computational Integer Programming Lecture 12: Branch and Cut Dr. Ted Ralphs Computational MILP Lecture 12 1 Reading for This Lecture Wolsey Section 9.6 Nemhauser and Wolsey Section II.6 Martin Computational

More information

CAD Algorithms. Categorizing Algorithms

CAD Algorithms. Categorizing Algorithms CAD Algorithms Categorizing Algorithms Mohammad Tehranipoor ECE Department 2 September 2008 1 Categorizing Algorithms Greedy Algorithms Prim s Algorithm (Minimum Spanning Tree) A subgraph that is a tree

More information

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem

A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem A Generic Separation Algorithm and Its Application to the Vehicle Routing Problem Presented by: Ted Ralphs Joint work with: Leo Kopman Les Trotter Bill Pulleyblank 1 Outline of Talk Introduction Description

More information

A Parameterized Local Consistency for Redundant Modeling in Weighted CSPs

A Parameterized Local Consistency for Redundant Modeling in Weighted CSPs A Parameterized Local Consistency for Redundant Modeling in Weighted CSPs Y.C. Law, J.H.M. Lee, and M.H.C. Woo Department of Computer Science and Engineering The Chinese University of Hong Kong, Shatin,

More information

Compressing Configuration Data for Memory Limited Devices

Compressing Configuration Data for Memory Limited Devices Compressing Configuration Data for Memory Limited Devices Esben Rune Hansen and Peter Tiedemann IT University of Copenhagen Rued Langgaards Vej 7, DK-2300 Copenhagen S, Denmark {esben, petert }@itu.dk

More information

Interactive Cost Configuration Over Decision Diagrams

Interactive Cost Configuration Over Decision Diagrams Journal of Artificial Intelligence Research 37 (2010) 99-139 Submitted 08/09; published 02/10 Interactive Cost Configuration Over Decision Diagrams Henrik Reif Andersen Configit A/S DK-2100 Copenhagen,

More information

2. Modeling AEA 2018/2019. Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2

2. Modeling AEA 2018/2019. Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2 2. Modeling AEA 2018/2019 Based on Algorithm Engineering: Bridging the Gap Between Algorithm Theory and Practice - ch. 2 Content Introduction Modeling phases Modeling Frameworks Graph Based Models Mixed

More information

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem

Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem Methods and Models for Combinatorial Optimization Exact methods for the Traveling Salesman Problem L. De Giovanni M. Di Summa The Traveling Salesman Problem (TSP) is an optimization problem on a directed

More information

M-ary Search Tree. B-Trees. B-Trees. Solution: B-Trees. B-Tree: Example. B-Tree Properties. Maximum branching factor of M Complete tree has height =

M-ary Search Tree. B-Trees. B-Trees. Solution: B-Trees. B-Tree: Example. B-Tree Properties. Maximum branching factor of M Complete tree has height = M-ary Search Tree B-Trees Section 4.7 in Weiss Maximum branching factor of M Complete tree has height = # disk accesses for find: Runtime of find: 2 Solution: B-Trees specialized M-ary search trees Each

More information

On Mixed-Integer (Linear) Programming and its connection with Data Science

On Mixed-Integer (Linear) Programming and its connection with Data Science On Mixed-Integer (Linear) Programming and its connection with Data Science Andrea Lodi Canada Excellence Research Chair École Polytechnique de Montréal, Québec, Canada andrea.lodi@polymtl.ca January 16-20,

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Berlin Chen Department of Computer Science & Information Engineering National Taiwan Normal University References: 1. S. Russell and P. Norvig. Artificial Intelligence:

More information

CSE 473: Artificial Intelligence

CSE 473: Artificial Intelligence CSE 473: Artificial Intelligence Constraint Satisfaction Luke Zettlemoyer Multiple slides adapted from Dan Klein, Stuart Russell or Andrew Moore What is Search For? Models of the world: single agent, deterministic

More information

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems

Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Some Applications of Graph Bandwidth to Constraint Satisfaction Problems Ramin Zabih Computer Science Department Stanford University Stanford, California 94305 Abstract Bandwidth is a fundamental concept

More information

Parallel Programming. Parallel algorithms Combinatorial Search

Parallel Programming. Parallel algorithms Combinatorial Search Parallel Programming Parallel algorithms Combinatorial Search Some Combinatorial Search Methods Divide and conquer Backtrack search Branch and bound Game tree search (minimax, alpha-beta) 2010@FEUP Parallel

More information

Space of Search Strategies. CSE 573: Artificial Intelligence. Constraint Satisfaction. Recap: Search Problem. Example: Map-Coloring 11/30/2012

Space of Search Strategies. CSE 573: Artificial Intelligence. Constraint Satisfaction. Recap: Search Problem. Example: Map-Coloring 11/30/2012 /0/0 CSE 57: Artificial Intelligence Constraint Satisfaction Daniel Weld Slides adapted from Dan Klein, Stuart Russell, Andrew Moore & Luke Zettlemoyer Space of Search Strategies Blind Search DFS, BFS,

More information

A dictionary interface.

A dictionary interface. A dictionary interface. interface Dictionary { public Data search(key k); public void insert(key k, Data d); public void delete(key k); A dictionary behaves like a many-to-one function. The search method

More information

CLASS: II YEAR / IV SEMESTER CSE CS 6402-DESIGN AND ANALYSIS OF ALGORITHM UNIT I INTRODUCTION

CLASS: II YEAR / IV SEMESTER CSE CS 6402-DESIGN AND ANALYSIS OF ALGORITHM UNIT I INTRODUCTION CLASS: II YEAR / IV SEMESTER CSE CS 6402-DESIGN AND ANALYSIS OF ALGORITHM UNIT I INTRODUCTION 1. What is performance measurement? 2. What is an algorithm? 3. How the algorithm is good? 4. What are the

More information

Minion: Fast, Scalable Constraint Solving. Ian Gent, Chris Jefferson, Ian Miguel

Minion: Fast, Scalable Constraint Solving. Ian Gent, Chris Jefferson, Ian Miguel Minion: Fast, Scalable Constraint Solving Ian Gent, Chris Jefferson, Ian Miguel 1 60 Second Introduction to CSPs Standard Definition A CSP is a tuple V: list of variables D: a domain for each

More information

Chapter 12: Indexing and Hashing (Cnt(

Chapter 12: Indexing and Hashing (Cnt( Chapter 12: Indexing and Hashing (Cnt( Cnt.) Basic Concepts Ordered Indices B+-Tree Index Files B-Tree Index Files Static Hashing Dynamic Hashing Comparison of Ordered Indexing and Hashing Index Definition

More information

Nonlinear Programming

Nonlinear Programming Nonlinear Programming SECOND EDITION Dimitri P. Bertsekas Massachusetts Institute of Technology WWW site for book Information and Orders http://world.std.com/~athenasc/index.html Athena Scientific, Belmont,

More information

Intro to DB CHAPTER 12 INDEXING & HASHING

Intro to DB CHAPTER 12 INDEXING & HASHING Intro to DB CHAPTER 12 INDEXING & HASHING Chapter 12: Indexing and Hashing Basic Concepts Ordered Indices B+-Tree Index Files B-Tree Index Files Static Hashing Dynamic Hashing Comparison of Ordered Indexing

More information

i 1 CONSTRAINT SATISFACTION METHODS FOR GENERATING VALID CUTS J. N. Hooker Graduate School of Industrial Administration Carnegie Mellon University Pittsburgh, PA 15213 USA http://www.gsia.cmu.edu/afs/andrew/gsia/jh38/jnh.html

More information

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

MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms MVE165/MMG631 Linear and integer optimization with applications Lecture 9 Discrete optimization: theory and algorithms Ann-Brith Strömberg 2018 04 24 Lecture 9 Linear and integer optimization with applications

More information

Chapter ML:III. III. Decision Trees. Decision Trees Basics Impurity Functions Decision Tree Algorithms Decision Tree Pruning

Chapter ML:III. III. Decision Trees. Decision Trees Basics Impurity Functions Decision Tree Algorithms Decision Tree Pruning Chapter ML:III III. Decision Trees Decision Trees Basics Impurity Functions Decision Tree Algorithms Decision Tree Pruning ML:III-67 Decision Trees STEIN/LETTMANN 2005-2017 ID3 Algorithm [Quinlan 1986]

More information

Motivation. CS389L: Automated Logical Reasoning. Lecture 5: Binary Decision Diagrams. Historical Context. Binary Decision Trees

Motivation. CS389L: Automated Logical Reasoning. Lecture 5: Binary Decision Diagrams. Historical Context. Binary Decision Trees Motivation CS389L: Automated Logical Reasoning Lecture 5: Binary Decision Diagrams Işıl Dillig Previous lectures: How to determine satisfiability of propositional formulas Sometimes need to efficiently

More information

Improving GAC-4 for Table and MDD Constraints

Improving GAC-4 for Table and MDD Constraints Improving GAC-4 for Table and MDD Constraints Guillaume Perez, Jean-Charles Régin To cite this version: Guillaume Perez, Jean-Charles Régin. Improving GAC-4 for Table and MDD Constraints. CP 2014, Sep

More information

TU/e Algorithms (2IL15) Lecture 2. Algorithms (2IL15) Lecture 2 THE GREEDY METHOD

TU/e Algorithms (2IL15) Lecture 2. Algorithms (2IL15) Lecture 2 THE GREEDY METHOD Algorithms (2IL15) Lecture 2 THE GREEDY METHOD x y v w 1 Optimization problems for each instance there are (possibly) multiple valid solutions goal is to find an optimal solution minimization problem:

More information

Algorithm Analysis Graph algorithm. Chung-Ang University, Jaesung Lee

Algorithm Analysis Graph algorithm. Chung-Ang University, Jaesung Lee Algorithm Analysis Graph algorithm Chung-Ang University, Jaesung Lee Basic definitions Graph = (, ) where is a set of vertices and is a set of edges Directed graph = where consists of ordered pairs

More information

CSC Design and Analysis of Algorithms. Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms. Brute-Force Approach

CSC Design and Analysis of Algorithms. Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms. Brute-Force Approach CSC 8301- Design and Analysis of Algorithms Lecture 4 Brute Force, Exhaustive Search, Graph Traversal Algorithms Brute-Force Approach Brute force is a straightforward approach to solving a problem, usually

More information

Algorithms Dr. Haim Levkowitz

Algorithms Dr. Haim Levkowitz 91.503 Algorithms Dr. Haim Levkowitz Fall 2007 Lecture 4 Tuesday, 25 Sep 2007 Design Patterns for Optimization Problems Greedy Algorithms 1 Greedy Algorithms 2 What is Greedy Algorithm? Similar to dynamic

More information