| OCR Text |
Show 21 as systems of simultaneous equations. Gosling used three methods to satisfy a constraint network: 1. Constraint propagation using breadth first planning. 2. SUbgraph transfonnation. 3. Numerical Relaxation. Before firing any constraints, Gosling uses a breadth first search of the constraint network beginning from the modified value to fonnulate a sequence of constraint firings which will satisfy the network. For example in Figure 10 if we set a::4, the breadth first search discovers b:=1 and c::8. Since b:=1 would satisfy the network the system would set b::1 and terminate. An interesting point to note here is that if the solution b::1 were unacceptable to the user, we could undo b::1 and continue the breadth first search for solutions. The search would continue with solutions which involve c::8. The plan c::8 can be extended to two new successful plans c::8, d:=-2 and c::8, e::10. Either set of assignments would satisfy the network. Magritte, unfortunately, had no facility for undoing solutions and continuing the search for solutions. Gosling states that it is a mistake to ask the user for advice on how to solve the constraint network. The user does not understand the network well enough to offer advice on how to satisfy it and often he will not care which solution, when more than one is possible, is used. I would have to agree that the user will not usually understand the network well enough to offer advice, but, he may sometimes care which solution is used. An example would be when he tweaks a part of the network with the expectation that the tweak will affect a specific part of the model. He will be disappointed if the satisfaction mechanism insists on a solution which does not affect that specific part. A breadth first plan has two advantages. The first is that it finds the smallest set of changes necessary to satisfy the network. The search can be continued ~although Magritte failed to do so) such that subsequent solutions are found in increasing order of the number of changes they make to the network. |