Structure-Based Methods Foundations of Constraint Processing

Slides:



Advertisements
Similar presentations
Tree Clustering for Constraint Networks 1 Chris Reeson Advanced Constraint Processing Fall 2009 By Rina Dechter & Judea Pearl Artificial Intelligence,
Advertisements

Constraint Satisfaction Problems
Statistical Methods in AI/ML Bucket elimination Vibhav Gogate.
Anagh Lal Tuesday, April 08, Chapter 9 – Tree Decomposition Methods- Part II Anagh Lal CSCE Advanced Constraint Processing.
Constraint Optimization Presentation by Nathan Stender Chapter 13 of Constraint Processing by Rina Dechter 3/25/20131Constraint Optimization.
Foundations of Constraint Processing More on Constraint Consistency 1 Foundations of Constraint Processing CSCE421/821, Spring
Junction Trees And Belief Propagation. Junction Trees: Motivation What if we want to compute all marginals, not just one? Doing variable elimination for.
Foundations of Constraint Processing, Spring 2008 April 16, 2008 Tree-Structured CSPs1 Foundations of Constraint Processing CSCE421/821, Spring 2008:
A First Practical Algorithm for High Levels of Relational Consistency Shant Karakashian, Robert Woodward, Christopher Reeson, Berthe Y. Choueiry & Christian.
1 Directional consistency Chapter 4 ICS-179 Spring 2010 ICS Graphical models.
A Constraint Satisfaction Problem (CSP) is a combinatorial decision problem defined by a set of variables {A,B,C,…}, a set of domain values for these variables,
Anagh Lal Monday, April 14, Chapter 9 – Tree Decomposition Methods Anagh Lal CSCE Advanced Constraint Processing.
Foundations of Constraint Processing, Fall 2004 November 8, 2004Ordering heuristics1 Foundations of Constraint Processing CSCE421/821, Fall 2004:
Foundations of Constraint Processing, Fall 2005 November 16, 2005nFCi1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
1 Directional consistency Chapter 4 ICS-275 Spring 2007.
Foundations of Constraint Processing, Fall 2005 October 20, 2005Ordering heuristics1 Foundations of Constraint Processing CSCE421/821, Fall 2005:
Constraint Systems Laboratory October 2 nd, 2005Zheng – DocProg CP’051 Applying Structural Decomposition Methods to Crossword Puzzle Problems Student:
Cut-and-Traverse: A new Structural Decomposition Method for CSPs Yaling Zheng and Berthe Y. Choueiry Constraint Systems Laboratory Computer Science & Engineering.
M. HardojoFriday, February 14, 2003 Directional Consistency Dechter, Chapter 4 1.Section 4.4: Width vs. Local Consistency Width-1 problems: DAC Width-2.
Tree Decomposition methods Chapter 9 ICS-275 Spring 2007.
1 Hybrid of search and inference: time- space tradeoffs chapter 10 ICS-275A Fall 2003.
1 Book: Constraint Processing Author: Rina Dechter Chapter 10: Hybrids of Search and Inference Time-Space Tradeoffs Zheying Jane Yang Instructor: Dr. Berthe.
Problem Solving with Constraints Ordering heuristics1 Foundations of Constraint Processing CSCE496/896, Fall
Because the localized R(*,m)C does not consider combinations of relations across clusters, propagation between clusters is hindered. Synthesizing a global.
Problem Solving with Constraints Lookahead Schemas 1 Foundations of Constraint Processing CSCE496/896, Fall
1 Directional consistency Chapter 4 ICS-275 Spring 2009 ICS Constraint Networks.
Wednesday, January 29, 2003CSCE Spring 2003 B.Y. Choueiry Directional Consistency Chapter 4.
Constraint Systems Laboratory R.J. Woodward 1, S. Karakashian 1, B.Y. Choueiry 1 & C. Bessiere 2 1 Constraint Systems Laboratory, University of Nebraska-Lincoln.
Foundations of Constraint Processing Ordering heuristics1 Foundations of Constraint Processing CSCE421/821, Spring
Foundations of Constraint Processing, Fall 2004 October 3, 2004Interchangeability in CSPs1 Foundations of Constraint Processing CSCE421/821, Fall 2004:
Foundations of Constraint Processing, Spring 2009 Structure-Based Methods: An Introduction 1 Foundations of Constraint Processing CSCE421/821, Spring 2009.
Foundations of Constraint Processing Constraint Graphical Models 1Odds & Ends Foundations of Constraint Processing CSCE421/821, Fall
Tree Decomposition methods Chapter 9 ICS-275 Spring 2009.
Structure-Based Methods Foundations of Constraint Processing
Consistency Methods for Temporal Reasoning
A First Practical Algorithm for High Levels of Relational Consistency
Algorithms and networks
Rationale & Strategies Foundations of Constraint Processing
Structural graph parameters Part 2: A hierarchy of parameters
Foundations of Constraint Processing
Structure-Based Methods Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
Algorithms and networks
CSPs and Relational DBs
Path Consistency & Global Consistency Properties
More on Constraint Consistency
Structure-Based Methods Foundations of Constraint Processing
Boi Faltings and Martin Charles Golumbic
Problem Solving with Constraints
Foundations of Constraint Processing All questions to Piazza
Evaluation of (Deterministic) BT Search Algorithms
Rationale & Strategies Foundations of Constraint Processing
More on Constraint Consistency
Lookahead Schemas Foundations of Constraint Processing
Extensions to BT Search Foundations of Constraint Processing
Boi Faltings and Martin Charles Golumbic
Chapter 5: General search strategies: Look-ahead
Evaluation of (Deterministic) BT Search Algorithms
Rationale & Strategies Foundations of Constraint Processing
Foundations of Constraint Processing All questions to Piazza
Evaluation of (Deterministic) BT Search Algorithms
Problem Solving with Constraints
Problem Solving with Constraints
Improving the Performance of Consistency Algorithms by Localizing and Bolstering Propagation in a Tree Decomposition Shant Karakashian, Robert J. Woodward.
Directional consistency Chapter 4
Structure-Based Methods Foundations of Constraint Processing
An Introduction Structure-Based Methods
Reformulating the Dual Graphs of CSPs
Structure-Based Methods Foundations of Constraint Processing
Presentation transcript:

