Presentation is loading. Please wait.

Presentation is loading. Please wait.

Anagh Lal Tuesday, April 08, 2003 1 Chapter 9 – Tree Decomposition Methods- Part II Anagh Lal CSCE 990-06 Advanced Constraint Processing.

Similar presentations


Presentation on theme: "Anagh Lal Tuesday, April 08, 2003 1 Chapter 9 – Tree Decomposition Methods- Part II Anagh Lal CSCE 990-06 Advanced Constraint Processing."— Presentation transcript:

1 Anagh Lal Tuesday, April 08, 2003 1 Chapter 9 – Tree Decomposition Methods- Part II Anagh Lal CSCE 990-06 Advanced Constraint Processing

2 Anagh Lal Tuesday, April 08, 2003 2 Outline Unifying Tree-decomposition schemes –What is a tree-decomposition? Processing a tree-decomposition, Cluster- Tree Elimination (CTE) Join tree clustering as tree-decomposition Adaptive-consistency as tree- decomposition.

3 Anagh Lal Tuesday, April 08, 2003 3 Unifying Tree-Decomposition Schemes We saw how JTC compiled a general an arbitrary constraint network into an acyclic one. We also saw an algorithm for solving acyclic networks. The unifying approach is presented as an algorithm combining the compilation phase and the solution phase of the compiled representation.

4 Anagh Lal Tuesday, April 08, 2003 4 Tree decomposition Definition: R = (X, D, C) be a CSP problem. A tree decomposition for R is a triple, where T = (V, E) is a tree, x and  are labelling functions which associate each vertex v from V with two sets x(v)  X and  (v)  C that satisfy the following conditions: –Each constraint from C is part of some set  (v) –Each variable in X, the set {v  V | the variable is a part of x(v)} induces a connected subtree of T (connectedness property) Let’s see an example…

5 Anagh Lal Tuesday, April 08, 2003 5 More definitions Tree-width: maximum cardinality from the set of x(v) Hyper-width: maximum cardinality from the set of  (v) Separator: sep(u, v) = x(u)  x(v)

6 Anagh Lal Tuesday, April 08, 2003 6 Tree-decomposition and hypertree embedding Tree-decomposition defines a hypertree embedding of a hypergraph Smallest tree-width and hyper-width among all such embeddings are called the tree- width and the hyper-width of the constraint hypergraph, respectively.

7 Anagh Lal Tuesday, April 08, 2003 7 Decomposable subproblem A subproblem of a constraint network is decomposable relative to the whole network if you can obtain solutions of the subproblem without referring to the remaining network A subproblem over a subset of Y variables is decomposable relative to the whole network, if its set of solutions is identical to the projection of the network’s solution on Y

8 Anagh Lal Tuesday, April 08, 2003 8 Cluster-Tree Elimination (CTE) A tree decomposition facilitates solving many reasoning tasks including constraint satisfaction, optimization, and probabilistic reasoning tasks. Algorithm Cluster Tree Elimination (CTE) is used for processing a tree decomposition. The algorithm computes a decomposable subproblem for each node in the tree.

9 Anagh Lal Tuesday, April 08, 2003 9 CTE-Algorithm Input: A tree decomposition for a problem R =. Output: An augmented tree whose nodes are clusters containing the original constraints as well as messages received from neighbours. A decomposable problem for each node v.

10 Anagh Lal Tuesday, April 08, 2003 10 Algorithm- Steps for every edge (u,v) in the tree T, do –Compute message m (u,v) ( from u to v), cluster(u) =  (u)  {m (i,u) | (i,u)  T, i  v} After node u has received messages from all adjacent vertices, except maybe from v Compute and send to v: m(u,v) =  sep(u,v) (  cluster(u) R i ) end for Return: A tree-decomposition augmented with constraint messages. For every node u  T, return the decomposition subproblem cluster(u) =  (u)  {m (i,u) | (i,u)  T, i  v}

11 Anagh Lal Tuesday, April 08, 2003 11 Complexity. N – number of nodes in the tree-decomposition. w* be the tree-width sep be its maximum seperator size r- # constraints deg – maximum degree in T Space complexity: O(N.exp(sep)) Time complexity: O((r+N).deg.exp(w*))

12 Anagh Lal Tuesday, April 08, 2003 12 Time complexity For a node u in the tree-decomposition T –# constraints processed = size of cluster = |  (u)| + deg – 1 –Time complexity of processing node u (|  (u)| + deg -1)exp(|x(u)|) = (|  (u)| + deg -1)exp(|w*|) by definition of w*. Summing over all nodes   |  (u)| = r So we have time complexity as (r.exp(w*) + N.deg.exp(w*) – N.exp(w*) ) This can be bounded by O(deg.(r+N).exp(w*))

