search.search_gradient_descent module

class search.search_gradient_descent.GradientDescent(settings)

Bases: circa.stages.search.search.Search

Search subclass implementing a gradient descent search where the gradients are computed as the area change of a Node with respect to its parent Node.

class SEL_STRATEGY

Bases: object

Identifiers for selection strategies.

BEST = 'best'
RND = 'random'
DEFAULT = 'best'
SUPPORTED = ['best', 'random']
class CFG

Bases: object

Parser settings for the configuration file options.

EFFORT = {'mandatory': True, 'parameter': 'Effort'}
SEL_STRATEGY = {'mandatory': False, 'parameter': 'SelectStrategy'}
__init__(settings)

Extends __init__ of Search.

Raises:RuntimeError – If a configuration option is missing or its value cannot be parsed or is not supported.
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()

Overrides evaluateNodes of abstract super class Search.

Raises:RuntimeError – If an invalid effort level is set.