net.sf.cpsolver.ifs.dbt
Class DbtVariableSelection

java.lang.Object
  extended by net.sf.cpsolver.ifs.dbt.DbtVariableSelection
All Implemented Interfaces:
VariableSelection

public class DbtVariableSelection
extends Object
implements VariableSelection

Selection of a variable for dynamic backtracking.

  • Returns null if all variables are assigned.
  • Checks if there is a varaible with all values marked as nogood (and pick it if there is any).
  • Returns the first unassigned variable.

    This IFS solver variable selection heuristics is to be used only in case of dynamic backtracking and it has no parameters.

    Version:
    IFS 1.1 (Iterative Forward Search)
    Copyright (C) 2006 Tomáš Müller
    muller@unitime.org
    Lazenska 391, 76314 Zlin, Czech Republic

    This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

    This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

    You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

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

    Constructor Detail

    DbtVariableSelection

    public DbtVariableSelection(DataProperties properties)
    Method Detail

    init

    public void init(Solver solver)
    Heuristics initialization

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

    selectVariable

    public Variable selectVariable(Solution solution)
    Variable selection

    Specified by:
    selectVariable in interface VariableSelection
    Parameters:
    solution - current solution
    See Also:
    VariableSelection.selectVariable(Solution)