search.search module¶
-
class
search.search.Search(settings)¶ Bases:
abc.ABCAbstract 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.
- gen_info (
-
hasTerminated()¶ Returns whether the search is finished or not.
-
popNextNode()¶ Returns the Node that is to be validated next. Can return
Noneif no more nodes exist.Returns: - The next Node to be validated or
Noneif no such - Node exists.
Return type: Node- The next Node to be validated or
-
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.