13 Anagh Lal Tuesday, April 08, 2003 13 Space complexity The computation of message is done as follows: m(u,v) =  sep(u,v) (Join Ri  cluster(u) R i ) Computing joins, storing them and then projecting will lead to a space complexity exponential in |x(u)| or |w*|. But projecting after every join step will lead to a space complexity exponential in the separator size (sep). Thus for all nodes N, the space complexity is O(N.exp(sep))

14 Anagh Lal Tuesday, April 08, 2003 14 JTC as tree-decomposition Example on board. Space complexity –JTC  exponential in w* –CTE  exponential in separator size, sep Time Complexity –JTC  O(r.exp(w*)), If N < r –CTE  O( r.deg.exp(w*)) There are tree-decompositions that will not be created by JTC. Consider the example 9.2.13 …

15 Anagh Lal Tuesday, April 08, 2003 15 Adaptive-consistency (AC) as tree-decomposition AC can be viewed as a message passing algorithm along a “bucket-tree”, which is a special case of tree- decomposition. Bucket-tree structure, first approach to description: –Consider a problem R = (X,D,C) and ordering d –Each bucket B xi contains those constraints in C whose latest variable in d is x i –A bucket-tree of R and an ordering d, has buckets as its nodes, and bucket B x is connected to bucket B y if the constraint generated by adaptive-consistency in bucket B x is placed in B y –In a bucket-tree every node B x has one parent node B y

16 Anagh Lal Tuesday, April 08, 2003 16 Bucket-tree structure Bucket-tree structure, graph based description: –Let G d be the induced graph along ordering d of problem R having primal graph G. –Each variable x, and all of its earlier neighbours in the induced-graph reside in bucket B x –Each node B x points to B y ( B y is the parent of B x ) if y is the latest earlier neighbour of x in G d

17 Anagh Lal Tuesday, April 08, 2003 17 Bucket-tree is a tree- decomposition Proof: Given problem R, its bucket-tree and two mappings: –x(B x ) contains x and its earlier neighbours in the induced graph along ordering d. –  (B x ) contains all constraints whose highest-ordered argument is x –To prove 1.Each constraint from C is part of some set  (v) and 2.Each variable in X, the set {v  V | the variable is a part of x(v)} induces a connected subtree of T (connectedness property)

18 Anagh Lal Tuesday, April 08, 2003 18 Proof By construction of the bucket-tree, the first requirement (for the labelling x) holds Proof of connectedness: Proof by contradiction.

19 Anagh Lal Tuesday, April 08, 2003 19 Adaptive Tree Consistency Since the bucket-tree is a tree-decomposition, it can be processed by CTE. CTE adds a bottom-up message passing to adaptive consistency yielding Adaptive Tree Consistency (ATC). Top-down phase: Each bucket receives messages from its children and sends to its parent  AC. Bottom-up phase: Each bucket receives a constraint from its parent and sends constraints to its children.

20 Anagh Lal Tuesday, April 08, 2003 20 Algorithm Input: Problem R =(X,D,C), ordering d Output: Augmented buckets containing and all the  constraints received from neighbours in the bucket tree. Steps: –Step 0: Pre-processing –Step 1: Top-down phase –Step 2: Bottom-up phase

21 Anagh Lal Tuesday, April 08, 2003 21 Steps-0,1 Pre-processing: –Generate a bucket-tree using induced graph G d Top-down phase (AC): –For i= n to, process bucket B xi : Let  1,…,  j be all the constraints in B xi, including the original constraints of R. The constraint  y xi sent from x i to its parent y  y xi (sep (x i,y)) =  sep( xi,y ) ( Join) j i=1  i

22 Anagh Lal Tuesday, April 08, 2003 22 Step-2 Bottom-up phase: –For i= n to, process bucket B xi : Let  1,…,  j be all the constraints in B xi, including the original constraints of R The constraint  zj xi sent from each child z j  zj xi (sep (x i, z j )) =  sep( xi,zj ) ( Join) j i=1  i

23 Anagh Lal Tuesday, April 08, 2003 23 Interesting note Since a bucket-tree is a tree decomposition, and since it can be shown theat CTE applied to a bucket-tree is equivalent to ATC, then ATC : –Generates back-track free representation along certain orderings (width = 1) and, –Augments this representation with the generation of minimal subproblems.

24 Anagh Lal Tuesday, April 08, 2003 24 Complexity of ATC Notation: –w* - induced width along ordering d –deg – maximum degree in the bucket-tree –r- # constraints Time complexity –O(r.deg.exp(w*)) Space complexity –O(n.exp(w*))

25 Anagh Lal Tuesday, April 08, 2003 25 Discussion Questions Comments


Download ppt "Anagh Lal Tuesday, April 08, 2003 1 Chapter 9 – Tree Decomposition Methods- Part II Anagh Lal CSCE 990-06 Advanced Constraint Processing."

Similar presentations


Ads by Google