sierra.core.pipeline.stage5.pipeline_stage5

Stage 5 of the experimental pipeline: comparing deliverables.

class sierra.core.pipeline.stage5.pipeline_stage5.PipelineStage5(main_config: Dict[str, Any], cmdopts: Dict[str, Any])[source]

Compare controllers within or across scenarios.

This can be either:

  1. Compare a set of controllers within the same scenario using performance measures specified in YAML configuration.

  2. Compare a single controller across a set ofscenarios using performance measures specified in YAML configuration.

This stage is idempotent.

cmdopts

Dictionary of parsed cmdline parameters.

controllers

List of controllers to compare.

main_config

Dictionary of parsed main YAML configuration.

stage5_config

Dictionary of parsed stage5 YAML configuration.

output_roots

Dictionary containing output directories for intra- and inter-scenario graph generation.

Inheritance

Inheritance diagram of PipelineStage5
__dict__ = mappingproxy({'__module__': 'sierra.core.pipeline.stage5.pipeline_stage5', '__doc__': 'Compare controllers within or across scenarios.\n\n    This can be either:\n\n    #. Compare a set of controllers within the same scenario using performance\n       measures specified in YAML configuration.\n\n    #. Compare a single controller across a set ofscenarios using performance\n       measures specified in YAML configuration.\n\n    This stage is idempotent.\n\n    Attributes:\n\n        cmdopts: Dictionary of parsed cmdline parameters.\n\n        controllers: List of controllers to compare.\n\n        main_config: Dictionary of parsed main YAML configuration.\n\n        stage5_config: Dictionary of parsed stage5 YAML configuration.\n\n        output_roots: Dictionary containing output directories for intra- and\n                      inter-scenario graph generation.\n\n    ', '__init__': <function PipelineStage5.__init__>, 'run': <function PipelineStage5.run>, '_run_cc': <function PipelineStage5._run_cc>, '_run_sc': <function PipelineStage5._run_sc>, '_verify_comparability': <function PipelineStage5._verify_comparability>, '__dict__': <attribute '__dict__' of 'PipelineStage5' objects>, '__weakref__': <attribute '__weakref__' of 'PipelineStage5' objects>, '__annotations__': {}})
__doc__ = 'Compare controllers within or across scenarios.\n\n    This can be either:\n\n    #. Compare a set of controllers within the same scenario using performance\n       measures specified in YAML configuration.\n\n    #. Compare a single controller across a set ofscenarios using performance\n       measures specified in YAML configuration.\n\n    This stage is idempotent.\n\n    Attributes:\n\n        cmdopts: Dictionary of parsed cmdline parameters.\n\n        controllers: List of controllers to compare.\n\n        main_config: Dictionary of parsed main YAML configuration.\n\n        stage5_config: Dictionary of parsed stage5 YAML configuration.\n\n        output_roots: Dictionary containing output directories for intra- and\n                      inter-scenario graph generation.\n\n    '
__init__(main_config: Dict[str, Any], cmdopts: Dict[str, Any]) None[source]
__module__ = 'sierra.core.pipeline.stage5.pipeline_stage5'
__weakref__

list of weak references to the object (if defined)

_run_cc(cli_args)[source]
_run_sc(cli_args)[source]
_verify_comparability(controllers, cli_args)[source]

Check if the specified controllers can be compared.

Comparable controllers have all been run on the same set of batch experiments. If they have not, it is not necessarily an error, but probably should be looked at, so it is only a warning, not fatal.

run(cli_args) None[source]

Run stage 5 of the experimental pipeline.

If --controller-comparison was passed:

  1. UnivarIntraScenarioComparator

    or BivarIntraScenarioComparator as appropriate, depending on which type of BatchCriteria was selected on the cmdline.

If --scenario-comparison was passed:

  1. UnivarInterScenarioComparator

    (only valid for univariate batch criteria currently).