AIMA.Core.Search.CSP.Assignment.hasAssignmentFor C# (CSharp) Method

hasAssignmentFor() public method

public hasAssignmentFor ( Variable var ) : bool
var Variable
return bool
        public bool hasAssignmentFor(Variable var)
        {
            return variableToValue.get(var) != null;
        }

Usage Example

コード例 #1
0
        /** : the degree heuristic. */
        private List <Variable> applyDegreeHeuristic(List <Variable> vars,
                                                     Assignment assignment, CSP csp)
        {
            List <Variable> result    = new List <Variable>();
            int             maxDegree = int.MIN_VALUE;

            foreach (Variable var in vars)
            {
                int degree = 0;
                foreach (Constraint constraint in csp.getConstraints(var))
                {
                    Variable neighbor = csp.getNeighbor(var, constraint);
                    if (!assignment.hasAssignmentFor(neighbor) &&
                        csp.getDomain(neighbor).Count > 1)
                    {
                        ++degree;
                    }
                }
                if (degree >= maxDegree)
                {
                    if (degree > maxDegree)
                    {
                        result.clear();
                        maxDegree = degree;
                    }
                    result.Add(var);
                }
            }
            return(result);
        }
All Usage Examples Of AIMA.Core.Search.CSP.Assignment::hasAssignmentFor