ifs.dbt
Class DbtValueSelection

java.lang.Object
  extended by ifs.dbt.DbtValueSelection
All Implemented Interfaces:
ValueSelection

public class DbtValueSelection
extends Object
implements ValueSelection

Selection of a value for dynamic backtracking.

  • Returns null if all values of the selected variable are nogood.
  • Selected the best good value (according to the parameters) of the selected variable.

    It is based on a weighted sum of several criteria.

    This IFS solver value selection heuristics is to be used only in case of dynamic backtracking and it has the following parameters:
    ParameterTypeComment
    General.MPPBooleanMinimal Perturbation Problem
    Value.MPPLimitIntegerLimit on the number of perturbations (only in case of MPP, i.e., when General.MPP=true). MPP limit is decreased when a complete solution is found. If set to -1, it is no used
    Value.InitialSelectionProbDoubleProbability of selection of initial value (only in case of MPP)
    Value.WeightDeltaInitialAssignmentsDoubleWeight of difference in the number of assignments of initial values in case of selection of the value(only in case of MPP)
    Value.RandomWalkProbDoubleProbability of random selection of a good value
    Value.WeightNrAssignmentsDoubleWeight of the number of previous assignments of the value
    Value.WeightValueDoubleWeight of the value itself (e.g., for minCSP)

    Version:
    1.0
    Author:
    Tomáš Müller

    Constructor Summary
    DbtValueSelection(DataProperties properties)
               
     
    Method Summary
     void init(Solver solver)
              Heuristics initialization
     Value selectValue(Solution solution, Variable selectedVariable)
              Value selection
     
    Methods inherited from class java.lang.Object
    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
     

    Constructor Detail

    DbtValueSelection

    public DbtValueSelection(DataProperties properties)
    Method Detail

    init

    public void init(Solver solver)
    Heuristics initialization

    Specified by:
    init in interface ValueSelection
    See Also:
    ValueSelection.init(Solver)

    selectValue

    public Value selectValue(Solution solution,
                             Variable selectedVariable)
    Value selection

    Specified by:
    selectValue in interface ValueSelection
    Parameters:
    solution - current solution
    selectedVariable - selected variable
    See Also:
    ValueSelection.selectValue(Solution, Variable)


    Copyright © 2005 Tomáš Müller