Structure-Based Methods Foundations of Constraint Processing An Introduction Foundations of Constraint Processing CSCE421/821, Fall 2016 www.cse.unl.edu/~choueiry/F16-421-822/ All questions to Piazza Berthe Y. Choueiry (Shu-we-ri) Avery Hall, Room 360 Tel: +1(402)472-5444

Motivation CSPs are represented by a network For binary CSPs, it is a graph For general CSPs, it is a hypergraph Exploit the structure of the network to solve the CSP During search For inference: adaptive consistency 10 16 1 11 2 3 12 13 19 4 17 7 5 18 14 15 9 8 6 h1 h8 h3 h2 h4 h7 h14 h12 h13 h15 h9 h11 h10 a c b d e f

Constraint Networks Dechter §2.1.3 Binary CSPs Macrostructure Microstructure Co-microstructure Non-Binary CSPs Hypergraph Dual (a.k.a. intergraph, line graph, join graph) Primal 14 1 2 3 h6 h7 h2 h8 9 10 11 h3 4 12 13 5 h4 8 7 6 1 14 2 3 9 10 11 4 12 5 13 7 8 6 h5 h1 h6 h7 h2 h3 h8 h4

Outline Binary CSPs Non-Binary CSPs Tree-Structured CSP graphs Dechter §5.1.2 [Freuder, 82] Cycle-Cutset Method Dechter §10.1.1 [Dechter, 90] Dynamic Dangle-Identification (GRED) [Zheng] DPC Dechter §4.2.2 [Dechter & Pearl, 88] Decomp. into bi-connected components [Freuder, 82] Tree Clustering Dechter §9.2 [Dechter & Pearl, 89] Non-Binary CSPs Bucket Elimination Dechter §4.4 [Dechter, 97] Tree Decomposition Dechter §9.2.2 [DB Theory]

Tree-Structured CSPs Dechter §5.1.2 Tree-structured CSPs can be solved in polynomial time Apply Revise(Vi,Vj) for all nodes from leaves to root Instantiate variables from root to leaves Note: later, we will follow the ‘general’ strategy Directional consistency from leaves to root Solution building from root to leaves a, b, c, d Propagation Elimination Ordering Instantiation Ordering

Cycle-Cutset Method (1) Dechter §10.1.1 Identify a cycle cutset S in the CSP Cutset: nodes when removed yield a tree Decompose the CSP into 2 partitions The nodes in S The nodes in T, forming a tree Idea: Iterate until a solution is found Solve the nodes in S Try to extend the solution to nodes in T

Cycle-Cutset Method (2) Dechter §10.1.1 Find a solution to nodes in S |S| is smaller than |V| initial problem Repeat until you find a solution For every solution to S Apply DAC from S to T If no domain is wiped-out, solve T (quick) If |S |=c, time is O(dc.(n-c)d2)=O(ndc+2) Finding the smallest cutset is NP-hard 

