search.search module

class search.search.Search(settings)

Bases: abc.ABC

Abstract Base Class for Search stage. The Search stage defines which method will be used to traverse the search space tree and when the search has finished.

Inheriting classes must implement methods:
__init__ setup hasTerminated popNextNode expandSearchSpace evaluateNodes
Parameters:settings (dict) – A dictionary using options from the config as keys and strings of their values as values.
setup(gen_info, root_node)

Sets up the Search instance using a GeneralInformation instance. Provides a default implementation.

Parameters:
  • gen_info (GeneralInformation) – The framework’s GeneralInformation instance.
  • root_node (Node) – A Node instance which is the search space tree’s root.
hasTerminated()

Returns whether the search is finished or not.

popNextNode()

Returns the Node that is to be validated next. Can return None if no more nodes exist.

Returns:
The next Node to be validated or None if no such
Node exists.
Return type:Node
expandSearchSpace()

Expands the search space tree and returns a list of all new Nodes to be approximated.

Returns:
A list containing all Nodes that need to
be approximated.
Return type:list of Node
evaluateNodes()

Uses search-specific heuristics and circuit stats to evaluate nodes for popNextNode.