Professional Documents
Culture Documents
The network is initialized in such a way that all the v-nodes are set to 1 and all the c-
nodes are set to 1 if the compound label that it represents satisfies the constraint on
the variables; it is set to 0 otherwise.
A few modifications are made to the network described in the previous section.
Firstly, each c-node is given a signature, which could, for example, be a unique
prime number. Secondly, instead of storing binary values, each v-node is made to
store a set of signatures. Although each c-node stores a binary value as before, what
it outputs is not this value, but a set of signatures, as explained later. For conven-
ience, we call the signatures of the c-node for the compound label (<x1,v1> <x2,v2>)
s(<x1,v1> <x2,v2>).
The connections remain the same as before. Each v-node representing <x,v> is ini-
tialized to the set of all signatures for all the c-nodes except those which represent
2-compound labels involving <x,v'> with v' ≠ v. In other words:
v(<x,v>) ← {s(<x,v><x',v'>) | x' ∈ Z & v' ∈ Dx' & x ≠ x'} ∪
{s(<x1,v1><x2,v2>) |
x1 ∈ Z & v1 ∈ D x & x1 ≠ x & x2 ∈ Z & v2 ∈ D x & x2 ≠ x}
1 2
where Z is the set of variables and Dx is the domain of the variable x. For example,
in the problem shown in Figure 4.4, there are three variables x, y and z, all of which
have the domain {a, b}. The v-node for <x,a> will be initialized to the set of signa-
tures {s(<x,a><y,a>), s(<x,a><y,b>), s(<x,a><z,a>), s(<x,a><z,b>), s(<y,a><z,a>),
s(<y,a><z,b>), s(<y,b><z,a>), s(<y,b><z,b>)}.
The initial values for the c-nodes are the same as the network described in the last
section, i.e. a c-node is set to 1 if the compound label that it represents is legal, and