Arc consistency, Computer Engineering

Arc Consistency:

There have been many advances in how constraint solvers search for solutions (remember this means an assignment of a value to each variable in such a way thatno constraint is broken). We look first at a pre-processing step which can greatly improve efficiency by pruning the search space, namely arc-consistency. Following this, we'll look at two search methods, backtracking and forward checking which keep assigning values to variables until a solution is found. Finally, we'll look at some heuristics for improving the efficiency of the solver, namely how to order the choosing of the variables, and how to order the assigning of the values to variables. 

The pre-processing routine for bianry constraints known as  arc-consistency involves calling a pair (xi, xj) an arc and noting that this is an ordered pair, i.e., it is not the same as (xj, xi). Each arc is associated with a single constraint Cij, which constrains variables xi  and xj. We say that the arc (xi, xj) is  consistent  if, for all values a in Di, there is a value b in Dj  such that the assignment xi=a and xj=b satisfies constraint Cij. Note that (xi, xj) being consistent doesn't necessarily mean that (xj,xi) is also consistent. To use this in a pre-processing way, we take every pair of variables and make it arc-consistent. That is, we take each pair (xi,xj) and remove variables from Di  which make it inconsistent, until it becomes consistent. This effectively removes values from the domain of variables, hence prunes the search space and makes it likely that the solver will succeed (or fail to find a solution) more quickly.

Posted Date: 1/11/2013 7:35:43 AM | Location : United States







Related Discussions:- Arc consistency, Assignment Help, Ask Question on Arc consistency, Get Answer, Expert's Help, Arc consistency Discussions

Write discussion on Arc consistency
Your posts are moderated
Related Questions
Explain about the network level in detail. Network Level Firewall/Packet Filters: At the Network level firewalls operate upon the mechanism of filtering individual IP pa

minimum self program

What is a serial port?  A serial port transfers and receives data single bit at a time.

Translator for low level programming language were termed as? Ans. Translator for low level programming language is called as Assembler.

Organisational Inertia - Obstacle To Information System This is most easily understood as problems of change and culture. Like any change process technology led change will be


How does dynamic memory allocation help in managing data

PRAM is one among the models which are used for designing the parallel algorithm as shown in Figure. The PRAM model comprises the following components: i)  A group of identical

Define various system? Single job system: Only one program may be run at a time, and therefore only one person might be work on a machine at one time.  Multi job system:

A datapool is a source of variable test data that scripts can draw from during playback