Interface SearchAlgorithm.SearchWithTable

All Superinterfaces:
SearchAlgorithm
All Known Implementing Classes:
DfBstar, DfBstar2, DfBstar3, DfBstarDB
Enclosing interface:
SearchAlgorithm

public static interface SearchAlgorithm.SearchWithTable extends SearchAlgorithm
This represents a search algorithm which primarily stores search results in a transposition table. However, this also works for algorithms which are only supplemented by transposition tables.
  • Method Details

    • search

      <P extends IGamePosition<P>> SearchAlgorithm.SearchResult<?,P> search(P root, Table table, Duration time_limit, SearchAlgorithm.Limits space_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree with a given time limit and spatial limit.
      Type Parameters:
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      table - table to use during search, can be non-empty
      time_limit - maximum time spent in the algorithm
      space_limit - maximum node expansions, evaluations, and nodes saved in memory used by the algorithm
      metrics - an array of MetricKeeper objects to keep track of evaluations, expansions, and node storage performed during the search, can be empty
      Returns:
      result from the search
    • search

      default <P extends IGamePosition<P>> SearchAlgorithm.SearchResult<?,P> search(P root, Table table, SearchAlgorithm.Limits space_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree without time limits.
      Type Parameters:
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      table - table to use during search, can be non-empty
      space_limit - the spatial limits on this search
      metrics - an array of MetricKeeper objects to keep track of evaluations, expansions, and node storage performed during the search, can be empty
      Returns:
      result from the search
    • search

      default <P extends IGamePosition<P>> SearchAlgorithm.SearchResult<?,P> search(P root, Table table, Duration time_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree without spatial limits.
      Type Parameters:
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      table - table to use during search, can be non-empty
      time_limit - maximum time spent in the algorithm
      metrics - an array of MetricKeeper objects to keep track of evaluations, expansions, and node storage performed during the search, can be empty
      Returns:
      result from the search
    • search

      default <P extends IGamePosition<P>> SearchAlgorithm.SearchResult<?,P> search(P root, Table table, MetricKeeper... metrics)
      Initiates the search of the provided game tree without time or spatial limits.
      Type Parameters:
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      table - table to use during search, can be non-empty
      metrics - an array of MetricKeeper objects to keep track of evaluations, expansions, and node storage performed during the search, can be empty
      Returns:
      result from the search
    • search

      default <P extends IGamePosition<P>> SearchAlgorithm.SearchResult<?,P> search(P root, Duration time_limit, SearchAlgorithm.Limits space_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree with a given time limit and spatial limit. Also creates a table to search with, with the maximum possible size according to the spatial limit and available memory.
      Specified by:
      search in interface SearchAlgorithm
      Type Parameters:
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      time_limit - maximum time spent in the algorithm
      space_limit - maximum node expansions, evaluations, and nodes saved in memory used by the algorithm
      metrics - an array of MetricKeeper objects to keep track of evaluations, expansions, and node storage performed during the search, can be empty
      Returns:
      result from the search