Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
These methods do have a number of drawbacks. is a function which maps every variable in to
D Z
Firstly, many of them are not complete. However, a set of objects of arbitrary type. We denote by x D
the size of problems we are able to solve using itera- the set of objects mapped by from , where 2 .
D x x Z
tive improvement techniques can so large that to do a We call the set x the domain of and the members
D x
of x possible values of .
D x
Andrew Davenport is supported by a Science and Engi-
neering Research Council Ph.D Studentship. This research is a set of constraints. Each constraint in re-
C C
has also been supported by a grant (GR/H75275) from the stricts the values that can be assigned to the vari-
Science and Engineering Research Council. ables in simultaneously. A constraint is a nogood
Z
if it forbids certain values being assigned to variables being broken randomly. When the modulator changes
simultaneously. the label node which is on in a cluster we say it has
An n-ary constraint applies to n variables. A binary made a repair.
csp is one with unary and binary constraints only. A GENET Convergence Procedure
general csp may have constraints on any number of
variables. A state of a genet network represents a complete
We dene a label, denoted by h i, as a variable- assignment of values to variables i.e. exactly one la-
bel node in each cluster is on. The initial state of
x; v
value pair which represents the assignment of value
to variable . A compound label is the simul- the genet network is determined randomly|one la-
bel node per cluster is selected arbitrarily to be on.
v x
taneous assignment of values to variables. We use
(h 1 1i h n ni) to denote the compound label genet iterates over convergence cycles until it nds a
global minima. We dene a convergence cycle as:
x ;v ; : : :; x ; v
of assigning 1 n to 1
v ; : : :; v n respectively. A
x ; : : :; x
k-compound label assigns values to variables si-
k k 1. foreach cluster in parallel do2 update states of all
multaneously. A solution tuple of a csp is a compound label nodes in cluster,
label for all the variables in the csp which satises all 2. if none of the label nodes have changed state in step
the constraints. 1 then
Binary GENET (a) if the input to all on nodes is zero then solution
Network Architecture found|terminate,
The genet neural network architecture is similiar to (b) else activate learning,
that of the gds network. In the genet network each 3. goto step 1.
variable in is represented by a cluster of label nodes,
Learning
i Z
one for each value in its domain. Each label node may
j
be in one of two states \on" or \o". The state hi;j i S Like most hill-climbing searches, genet can reach lo-
of a label node representing the label h i indicates i; j cal optimal points in the search space where no more
whether the assignment of the value to variable is j i improvements can be made to the current state|in
true in the current network state. The output of a this case we say the network is in a minima. A local
label node hi;j i is 1 if hi;j i is \on" and 0 otherwise.
V S minima is a minima in which constraints are violated.
All binary constraints in genet must be represented genet can sometimes escape such minima by mak-
by nogood ground terms. Binary constraints are imple- ing sideways moves to other states of the same \cost".
mented as inhibitory (negatively weighted) connections However in some minima this is not possible, in which
between label nodes which may be modied as a result case we say the network is in a single-state minima. To
of learning. Initially all weights are set to ?1. escape local minima we adjust the weights on the con-
The input to each label node hi;j i is the weighted
I nections between label nodes which violate a constraint
sum of the output of all the connected label nodes: according to the following rule:3
X
hi;j i =
I hi;j ihk;li hk;li
W (1) V
W
t+1
hi;j ihk;li= hti;j ihk;li ? hi;j i hk;li
W V V (2)
k2Z;l2Dk
where hti;j ihk;li is the connection weight between label
where hi;j ihk;li is the connection weight between the
W
W
label nodes representing the labels h i and h i1 . nodes representing h i and h i at time .
i; j k; l t
rent state. We consider this a useful feature of genet where c is the state of the constraint node.
S
since it allows the network to escape more complicated The Illegal Constraint
multi-state minima composed of a \plateau" of states
of the same cost. The illegal (hx1 v1 i hxk vk i) constraint species
; ; : : :; ;
genet is not complete. This is because learning aects is a nogood. An illegal constraint is represented in a
many other possible network states as well as those genet network by an illegal constraint node, which is
that compose the local minima. As a result of learn- connected to the label nodes which represent the
k k
Many real-life csps have general constraints e.g. In this case there is no possibility that the constraint
scheduling, car sequencing (Dincbas, Simonis, & will become violated should another node become on.
Van Hentenryck 1988). In this section we describe how A constraint node in this state outputs 0 to all the
can we represent two types of general constraint, the il- connected label nodes.
legal constraint and the atmost constraint, in a genet If ? 1 of the connected label nodes are on then we
k
network. One of our motivations for devising these par- want to discourage the remaining o label node from
ticular constraints has been the Car Sequencing Prob- becoming on, since this will cause the constraint to
lem, a real-life general csp once considered intractable be violated. However, we do not wish to penalize the
(Parrello & Kabat 1986) and which has been success- label nodes which are already on, since the constraint
fully tackled using csp solving techniques (Dincbas, remain satised even if they do change state. In this
Simonis, & Van Hentenryck 1988). case we want to output 1 to the label node which is o
Since we cannot represent general constraints by bi- and 0 to the remaining label nodes.
nary connections alone, we introduce a new class of Finally, if all the connected label nodes are on then
nodes called constraint nodes. A constraint node is the constraint is violated. We want to penalize all these
connected to one or more label nodes. nodes for violating the constraint, so we give them all
Let be a constraint node and be the set of label an output of 1 to encourage them to change state.
We summarize the output ill;hi;j i from an illegal
c L
nodes which are connected to . Then the input c V
constraint node to a label node representing the
c I
to the constraint node is the unweighted sum of the ill
label h i by:
c
outputs of these connected label nodes: i; j
X
c= hi;j i (3) 0 if ill 0
ill;hi;j i = 1 + ill ? hi;j i otherwise (7)
I V S <
V
hi;j i2L S V
nodes in networks with general constraints is now The atmost constraint node is connected to all nodes
of the set which represent the labels fh ij 2 Var,
C
given by: L i; j i
j 2 Val, 2 i g. This constraint is a modication
j D
X X of the atmost constraint found in the chip constraint
I hi;j i = hi;j ihk;li hk;li +
W V c;hi;j i c;hi;j i
W V logic programming language.
k2Z;l2Dk c2C The state atm of an atmost constraint node is de-
S
(4) termined as follows:
where c;hi;j i is the output of the constraint node to
V c
want label nodes in the same cluster to receive dierent 125 18 30 secs 65 969 ;
inputs from a particular constraint node since, in situ- 250 15 5.0 secs 2 839 ;
ations where the network would normally be in a single 250 29 1.8 hours 7 429 308
; ;
state local minima, we would nd the network oscillat- Table 1: gsat on hard graph coloring problems.
ing about the states of these label nodes. Instead, we
give the output of an atmost constraint node atm to a
label node representing the label h i as follows:
i; j
graph median median number
( nodes colors time of repairs
0 if atm 0 S < 125 17 2.6 hours 1 626 861
; ;
Vatm ;hi ;j i = 1 ? MaxfV hi;ki
k j 2 Val g if atm = 0 S 125 18 23 secs 7 011 ;
1 otherwise 250 15 4.2 secs 580
(9) 250 29 1.1 hours 571 748 ;
% 60
r r
70 82 670 85 508
75 76 1282 82 811
r r
Succ. r r r
Runs 40 r genet r
80 29 10235 51 4449
r genet2 r
mchc r
Table 3: A comparison of mchc and mchc2 on 200 car
20 r r r
r
mchc2 r
sequencing problems.
r r
r r r r
r r r r
r r
0
r r r
r r r r r r r rr r r r