eralizes complete search algorithms on the constraint
graphs (Modi et al., 2005) and Max-Sum algorithm.
While the complete search method is generally ineffi-
cient in complex problems with many cycles, our cur-
rent interest is the generalization of complete search
methods on pseudo-trees (Modi et al., 2005) and
Max-Sum algorithm.
As shown above, we apply the method based on
pseudo-trees to decompose cycles in factor-graphs.
In most studies, pseudo-trees including cross-edged
pseudo-trees (Atlas and Decker, 2007) are applied
to constraint graphs. While the pseudo-trees on
factor-graphs resemble the cases on traditional con-
straint networks, there are several important differ-
ences. First, in the case of factor graphs, there is
the same separator in both directions on edges of the
pseudo-tree. Here, the separator is a set of variables
which are shared by two different components of a
graph. Therefore, separators are simply computed by
a single bottom-up computation on a pseudo-tree. In
contrast, in the case of constraint graphs, there are
different separators in different directions on edges.
Second, since functions are still separated as single
nodes in the decomposed tree, it inherently avoids
double counting of a function in any path of aggre-
gation of evaluation values. Those properties easily
enable the decomposition of cycles. In addition, af-
ter the transformation, each agent node simply has its
original variable/function. As a result, only neighbor-
hood nodes and separators are modified. A different
type of method based on junction trees (Vinyals et al.,
2011) has been proposed to transform the graphs of
problems. The main purpose of this method is the
manipulation to replace variables and functions into
different agents.
Our current contribution is that we present a vari-
ation of Max-Sum algorithms that is a complete so-
lution method based on pseudo-trees on cyclic factor
graphs. Basic effects and overheads of this type of
complete algorithms are almost clear since those re-
semble the cases of algorithms based on constraint
networks and pseudo-trees. While the algorithm is
complete, its computational cost, memory use and/or
message size exponentially grow with the size of sep-
arators, also known as the induced width. On the
other hand, there are several issues on search algo-
rithms based on Max-Sum since all nodes perform
as root nodes and their computation is partially inte-
grated. Therefore, as the first study, we evaluate the
possibilities of pruning instead of relatively obvious
comparisons with other Max-Sum algorithms. Since
sophisticated pruning methods need more works for
the case of multiple root nodes, here the proposed
method cannot be easily compared with the state-
of-art of efficient search methods with a single root
node (Yeoh et al., 2008). From another point of view,
the proposed generalization will be a base of new ap-
proximate algorithms where agents have their own
controls as root nodes.
The rest of the paper is organized as follows. In
Section 2, we give background for the study. Then,
in Section 3, we propose the method to decompose
cycles in factor-graphs. Next, we introduce a scheme
for distributed search on the decomposed graphs in
Section 4. The proposed methods are experimentally
evaluated in Section 5. We conclude our study in Sec-
tion 6.
2 PRELIMINARY
2.1 DCOPs
A distributed constraint optimization problem
(DCOP) is defined as follows. A DCOP is defined
by (A, X,D,F), where A is a set of agents, X is a set
of variables, D is a set of domains of variables, and
F is a set of objective functions. A variable x
n
∈ X
takes values from its domain defined by the discrete
finite set D
n
∈ D. A function f
m
∈ F is an objective
function defining valuations of a constraint among
several variables. Here, f
m
represents utility (or cost)
values that are maximized (or minimized).
X
m
⊂ X defines a set of variables that are included
in the scope of f
m
. F
n
⊂ F similarly defines a set of
functions that include x
n
in its scope. f
m
is formally
defined as f
m
(d
i
,·· · ,d
k
) : D
i
× · ·· × D
k
→ N
0
, where
{x
i
,·· · ,x
k
} = X
m
. f
m
(d
i
,·· · ,d
k
) is also simply de-
noted by f
m
(x
i
,·· · ,x
k
) or f
m
(X
m
).
The aggregation F(X) of all the ob-
jective functions is defined as follows:
F(X) =
∑
m s.t. f
m
∈F,X
m
⊆X
f
m
(X
m
). The goal is
to find a globally optimal assignment that maximizes
(or minimizes) the value of F(X).
The variables and functions are distributed among
the agents in A. Each agent locally knows the set of
variables and the set of functions in the initial state.
A distributed optimization algorithm is performed to
compute the globally optimal solution.
2.2 Factor Graph
The factor graph is a representation of DCOPs. The
factor graph consists of variable nodes, function
nodes and edges. An edge represents a relationship
between a variable and function. Figure 1 shows a tra-
ditional constraint network and factor graphs. In the
constraint network (a), nodes represent variables and
CompleteDistributedSearchAlgorithmforCyclicFactorGraphs
185