# Package org.cpsolver.ifs.heuristics

IFS Heuristics (value and variable selection criteria)

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  NeighbourSelection<V extends Variable<V,T>,T extends Value<V,T>> | Neighbour selection criterion.
  ValueSelection<V extends Variable<V,T>,T extends Value<V,T>> | Value selection criterion.
  VariableSelection<V extends Variable<V,T>,T extends Value<V,T>> | Variable selection criterion.

- Class Summary
  Class | Description
  --- | ---
  BacktrackNeighbourSelection<V extends Variable<V,T>,T extends Value<V,T>> | Backtracking-based neighbour selection.
  GeneralValueSelection<V extends Variable<V,T>,T extends Value<V,T>> | General implementation of value selection criterion.
  GeneralVariableSelection<V extends Variable<V,T>,T extends Value<V,T>> | General implementation of variable selection criterion.
  MaxIdleNeighbourSelection<V extends Variable<V,T>,T extends Value<V,T>> | Simple extension of a provided `NeighbourSelection` that halts the construction heuristic or the IFS search when the underlying heuristic is unable to improve the number of assigned variables.
  RouletteWheelSelection<E> | A general roulette wheel selection.
  RoundRobinNeighbourSelection<V extends Variable<V,T>,T extends Value<V,T>> | A round robin neighbour selection.
  StandardNeighbourSelection<V extends Variable<V,T>,T extends Value<V,T>> | Standard neighbour selection criterion.

## Package org.cpsolver.ifs.heuristics Description

IFS Heuristics (value and variable selection criteria)

Version:
  IFS 1.4 (Instructor Sectioning)
  Copyright (C) 2024 Tomáš Müller
  muller@unitime.org
  http://muller.unitime.org
  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 3 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 see http://www.gnu.org/licenses/.
Author:
  Tomáš Müller