Nov
10 20091
Properties of Tree Convex Constraints
Authors: Yuanlin Zhang & Eugene C. Freuder
Presentation by Robert J. WoodwardCSCE990 ACP, Fall 2009
Nov
10 20092
Overview• Introduction• Definitions
– Basic, support, image, consistency, trees, tree intersection, tree convex constraint, tree convex CSPs,
• Properties– Intersection & composition on tree convex constraints– Consecutiveness: definition & composition
• Tractable Networks– Locally Chain Convex– Local Chain Convex & Strictly Union Closed (LCC&SUC)
• (One) Application• Related Work• Conclusion
Nov
10 20093
Story
• Introduces tree convexityPC tree convexity global consistency
• PC uses the operators ◦ and – ◦ ‘damages’ the tree convexity property
• Introduces ‘consecutiveness’ property, which is closed under ◦… but not under
• Introduces ‘locally chain convex’ (LCC) property, which is closed when domains are filtered, but is not closed under ◦
• Introduces ‘locally chain convex & strictly union closed’ (LCC&SUC) which is closed under ◦ and
PC LCC&SUC global consistency
Nov
10 20094
Introduction
• Binary constraint network
• Tree Convex– Construct a tree for a
variables domain– All allowed supports
must form subtree
a b c d
a 1 1 1 0
b 1 0 1 1
c 1 1 0 1
a
b c d
{a,b,c,d}
{a,b,c}
x y
cxy
cxy =
Tree for y
• Linear-time algorithm can detect tree convexity
[Conitzer+ AAAI04]
Nov
10 20095
Introduction
• Binary constraint network
• Tree Convex– Construct a tree for a
variables domain– All allowed supports
must form subtree
b c d
a 1 1 0
b 0 1 1
c 1 0 1
b
c d
{b,c,d}{a,b,c}
x y
cxy
cxy =
Tree for y
• Linear-time algorithm can detect tree convexity
[Conitzer+ AAAI04]
Nov
10 20096
Definitions: Basic
• Constraint networks (Binary)– Variables: V = {x1,x2,…,xn}
– Domains: Di for each xi ϵ V. Finite– Constraints: Between ordered variables
• Constraint between (x,y) is cxy
• cyx is a different constraint
– Operations (on constraints)• Intersection (∩)• Composition (◦)• Inverse
Nov
10 20097
Definitions: Support, Image
• For a constraint cxy
• Value u ϵ Dx
• Value v ϵ Dy
– support: u and v satisfy cxy
– image of u under cxy
• denoted Iy(u)
• Set of supports in Dy
– image of a subset of Dx
• Union of images of its values
a b c d
a 1 1 1 0
b 1 0 1 1
c 1 1 0 1
{a,b,c,d}
{a,b,c}
x y
cxy
cxy =
•What is Iy(b)?• {a,c,d}
Nov
10 20098
Definitions: Basic Consistency
• k-consistency– Any distinct k-1 variables can be consistently
extended to another• Strongly k-consistent– j-consistent for all j≤k– Globally consistent: strongly n-consistent– Strongly 2-consistency: arc consistent– Strongly 3-consistency: path consistent
Nov
10 20099
Definitions: Trees• Tree
– Connected graph without any cycles
– Path between any two nodes is unique
– Distance of a node to the root is the number of edges in the path
– Subtree is a connected subgraph of the tree.• Root is the node closed to root of
tree
• Chain– At most one child per node– Last value of chain furthest away
from root
• Forest– Graph without any cycles– Can also be looked at as a set
of trees– Assume root for a tree in a
forest
• Forest on a set S– vertex set is exactly S
• Set I is subtree of a forest– If there exists a subtree of
some tree whose vertex set is exactly I
– Note: Ø subtree of any forest
Nov
10 200910
Definitions: Tree Intersection
• Intersection of two trees on a common tree is a tree whose vertices and edges are in both trees
• Proposition 1: Intersection of two trees is a subtree of the tree– If the intersection is not
empty, root of intersection is root of one of the trees
a
b d
e fx
a
b c
∩
x
y za
b c
Common Tree:
d
Nov
10 200911
Definitions: Tree Intersection
• Intersection of two trees on a common tree is a tree whose vertices and edges are in both trees
• Proposition 1: Intersection of two trees is a subtree of the tree– If the intersection is not
empty, root of intersection is root of one of the trees
a
b d
e fx
a
b c
∩
x
y za
b c
Common Tree:
d
Nov
10 200912
Definitions: Tree Convex
• Definition 1– Sets E1,…,Ek are tree
convex with respect to a forest T on Uiϵ1..kEi
– If every Ei is a subtree of T
Sets that are tree convex• {a,b,c}• {a,b,d}• {a,d}• {a,c}• {d}• …
a
b c d
Nov
10 200913
Definitions: Tree Convexity on cxy
• Definition 2– A constraint cxy is tree
convex with respect to a forest T on Dy if the images of all values of Dx are tree convex with respect to T
a b c d
a 1 1 1 0
b 1 0 1 1
c 1 1 0 1
a
b c d
{a,b,c,d}
{a,b,c}
x y
cxy
cxy =
Tree for y
Nov
10 200914
• A CSP is tree convex– If there exists one forest for every variable &– Every constraint in CSP is tree convex with respect to this forest
• Tree convex CSP is globally consistent if it is path consistent– Proof in [Zhang & Yap, IJCAI 2003]– Let R be a network of constraints with arity at most r and R be
strongly 2(r-1)+1 consistent. If R is tree convex then it is globally consistent• For binary constraints• strongly 2(2-1)+1 consistent = path consistent
Definitions: Tree Convex CSP
Nov
10 200915
Definition: Proof• Tree convex constraint network
is globally consistent if it is path consistent– Network is path consistent– Prove by induction k consistent
• k ϵ {4,…,n}
– Consider instantiation of any k-1 variables and any new variable x
– Number of relevant constraints be l• For each relevant constraint there is
one extension to x
– We have l extension sets.– If intersection of all l sets is not
empty, x satisfies all relevant constraints
– Consider two of the l extension sets, E1 and E2
– Consistency lemma• if network is path consistent• Ix(E1)∩Ix(E2) Ø
– Since all constraints in l are tree convex• Extension sets are tree convex
– Tree convex sets intersection lemma• ∩Ix(EiϵL) Ø iff Ix(Ej)∩Ix(Ek) Ø
– From consistency lemma, we have k-consistent• Network is k+1 consistent iff any
instantiation of k distinct variables and a new variable, ∩Ic(EiϵL) Ø
• Therefore, by induction– globally consistent
[Zhang &Yap 03]
Nov
10 200916
Overview• Introduction• Definitions
– Basic, support, image, consistency, trees, tree intersection, tree convex constraint, tree convex CSPs
• Properties– Intersection & composition on tree convex constraints– Consecutiveness: definition & composition
• Tractable Networks– Locally Chain Convex– Local Chain Convex & Strictly Union Closed (LCC&SUC)
• (One) Application• Related Work• Conclusion
Nov
10 2009
a
b
c d
Properties: Intersection & Composition
• Assume c1xy c2
xy are tree convex to a forest T on domain Dy
• Prove there intersection is tree convex– Let cxy = c1
xy c2xy
– For any v in Dx
• images under c1xy and c2
xy are subtrees of T
• intersection of two images is a subtree of T by Proposition 1
– Every image of every v in Dx is a subtree of T
– Therefore, cxy is tree convex
• Composition does not preserve tree convexity
a
b
c d
x y
c2xy
x y
c1xy
c1xy
c2xy
17
Nov
10 200918
Properties: Consecutiveness• Consecutive
– Tree convex constraint cxy with respect to a forest Ty on Dy is consecutive with respect to a forest Tx on Dx
– iff every two neighboring values a,b on Tx, Iy(a) U Iy(b) is subtree of Ty
• Constraint Network tree convex and consecutive– exists a forest on each domain– every constraint cxy is tree convex
and consecutive with respect to the forests on Dy and Dx
a b c d
a 1 1 1 0
b 1 0 1 0
c 1 1 0 1
a
b c d
{a,b,c,d}
{a,b,c}
x y
cxy
cxy =
Tree for y
a
b cTree for x
{a,b,c}{a,b,c,d}
Nov
10 200919
Properties: Consecutiveness composition
• Class of consecutive tree convex constraints is closed under composition– Let cxy and cyz be two consecutive tree
convex constraints with trees Tx, Ty, and Tz
– cxz is their composition
– cxz is tree convex• v in Dx
• image under cxz = UbϵIy(v)Iz(b)
• Union of images of neighboring values in Iy(v) is subtree of Tz, union of all values in Iy(v) is a subtree too
– cxz is consecutive• u,v in Dx and neighbors under Tx
• Since cxy is consecutive, Iy(u) U Iy(v) is subtree to Ty
• Iy(u) U Iy(v) is also a subtree of Tz because of consecutiveness of Cyz
• So, Iz(u) U Iz(v) is a subtree of Tz
a
b
c d
x
a
b
c d
y
a
b
c d
z
cxy cyz
Nov
10 200920
Properties: Consecutiveness composition
• Class of consecutive tree convex constraints is closed under composition– Let cxy and cyz be two consecutive tree
convex constraints with trees Tx, Ty, and Tz
– cxz is their composition
– cxz is tree convex• v in Dx
• image under cxz = UbϵIy(v)Iz(b)
• Union of images of neighboring values in Iy(v) is subtree of Tz, union of all values in Iy(v) is a subtree too
– cxz is consecutive• u,v in Dx and neighbors under Tx
• Since cxy is consecutive, Iy(u) U Iy(v) is subtree to Ty
• Iy(u) U Iy(v) is also a subtree of Tz because of consecutiveness of Cyz
• So, Iz(u) U Iz(v) is a subtree of Tz
a
b
c d
x
a
b
c d
y
a
b
c d
z
cxy cyz
Nov
10 200921
Overview• Introduction• Definitions
– Basic, support, image, consistency, trees, tree intersection, tree convex constraint, tree convex CSPs
• Properties– Intersection & composition on tree convex constraints– Consecutiveness: definition & composition
• Tractable Networks– Locally Chain Convex– Local Chain Convex & Strictly Union Closed (LCC&SUC)
• (One) Application• Related Work• Conclusion
Nov
10 200922
Tractable Networks: Locally Chain Convex
• Intersection of two subtrees could be empty– Image of value could be empty– Deleting value makes constraint not
tree convex
• Locally chain convex– Constraint cxy with respect to a
forest on Dy
– iff image of every value in Dx is subchain of forest
• Constraint network locally chain convex– iff exists forest on each domain
such that every constraint is locally chain convex
a b c d
a 1 1 1 0
b 1 0 1 1
c 1 1 0 1
a
b c d
{a,b,c,d}
{a,b,c}
x y
cxy
cxy =
Tree for y
Nov
10 200923
Tractable Networks: Locally Chain Convex
• Locally chain convex constraint network is locally chain convex after removal of any value from domain– Consider a variable y
• Assume forest on Dy is Ty
– Value v is removed from Dy
– Need to show every cxy in C is locally chain convex• Could have made images on Dx not connected
• Construct new forest Ty’’ on Dy
– broken subchains will be reconnected
Nov
10 200924
Tractable Networks: Locally Chain Convex
• Let v1,…,vl be children of v
• Let pv be parent of v
• Construct a new forest Ty’ from Ty
• Remove v and all edges incident on v
• Construct Ty’’ from Ty’– Add edge between pv and all vi
• If v is root of Ty, let Ty’’ be Ty’
pv
v
v1v2
pv
v
v1v2 v1v2
pv
Ty’ Ty’’Ty
Nov
10 200925
Tractable Networks: Locally Chain Convex
• Let v1,…,vl be children of v
• Let pv be parent of v
• Construct a new forest Ty’ from Ty
• Remove v and all edges incident on v
• Construct Ty’’ from Ty’– Add edge between pv and all vi
• If v is root of Ty, let Ty’’ be Ty’
Ty’ Ty’’
v
v1v2
Ty
v
v1v2 v1v2
Nov
10 200926
Tractable Networks: Locally Chain Convex
• Composition may destroy local chain convexity
• To get tractable class we need to combine– Local chain convexity
• For deleting a value
– Consecutiveness• For composition
a
b
c d
a
b
c d
a
b
c d
x y z
cyzcxy
a
b
c d
a
b
c d
x z
cxz
(Composition)
Nov
10 200927
Tractable Networks: LCC&SUC• Locally chain convex and
strictly union closed (LCC&SUC)– With respect to forest Tx on Dx
and Ty on Dy
– image of any subchain in Tx is subchain in Ty
• Constraint network is locally chain convex and strictly union closed– every constraint cxy is locally
chain convex and strictly union closed with respect to the forests Dx and Dy
a
b
c d
a
b
c d
a
b
c d
x y z
cyzcxy
•Consider subchain {a,b} in y. What are images in z?• {b,c}, it is a subchain
•Consider subchain {b,d} in y. What are images in z?• {b,c,d}, it is not a subchain
Nov
10 200928
Tractable Networks: LCC&SUC
• A locally chain convex and strictly union closed constraint network can be transformed to an equivalent globally consistent network in polynomial time– (After applying 2 & 3 consistency)
(Properties)
Nov
10 200929
Tractable Networks: LCC&SUC
• Arc consistency removes values from domains– Show: After removing any value v in Dy, still
LCC&SUC
• Case 1: any cxy, forest Tx on Dx, Ty on Dy
– Construct a new forest Ty’’ for y such that for every subchain of Tx, its image is still a subchain under Ty’’
– What we did in our last proof
(Proof)
Nov
10 200930
Tractable Networks: LCC&SUC• Case 2: any cyx, forest Tx on Dx , Ty on Dy
– If it is LCC&SUC we are done– Exists subchain ty of Ty such that it
contains v and image is no longer connected graph after v removed
– Let tx be image of ty before v removed• After v removed, breaks tx into two
chains• Let gap in tx be tr
– Let r be root and l last node in tr
• pv and pr be parents of v and l
• cv and cl be children of v and l
– Consider any node u in tr
• u supported by v but not pv or cv in ty
• Since cxy LCC&SUC, image of tx must be a subchain containing (pv,v,cv)– image of u must be on
or contain subchain (pv,v,cv)
• v only support of u• u should also be
removed• after removal of tr, image
of ty is now connected and u is a subchain
pv
cv
v
pr
cl
r
u
l
ty
tx
Ty Tx
tr
(Proof)
Nov
10 200931
Tractable Networks: LCC&SUC• Path consistency preserves
LCC&SUO– cxz = cxz∩cyz◦cxy
• First: Composition of cxy and cyz is LCC&SUC– Any subchain tx in Dx, its image t’y under cxy is a subchain
– Since image of t’y with respect to cyz is a subchain of Dz
– Image of tx under composition is subchain of Dz
a
b
c d
a
b
c d
a
b
c d
x y z
cyzcxy
(Proof)
Nov
10 200932
Tractable Networks: LCC&SUC
• Second: show intersection is LCC&SUC, where
c’xz cyz◦cxy
c’’xz cxz c’xz– Subchain tx with only one value
of Dx
– Its images under cxz and c’xz are subchains of forest on Dz
– Intersection is still a subchain, so v’s image under c’’xz is subchain
a
b
c d
a
b
c d
a
b
c
d
x y z
cxy c’xzcxz= Dx Dz
cyz
(Proof)
Nov
10 200933
Tractable Networks: LCC&SUC– Subchain tx with more than
one value of Dx
– If image is subchain of Dz, done– Since intersection does not
form cycle• image of tx not connected
– Starting from root of tx
• Find first value (v) whose image is disjoint from image of parent
• Let a be last value of parents image
• Let d be root of v images• Let u be any value between a
and d
(Proof)x z
pv
v
c1 c2
a
c
d
b
Nov
10 200934
Tractable Networks: LCC&SUC– Show there is no support for u– pv images under
• cxz = I(pv), c’xz = I’(pv)
– I(pv)∩I’(pv) is subchain of Dz
– I(pv) and I’(pv) are chains• a is last value of one I(pv) or I’(pv)
– pv not in u’s image under czx
• I(u) has to be below parent since I(u) is chain
– I(v) and I’(v) images of v under cxz and c’xz• I(v) should include d and all values between
a and d in forest Dz
– Because cxz is LCC&SUC
• Since d is root of ∩, I’(v) includes d but not does include anything above d
– v is not support of u• I’(u) has to be above v
– Image of u under c’’xz is empty
x
pv
v
c1 c2
pv
v
c1 c2
z
a
c
d
b
a
c
d
b
c’xz
cxz
(Proof)
Nov
10 200935
Tractable Networks: LCC&SUC
• Original constraint network– Might not be constraint between x and y– Assume graph of original network is connected– So there must be a path– All constraints on path are LCC&SUC are closed– C’xy composition of constraints over path
• C’xy is also LCC&SUO
• Before enforcing path consistency set constraint between x y to be c’xy and repeat for any two variables without direct constraint
• Now before path consistency– Any two variables there is a constraint on them that is LCC&SUC
(Proof)
Nov
10 200936
Application
• Scene Labeling (As seen before from “On the Minimality and Global Consistency of Row-Convex Constraint Networks”)– Line with label
• Convex (+)• Concave (-)• Boundary (>)
– Junction constraints• Fork• Arrow• Ell
Forka b c d e
Arrowu v w
Ell1 2 3 4 5 6
+ +
+
- -
- -
- -
+ +-
- -+ +
++
--
Nov
10 200937
Application
b
c d e a
2
1 3
45
6
uv
w
Forka b c d e
Arrowu v w
Ell1 2 3 4 5 6
+ +
+
- -
- -
- -
+ +-
- -+ +
++
--
a b c d e
u 0 1 1 0 0
v 1 0 0 0 0
w 1 0 0 0 0
a b c d e
u 0 1 1 0 0
v 1 0 0 0 0
w 1 0 0 0 0
a b c d e
u 0 1 1 0 0
v 1 0 0 0 0
w 1 0 0 0 0
1 2 3 4 5 6
u 0 0 1 0 0 0
v 0 0 0 0 0 1
w 0 0 0 0 1 1
1 2 3 4 5 6
u 1 0 0 0 0 0
v 0 0 0 1 0 0
w 0 0 0 0 1 1
3 7
1 5
2 6
4
c21=
c31=
c51= c24= c37= c56= c26= c34= c57=
Nov
10 200938
Related Work (1)• Jeavons and colleagues
– Characterize complexity of constraint languages• A constraint language over D is a set of relations with finite arity• CSP associated with language L, denoted CSP(L), are triple (V,D,C)
– V = arbitrary set of variables– D = domain of each variable of V– C = set of constraints
• Constraint Language L over D is tractable if CSP(L’) can be solved in poly• Set of problems (V,D,C)
– V = {1,2,…,n} – D = {D1,D2,…,Dn} Di = arbitrary finite set– C = set of constraints
• Tractability of constraint language is not the same as a set of problems– Constraint Language involves fixed domain and fixed set of relations– All variables in different instances of CSP(L) have same domain
Nov
10 200939
Related Work (2)
• Multi-sorted constraint languages over more than one set
• CSP associated with multi-sorted language over {D1,D2,…,Dk}– Variables in CSP(L) can take any Di
• Big gap between multi-sorted language and set of problems
Nov
10 200940
Related Work (3)
• Focus on constraint language L over D– Every relation R in L satisfies LCC&SUC– Enforcing arc and path consistency guarantees
global consistency– In this situation, [Jeavons et al. AIJ98] gives
general characterization of all constraint languages which enforcing k-consistency ensures global consistency• LCC&SUC explains specific subclcass of these languages
Nov
10 200941
Related Work (4)
• [Kumar 06] uses randomized algorithms to show the tractability of “arc consistent consecutive tree convex” (ACCTC) networks– No deterministic algorithm is known to exist for this purpose
• Efficient recognition of constraints– Known: tree convexity [Zhang & Bao 08]
– Still open • ACCTC• Connected row convexity• Locally chain convexity, and • Strictly union closedness
Nov
10 200942
Conclusion
Property Composition Intersection
Tree Convex Not closed ClosedConsecutiveness Closed Not closedLocal Chain Convexity Not closed ClosedLCC&SUC Closed Closed
LCC&SUC (PC global consistency)Question: How does LCC&SUC relate to row convexity (RW)? LCC&SUC is likely stronger than RW but authors do not show that RW is a special case of LCC&SUC
Nov
10 200943
Thank You
• Any questions?– I know I would…