1 Introduction
Qualitative spatial and temporal reasoning (QSTR) is a major field of study in artificial intelligence and, particularly, in knowledge representation. This field studies representations of space and time that abstract from numerical quantities. The concise expressiveness of the representational languages used in the qualitative approach provides a promising framework that boosts research and applications in a plethora of areas and domains, such as ambient intelligence, dynamic Geographic Information System (GIS), cognitive robotics, and spatiotemporal design (Bhatt et al., Reference Bhatt, Guesgen, Wölfl and Hazarika2011; Hazarika, Reference Hazarika2012).
The Interval Algebra (IA) (Allen, Reference Allen1981) and a fragment of the Region Connection Calculus (RCC) (Randell et al., Reference Randell, Cui and Cohn1992), namely RCC-8, are the dominant artificial intelligence approaches for representing and reasoning about qualitative temporal and topological relations, respectively. These qualitative calculi use constraints to encode knowledge about the spatial or temporal relationships between entities in an abstract manner. Thus, the problem of reasoning about qualitative information can be modeled as an infinite-domain variant of a constraint satisfaction problem (CSP) (Montanari, Reference Montanari1974), for which we use the term qualitative constraint network (QCN). For instance, there are infinitely many time points or temporal intervals in the timeline and infinitely many regions in a two- or three-dimensional space. One way of dealing with infinite domains is using constraints over a finite set of binary relations, called base relations (or atoms), by employing a relation algebra (Ladkin & Maddux, Reference Ladkin and Maddux1994), which is the approach we follow here.
Given a QCN over a set of variables corresponding to a set of spatial or temporal
entities, we are particularly interested in its satisfiability
problem, that is, deciding whether there exists an interpretation of
all the variables of the QCN such that all of its constraints are satisfied by this
interpretation; such an interpretation being called a solution. The
satisfiability problem is closely related to the minimal labeling
problem (MLP) (Liu & Li, Reference Liu and Li2012; Amaneddine et al., Reference Amaneddine, Condotta and Sioutis2013) and the redundancy problem (Duckham
et al., Reference Duckham, Li, Liu and Long2014; Li
et al., Reference Li, Long, Liu, Duckham and Both2015), in the
sense that the latter two problems exhibit functions that build on the core
algorithms used to obtain a solution of a QCN. In particular, the MLP is the problem
of determining all the base relations for each of the constraints of a QCN that
participate in at least one solution of the QCN, whilst the redundancy problem is
the problem of obtaining all the constraints of a QCN that do not contain at least
one base relation participating in a solution of the modified QCN that results by
removing these constraints (these constraints being referred to as non-redundant
constraints, since their removal changes the solution set of the QCN). As such, we
will emphasize on the satisfiability problem throughout the paper, and make the link
whenever there is a work related to the MLP or the redundancy problem whose results
are affected by the notions and techniques that we will survey here. The
satisfiability problem in IA and RCC-8 is
${\cal N}{\cal P}$
-complete in general (Nebel & Bürckert, Reference Nebel and Bürckert1995; Renz & Nebel, Reference Renz and Nebel1999). However, there exist large maximal
tractable subclasses of relations of IA and RCC-8, which can be used to make
reasoning much more efficient even in the general
${\cal N}{\cal P}$
-complete case (Nebel, Reference Nebel1997; Renz & Nebel, Reference Renz and Nebel2001). In recent years, many works surfaced that use graph decomposition to
significantly improve the efficiency and scalability of practical reasoning (Li
et al., Reference Li, Huang and Renz2009; Chmeiss
& Condotta, Reference Chmeiss and Condotta2011; Condotta &
D’Almeida, Reference Condotta and D’Almeida2011; Sioutis &
Koubarakis, Reference Sioutis and Koubarakis2012; Amaneddine et
al., Reference Amaneddine, Condotta and Sioutis2013; Huang et
al., Reference Huang, Li and Renz2013; Westphal et
al., Reference Westphal, Hué and Wölfl2013; Nikolaou &
Koubarakis, Reference Nikolaou and Koubarakis2014; Sioutis &
Condotta, Reference Sioutis and Condotta2014; Westphal &
Hué, Reference Westphal and Hué2014; Sioutis et
al., Reference Sioutis, Condotta and Koubarakis2016). All these works
make use of a particular constraint property, namely, patchwork (Lutz &
Milicic, Reference Lutz and Milicic2007; Huang, Reference Huang2012). Intuitively, patchwork ensures that the combination of
two satisfiable QCNs that completely agree on the constraints between their common
variables continues to be satisfiable.
The contribution of this paper is threefold:
-
1. We recall the notions of a tree decomposition, a chordal graph, and a partitioning graph that have been used in the literature, and clarify the relationship between one another, and also their implication with patchwork.
-
2. Consequently, we show that the approach proposed in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) for efficiently checking the satisfiability of qualitative spatial constraint networks violates patchwork in two ways, namely, both in the complete agreement between two satisfiable QCNs and in the graph decomposition that is obtained, and, therefore, lacks soundness.
-
3. Finally, we present a particular tree decomposition that is based on the biconnected components of the constraint graph of a given large QCN, and show that it allows for sound and cost-free utilization of parallelism for a qualitative constraint language that has patchwork for satisfiable atomic QCNs and that it can significantly decongest search when using it for solving intractable QCNsFootnote 1 .
As such, our paper can be viewed as a survey on the use and effect of graph decomposition in QSTR, as a response paper to Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), and partially to Sioutis (Reference Sioutis2014), and also as a report of an original decomposition approach that paves the way for efficient utilization of parallelism.
The paper is organized as follows. In Section 2, we recall the definition of a QCN, along with the definition of the property of patchwork. Section 3 introduces the notions of a tree decomposition and a chordal graph, and the way they are interrelated and used in the literature. In Section 4, we present the definition of a partitioning graph (Nikolaou & Koubarakis, Reference Nikolaou and Koubarakis2014), and prove that it yields non-soundness when used solely with patchwork. In Section 5, we introduce a particular tree decomposition that allows for cost-free utilization of parallelism for a qualitative constraint language that has patchwork for satisfiable atomic QCNs. In Section 6, we briefly describe QCNs in the context of CSPs, and review some related work in the constraint programming community that could inspire future research in the QSTR community. Finally, in Section 7 we make a discussion and conclude our work.
2 Preliminaries
A (binary) qualitative temporal or spatial constraint language is based on a finite set B of jointly exhaustive and pairwise-disjoint relations defined on a domain D (Ladkin & Maddux, Reference Ladkin and Maddux1994), called the set of base relations. The base relations of the set B of a particular qualitative constraint language can be used to represent the definite knowledge between any two entities with respect to the given level of granularity. B contains the identity relation Id, and is closed under the converse operation (−1). Indefinite knowledge can be specified by a union of possible base relations, and is represented by the set containing them. Hence, 2B represents the total set of relations. 2B is equipped with the usual set-theoretic operations (union and intersection), the converse operation, and the weak composition operation denoted by ◊ (Renz & Ligozat, Reference Renz and Ligozat2005). The converse of a relation is the union of the converses of its base relations, in particular, for every r ∈ 2B, we have that r −1={b −1 | b ∈ r}. The weak composition (◊) of two base relations b, b′ ∈ B is defined as the strongest relation r ∈ 2B that contains b ○ b′, or, formally, b ◊ b′={b′′ ∈ B | b′′ ∩ (b ○ b′) ≠ ∅}, where b ○ b′ = {(x, y) ∈ D×D | ∃z ∈ D such that (x, z) ∈ b ∧ (z, y) ∈ b′} is the relational composition of b and b′. For every r, r′ ∈ 2B, we have that r ◊ r′={b ◊ b′ | b ∈ r, b′ ∈ r′}.
The set of base relations of RCC-8 (Randell et al., Reference Randell, Cui and Cohn1992) is the set {dc, ec, po, tpp, ntpp, tppi, ntppi, eq}. These eight relations represent the binary topological relations between regions that are non-empty regular closed subsets of some topological space, that is, for any spatial region X we have that X=c(i(X)), where i(·) specifies the topological interior of a spatial region and c(·) the topological closure (Renz, Reference Renz2002a). The eight base relations of RCC-8 are depicted in Figure 1 (for the two-dimensional case). The set of base relations of IA (Allen 1981) is the set {eq, p, pi, m, mi, o, oi, s, si, d, di, f, fi}. These 13 relations represent the possible relations between time intervals, as depicted in Figure 2.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig1g.jpeg?pub-status=live)
Figure 1 The base relations of the Region Connection Calculus (RCC)-8 constraint language
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig2g.jpeg?pub-status=live)
Figure 2 The base relations of the Interval Algebra constraint language
The weak composition operation ◊ along with the converse operation −1, and the total set of relations 2B along with the identity relation Id of a qualitative constraint language, form an algebraic structure (2B, Id, ◊, −1) that can correspond to a relation algebra in the sense of Tarski (Reference Tarski1941). This topic has been extensively discussed in Dylla et al. (Reference Dylla, Mossakowski, Schneider and Wolter2013). In fact, Dylla et al. (Reference Dylla, Mossakowski, Schneider and Wolter2013) summarizes findings on the relationship between relation algebras and some well-known qualitative constraint languages into the following result:
Property 1 (Dylla et al., Reference Dylla, Mossakowski, Schneider and Wolter2013) Each of the qualitative constraint languages of Point Algebra ( Vilain et al., Reference Vilain, Kautz and Beek1990 ), Cardinal Direction Calculus ( Frank, Reference Frank1991 ; Ligozat, Reference Ligozat1998 ), IA ( Allen, Reference Allen1981 ), Block Algebra ( Balbiani et al., Reference Balbiani, Condotta and Cerro2002 ), and RCC-8 ( Randell et al., Reference Randell, Cui and Cohn1992 ) is a relation algebra with the algebraic structure (2B, Id, ◊, −1).
Networks of IA and RCC-8 can be modeled as particular instances of QCNs, with relation eq being the identity relation Id in both cases. A QCN is formally defined as follows:
Definition 1 A QCN is a tuple (V, C) where:
-
∙ V={v 1, … , v n } is a non-empty finite set of variables corresponding to a set of spatial or temporal entities.
-
∙ C is a mapping that associates a relation r ∈ 2B with each pair (v, v′) of V×V, that relation being denoted by C(v, v′). Further, mapping C is such that C(v, v)={Id} and C(v, v′)=(C(v′, v))−1 for every v, v′ ∈ V.
Note that we always regard a QCN as a complete network. In what follows, given a QCN
$${\cal N}{\equals}(V,\,C)$$
and v, v′ ∈
V, the relation C(v,
v′) will sometimes be denoted by C
vv′ for simplicity. The constraint graph of a QCN
$${\cal N}{\equals}(V,\,C)$$
is the graph (V, E), denoted by
$${\rm G}({\cal N})$$
, for which we have that (v,
v′) ∈ E iff
C(v, v′) ≠ B
and v ≠ v′. (B corresponds to the
universal relation, that is, the non-restrictiveFootnote
2
relation that contains all base relations, thus, it does not really pose a
constraint.) Given a QCN
${\cal N}{\equals}(V,C),\,{\cal N}$
is said to be trivially inconsistent iff
∃v, v′ ∈
V with C(v,
v′) = ∅. Further,
$${\cal N}\!\downarrow \!v'$$
, with V′ ⊆ V, is
the QCN
$${\cal N}$$
restricted to V′. A
solution of
$${\cal N}$$
is a mapping σ defined from
V to the domain D, yielding a valid configuration, such that
∀v, v′ ∈
V we have that (σ(v),
σ(v′)) can be described by
C(v, v′), that is,
there exists a base relation b ∈
C(v, v′) such that
(σ(v),
σ(v′)) ∈
b, viz. (σ(v),
σ(v′)) satisfies base relation
b.
Definition 2 A QCN
$${\cal N}$$
is satisfiable iff it admits a solution. The
satisfiability problem is the problem of determining if
$${\cal N}$$
is satisfiable.
A sub-QCNFootnote
3
$${\cal N}'$$
of
$${\cal N}{\equals}(V,\,C)$$
, denoted by
$${\cal N}'\subseteq\,{\cal N} $$
, is a QCN (V, C′) such
that C′(v, v′)
⊆ C(v, v′)
∀v, v′ ∈
V. If b is a base relation,
{b} is a singleton relation. An atomic QCN is
a QCN where each constraint is a singleton relation. A scenario
$${\cal S}$$
of
$${\cal N}$$
is a satisfiable atomic sub-QCN of
$${\cal N}$$
. Given a QCN
$${\cal N}{\equals}(V,\,C)$$
, a base relation b ∈
C(v, v′), with
v, v′ ∈ V, is
feasible (resp. infeasible) iff there exists
(resp. there does not exist) a scenario
$${\cal S}{\equals}(V,\,C')$$
of
$${\cal N}$$
such that C′(v,
v′)={b}.
Definition 3 A QCN
$${\cal N}{\equals}(V,\,C)$$
is minimal iff
∀v, v′ ∈
V and ∀b ∈
C(v, v′),
b is a feasible base relation of
$${\cal N}$$
. The MLP is the problem of determining
all the feasible base relations for each of the constraints of
$${\cal N}$$
.
Given a QCN
$${\cal N}{\equals}(V,\,C)$$
, we say that a relation C(v,
v′), with v, v′
∈ V, is non-redundant in
$${\cal N}$$
, if there exists a base relation b ∉
C(v, v′) and a
solution σ of the QCN
$${\cal N}'{\equals}(V,\,C')$$
defined by C′(v,
v′)=B \
C(v, v′),
C′(v′,
v)=B \ (C(v,
v′))−1, and
C′(u,
w)=C(u,
w) ∀(u, w) ∈
(V×V) \ {(v,
v′), (v′, v)}
such that (σ(v),
σ(v′)) ∈
b. The relation is called non-redundant, because if we were to
remove it and effectively replace it with relation B, the solution set of
$${\cal N}$$
would be changed. Note that by definition every universal relation
B in a QCN is redundant.
Definition 4 A QCN
$${\cal N}{\equals}(V,\,C)$$
is reducible iff it contains a redundant
relation other than relation B, and
irreducible otherwise. The redundancy
problem is the problem of obtaining all the non-redundant
relations in
$${\cal N}$$
and, hence, determining if
$${\cal N}$$
is reducible.
Checking the satisfiability of a QCN is
${\cal N}{\cal P}$
-complete in the general case for the most well known and
interesting calculi, such as RCC-8 (Renz & Nebel, Reference Renz and Nebel1999) and IA (Nebel & Bürckert, Reference Nebel and Bürckert1995). As a direct consequence, checking if a
base relation of a QCN is feasible, or if a constraint of a QCN is non-redundant, is
also
${\cal N}{\cal P}$
-complete in the general case. However, there exist maximal
tractable subclasses
$${\cal A}\,\subseteq\,2^{{\rm B}} $$
of the considered calculi, for which the satisfiability problem
becomes tractable through the use of a path-consistency
Footnote
4
algorithm.
With respect to subclasses of relations we have the following definition:
Definition 5 A subclass of relations is a subset
$${\cal A}\,\subseteq\,2^{{\rm B}} $$
that contains the singleton relations of
2B
and is closed under converse, intersection, and weak composition.
A subclass
$${\cal A}\,\subseteq\,2^{{\rm B}} $$
is tractable iff a QCN defined over
$${\cal A}$$
is tractable (i.e. its satisfiability problem is
tractable). A tractable subclass
$${\cal A}\,\subseteq\,2^{{\rm B}} $$
is maximal iff there exists no tractable
subclass
$${\cal A}'\,\subseteq\,2^{{\rm B}} $$
with
$${\cal A}\,\subset\,{\cal A}'$$
.
Further, the notion of path consistency for QCNs is defined as follows:
Definition 6 A QCN
$${\cal N}{\equals}(V,\,C)$$
is path consistent iff
∀v, v′,
v′′ ∈ V we have
that C(v, v′)
⊆ C(v,
v′′) ◊
C(v′′,
v′).
Given a QCN
$${\cal N}{\equals}(V,\,C)$$
, path consistency can be applied on
$${\cal N}$$
in O(|V|3) time
(Vilain et al., Reference Vilain, Kautz and Beek1990). For
the calculi in this paper, we have that not trivially inconsistent and
path-consistent QCNs defined over a maximal tractable subclass
$${\cal A}\,\subseteq\,2^{{\rm B}} $$
are satisfiable (Nebel & Bürckert, Reference Nebel and Bürckert1995; Renz & Nebel, Reference Renz and Nebel1999)Footnote
5
. The maximal tractable subclasses of relations of RCC-8 and IA are the
classes
$$\hat{{\cal H}}_{8} ,{\cal C}_{8} ,$$
and
$${\cal Q}_{8} $$
(Renz & Nebel, Reference Renz and Nebel2001) and
$${\cal H}_{{{\rm IA}}} $$
(Nebel, Reference Nebel1997),
respectively. Classes
$$\hat{{\cal H}}_{8} $$
and
$${\cal H}_{{{\rm IA}}} $$
contain exactly those relations that are transformed to
propositional Horn formulas when using the propositional encodings of RCC-8 and IA,
respectively. Further, and for RCC-8 in particular, if we denote by
$${\cal P}_{8} $$
the set of relations that belong to either one of the classes
$$\hat{{\cal H}}_{8} ,{\cal C}_{8} ,$$
and
$${\cal Q}_{8} $$
, then all relations of
$${\cal P}_{8} $$
not contained in
$${\cal C}_{8} $$
contain
$E\underline{C} $
and all relations of
$${\cal P}_{8} $$
not contained in
$${\cal Q}_{8} $$
contain
$$E\underline{Q}$$
(Renz, Reference Renz1999). The
propositional encoding of either
$${\cal C}_{8} $$
or
$${\cal Q}_{8} $$
is neither a Horn formula nor a Krom formula, but classes
$${\cal C}_{8} $$
and
$${\cal Q}_{8} $$
themselves are directly related to class
$$\hat{{\cal H}}_{8} $$
in the sense that any QCN defined over either
$${\cal C}_{8} $$
or
$${\cal Q}_{8} $$
can be polynomially refined to a QCN defined over
$$\hat{{\cal H}}_{8} $$
(Renz, Reference Renz1999).
Given two QCNs
$${\cal N}{\equals}\left( {V,\,C} \right)$$
and
${\cal N}'{\equals}\left( {V',\,C'} \right)$
, we have that
$${\cal N}{\cup}{\cal N}'$$
yields the QCN
$${\cal N}''{\equals}\left( {V'',\,C''} \right)$$
, where
V′′=V ∪
V′,
C′′(u,
v)=C′′(v,
u)=B for all (u, v)
∈ (V \ V′) ×
(V′ \ V),
C′′(u,
v)=C(u,
v) ∩ C′(u,
v) for every u, v ∈
V ∩ V′,
C′′(u,
v)=C(u,
v) for all (u, v) ∈
(V×V) \
(V′×V′), and
C′′(u,
v)=C′(u,
v) for all (u, v) ∈
(V′×V′) \
(V×V).
We now recall the definition of the patchwork property that was originally introduced in Lutz and Milicic (Reference Lutz and Milicic2007) and was shown to be satisfied by IA and RCC-8 for satisfiable atomic QCNs of their relations.
Definition 7 A constraint language has patchwork, iff for any finite
satisfiable constraint networks
$${\cal N}{\equals}(V,\,C)$$
and
$${\cal N}'{\equals}(V',\,C')$$
defined on this language where ∀u,
v ∈
V∩V′ we have that
C(u,
v)=C′(u,
v), the constraint network
$${\cal N}{\cup}{\cal N}'$$
is satisfiable.
Huang showed that IA and RCC-8 have patchwork for certain satisfiable non-atomic QCNs of their relations as well (Huang, Reference Huang2012). In particular, we have the following proposition:
Proposition 1
(Huang, Reference Huang2012)
The qualitative constraint languages of
IA
and
RCC
-8 have patchwork for not trivially inconsistent and
path-consistent
QCN
s defined over one of the maximal tractable subclasses
$${\cal H}_{{{\rm IA}}} $$
and
$$\hat{{\cal H}}_{8} ,{\cal C}_{8} ,$$
or
$${\cal Q}_{8} $$
, respectively.
Other qualitative constraint languages known to have patchwork for some subclass of their relations are listed in Huang (Reference Huang2012). Notably, those languages include the languages listed in Property 1.
Intuitively, patchwork ensures that the combination of two satisfiable constraint networks that agree on their common part, that is, on the constraints between their common variables, continues to be satisfiable. As an example, we can view the two QCNs of RCC-8 in Figure 3. (Self-loops corresponding to singleton relation {EQ} and converses of constraints are not shown for simplicity.) The QCNs of RCC-8 are atomic, as they comprise singleton relations, and are also path consistent, therefore, by Proposition 1 and application of the patchwork property, their union is satisfiable, since they agree on the constraints between their common variables, namely, on C 02={DC}. (The universal relation that exists by definition between variables 1 and 3 in the unified QCN would result to relation C 13={EC} if we were to calculate it, but it is not necessary to do so unless required by the specifics of the use case at hand.)
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig3g.jpeg?pub-status=live)
Figure 3 Patching two qualitative constraint networks of Region Connection Calculus (RCC)-8 that agree on their common part
Patchwork is closely related to the global consistency property (Renz & Ligozat, Reference Renz and Ligozat2005), which is defined as follows in Dechter (Reference Dechter2003):
Definition 8 A QCN
$${\cal N}{\equals}(V,\,C)$$
is globally consistent if and only if, for any
V′ ⊂ V, every partial
solution on V′ can be extended to a partial solution
on V′ ∪ {v} ⊆
V, for any v ∈
V \ V′.
In particular, global consistency implies patchwork, but the opposite is not true. For example, even though RCC-8 has patchwork (Huang, Reference Huang2012), it does not have global consistency (Renz & Ligozat, Reference Renz and Ligozat2005). For instance, let us consider the spatial configuration shown in Figure 4(a). Region y is a doughnut, and region x is externally connected to it, by occupying its hole. Further, region z is externally connected to region y. With respect to RCC-8, we know that the constraint network defined by the set of constraints {EC(x, y), EC(y, z), EC(x, z)} is satisfiable, as it is path consistent and atomic. However, the valuation of region variables x and y is such that it is impossible to extend it with a valuation of region variable z so that EC(x, z) may hold. Patchwork allows us to disregard any partial valuations and focus on the satisfiability of the network. Then, we can consider a valuation that satisfies the constraint network. Such a valuation is, for example, the one presented in Figure 4(b) along with its corresponding scenario.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig4g.jpeg?pub-status=live)
Figure 4 Region Connection Calculus (RCC)-8 configurations. (a) a configuration where EC(x,z) does not hold; (b) a configuration where EC(x,z) holds, along with its corresponding scenario
3 Tree decomposition and chordal graph
The utility of taking advantage of the structure of QCNs has already been addressed in the context of heuristics for the path-consistency algorithms in Beek and Manchak (Reference Beek and Manchak1996) and Renz (Reference Renz2002b). In particular, the heuristics proposed in Renz (Reference Renz2002b) target the denser parts of the underlying constraint graph of a given QCN, that is, the qualitative relations that consist of few base relations, as an effort to propagate constraints more efficiently and also possibly resolve any local inconsistencies faster. Pruning infeasible base relations off a qualitative relation that already comprises very few base relations can almost immediately unveil an inconsistency. However, these heuristics always consider a complete underlying constraint graph of a given network. As such, they fail to completely isolate parts of the underlying constraint graph of a given QCN that are irrelevant to the process of satisfiability checking; such parts being universal relations that do not belong to the clusters of a tree decomposition corresponding to the constraint graph of the QCN at hand.
In this section, we recall the notions of a tree decomposition and a chordal graph, and review their use and effect in QSTR in combination with patchworkFootnote 6 . We will show that it is possible to omit satisfiability checks across clusters of a tree decomposition corresponding to the constraint graph of a QCN.
In what follows, we consult the book of Diestel on Graph Theory for related definitions and properties (Diestel, Reference Diestel2012). A tree decomposition is formally defined as follows:
Definition 9 A tree decomposition of a graph G=(V, E) is a tuple (T, X) where T=(I, F) is a tree and X={X i ⊆ V | i ∈ I} a collection of clusters (subsets of V) that satisfy the following properties:
-
∙ For every v ∈ V there is at least one node i ∈ I such that v ∈ X i .
-
∙ For every (u, v) ∈ E there exists a node i ∈ I such that both u, v ∈ X i .
-
∙ Let i 1, i 2, i 3 be three nodes in I such that i 2 lies on the path between i 1 and i 3 in T. Then, if v ∈ V belongs to both
$X_{{i_{1} }} $ and
$X_{{i_{3} }} $ , v must also belong to
$X_{{i_{2} }} $ .
Let us view the example presented in Figure 5. In the upper part of the figure we can view a graph G=(V, E), which can correspond to the structure of a constraint graph of a QCN. For the moment, we consider only the solid edges to be part of G and we disregard the dashed edges (3, 4) and (4, 5). A tree decomposition of G comprises a tree T=(I, F) and a cluster X i for every node i ∈ I of that tree as shown in the lower part of the figure, for example, X a ={0, 1, 2}.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig5g.jpeg?pub-status=live)
Figure 5 A graph (upper part) and its tree decomposition (lower part)
Tree decompositions have been explicitly introduced in qualitative reasoning by Condotta and D’Almeida (Reference Condotta and D’Almeida2011), and implicitly by Li et al. (Reference Li, Huang and Renz2009) and Huang et al. (Reference Huang, Li and Renz2013). (The work presented in Huang et al. (Reference Huang, Li and Renz2013) properly contains the work presented in Li et al. (Reference Li, Huang and Renz2009), thus, we will stick to the former reference in what follows.)
In Condotta and D’Almeida (Reference Condotta and D’Almeida2011), the authors apply path consistency on the clusters of a tree decomposition of the constraint graph of a QCN. The graphs induced by the clusters of the tree decomposition are completed with the introduction of a new set of edges, called fill edges, that correspond to the universal relation for a QCN. These fill edges for the example graph of Figure 5 are edges (3, 4) and (4, 5). As such, the clusters of the tree decomposition are considered to be cliques, namely, sets of vertices such that every two vertices in a set are connected by an edge. This is done for two reasons: (i) by definition path consistency considers all triples of variables of a given constraint network and, hence, involves a complete graph, and (ii) the common vertices between any two complete graphs induce a complete graph, thus, the corresponding constraint networks will completely agree on the constraints between their common variables and the patchwork property can be used. The patchwork property is then considered to patch together the not trivially inconsistent and path-consistent pre-convex QCNs of IA (Ligozat, Reference Ligozat2011) that correspond to the graphs induced by the clusters of the tree decomposition in a tree-like manner and construct a satisfiable network.
In Huang et al. (Reference Huang, Li and Renz2013), the authors enlist a structure known as a dtree (decomposition tree), which, as the name suggests, is very close to a tree decomposition. Without going further into detail, a dtree is a full binary tree where the root represents a given graph and for each non-leaf node its two children represent a partitioning of the parent graph into two subgraphs. Thus, although a dtree is not a tree decomposition, it provides a way to construct a tree decomposition out of a given graph. A dtree and a tree decomposition are therefore equivalent in the context of qualitative reasoning, since omitting path consistency checks across children of dtree nodes (as described in Huang et al. (Reference Huang, Li and Renz2013)) corresponds to omitting those checks across clusters of the tree decomposition into which the dtree is converted, as has been specifically pointed out in Condotta and D’Almeida (Reference Condotta and D’Almeida2011). Similar to what is done in Condotta and D’Almeida (Reference Condotta and D’Almeida2011), children of dtree nodes are treated as cliques, and the patchwork property is considered to patch together the path-consistent atomic QCNs of either IA or RCC-8 in a tree-like recursive manner and construct a satisfiable network.
The observant reader will note that it would be convenient to operate directly on a tree decomposition (T, X) of a given graph G where X would be a collection of cliques. In this context, chordal graphs become relevant. Formally, a chordal graph is defined as follows:
Definition 10 A graph G is said to be chordal (or triangulated) iff every cycle of length >3 has a chord, viz., an edge of G which is not in the edge set of the cycle and whose endpoints lie in the vertex set of the cycle.
We then have the following proposition:
Proposition 2 (Diestel, Reference Diestel2012) A graph G is chordal if and only if it has a tree decomposition (T, {X 1, … , X n }) where cluster X i is a clique of G for every i ∈ {1, … , n}.
For example, the graph presented in Figure 5,
with the dashed edges included, is chordal. Chordality checking can be done in
(linear) O(|V|+|E|) time
for a given graph G=(V, E)
with the maximum cardinality search algorithm, which also
constructs an elimination ordering ω as a by-product (Tarjan
& Yannakakis, Reference Tarjan and Yannakakis1984). If a graph is
not chordal, it can be made so through the addition of fill edges. This process is
usually called triangulation of a given graph
G=(V, E) and can run
as fast as in O(|V|+(|E
∪ F(ω)|)) time, where
F(ω) is the set of fill edges that
results by following the elimination ordering ω, eliminating
the nodes one by one, and connecting all nodes in the neighborhood of each
eliminated node, thus, making it simplicial in the resulting subgraph. If the graph
is already chordal, following the elimination ordering ω
produced by the maximum cardinality search algorithm guarantees that no fill edges
are added, that is, ω is actually a perfect
elimination ordering (Diestel, Reference Diestel2012). For example, a perfect elimination ordering for the chordal graph
shown in Figure 5 would be the ordering 0
→ 1 → 2 → 3 → 4 → 7 → 5 → 6
→ 9 → 8 → 10 of its set of nodes. In general, it is desirable
to achieve chordality with as few fill edges as possible. However, triangulating a
graph with the minimum number of fill edges is known to be
${\cal N}{\cal P}$
-complete (Yannakakis, Reference Yannakakis1981). As noted earlier, fill edges correspond to the universal relation
for a QCN. As such, the chordal constraint graph of a given QCN is
exactly its constraint graph augmented with constraints corresponding to the
universal relation to make it chordal.
In light of Propositions 1 and 2, research efforts focused on making the constraint graph of a given QCN chordal and restricting path consistency to that chordal graph, while fully utilizing maximal tractable subclasses of relations and not just base relations that are typically used to describe only atomic networks. Toward this direction, we have the works of Chmeiss and Condotta (Reference Chmeiss and Condotta2011) for IA and Sioutis and Koubarakis (Reference Sioutis and Koubarakis2012) for RCC-8. These works were later combined in Amaneddine et al. (Reference Amaneddine, Condotta and Sioutis2013) to give the following result, which is the strongest yet concerning path consistency, patchwork, and subclasses of relations:
Proposition 3
(Amaneddine
et al
., Reference Amaneddine, Condotta and Sioutis2013)
For a given
QCN
$${\cal N}{\equals}(V,\,C)$$
defined over a subclass of relations of a QCN that
has patchwork for not trivially inconsistent and
path-consistent
QCN
s defined over that subclass of relations, and for
G=(V, E) a
triangulation of its constraint graph, if
∀(i, j), (i,
k), (j, k) ∈
E we have that Ø ≠ C
ij
⊆ C
ik
◊ C
kj
, then
$${\cal N}$$
is satisfiable.
Consequently, by Propositions 1 and 3 we have the following result:
Corollary 1
For a given
QCN
$${\cal N}{\equals}(V,\,C)$$
of
RCC-8 or
IA
, defined over one of the maximal tractable subclasses
$$\hat{{\cal H}}_{8} ,\,{\cal C}_{8} ,$$
and
$${\cal Q}_{8} $$
, or
$${\cal H}_{{{\rm IA}}} $$
, respectively, and for G=(V, E) a triangulation of its
constraint graph, if ∀(i,
j), (i, k),
(j, k) ∈ E we have that
Ø ≠ C
ij
⊆ C
ik
◊ C
kj
, then
$${\cal N}$$
is satisfiable.
Proposition 3 generalizes the results of all the works that were discussed earlier in
this section and make use of path consistency as the main tool for checking the
satisfiability of a given QCN, and has a great effect in the efficiency and
scalability of practical reasoning. In particular, regarding native search, an
algorithm based on the work of Bliek and Sam-Haroud (Reference Bliek and Sam-Haroud1999) was devised, called partial path
consistency (Chmeiss & Condotta, Reference Chmeiss and Condotta2011), that enforces partial path
consistency on a given QCN
$${\cal N}{\equals}(V,\,C)$$
with respect to a triangulation
G=(V, E) of its
constraint graph in
O(δ|E|) time, where
δ is the maximum vertex degree of
G.
Definition 11 Given a QCN
$${\cal N}{\equals}(V,\,C)$$
and a graph G=(V,
E),
$${\cal N}$$
is partially path consistent (w.r.t. graph
G) iff for ∀(v,
v′), (v,
v′′), (v′′,
v′) ∈ E we have that
C(v, v′)
⊆ C(v,
v′′) ◊
C(v′′,
v′).
The partial path-consistency algorithm of Chmeiss and Condotta is presented in Algorithm 1. As it is suggested in Proposition 3, the partial path-consistency algorithm is able to decide the satisfiability of a QCN defined over some subclass of relations, when path consistency can yield patchwork with respect to that subclass of relations, and when a triangulation of its constraint graph is used as the input graph in the algorithm.
The search space for intractable Gs was also reduced to
O(α
|E| from
$$O(\alpha ^{{\left| V \right|^{2} }} )$$
for a backtracking algorithm (Renz & Nebel, Reference Renz and Nebel2001), where α is the
branching factor provided by some subclass of relations (e.g.
α=1.4375 for class
$$\hat{{\cal H}}_{8} $$
of RCC-8 (Renz & Nebel, Reference Renz and Nebel2001)). Such a backtracking algorithm is presented in Algorithm 2. Note
that if a QCN
$${\cal N}$$
along with a triangulation G of its constraint
graph and a subclass
$${\cal A}$$
are given as input to the backtracking algorithm, then the
algorithm is able to decide the satisfiability of the given network
$${\cal N}$$
provided that path consistency can yield patchwork with respect to
$${\cal A}$$
.
Regarding approaches based on encodings of QCNs into Boolean formulas, that is, Boolean Satisfiability Problem (SAT)-based approaches, the implication of Proposition 3 led to significant memory and speed improvements both for IA- (Westphal et al., Reference Westphal, Hué and Wölfl2013) and for RCC-8 (Westphal & Hué, Reference Westphal and Hué2014) targeted implementations. Further, regarding works that consider the MLP and the redundancy problem of a QCN, partial path consistency has been used as the core local consistency condition to build algorithms both for the MLP as described in Amaneddine et al. (Reference Amaneddine, Condotta and Sioutis2013) and for the redundancy problem as described in Sioutis et al. (Reference Sioutis, Li and Condotta2015b).
Before closing this section with some strong theoretical results that concern tree
decompositions and patchwork, let us introduce the treewidth of a
graph. The width of a tree decomposition (T,
{X
1, … , X
n
} is
$$\mathop{{{\rm max}}}\limits_{{1\, \les\, i \,\les \,n}} \,\mid\!X_{i} \!\mid\,{\minus}1$$
. The treewidth of a graph G is
the minimum width possible among all tree decompositions of G. We
also recall the following result regarding the treewidth of a graph
G that is augmented with a new edge:
Theorem 1 (Elidan & Gould, Reference Elidan and Gould2008 ) Let G=(V, E) be a graph of treewidth k. Then, the treewidth of graph G′=(V, E ∪ {e}), where e is a new edge, is at most k+1.
In the context of QCNs, the treewidth of a QCN
$${\cal N}$$
is simply the treewidth of its constraint graph
$${\rm G}({\cal N})$$
.
Theorem 2 (Bodirsky & Wölfl, Reference Bodirsky and Wölfl2011 ; Huang et al ., Reference Huang, Li and Renz2013 ) For any k, the satisfiability problem for QCNs of treewidth at most k that are defined on a language that has patchwork for path-consistent atomic QCNs can be solved in polynomial time.
Consequently, by Proposition 1 and Theorem 2 we have the following result:
Corollary 2 For any k, the satisfiability problem for QCN s of IA and RCC -8 of treewidth at most k can be solved in polynomial time.
A detailed algorithm for Theorem 2 that offers an alternative to the proof sketch of Bodirsky and Wölfl (Reference Bodirsky and Wölfl2011) is provided in Huang et al. (Reference Huang, Li and Renz2013). (The proof sketch in Bodirsky & Wölfl (Reference Bodirsky and Wölfl2011) is particular to RCC-8, but it can be generalized to IA and other languages satisfying certain common properties, such as patchwork.)
Further, regarding the MLP we can have the following result:
Theorem 3 For any k, the MLP for QNC of treewidth at most k that is defined on a language that has patchwork for path-consistent atomic QCNs can be solved in polynomial time.
Proof. Let
$${\cal N}{\equals}(V,\,C)$$
be a QCN of treewidth at most k that is defined
on a language that has patchwork for path-consistent atomic QCNs. To check if a base
relation b ∈ C(u,
v), with
$$(u,\,v)\in{\rm G}({\cal N})$$
, participates in at least one solution of
$${\cal N}$$
, we must check if the QCN
$${\cal N}'{\equals}(V,\,C')$$
defined by C′(u,
v)={b},
C′(v,
u)={b}−1, and
C′(y,
w)=C(y,
w) ∀(y, w) ∈
(V×V) \ {(u,
v), (v, u)} is satisfiable,
so that a scenario S=(V,
C′′) with
C′′(u,
v)={b} can be constructed out of the
admitted solution. This satisfiability check can be done in polynomial time by
Theorem 2. Note that if
$$(u,\,v)\,\notin\,{\rm G}({\cal N})$$
, we must augment the constraint graph
$${\rm G}({\cal N})$$
with (u, v) to take into account
the constraint C(u, v). As such,
the satisfiability check will be performed on a QCN of treewidth at most
k+1 due to Theorem 1. (After the check,
(u, v) can again be removed from
$${\rm G}({\cal N})$$
.) As we can have at most
O(|B||V|2) base relations in any
given QCN, it follows that we can solve the MLP in polynomial time.□
Consequently, by Proposition 1 and Theorem 3 we have the following result:
Corollary 3 For any k, the MLP for QCN s of IA and RCC -8 of treewidth at most k can be solved in polynomial time.
Regarding the redundancy problem, we can have the following result:
Theorem 4 For any k, the redundancy problem for QCNs of treewidth at most k that are defined on a language that has patchwork for path-consistent atomic QCNs can be solved in polynomial time.
Proof. Let
$${\cal N}{\equals}(V,\,C)$$
be a QCN of treewidth at most k that is defined
on a language that has patchwork for path-consistent atomic QCNs. To check if a
constraint C(u, v), with
$$(u,\,v)\in{\rm G}({\cal N})$$
, is non-redundant in
$${\cal N}$$
, we must check if there exists a base relation b
∉ C(u, v) that
participates in a solution of the modified
$${\cal N}$$
that results by removing C(u,
v). This is equivalent to checking if the QCN
$${\cal N}'{\equals}(V,\,C')$$
defined by C′(u,
v)=B \ C(u,
v), C′(v,
u)=B \ (C(u,
v))−1, and
C′(y,
w)=C(y,
w) ∀(y, w) ∈
(V×V) \ {(u,
v), (v, u)} is satisfiable.
This satisfiability check can be done in polynomial time by Theorem 2. (Note that if
$$(u,\,v)\,\notin\,{\rm G}({\cal N})$$
, C(u, v) is by
definition redundant.) Since we can have at most
O(|V|2) constraints in any given
QCN, it follows that we can solve the redundancy problem in polynomial
time.□
Consequently, by Proposition 1 and Theorem 4 we have the following result:
Corollary 4 For any k, the redundancy problem for QCN s of IA and RCC -8 of treewidth at most k can be solved in polynomial time.
4 Partitioning graph
In this section, we prove that the decomposition-based approach presented in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) for checking the satisfiability of QCNs of RCC-8 lacks soundness, as the notion of a partitioning graph defined in that work is not coherent with the use of patchwork upon which it solely relies, in two ways, which we enumerate and analyze in the form of issues.
Let G=(V, E) be a graph and
k a positive integer. If U ⊆
V, then G(U) will denote the
subgraph of G that is induced by the set of vertices
U. A set {V
i
⊆ V |
1⩽i⩽k} with k
pairwise-disjoint elements such that
$\mathop{{\cup}}\limits_{{i{\equals}1}}^{k} V_{i} {\equals}V$
, is called a k-way partitioning of
G. Finally, let Ø denote the empty, edgeless, graph. We
recall the following definition of a partitioning graph from Nikolaou and Koubarakis
(Reference Nikolaou and Koubarakis2014):
Definition 12 Let G=(V, E) be a graph and {V 1, … , V k } a k-way partitioning of G for some positive integer k. A partitioning graph P of G is a graph (V P , E P , λ P , G P ), where V P ={v 1, … , v k } is the set of its nodes, E p the set of its edges, λ P : V P → 2 V a function that maps each node of P to a subset of the set of vertices V of G, and G P a set of k subgraphs (parts) of G. The following conditions must be satisfied:
-
∙ If G i ∈ G P then the set of vertices of G i is a superset U of λ P (v i ) and the set of its edges is E(G(U)).
-
∙ Any edge in G should be present in at least one subgraph G i ∈ G P .
-
∙ An edge (v i , v j ) belongs to E P if and only if G i ∩ G j ≠ ∅ (i.e. if and only if the subgraphs G i and G j corresponding to nodes v i and v j , respectively, share a common edge).
Let G be a graph and P=(V P , E P , λ P , G P ) one of its partitioning graphs. Then, an edge e of G present in more than one subgraph G i ∈ G P is called a global edge. An edge e of G present in exactly one subgraph G i ∈ G P is called a local edge.
We will now enumerate the issues that lead to non-soundness and provide counter-examples for each case. The reader is kindly asked to refer to Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) and check that the flaws pointed out here are actually present in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014).
The issues that we will enumerate will allow us to infer the following fact:
Proposition 4 The approach presented in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) for checking the satisfiability of a QCN of RCC -8 lacks soundness. In particular, Propositions 2 and 3 in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) do not hold.
We begin with the first issue.
Issue 1. The first issue has to do with the fact that a complete agreement on the constraints between the common variables of two networks is not achieved in order to allow the applicability of patchwork. Let us consider the example of Figure 6. Graph G is partitioned into two parts, namely, G 1 and G 2. The partitioning graph is shown in the lower part of the figure, and it comprises the set of nodes {a, b} and an empty set of edges. Node a corresponds to subgraph G 1 and node b to subgraph G 2. Its set of edges E P is empty as subgraphs G 1 and G 2 do not share a common edge (that would otherwise be the global edge (0, 2)), thus, the only possible edge (a, b) does not exist. In Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), the authors perform path consistency on the subgraphs of a graph separately, in a parallel fashion, and then rely on the set of edges E P to identify the subgraphs among which a complete agreement has to be ensured (the reader is kindly asked to refer to line 7 in the function of Algorithm 2 in Nikolaou & Koubarakis (Reference Nikolaou and Koubarakis2014)). If, as in this example, such an edge does not exist, a complete agreement is never achieved. This can be the cause of failing to identify inconsistencies. Let us assume that graph G, as depicted in Figure 8, is the constraint graph of a given QCN comprising constraints C 01=C 12=C 23=C 30={TPP}. This yields an unsatisfiable network, as it basically infers that region 0 is properly contained in region 2, and vice versa. Applying path consistency on that network would result in the empty relation assignment for constraint C 02 (inconsistency). However, that constraint is never checked in our example. Although the authors implicitly complete subgraphs G 1 and G 2 in order to apply path consistency, they do not complete these subgraphs when computing their intersection, as clearly specified in the last bullet of Definition 12. Even if they did implicitly consider complete subgraphs for that part of the definition, and the edge (a, b) indeed existed, line 7 in the function of Algorithm 2 in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) still requires that an agreement should only be achieved for every common edge of G 1 and G 2 (the initial non-complete subgraphs), which is none. If they implicitly considered complete subgraphs for that part of the algorithm too, then this particular issue for a two-way partitioning would be resolved. We have also verified this issue experimentally with the implementation used in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014)Footnote 7 .
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig6g.jpeg?pub-status=live)
Figure 6 A graph and its partitioning graph with the parts comprising it (also contained in dashed circles in the initial graph)
Before proceeding to the next issue, let us assume that the first issue is fixed with everything that we propose, and a two-way partitioning is actually valid for applying patchwork. We mean to show that the concept of a partitioning graph is beyond repair, unless it is structured in a way that it defines a tree decomposition, which defeats the purpose of having to define a partitioning graph in the first place.
The second issue follows.
Issue 2. This issue has to do with the fact that even if the first issue is resolved, the partitioning graph can suffer from the existence of cycles that are created by subgraphs of a given graph. Let us consider the example of Figure 7. Graph G is partitioned into four parts, namely, G 1, G 2, G 3, and G 4. The partitioning graph is shown in the lower part of the figure, and the correspondence between its sets of nodes and edges with the different subgraphs should be clear up to this point. Note that all subgraphs are complete, thus, they completely overlap with each other on the common vertices. For example, graph G 1 completely overlaps with graph G 2 on the edges of the graph defined on the single common vertex 0, as their intersection yields the complete graph on single vertex 0. Although such an overlap is trivial, as a complete graph on a single vertex (singleton graph) does not have any edges, it is sufficient to ensure the applicability of patchwork for the corresponding constraint networks. (Our example can be easily extended to non-trivial overlaps.) However, due to the last bullet of Definition 12, the partitioning graph is unable to obtain any edges, as there can exist no global edges. In fact, even if some edges existed in E P , in any possible combination and amount, the partitioning graph would still fail to detect the cycle that is constructed by the complete subgraphs G 1, G 2, G 3, and G 4, namely, the cycle defined by vertices 0, 1, 2, and 3. This cycle, as shown in the example of Figure 6, can harbor an inconsistency. Such a cycle exists also in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014, figure 1) between vertices 3, 4, 5, and 7 there. Patchwork alone is only valid for tree decompositions, as tree decompositions guarantee acyclicity of cliques and, thus, do not harbor cycles with potential inconsistencies that cannot be detected by the application of path consistency on the different cliques. This issue was again verified experimentally.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig7g.jpeg?pub-status=live)
Figure 7 A graph and its partitioning graph with the parts comprising it (also contained in dashed circles in the initial graph)
Essentially, the approach defines a partial algorithm; a given satisfiable QCN will be shown to be satisfiable, as the approach in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) because disregarding constraints operates on a less restrictive constraint graph of the input network where constraint propagation and consistency checks are limited, whilst an unsatisfiable QCN may be shown to be satisfiable.
4.1 Impact on performance
The main contribution of Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) lies in the performance of its offered
implementation, as it promises efficiency that goes well beyond the
state-of-the-art. Computing a good k-way partitioningFootnote
8
alone is among the graph partitioning problems that fall under the
category of
${\cal N}{\cal P}{\rm {\minus}hard}$
problems (Garey et al., Reference Garey, Johnson and Stockmeyer1976), and solutions to these problems are generally
derived using heuristics and approximation algorithms, such as the ones offered
by the METISFootnote
9
software employed in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014). We leave aside any extra computational complexity
that would result from needing to restrict a partitioning graph to being a tree
decomposition (e.g. by identifying cycles or using some recursion as in Huang
et al. (Reference Huang, Li and Renz2013)) and
focus on native search. As explained in Section
3, native search in QSTR is bound to the number of constraints of a
given QCN, and not to its number of variables as in ‘traditional’
constraint programming. This is because, in a sense, the constraints of a given
QCN are the true variables for which we have to assign some
relation. Indeed, the search space defined in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) relies mainly on the number of
constraints of a given QCN. In particular, we can recall the following
proposition from Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014):
Proposition 5
(Nikolaou & Koubarakis, Reference Nikolaou and Koubarakis2014)
Let G=(V, E)
be the constraint graph of a
QCN
of
RCC
-8 and P a partitioning graph of G with k parts. The search
space of algorithm DConsistency (Nikolaou &
Koubarakis, Reference Nikolaou and Koubarakis2014
) is O(|B|
g
(|B|gkm
3+kα
l
m
3)), where g is the number of global edges, l and m
the maximum number of local edges and vertices, respectively, among
all parts of P, and α the branching factor of the subclass of
relations employed. If
Π
denotes the aforementioned search space, then given p processing
units and assuming a balanced partitioning among the k
parts (i.e.
m=|V|/k),
the elapsed running time of algorithm DConsistency
is
$O\left( {{\Pi \over p}} \right)$
.
We showed earlier that some global edges can be disregarded, thus, parameter g as defined in Proposition 5 leads to a significantly reduced search space for the implementation of Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) with respect to the one that should normally be considered, as g has an exponential contribution. However, even in that case, a re-evaluation of the implementation used in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) against state-of-the-art solvers, showed that it performs very poorly with respect to the state-of-the-art (Sioutis, Reference Sioutis2014). The work in Sioutis (Reference Sioutis2014) does not deal with any of the issues that we dealt with in this paper as it assumes a partitioning graph to implicitly define a tree decomposition, thus, Sioutis (Reference Sioutis2014) presents mostly lower bounds on the performance of the implementation used in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014).
4.2 Fixing the issues
We noted earlier in this section that the concept of a partitioning graph is beyond repair, unless it is structured in a way that it defines a tree decomposition. It may seem tempting as a quick hack to triangulate the constraint graph of a given QCN of RCC-8 and, thus, obtain a chordal constraint graph of that QCN, and feed it directly to the partitioning algorithm described in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014). However, this may still yield non-soundness. We explain as follows.
Consider the example shown in Figure 8 where the chordal graph G is partitioned into three subgraphs. The partitioning graph P is such that it is unable to capture/break the cycle defined by vertices 1, 3, and 4. This cycle may harbor an inconsistency, which will not be detected by the application of path consistency on the different parts of the partitioning graph. One way to force a partitioning graph into defining a tree decomposition is using METIS in a recursive manner, as it is done in Huang et al. (Reference Huang, Li and Renz2013). In particular, one has to initially partition a given graph G into two parts, and then recursively apply the same procedure on the obtained parts, until no further partitioning can occur. However, this can be a costly operation. A faster way is to rely on chordal graphs (tree decompositions into cliques), which can both be constructed and also yield a natural tree decomposition of their cliques in linear time (Diestel, Reference Diestel2012). The graphs induced by the cliques can then be collected at no extra cost and serve as the parts of the partitioning graph; consequently, the approach described in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) can then be carried out with soundness and completeness.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig8g.jpeg?pub-status=live)
Figure 8 A chordal graph and its partitioning graph with the parts comprising it (also contained in dashed circles in the initial graph)
5 Toward efficient utilization of parallelism
As noted in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), the authors provided a parallel implementation for checking the satisfiability of a QCN of RCC-8, which however lacks soundness (Proposition 4). In this section, we present a simple decomposition scheme that exploits the sparse and loosely connected structure of the constraint graphs of very large real-world QCNs, which have been of notable interest in the recent literature (Nikolaou & Koubarakis, Reference Nikolaou and Koubarakis2014; Sioutis, Reference Sioutis2014; Sioutis & Condotta, Reference Sioutis and Condotta2014), and paves the way for efficient utilization of parallelism. Our approach is based on extracting the smaller QCNs that correspond to the biconnected components of the constraint graph of a given large QCN and reasoning with these smaller biconnected QCNs completely separately, in a parallel or serial fashion, which, as our experimentation suggests, significantly decongests search when solving intractable QCNs.
First, we recall a definition from Dechter (Reference Dechter2003) regarding biconnected graphs and components.
Definition 13 A connected graph G is said to have an articulation vertex u iff there exist vertices v and v′ such that all paths connecting v and v′ pass through u. A graph that has an articulation vertex is called separable, and one that has none is called biconnected. A maximal subgraph with no articulation vertices is called a biconnected component.
Intuitively, an articulation vertex is any vertex whose removal increases the number of connected components in a given graph. From Dechter (Reference Dechter2003), we also have the following property:
Property 2 (Dechter, Reference Dechter2003) Let G be a graph and {G 1, … , G n } its biconnected components. Then, there exists a tree decomposition (T, {X 1, … , X n }) of G, where cluster X i ⊆ V (G) induces the biconnected component G i of G, for every i ∈ {1, … , n}.
Let us now view the discussed notions in an example. Figure 9 depicts a graph G, along with its biconnected
components, and its tree decomposition. Vertices in gray color are the articulation
vertices of G. The tree decomposition comprises a tree
T=(I, F) and a cluster
X
i
for every node i ∈ I of that tree,
for example, X
a
={v
0, v
1, v
4, v
5}. We remind the reader that
$${\cal N}\downarrow_{V} $$
is the QCN
$${\cal N}$$
restricted to a set of variables V. We can obtain
the following proposition:
Proposition 6
Let
$${\cal N}$$
be a QCN defined on a language that has patchwork
for satisfiable atomic QCNs, and let
{G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then,
$${\cal N}$$
is satisfiable iff
$${\cal N}_{i} $$
is satisfiable for every i ∈ {1, … ,
k}, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V(G_{i} )}} $$
.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig9g.jpeg?pub-status=live)
Figure 9 A graph G (top) with its biconnected components (middle) and its tree decomposition (bottom)
Proof. By Property 2, the constraint graph
$${\rm G}({\cal N})$$
has a tree decomposition (T, {X
1, … , X
k
}), where cluster X
i
induces G
i
, for every i ∈ {1, … , k}. We
can also infer by Definition 13 that ∀i, j
∈ {1, … , k} with i ≠
j, V (G
i
) ∩ V (G
j
) contains at most one vertex u. If
$${\cal N}_{i} $$
is satisfiable for every i, j
∈ {1, … , k}, we can obtain a satisfiable atomic
sub-QCN of
$${\cal N}_{i} $$
, that is, a scenario S
i
of
$${\cal N}_{i} $$
, for every i ∈ {1, … ,
k}. For any possible scenarios and any i,
j ∈ {1, … , k} with
i ≠ j, we will have that
$${\cal S}_{i} {\equals}(V\,(G_{i} ),\,C_{i} )$$
and
$${\cal S}_{j} {\equals}(V\,(G_{j} ),\,C_{j} )$$
will always agree on the single unary constraint that is defined
by a single vertex u ∈ V
(G
i
) ∩ V (G
j
) whenever we have that V (G
i
) ∩ V (G
j
) ≠ ∅, that is, C
i
(u, u)=C
j
(u, u)={Id}, as by Definition 1 we
have that for any QCN
${\cal M}{\equals}(V,\,C)$
, C(v,
v)={Id} ∀v ∈
V. By Definition 7, we can apply patchwork to patch together
all the satisfiable atomic QCNs
$${\cal S}_{i} $$
with i ∈ {1, … ,
k} in a tree-like manner and, thus, derive the satisfiability of
$${\cal N}$$
. If
$${\cal N}$$
is satisfiable, then, clearly,
$${\cal N}_{i} $$
will be satisfiable for every i ∈ {1,
… , k}.□
Consequently, by Proposition 6 and the fact that IA and RCC-8 have patchwork for satisfiable atomic QCNs of their relations (Lutz & Milicic, Reference Lutz and Milicic2007), we have the following result:
Corollary 5
Let
$${\cal N}$$
be a QCN of IA or
RCC-8, and let {G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then,
$${\cal N}$$
is satisfiable iff
$${\cal N}_{i} $$
is satisfiable for every i ∈ {1, … ,
k}, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V(G_{i} )}} $$
.
It is important to note that the proof of Proposition 6 is based on tree
decompositions whose nodes correspond to clusters where any two clusters share at
most one vertex with each other. In case two clusters share more than one vertex
with each other, the involved QCNs should be, for instance (and among other
conditions), not trivially inconsistent, path consistent, and defined over a
subclass of relations of a qualitative constraint language that has patchwork for
not trivially inconsistent and path-consistent QCN defined over that subclass of
relations, as it is specified in Proposition 3 and considered in Sioutis and
Koubarakis (Reference Sioutis and Koubarakis2012) and Chmeiss and Condotta
(Reference Chmeiss and Condotta2011) for RCC-8 and IA, respectively.
A simple algorithm for obtaining a collection of QCNs that correspond to the
biconnected components of the constraint graph of a given QCN is presented in
Algorithm 3. Note that in lines 2–3 we immediately return the input QCN if it
is trivially inconsistent, as it would not make any sense to continue with the
decomposition procedure. Function BCSubgraphs(G) in line 4 returns
the biconnected components of a graph G=(V,
E) and has a runtime of
O(|E|) (Dechter, Reference Dechter2003). Note that in line 4 we keep only the components of order
>2, as any not trivially inconsistent QCN of <3 variables is trivially
satisfiable (by definition of a base relation). In what follows, we always consider
components of order >2. Based on Decomposer, we can obtain an algorithm to
increase the performance of any given state-of-the-art solver that is sound and
complete for checking the satisfiability of a given QCN
$${\cal N}$$
defined on a language that has patchwork for satisfiable atomic
QCNs; that algorithm is presented in Algorithm 4. Let us denote any such given
state-of-the-art solver by Solver. Then, Algorithm 4 will use Solver to decide the
satisfiability of the QCNs that correspond to the biconnected components of the
constraint graph of
$${\cal N}$$
. The enclosure with symbol ‖ for Solver denotes the fact
that Solver can be used in a parallel or serial fashion.
Regarding the MLP, we can have the following result:
Proposition 7
Let
$${\cal N}{\equals}(V,\,C)$$
be a satisfiable
QCN
defined on a language that has patchwork for satisfiable
atomic
QCN
s, and let {G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then, a base relation b ∈
C(u,v), with
u,v ∈
V(G
i
), is feasible iff there exists a scenario
$${\cal S}_{i} {\equals}(V_{i} ,\,C_{i}^{\prime} )$$
of
$${\cal N}_{i} {\equals}(V_{i} ,\,C_{i} )$$
such that
$$C_{i}^{\prime} (u,\,v){\equals}\{ b\} $$
, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V\,(G_{i} )}} $$
, for some i ∈ {1, … ,
k}.
Proof. Let
$${\cal N}'{\equals}(V,\,C')$$
be the QCN defined by
C′(u,
v)={b},
C′(v,
u)={b}−1, and
C'(y,
w)=C(y,
w) ∀(y, w) ∈
(V×V) \ {(u,
v), (v, u)}. Further, let
$${\cal N}_{i} ^{\prime} {\equals}(V_{i} ,\,C_{i} ^{\prime} )$$
be the restriction of
$${\cal N}'$$
to V (G
i
), viz.,
$${\cal N}'\downarrow_{{V\,(G_{i} )}} $$
. Then, by Proposition 6 and as G
i
is a biconnected component of
$${\rm G}({\cal N})$$
, we know that
$${\cal N}'$$
is satisfiable iff
$${\cal N}_{i} ^{\prime} $$
is satisfiable; in addition, any scenario
$$S_{i} {\equals}(V_{i} ,\,C_{i}^{\prime\prime} )$$
of
$${\cal N}_{i} ^{\prime} $$
is the restriction of some scenario
S=(V,
C′′) of
$${\cal N}'$$
to V
i
, and any scenario S=(V,
C′′) of
$${\cal N}'$$
is the extension of some scenario
$$S_{i} {\equals}(V_{i} ,\,C_{i}^{\prime\prime} )$$
of
$${\cal N}_{i} ^{\prime} $$
to V. As such, the feasibility of
b can be characterized by considering
$${\cal N}_{i} $$
instead of
$${\cal N}$$
.□
Given a satisfiable QCN
$${\cal N}{\equals}(V,\,C)$$
, Proposition 7 allows one to quickly characterize the feasibility
of a base relation b ∈
C(u, v), with u,
v ∈ V (G′),
where G′ is a biconnected component of the constraint graph
$${\rm G}({\cal N})$$
. If u, v ∉
V (G') for any biconnected component
G′ of
$${\rm G}({\cal N})$$
, then b belongs to a constraint that is labeled
with the universal relation B and its feasibility can still be efficiently
characterized under certain conditions by a function similar to extractFeasible as
described in Amaneddine et al. (Reference Amaneddine, Condotta and Sioutis2013).
Consequently, by Proposition 7 and the fact that IA and RCC-8 have patchwork for satisfiable atomic QCNs of their relations (Lutz & Milicic, Reference Lutz and Milicic2007), we have the following result:
Corollary 6
Let
$${\cal N}{\equals}(V,\,C)$$
be a satisfiable
QCN
of
IA
or
RCC
-8, and let {G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then, a base relation b ∈
C(u, v), with
u, v ∈ V
(G
i
), is feasible iff there exists a scenario
$${\cal S}_{i} {\equals}(V_{i} ,\,C_{i}^{\prime} )$$
of
$${\cal N}_{i} {\equals}(V_{i} ,\,C_{i} )$$
such that
$$C_{i}^{\prime} (u,\,v){\equals}\{ b\} $$
, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V\,(G_{i} )}} $$
, for some i ∈ {1, … ,
k}.
Regarding the redundancy problem, we can have the following result:
Proposition 8
Let
$${\cal N}{\equals}(V,\,C)$$
be a satisfiable
QCN
defined on a language that has patchwork for satisfiable
atomic
QCN
s, and let {G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then, a relation
C(u,v), with
u,v ∈ V, is non-redundant
in
$${\cal N}$$
iff (u, v) ∈
E(G
i
) and C(u, v)
is non-redundant in
$${\cal N}_{i} {\equals}(V_{i} ,\,C_{i} )$$
, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V\,(G_{i} )}} $$
, for some i ∈ {1, … ,
k}.
Proof. Clearly, a relation
C(u,v) is redundant in
$${\cal N}$$
if (u, v) ∉
E(G
i
) for any i ∈ {1, … , k}, as
it will correspond to the universal relation B. Let us consider a relation
C(u, v) where
(u, v) ∈
E(G
i
) for some i ∈ {1, … , k}. Let
$${\cal N}'{\equals}(V,\,C')$$
be the QCN defined by
C′(u, v)=B
\ C(u, v),
C′(v, u)=B
\ (C(u,
v))−1, and
C′(y,
w)=C(y,
w) ∀(y, w) ∈
(V×V) \ {(u,
v), (v, u)}. Further, let
$${\cal N}_{i} ^{\prime} {\equals}(V_{i} ,\,C_{i} ^{\prime} )$$
be the restriction of
$${\cal N}'$$
toV(G
i
), viz.,
$${\cal N}'\downarrow_{{V\,(G_{i} )}} $$
. Then, by Proposition 6 and as G
i
is a biconnected component of
$${\rm G}({\cal N})$$
, we know that
$${\cal N}'$$
is satisfiable iff
$${\cal N}_{i} ^{\prime} $$
is satisfiable; in addition, any scenario
$$S_{i} {\equals}(V_{i} ,\,C_{i}^{\prime\prime} )$$
of
$${\cal N}_{i} ^{\prime} $$
is the restriction of some scenario
S=(V,
C′′) of
$${\cal N}'$$
to V
i
, and any scenario S=(V,
C′′) of
$${\cal N}'$$
is the extension of some scenario
$$S_{i} {\equals}(V_{i} ,\,C_{i}^{\prime\prime} )$$
of
$${\cal N}_{i} ^{\prime} $$
to V
i
. Finally, since for any scenario there exists a solution that satisfies all
of its base relations, the redundancy of C(u,
v) can be characterized by considering
$${\cal N}_{i} $$
instead of
$${\cal N}$$
.□
Consequently, by Proposition 8 and the fact that IA and RCC-8 have patchwork for satisfiable atomic QCNs of their relations (Lutz & Milicic, Reference Lutz and Milicic2007), we have the following result:
Corollary 7
Let
$${\cal N}{\equals}(V,\,C)$$
be a satisfiable
QCN
of
IA
or
RCC
-8, and let {G
1, … , G
k
} be the biconnected components of its constraint
graph
$${\rm G}({\cal N})$$
. Then, a relation C(u,
v), with u, v
∈ V, is non-redundant in
$${\cal N}$$
iff (u, v) ∈
E(G
i
) and C(u, v)
is non-redundant in
$${\cal N}_{i} {\equals}(V_{i} ,\,C_{i} )$$
, where
$${\cal N}_{i} $$
is
$${\cal N}\downarrow_{{V\,(G_{i} )}} $$
, for some i ∈ {1, … ,
k}.
5.1 Data set
We review the data set of real RCC-8 network instances that was originally introduced in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), and which we describe here as follows:
-
∙ nuts: a nomenclature of territorial unitsFootnote 10 .
-
∙ adm1: a network that describes the administrative geography of Great Britain (Goodwin et al., Reference Goodwin, Dolbear and Hart2008).
-
∙ gadm1: a network that describes the German administrative units (see footnote 10).
-
∙ gadm2: a network that describes the world’s (global) administrative areasFootnote 11 .
-
∙ adm2: a network that describes the Greek administrative geography (see footnote 10).
The aforementioned network instances are tractable and contain at most two base RCC-8 relations per edge. The characteristics of the constraint graphs of these networks are presented in Table 1.
Table 1 Characteristics of real Region Connection Calculus (RCC)-8 networks
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_tab1.gif?pub-status=live)
As it can be seen, the constraint graphs of the networks vary in order, but they are all relatively sparse. This comes as no surprise, as real-world graphs often present a scale-free structure (Barabasi & Bonabeau, Reference Barabasi and Bonabeau2003), which results in them being sparse (Del Genio et al., Reference Del Genio, Gross and Bassler2011). Thus, we expect these constraint graphs to be loosely connected and yield a high number of biconnected components. We can view information regarding the biconnected components of the constraint graphs of our networks in Table 2 (whereby max order, median order, and min order we refer to the maximum, median, and minimum number of vertices, respectively, met among the biconnected components).
Table 2 Biconnected components of real Region Connection Calculus (RCC)-8 networks
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_tab2.gif?pub-status=live)
The findings are quite impressive, in the sense that the maximum order among the biconnected components of a constraint graph is significantly smaller than the order of that graph. For example, the constraint graph of the biggest real RCC-8 network, namely, adm2, has an order of value 1 733 000, but the maximum order among its biconnected components is only of value 22 808. Note also that, as the median metric suggests, most of the biconnected components of a graph have an order much closer to the minimum order than the maximum order among the biconnected components of that graph.
Instances for evaluating the satisfiability checking performance of the reasoners
for intractable QCNs, which are of our interest in this paper, were constructed
in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) with
the introduction of
$${\cal N}{\cal P}_{8} $$
relations (Renz & Nebel, Reference Renz and Nebel2001) in the networks’ edges. These instances will
be denoted by hard-nuts, hard-adm1, and hard-gadm1 in the evaluation to follow,
and are structurally identical to networks nuts, adm1, and gadm1, respectively,
that is, their constraint graphs have the same characteristics as those
presented in Tables 1 and 2.
As Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014)
suggests, some state-of-the-art reasoners, such as GQR (Gantner et
al., Reference Gantner, Westphal and Wölfl2008), use a matrix
to represent a QCN
$${\cal N}{\equals}(V,\,C)$$
, which has a
O(|V|2) memory requirement. It
would be impossible to store a graph of the order of adm2 in a matrix as we
would need ~3 TB of memory. Even if memory was not the issue, the time
complexity alone of a path-consistency algorithm would explode, while the
backtracking algorithm that is typically used for tackling intractable QCNs and
makes use of path consistency as a forward checking step, could suffer from an
increased search space. Heuristics for the backtracking algorithm could also
have a hard time distinguishing between biconnected components. Consider, for
example, a situation where the backtracking algorithm backtracks from an
instatiation of a constraint in a biconnected component to an instantiation of a
constraint in a different biconnected component. Since the constraints belong to
different biconnected components, we have already shown that they are completely
unrelated to each other (i.e. satisfying one constraint does not affect the
other in any way); nevertheless, they might still define a huge branch in the
search tree that is spawned by the backtracking algorithm. Such a situation is
depicted in Figure 10, which presents
two QCNs
$${\cal N}_{i} {\equals}(V_{i} ,\,C_{i} )$$
and
$${\cal N}_{j} {\equals}(V_{j} ,\,C_{j} )$$
such that V
i
∩ V
j
={v}. Let us assume that their constraint graphs
are biconnected. Then, the constraint graph of
$${\cal N}_{i} {\cup}{\cal N}_{j} $$
has
$${\rm G}({\cal N}_{i} )$$
and
$${\rm G}({\cal N}_{j} )$$
as its biconnected components. It is clear that the valuation
of constraint C
i
(u
i
, v) with any of the values r
1 or r
2 does not affect the satisifiability or unsatisfiability of the
valuation of constraint C
j
(v, u
j
) with any of the values l
1, l
2, or l
3, and vice versa. However, if we choose not to treat the biconnected
components separately, a huge branch might be defined, as viewed in Figure 10, that could otherwise be
entirely avoided. Proposition 6 allows us to treat the QCNs that correspond to
biconnected components completely separately, in a parallel or serial fashion,
and avoid the aforementioned bothersome issues.
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_fig10g.jpeg?pub-status=live)
Figure 10 A separable constraint graph with an articulation vertex v
5.2 Evaluation
We consider the hard network instances hard-nuts, hard-adm1, and
hard-gadm1 from Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) that comprise
$${\cal N}{\cal P}_{8} $$
relations (Renz & Nebel, Reference Renz and Nebel2001) to utilize the whole reasoning engine of a
reasoner. If Solver is the name of a reasoner, Solver+ denotes the use of
Algorithm 4 with that reasoner. The experiments were carried out on a computer
with an Intel Core 2 Quad Q9400 processor with a CPU frequency of 2.66 GHz per
core, 8 GB RAM, and the Precise Pangolin x86_64 OS. GQR (under version 1500) was
compiled with gcc/g++ 4.6.3 and Sarissa, Phalanx, and
Phalanx∇ (Sioutis & Condotta, Reference Sioutis and Condotta2014) (all under version 0.2) were run with PyPy 2.4.0Footnote
12
, which fully implements Python 2.7.8. For all reasoners, the best
performing heuristics were enabled. (Obviously, we did not consider the
implementation of Nikolaou & Koubarakis (Reference Nikolaou and Koubarakis2014) in our evaluation as it is not sound.) We chose to
reason in a serial fashion, from smaller to bigger QCN, so as to stress how much
more path consistency and the backtracking algorithm that utilizes it along with
the heuristics in each reasoner benefit from reasoning with the smaller
biconnected QCNs than reasoning with the initial large and loosely connected
QCN, when both approaches are offered the same computational power. Thus, only
one CPU core was used in our experiments.
The results are shown in Table 3 and
make clear that our simple decomposition scheme aids the performance of each
reasoner substantially, with the more apparent case being that of hard-gadm1,
which is unsatisfiable. Networks hard-nuts and hard-adm1 are satisfiable. In
particular, GQR decides gadm1 in ~4 hours, while GQR+ in 1.2
seconds, and similar results are obtained for the other reasoners too. When an
inconsistency is detected in a QCN n that corresponds to some
biconnected component of the constraint graph of an input QCN
$${\cal N}$$
, each reasoner backtracks only within the search space defined
by n, and considers a very small search tree to either verify
or dispute that inconsistency with respect to the search tree that would have
been obtained by the input QCN
$${\cal N}$$
. Obviously, the time obtained for reasoner Solver+ is
the time that it took it to serially reason with every QCN n,
until it reached an unsatisfiable QCN (thus, assuring that the input QCN
$${\cal N}$$
is also unsatisfiable by Corollary 5).
Table 3 Performance comparison based on elapsed time
![](https://static.cambridge.org/binary/version/id/urn:cambridge.org:id:binary:20171122095912632-0901:S026988891600014X:S026988891600014X_tab3.gif?pub-status=live)
Pha.=Phalanx; Sar.=Sarissa.
It is worth commenting on the performance of the reasoners with respect to network hard-adm1. Reasoners Sarissa+ and Phalanx∇+ present a performance that is slightly better than that of reasoners Sarissa and Phalanx∇, respectively. On the other hand, reasoners GQR+ and Phalanx+ present a performance that is slightly worse than that of reasoners GQR and Phalanx, respectively. This is due to the fact that the maximum order among the biconnected components of the constraint graph of adm1 is very close to the order of the entire graph itself (see Table 2). Thus, in such cases, the use of Algorithm 4 may not lead to drastically improved performance, while sometimes due to the randomness of the heuristics in a reasoner, even slightly worse performance may be observed, as in this particular case.
Finally, we note that the results presented in Table 3 do not take into account the time needed for decomposing the networks with Algorithm 4, but only the time needed for performing satisfiability checks on the networks. However, the time needed for decomposing hard-nuts, hard-adm1, and hard-gadm1 was negligible, and does not change the results qualitatively. In particular, a simple Python script that makes use of the networkxFootnote 13 library was able to decompose hard-nuts, hard-adm1, and hard-gadm1 in 0.2, 1.4, and 7.6 seconds, respectively.
6 Decomposition techniques in the constraint satisfaction problem framework
As noted in our introduction, a QCN is most efficiently modeled as an infinite-domain
variant of a CSP through the use of a relation algebra (Ladkin
& Maddux, Reference Ladkin and Maddux1994), which is also the
approach we followed in our work. However, a QCN can also be encoded as a finite CSP
instance (Renz & Nebel, Reference Renz and Nebel2001; Brand,
Reference Brand2004; Condotta et al.,
Reference Condotta, Dalmeida, Lecoutre and Sais2006). In particular, given a QCN
(V, C), where
|V|=n we can obtain a CSP instance as
follows. Let X denote the set of variables containing a variable
x
ij
for each pair of variables v
i
, v
j
∈ V with
1⩽i<j⩽n.
Then, our instance has the form (X, B, DCon
∪ TCon), where DCon is the set of domain
constraints {(x
ij
, C
ij
) |
1⩽i<j⩽n}
and TCon the set of ternary constraints {((x
ij
, x
ik
, x
kj
), R
◊) |
1⩽i<j<k⩽n}
with R
◊={(b, b′,
b′′) ∈ B3 | b
∈ b′ ◊ b′′}.
Namely, DCon restricts the values of a variable x
ij
to the base relations of the corresponding qualitative constraint
C
ij
and TCon encodes all the consistent paths of length 2 in the
network. The resulting finite network has
${{n(n{\minus}1)} \over 2}$
variables and
$\left( {\matrix{ n \cr 3 \cr } } \right)$
ternary constraints. A solution of this finite instance
corresponds to a path-consistent atomic refinement of a given QCN, and vice versa
(Condotta et al., Reference Condotta, Dalmeida, Lecoutre and Sais2006).
The main disadvantage of this approach is that we are not able to make use of
tractable subclasses of relations. This can seriously impact the performance of
satisfiability checking for calculi that heavily rely upon those subclasses, such as
RCC-8 and IA. However, for large-sized qualitative calculi (viz., comprising
hundreds of base relations) for which no tractable subclasses are known, a finite
CSP encoding can provide a considerable performance gain (Westphal &
Wölfl, Reference Westphal and Wölfl2009).
In light of the strong relation that exists between qualitative and ‘traditional’ constraint programming, it is worth mentioning some works in the latter paradigm that exploit the structure of constraint graphs in a similar manner to what we presented in our paper. The interested reader may review the cited works and obtain a deeper understanding on the analogy that exists between structural characteristics of QCNs and finite CSP instances. What is more important, the cited works may drive future research by enabling the reader to identify theoretical properties in the context of QSTR that can be used to adopt certain techniques for exploiting the structure of constraint graphs that exist in constraint programming.
Walsh (Reference Walsh2001) measures the impact that the structure of a constraint graph can have on the performance of solving the graph coloring problem, which is the problem of coloring the vertices of a graph in such a way that no two adjacent vertices share the same color.
Baget and Tognetti (Reference Baget and Tognetti2001) propose a backtracking algorithm for solving CSP instances that exploits the biconnected components of a given constraint graph to reduce search space, permanently removing values and compiling partial solutions during exploitation.
Dechter and Pearl (Reference Dechter and Pearl1989) propose a constraint graph restructuring technique, based on tree decompositions, that guarantees that a large variety of queries could be answered swiftly either by sequential backtrack-free procedures, or by distributed constraint propagation methods.
Based on the work of Dechter and Pearl (Reference Dechter and Pearl1989), Jégou and Terrioux (Reference Jégou and Terrioux2003) propose a framework for solving CSP instances that relies both on backtracking techniques and on the notion of tree decomposition of the constraint graphs. Notably, this mixed approach has been implemented and used successfully for practical CSP solving (Jégou & Terrioux, Reference Jégou and Terrioux2003).
Jegou et al. (Reference Jégou, Ndiaye and Terrioux2005) study several methods for computing a rough optimal tree decomposition and assess their relevance for solving CSP instances; the same authors also proposed dynamic heuristics for efficient backtrack search on tree decompositions of constraint graphs in Jegou et al. (Reference Jégou, Ndiaye and Terrioux2006, Reference Jégou, Ndiaye and Terrioux2007).
Recently, Jégou and Terrioux (Reference Jégou and Terrioux2014a, Reference Jégou and Terrioux2014b) introduced and exploited a new graph parameter, called bag-connected treewidth, which considers tree decompositions for which each cluster induces a connected graph. It is experimentally shown in Jégou and Terrioux (Reference Jégou and Terrioux2014b) that such bag-connected tree decompositions significantly improve the solving of CSP instances by decomposition methods.
Finally, a presentation of the major structural constraint network decomposition methods discussed here is given in Gottlob et al. (Reference Gottlob, Leone and Scarcello2000).
7 Conclusion
To conclude, we surveyed the use and effect of decomposition-based techniques in qualitative constraint-based reasoning and showed that the decomposition-based approach presented in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014) for checking the satisfiability of QCNs of RCC-8 lacks soundness, as the notion of a partitioning graph defined in that work is not coherent with the use of patchwork upon which it solely relies. Further, we showed how that notion is beyond repair, unless it is reformulated to define a tree decomposition, implicitly or explicitly, and discussed the impact of these observations on the performance of the offered implementation in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), which was already found to be poor in Sioutis (Reference Sioutis2014).
We think that future efforts regarding decomposition-based approaches utilizing parallelism, such as the approach attempted in Nikolaou and Koubarakis (Reference Nikolaou and Koubarakis2014), should rely on chordal graphs (tree decompositions into cliques), which can both be constructed and also yield a natural tree decomposition of their cliques in linear time (Diestel, Reference Diestel2012). The cliques can then be collected at no extra cost and parallelism might be efficiently utilized. It is an issue that looks promising and calls for further research. Toward that direction, we offered an approach that relies on a particular tree decomposition that is based on the biconnected components of the constraint graph of a given large QCN, and showed that it allows for cost-free utilization of parallelism for a qualitative constraint language that has patchwork for satisfiable atomic QCNs.
Acknowledgments
This work was funded by a PhD grant from Université d’Artois and region Nord-Pas-de-Calais. The material presented in this paper draws from the work of Sioutis et al. (Reference Sioutis, Salhi and Condotta2015c, Reference Sioutis, Salhi and Condotta2015d).