Interface SearchAlgorithm.SearchWithTree

All Superinterfaces:
SearchAlgorithm
All Known Implementing Classes:
BstarBasic, BstarBasicDB
Enclosing interface:
SearchAlgorithm

public static interface SearchAlgorithm.SearchWithTree extends SearchAlgorithm
This represents a search algorithm which can search a given tree and modify it during search. Methods under this category can perform a search given an arbitrary tree, without making their own tree on the side internally.
  • Method Details

    • searchWithTree

      <N extends GameTreeNode<N,P>, P extends IGamePosition<P>> SearchAlgorithm.SearchResult<N,P> searchWithTree(N 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.
      Type Parameters:
      N - The type of GameTreeNode which is used for executing the search
      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
    • searchWithTree

      default <N extends GameTreeNode<N,P>, P extends IGamePosition<P>> SearchAlgorithm.SearchResult<N,P> searchWithTree(N root, SearchAlgorithm.Limits space_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree without time limits.
      Type Parameters:
      N - The type of GameTreeNode which is used for executing the search
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      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
    • searchWithTree

      default <N extends GameTreeNode<N,P>, P extends IGamePosition<P>> SearchAlgorithm.SearchResult<N,P> searchWithTree(N root, Duration time_limit, MetricKeeper... metrics)
      Initiates the search of the provided game tree without spatial limits.
      Type Parameters:
      N - The type of GameTreeNode which is used for executing the search
      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
      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
    • searchWithTree

      default <N extends GameTreeNode<N,P>, P extends IGamePosition<P>> SearchAlgorithm.SearchResult<N,P> searchWithTree(N root, MetricKeeper... metrics)
      Initiates the search of the provided game tree without time or spatial limits.
      Type Parameters:
      N - The type of GameTreeNode which is used for executing the search
      P - The type of IGamePosition which represents the type of game to be searched
      Parameters:
      root - root of the tree to be searched
      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