Dynamic Dangle-Identification (GRED) After each successful var assignment + lookahead Check the connectivity of the remaining CSP Identify “dangling trees” using Graham’s graph reduction operator For each dangling tree Do DAC from leaf to root Domain wipe-out indicates unsolvability Restrict search to nodes outside the identified dangling trees (Unpublished work by Y. Zheng, 2005)

Outline Binary CSPs Non-Binary CSPs Tree-Structured CSP graphs [Freuder, 82] Cycle-Cutset Method Dechter §10.1.1 [Dechter, 90] Dynamic Dangle-Identification (GRED)` [Zheng] DPC Dechter §4.2.2 [Dechter & Pearl, 88] Decomp. into bi-connected components [Freuder, 82] Tree Clustering Dechter §9.2 [Dechter & Pearl, 89] Non-Binary CSPs Bucket Elimination Dechter §4.4 [Dechter, 97] Tree Decomposition Dechter §9.2.2 [DB Theory]

DPC Dechter §4.2.2 [Dechter & Pearl, 88] V1 DPC Binary CSP Variable ordering is fixed Complexity of DPC O(n.w*2d3) If w*≤ 2, DPC determines consistency guarantees BT-free along ordering V2 Instantiation order V3 V4 V5 Elimination order V6 DPC animation courtesy of Chris Reeson

Biconnected components [Freuder 82] Aka, Decomposition into Separable Graphs Consider a CSP whose graph has articulation nodes Assume that the largest biconnected component has size b Build a tree whose nodes are the biconnected components, considering that the articulation node belongs to the parent (or parent+child) Build an ordering using a preorder traversal of the tree The complexity is bound by the size of the largest biconnected component

Tree Clustering Triangulate the graph Find maximal cliques Dechter §9.2 [Dechter & Pearl, 89] a Triangulate the graph MinFill, Dechter, Fig 4.4, page 89 Find maximal cliques MaxCardinality, Dechter, Fig 4.5, page 90 MaxCliques, [Golumbic] Create a tree structure of cliques Join tree, Dechter, Fig. 9.4 (Step 3), page 252 Repeat Solve a clique (all solutions), at each node in tree Apply DAC from leaves to root Generate solutions in a BT-free manner b c d e f a,b,c b,c,d b,d,e d,f

MaxCliques G=(v,e) G=(v,e⊆e’) σ a b c d e f a a,b,c b c b,c,d d b,d,e Figure 4.8, page 99, Algorithmic Graph Theory and Perfect Graphs, by Martin Charles Golumbic, Second edition, Annals of Discrete Mathematics 57, Elsevier, 2004. a G=(v,e) b c MinFill G=(v,e⊆e’) d MaxCardinality e f a σ a,b,c b MaxCliques c b,c,d d JoinTree b,d,e e d,f f

MaxCliques MaxCliques rewritten by C. Thiel

Tree Clustering Triangulate the graph Find maximal cliques Dechter §9.2 [Dechter & Pearl, 89] a Triangulate the graph Find maximal cliques Create a tree structure of cliques Repeat Solve a clique (all solutions), at each node in tree Apply DAC from leaves to root Generate solutions in a BT-free manner b c d e f a,b,c b,c,d b,d,e d,f

Tree Clustering: Complexity Dechter §9.2 [Dechter & Pearl, 89] n: number of variables Triangulation: O(n2) MinFill and MaxCardinality: O(n+e) Finding cliques: linear in n Solving clusters: O(kr), k is domain size, r is size of largest max clique Generating a solution O(n t log t) t is #tuples in each cluster, (sorted) domain of a ‘super’ variable in best case, we have n cliques Complexity bounded by size of largest clique: O(n2)+O(kr)+O(n t log t)=O(n kr log kr)=O(n r kr) a,b,c b,c,d b,d,e d,f

Outline Binary CSPs Non-Binary CSPs Tree-Structured CSP graphs [Freuder, 82] Cycle-Cutset Method Dechter §10.1.1 [Dechter, 90] Dynamic Dangle-Identification (GRED) [Zheng] DPC Dechter §4.2.2 [Dechter & Pearl, 88] Decomp. into bi-connected components [Freuder, 82] Tree Clustering Dechter §9.2 [Dechter & Pearl, 89] Non-Binary CSPs Bucket Elimination Dechter §4.4 [Dechter, 97] Tree Decomposition Dechter §9.2.2, [DB Theory]

Bucket Elimination Dechter §4.4 Choose a variable ordering Create buckets for each variable Place each constraint in the bucket of the deepest variable in its scope Create a tree node for each bucket Bottom up to root Join relations in bucket Project join on deepest bucket with common variables Top down: create solution BT-free a b c d e f ed fd eb ba ca dc bd cb c | abc d | bdc e | bde f | fd b | ab a | a

Tree Clustering versus BE a b c d e f ed fd eb ba ca dc bd cb c | abc d | bdc e | bde f | fd b | ab a | a a d,f a,b,c b,c,d b,d,e b c d e f

Outline Binary CSPs Non-Binary CSPs Bucket Elimination Dechter §4.4 [Dechter, 97] Tree Decomposition Dechter §9.2.2, DB Theory Idea Definition Examples Parameters Usefulness

Tree Decomposition Dechter §9.2.2 Inspired from Database Theory (join tree, acyclic DBs) Organize the constraint network in a tree structure called join tree Label the tree nodes with CSP variables (variable labeling) CSP constraints (relation labeling) Labels must obey rules Solving the CSP Bottom up: joining relations & projecting them on parent Top down: Generating the solution Complexity of solving the CSP is bound by width (tree)width: Max number of variables in a tree node - 1 Hyperwidth: Max number of constraints in a tree node 10 16 1 11 2 3 12 13 19 4 17 7 5 18 14 15 9 8 6 h1 h8 h3 h2 h6 h4 h7 h14 h12 h13 h15 h9 h11 h10 {h8, h15} {1, 11, 17, 19} {h1, h2} {1, 2, 3, 4, 5, 6} {h9, h15} {11, 12, 17, 18, 19} {h2, h3} {3, 4, 5, 6, 7, 8} {h10, h14} {12, 16, 17, 18, 19} {h4, h5} {5, 6, 7, 8, 9} {h9, h13} {12, 15, 16, 18, 19} {h6} {7, 9, 10} {h10, h12} {12, 13, 14, 15, 18, 19}

Tree Decomposition: Definition Dechter §9.2.2 Definition 9.4 Page 257 Tree Decomposition: Definition A tree decomposition (T, ,) of a CSP P=(X,D,C) where T=(V,E)  : chi variable labeling-function: (v)  X  : psi relation labeling-function: (v)  C Each constraint appears in at least on node in the tree, and all its variables are in that node Nodes where any variable appears induce a single connected subtree (connectedness property) 10 16 1 11 2 3 12 13 19 4 17 7 5 18 14 15 9 8 6 h1 h8 h3 h2 h6 h4 h7 h14 h12 h13 h15 h9 h11 h10 {h8, h15} {1, 11, 17, 19} {h1, h2} {1, 2, 3, 4, 5, 6} {h9, h15} {11, 12, 17, 18, 19} {h2, h3} {3, 4, 5, 6, 7, 8} {h10, h14} {12, 16, 17, 18, 19} {h4, h5} {5, 6, 7, 8, 9} {h9, h13} {12, 15, 16, 18, 19} {h6} {7, 9, 10} {h10, h12} {12, 13, 14, 15, 18, 19}

Tree Decomposition: Examples HYPERTREE Gottlob et al., 2002 HYPERCUTSET Gottlob et al., 2000 HINGETCLUSTER Gyssens et al., 1994 HINGE+ CaT TRAVERSE TCLUSTER Dechter & Pearl, 1989 HINGE Gyssens et al., 1994 CUT CUTSET Dechter, 1987 BICOMP Freuder, 1985 Heuristics proposed by Yaling Zheng in 2005

Tree Decomposition: Parameters For a given decomposition Treewidth (tw) Maximum number of variables in any node in tree - 1 Hyperwidth (hw) Maximum number of constraints in any node in tree For a given hypergraph Minimum tw of all possible decompositions Minimum hw of all possible decompositions

Tree Decompostion: Usefulness Theory: Characterize tractable CSPs Complexity is bounded tree/hyper width Fixed parameter complexity: independent of number of variables Practice: Use structure to solve CSPs Bottom up: join relations & project on parents Top down: generating solution BT-free

Summary Constraint networks Binary CSPs Hypergraph, dual graph, primal graph Binary CSPs Tree-Structured CSP graphs [Freuder, 82] Cycle-Cutset Method Dechter §10.1.1 [Dechter, 90] Dynamic Dangle-Identification (GRED) [Zheng] DPC Dechter §4.2.2 [Dechter & Pearl, 88] Decomp. into bi-connected components [Freuder, 82] Tree Clustering Dechter §9.2 [Dechter & Pearl, 89] Non-Binary CSPs Bucket Elimination Dechter §4.4 [Dechter, 97] Tree Decomposition Dechter §9.2.2 [DB Theory]