Class OperatorStrategy

All Implemented Interfaces:
Extendable<OperatorStrategy>

public class OperatorStrategy extends AbstractExtendable<OperatorStrategy>
Describes a strategy that an operator would apply to solve violations occurring after a contingency.

A single stage strategy is defined for a contingency, and defines a Condition under which some Actions will be taken. A multiple stage strategy is defined after a contingency too through a list of conditional actions (also called stage). For each stage, if the Condition is verified the list of actions is applied.

For single stage operator strategy, the security analysis implementation will check the condition after the simulation of the contingency, and if true, it will simulate the actions. For a multiple stage operator strategy, the security analysis implementation will check the condition of the first stage. If verified, the list of actions of this stage is applied. Then, on the network with maybe partial actions applied, the condition of the second stage is checked and so on until the last stage of the strategy.

Author:
Etienne Lesot <[email protected]>
  • Constructor Details

    • OperatorStrategy

      public OperatorStrategy(String id, ContingencyContext contingencyContext, Condition condition, List<String> actionIds)
      Single stage operator strategy
      Parameters:
      id - The id of the operator strategy
      contingencyContext - The contingency context in which to apply the operator strategy
      condition - The condition to trigger the operator strategy
      actionIds - The list of action ids to apply within this strategy
    • OperatorStrategy

      public OperatorStrategy(String id, ContingencyContext contingencyContext, List<ConditionalActions> stages)
      Multiple stage operator strategy
      Parameters:
      id - The id of the operator strategy
      contingencyContext - The contingency context in which to apply the operator strategy
      stages - The list of stages for this operator strategy
  • Method Details

    • getId

      public String getId()
      An ID which uniquely identifies this strategy, for a security analysis execution.
    • getContingencyContext

      public ContingencyContext getContingencyContext()
      The contingency which this strategy applies to.
    • getConditionalActions

      public List<ConditionalActions> getConditionalActions()