AIMA.Core.Search.CSP.ImprovedBacktrackingStrategy.countLostValues C# (CSharp) Method

countLostValues() private method

private countLostValues ( Variable var, Object value, CSP csp ) : int
var Variable
value Object
csp CSP
return int
        private int countLostValues(Variable var, Object value, CSP csp)
        {
            int result = 0;
            Assignment assignment = new Assignment();
            assignment.setAssignment(var, value);
            foreach (Constraint constraint in csp.getConstraints(var))
            {
                Variable neighbor = csp.getNeighbor(var, constraint);
                foreach (Object nValue in csp.getDomain(neighbor))
                {
                    assignment.setAssignment(neighbor, nValue);
                    if (!constraint.isSatisfiedWith(assignment))
                    {
                        ++result;
                    }
                }
            }
            return result;
        }