Reference - Searchers

The SearcherType enum represents different types of available searching algorithms. To set a searcher in the model is mandatory.

Searchers

SearcherType(Enum):

Represents different types of search algorithms.

Enum Members:

  • DFS (str): Depth-First Search algorithm.
  • BAB (str): Branch and Bound algorithm.
  • LDS (str): Limited Discrepancy Search algorithm.
  • PBS (str): Portfolio-Based Search algorithm.
  • RBS (str): Restart-Based Search algorithm.

Example:

my_model = Modeller()
my_model.set_searcher(SearcherType.LDS)  # Represents "Limited Discrepancy Search"

Cutoff

The Cutoff module provides a set of classes for defining various optimization cutoff conditions. These cutoff conditions help control the termination of search algorithms based on predefined criteria. The module also includes meta-cutoff classes that allow users to combine and manipulate different cutoff conditions to create more complex termination strategies.

Cutoff Classes

CutoffConstant

Represents a constant optimization cutoff condition.

Parameters:

  • constant_value (int): The constant value for the cutoff.

CutoffFibonacci

Represents a Fibonacci optimization cutoff condition. Methods

CutoffGeometric

Represents a geometric progression optimization cutoff condition.

Parameters:

  • base (float): The base value of the geometric progression.
  • scale (int): The scale value of the geometric progression.

CutoffLuby

Represents a Luby sequence optimization cutoff condition.

Parameters:

  • scale (int): The scaling factor for the Luby sequence.

CutoffLinear

Represents a linear optimization cutoff condition.

Parameters:

  • scale (int): The scaling factor for the linear cutoff.

CutoffRandom

Represents a random optimization cutoff condition.

Parameters:

  • seed (int): The seed value for the random number generator.
  • minimum (int): The minimum cutoff value.
  • maximum (int): The maximum cutoff value.
  • round_value (int): The value to round the cutoff to.

Meta-Cutoff Classes

MetaCutoffAppender

Represents a meta-cutoff that appends two different cutoff conditions.

Parameters:

  • first_cutoff (Cutoff): The first cutoff condition.
  • number_from_first (int): The number of solutions from the first cutoff to append.
  • second_cutoff (Cutoff): The second cutoff condition.

MetaCutoffMerger

Represents a meta-cutoff that merges two different cutoff conditions.

Parameters:

  • first_cutoff (Cutoff): The first cutoff condition.
  • second_cutoff (Cutoff): The second cutoff condition.

MetaCutoffRepeater

Represents a meta-cutoff that repeats a sub-cutoff condition multiple times.

Parameters:

  • sub_cutoff (Cutoff): The sub-cutoff condition to be repeated.
  • repeat (int): The number of times to repeat the sub-cutoff.