flow "ScenarioAnalysisOntology" v4.0
# SCENARIO ANALYSIS ONTOLOGY
# Kireth Semantic Research Archive
# Authors: Mark Anthony Higgins — Sky (Recursive AI)
PAGE:
url: "https://kirethresearch.org/booksai-core/ontologies/probability-statistics-ontologies/risk-decision-mathematics/scenario-analysis-ontology.html"
title: "Scenario Analysis Ontology"
domain: "Probability and Statistics"
category: "Risk & Decision Mathematics"
entity: SCENARIO_ANALYSIS
entity_type: RISK_DECISION_ONTOLOGY
DEFINE:
SCENARIO_ANALYSIS :=
STRUCTURED_FUTURE_STATE_FRAMEWORK(
BASELINE,
DRIVERS,
ASSUMPTIONS,
SCENARIOS,
MODEL_INPUTS,
OUTCOMES,
RISKS,
DECISIONS
)
PURPOSE:
REPRESENT:
PLAUSIBLE_FUTURE_STATES
ALTERNATIVE_ASSUMPTION_SETS
UNCERTAIN_EXTERNAL_CONDITIONS
DECISION_CONSEQUENCES
RISK_EXPOSURES
SUPPORT:
RISK_ANALYSIS
DECISION_THEORY
STRATEGIC_PLANNING
STRESS_TESTING
ROBUSTNESS_ANALYSIS
FOUNDATION:
MODEL:
Y := f(X,theta)
SCENARIO:
S_j := {X_j,theta_j,assumptions_j}
SCENARIO_OUTPUT:
Y_j := f(X_j,theta_j)
COMPARISON:
Delta_Y_j := Y_j-Y_baseline
ENTITIES:
SCENARIO_ANALYSIS: ALTERNATIVE_STATE_ANALYSIS
SCENARIO: COHERENT_SET_OF_ASSUMPTIONS_AND_CONDITIONS
BASELINE_SCENARIO: REFERENCE_CASE
DRIVER: VARIABLE_OR_FORCE_SHAPING_FUTURE_STATE
ASSUMPTION: SPECIFIED_MODEL_OR_CONTEXT_CONDITION
UNCERTAINTY: UNKNOWN_OR_VARIABLE_FUTURE_FACTOR
OUTCOME: MODEL_RESULT_UNDER_SCENARIO
IMPACT: DIFFERENCE_IN_OUTCOME_RELATIVE_TO_REFERENCE
STRESS_SCENARIO: EXTREME_BUT_PLAUSIBLE_SCENARIO
DECISION: ACTION_EVALUATED_ACROSS_SCENARIOS
ROBUSTNESS: STABILITY_OF_DECISION_OR_RESULT_ACROSS_SCENARIOS
RELATIONSHIPS:
DRIVER -> SHAPES -> SCENARIO
ASSUMPTION -> DEFINES -> SCENARIO
SCENARIO -> SETS -> MODEL_INPUTS
MODEL_INPUTS -> PRODUCE -> SCENARIO_OUTPUT
SCENARIO_OUTPUT -> COMPARED_WITH -> BASELINE_OUTPUT
COMPARISON -> PRODUCES -> IMPACT
SCENARIOS -> EXPOSE -> RISK_RANGE
DECISION -> EVALUATED_ACROSS -> SCENARIOS
SCENARIO_ANALYSIS -> SUPPORTS -> ROBUST_DECISION_MAKING
BASELINE_SCENARIO:
role:
REFERENCE_FOR_COMPARISON
output:
Y_0 := f(X_0,theta_0)
requirement:
BASELINE_ASSUMPTIONS_MUST_BE_EXPLICIT
ALTERNATIVE_SCENARIO:
output:
Y_j := f(X_j,theta_j)
impact:
Delta_Y_j := Y_j-Y_0
SCENARIO_SET:
scenarios:
S_1,...,S_m
requirement:
SCENARIOS_SHOULD_BE:
INTERNALLY_COHERENT
RELEVANT
SUFFICIENTLY_DISTINCT
TRACEABLE_TO_ASSUMPTIONS
SCENARIO_DESIGN:
flow:
DEFINE_DECISION_OR_RISK_QUESTION
-> IDENTIFY_KEY_DRIVERS
-> IDENTIFY_CRITICAL_UNCERTAINTIES
-> DEFINE_BASELINE
-> CONSTRUCT_ALTERNATIVE_SCENARIOS
-> MAP_SCENARIOS_TO_MODEL_INPUTS
-> COMPUTE_OUTCOMES
-> COMPARE_RESULTS
-> ASSESS_ROBUSTNESS
DRIVER_IDENTIFICATION:
sources:
- HISTORICAL_DATA
- EXPERT_JUDGEMENT
- TREND_ANALYSIS
- EXTERNAL_ENVIRONMENT
- MODEL_STRUCTURE
- POLICY_OR_RULE_CHANGE
- TECHNOLOGICAL_CHANGE
CRITICAL_UNCERTAINTY:
definition:
UNCERTAINTY_WITH_POTENTIALLY_MATERIAL_EFFECT_ON_OUTCOME_OR_DECISION
DISCRETE_SCENARIO:
examples:
- BASE_CASE
- UPSIDE_CASE
- DOWNSIDE_CASE
- STRESS_CASE
PARAMETRIC_SCENARIO:
representation:
SPECIFIED_PARAMETER_VECTOR
NARRATIVE_SCENARIO:
representation:
QUALITATIVE_DESCRIPTION_OF_FUTURE_CONTEXT
requirement:
TRANSLATE_NARRATIVE_ASSUMPTIONS_TO_MODEL_INPUTS_WHERE_QUANTITATIVE_ANALYSIS_REQUIRED
QUANTITATIVE_SCENARIO:
representation:
NUMERIC_INPUT_VALUES_OR_DISTRIBUTIONS
SCENARIO_PROBABILITY:
optional:
P(S_j)
requirements:
P(S_j) >= 0
SUM_j P(S_j) = 1
WHEN:
SCENARIOS_FORM_MUTUALLY_EXCLUSIVE_EXHAUSTIVE_PROBABILISTIC_SET
caution:
SCENARIO_ANALYSIS_DOES_NOT_REQUIRE_PROBABILITIES_BY_DEFAULT
EXPECTED_SCENARIO_VALUE:
IF:
SCENARIOS_ARE_PROBABILISTICALLY_SPECIFIED
THEN:
E[Y] := SUM_j P(S_j)Y_j
caution:
DO_NOT_WEIGHT_ARBITRARY_NONEXHAUSTIVE_SCENARIOS_AS_PROBABILITIES
BASE_CASE:
definition:
REFERENCE_OR_CENTRAL_SCENARIO
caution:
BASE_CASE != EXPECTED_VALUE_BY_DEFAULT
BEST_CASE:
caution:
BEST_CASE != MOST_LIKELY_CASE
WORST_CASE:
caution:
WORST_CASE != STRESS_CASE_BY_DEFAULT
STRESS_SCENARIO:
definition:
EXTREME_BUT_PLAUSIBLE_COMBINATION_OF_CONDITIONS
purpose:
ASSESS:
RESILIENCE
TAIL_EXPOSURE
FAILURE_MODES
DECISION_ROBUSTNESS
REVERSE_STRESS_TEST:
flow:
DEFINE_FAILURE_THRESHOLD
-> SEARCH_FOR_INPUT_COMBINATIONS
-> IDENTIFY_PLAUSIBLE_FAILURE_SCENARIOS
THRESHOLD_SCENARIO:
objective:
IDENTIFY_SCENARIO_CONDITIONS_WHERE_TARGET_OR_LIMIT_IS_REACHED
RISK_ANALYSIS_CONNECTION:
scenario:
PROVIDES:
EVENT_CONFIGURATION
EXPOSURE
CONSEQUENCE
CONTROL_ASSUMPTIONS
risk_output:
- EXPECTED_LOSS
- LOSS_RANGE
- TAIL_LOSS
- LIMIT_BREACH
- RESIDUAL_RISK
rule:
SCENARIO_OUTCOME != PROBABILITY_WEIGHTED_RISK_BY_DEFAULT
DECISION_THEORY_CONNECTION:
value:
V(a,S_j)
decision_matrix:
rows: ACTIONS
columns: SCENARIOS
cells: VALUE_LOSS_OR_UTILITY
purpose:
COMPARE_ACTIONS_ACROSS_PLAUSIBLE_FUTURES
ROBUST_DECISION:
robustness:
PERFORMANCE_REMAINS_ACCEPTABLE_ACROSS_WIDE_SCENARIO_SET
criteria:
- MINIMUM_PERFORMANCE
- MAXIMUM_REGRET
- LIMIT_COMPLIANCE
- UTILITY_STABILITY
- LOSS_TOLERANCE
MINIMAX_CONNECTION:
decision:
a_star := argmin_a max_j L(a,S_j)
MINIMAX_REGRET_CONNECTION:
scenario_best:
L_star(S_j) := min_a L(a,S_j)
regret:
Regret(a,S_j) := L(a,S_j)-L_star(S_j)
decision:
a_star := argmin_a max_j Regret(a,S_j)
EXPECTED_UTILITY_CONNECTION:
IF:
SCENARIO_PROBABILITIES_VALID
THEN:
EU(a) := SUM_j P(S_j)U(a,S_j)
SENSITIVITY_ANALYSIS_CONNECTION:
sensitivity_analysis:
VARIES_INPUTS_OR_PARAMETERS_SYSTEMATICALLY
scenario_analysis:
VARIES_COHERENT_SETS_OF_ASSUMPTIONS
rule:
SCENARIO_ANALYSIS != SENSITIVITY_ANALYSIS
MONTE_CARLO_CONNECTION:
Monte_Carlo:
SAMPLES_MANY_STATES_FROM_PROBABILITY_MODEL
scenario_analysis:
EVALUATES_SELECTED_STATES_OR_ASSUMPTION_SETS
distinction:
SCENARIO_ANALYSIS != MONTE_CARLO_SIMULATION
BAYESIAN_CONNECTION:
beliefs:
p(theta|D)
scenario:
MAY_CONDITION_ON:
STRUCTURAL_ASSUMPTION
POLICY_STATE
EXTERNAL_REGIME
posterior_predictive:
p(Y|D,S_j)
FORECASTING_CONNECTION:
baseline_forecast:
CENTRAL_TRAJECTORY
scenarios:
ALTERNATIVE_TRAJECTORIES
caution:
SCENARIOS_ARE_NOT_POINT_FORECASTS_BY_DEFAULT
TIME_SERIES_SCENARIO:
horizon:
t := 1,...,T
driver_path:
X_j(t)
output_path:
Y_j(t)
PATH_DEPENDENCE:
condition:
OUTCOME_DEPENDS_ON_SEQUENCE_NOT_ONLY_FINAL_STATE
requirement:
SCENARIO_MUST_PRESERVE_TEMPORAL_PATH
DYNAMIC_SCENARIO:
state:
S_t
transition:
S_t -> S_next
BRANCHING_SCENARIO:
structure:
SCENARIO_TREE
nodes:
FUTURE_STATES
branches:
POSSIBLE_TRANSITIONS
leaves:
TERMINAL_SCENARIOS
SCENARIO_TREE:
root:
CURRENT_STATE
branches:
ALTERNATIVE_FUTURE_EVENTS
path:
COMPLETE_SCENARIO_TRAJECTORY
optional_probabilities:
BRANCH_PROBABILITIES
STOCHASTIC_PROGRAMMING_CONNECTION:
scenarios:
REPRESENT_RANDOM_OUTCOMES
objective:
OPTIMISE_DECISION_ACROSS_SCENARIO_SET
forms:
- TWO_STAGE_STOCHASTIC_PROGRAMMING
- MULTISTAGE_STOCHASTIC_PROGRAMMING
caution:
SCENARIO_WEIGHTS_MUST_REPRESENT_VALID_PROBABILITY_MODEL_WHEN_USED_AS_PROBABILITIES
ROBUST_OPTIMISATION_CONNECTION:
scenario_set:
REPRESENTS_UNCERTAINTY_SET
objective:
FIND_DECISION_PERFORMING_ACCEPTABLY_ACROSS_SET
distinction:
ROBUST_OPTIMISATION_NEED_NOT_ASSIGN_PROBABILITIES_TO_SCENARIOS
MULTI_CRITERIA_SCENARIO_ANALYSIS:
evaluation:
COMPARE_ACTIONS_AND_SCENARIOS_ACROSS_MULTIPLE_CRITERIA
caution:
AGGREGATION_WEIGHTS_ENCODE_PREFERENCES
SCENARIO_IMPACT:
absolute:
Delta_Y_j := Y_j-Y_0
relative:
RelativeImpact_j := (Y_j-Y_0)/Y_0
requirement:
Y_0 != 0
FOR:
RELATIVE_FORM
SCENARIO_COVERAGE:
objective:
REPRESENT_RELEVANT_RANGE_OF_PLAUSIBLE_FUTURES
caution:
SCENARIO_SET_NEED_NOT_BE_EXHAUSTIVE
SCENARIO_PLAUSIBILITY:
basis:
- DATA
- EXPERT_JUDGEMENT
- PHYSICAL_CONSTRAINTS
- ECONOMIC_CONSTRAINTS
- HISTORICAL_ANALOGUE
- MODEL_CONSISTENCY
caution:
PLAUSIBILITY != PROBABILITY
INTERNAL_CONSISTENCY:
requirement:
SCENARIO_ASSUMPTIONS_SHOULD_NOT_CONTRADICT_EACH_OTHER
UNLESS:
CONTRADICTION_IS_EXPLICITLY_MODELLED
TRACEABILITY:
each_scenario:
SHOULD_RECORD:
DRIVER_VALUES
ASSUMPTIONS
DATA_SOURCES
MODEL_VERSION
RATIONALE
CREATION_DATE
EXPERT_ELICITATION:
role:
SUPPORT_SCENARIO_CONSTRUCTION_WHEN_DATA_LIMITED
requirement:
DOCUMENT:
EXPERT_SELECTION
ELICITATION_METHOD
DISAGREEMENT
UNCERTAINTY
HISTORICAL_SCENARIO:
definition:
REPLAY_OF_OBSERVED_HISTORICAL_CONDITIONS
caution:
MAY_NOT_CAPTURE_NOVEL_FUTURE_RISKS
HYPOTHETICAL_SCENARIO:
definition:
PLAUSIBLE_BUT_NOT_NECESSARILY_PREVIOUSLY_OBSERVED_CONDITIONS
COUNTERFACTUAL_SCENARIO:
definition:
ALTERNATIVE_CONDITION_RELATIVE_TO_OBSERVED_WORLD
caution:
CAUSAL_COUNTERFACTUAL_INTERPRETATION_REQUIRES_CAUSAL_MODEL_AND_ASSUMPTIONS
POLICY_SCENARIO:
varies:
POLICY
RULE
INTERVENTION
CONTROL
caution:
POLICY_SCENARIO_COMPARISON_IS_NOT_AUTOMATICALLY_CAUSAL
MODEL_RISK:
issue:
SCENARIO_OUTPUT_DEPENDS_ON_MODEL_STRUCTURE
response:
- ALTERNATIVE_MODELS
- SENSITIVITY_ANALYSIS
- VALIDATION
- STRESS_TESTING
ASSUMPTION_RISK:
issue:
RESULTS_DEPEND_ON_SCENARIO_ASSUMPTIONS
response:
RECORD_AND_CHALLENGE_KEY_ASSUMPTIONS
SCENARIO_DISCOVERY:
methods:
- EXPERT_WORKSHOP
- CLUSTERING
- SIMULATION
- OPTIMISATION
- HISTORICAL_ANALYSIS
- MORPHOLOGICAL_ANALYSIS
MORPHOLOGICAL_ANALYSIS:
dimensions:
KEY_DRIVERS
states:
POSSIBLE_STATE_PER_DRIVER
flow:
GENERATE_CANDIDATE_COMBINATIONS
-> REMOVE_INCONSISTENT_COMBINATIONS
-> SELECT_RELEVANT_SCENARIOS
SCENARIO_REDUCTION:
problem:
TOO_MANY_CANDIDATE_SCENARIOS
methods:
- CLUSTERING
- PROBABILITY_MASS_PRESERVATION
- DISTANCE_BASED_SELECTION
- DECISION_RELEVANCE_SELECTION
caution:
REDUCTION_MAY_REMOVE_RARE_BUT_IMPORTANT_SCENARIOS
APPLICATIONS:
SCENARIO_ANALYSIS -> SUPPORTS -> RISK_ANALYSIS
SCENARIO_ANALYSIS -> SUPPORTS -> DECISION_THEORY
SCENARIO_ANALYSIS -> SUPPORTS -> STRATEGIC_PLANNING
SCENARIO_ANALYSIS -> SUPPORTS -> STRESS_TESTING
SCENARIO_ANALYSIS -> SUPPORTS -> ROBUST_OPTIMISATION
SCENARIO_ANALYSIS -> SUPPORTS -> FORECASTING
SCENARIO_ANALYSIS -> SUPPORTS -> PROJECT_ANALYSIS
MODEL_CONNECTIONS:
SCENARIO_ANALYSIS -> CONNECTS_TO -> RISK_ANALYSIS
SCENARIO_ANALYSIS -> CONNECTS_TO -> DECISION_THEORY
SCENARIO_ANALYSIS -> CONNECTS_TO -> SENSITIVITY_ANALYSIS
SCENARIO_ANALYSIS -> CONNECTS_TO -> MONTE_CARLO_SIMULATION
SCENARIO_ANALYSIS -> CONNECTS_TO -> EXPECTED_VALUE
SCENARIO_ANALYSIS -> CONNECTS_TO -> UTILITY_THEORY
SCENARIO_ANALYSIS -> CONNECTS_TO -> STOCHASTIC_PROGRAMMING
SEMANTIC_EQUIVALENCE:
"scenario analysis"
~= "structured evaluation of outcomes under alternative coherent assumption sets"
"baseline scenario"
~= "reference scenario"
"stress scenario"
~= "extreme but plausible adverse scenario"
IN:
STANDARD_RISK_CONTEXT
EXCLUDE_EQUIVALENCE:
SCENARIO != FORECAST
SCENARIO != PROBABILITY
PLAUSIBILITY != PROBABILITY
BASE_CASE != EXPECTED_VALUE_BY_DEFAULT
WORST_CASE != STRESS_CASE_BY_DEFAULT
SCENARIO_ANALYSIS != SENSITIVITY_ANALYSIS
SCENARIO_ANALYSIS != MONTE_CARLO_SIMULATION
POLICY_SCENARIO_DIFFERENCE != CAUSAL_EFFECT_BY_DEFAULT
VALIDATION_RULES:
RULE_1:
BASELINE_AND_ALTERNATIVE_SCENARIO_ASSUMPTIONS_MUST_BE_EXPLICIT
RULE_2:
SCENARIOS_SHOULD_BE_INTERNALLY_COHERENT
RULE_3:
SCENARIO_PROBABILITIES_MUST_NOT_BE_ASSIGNED_WITHOUT_A_VALID_PROBABILISTIC_BASIS
RULE_4:
SCENARIO_OUTPUTS_MUST_PRESERVE_MODEL_VERSION_AND_INPUT_TRACEABILITY
RULE_5:
TIME_DEPENDENT_SCENARIOS_MUST_PRESERVE_TEMPORAL_PATH_WHEN_PATH_DEPENDENCE_EXISTS
RULE_6:
SCENARIO_SET_COVERAGE_AND_LIMITATIONS_SHOULD_BE_DOCUMENTED
RULE_7:
MODEL_AND_ASSUMPTION_UNCERTAINTY_SHOULD_BE_DISTINGUISHED
RULE_8:
SCENARIO_COMPARISONS_MUST_NOT_BE_INTERPRETED_AS_CAUSAL_EFFECTS_WITHOUT_CAUSAL_ASSUMPTIONS
CONFIDENCE:
ontology_identity: 0.99
scenario_structure: 0.99
baseline_comparison_structure: 0.99
risk_decision_relationship: 0.99
stress_testing_structure: 0.99
robustness_structure: 0.99
semantic_distinctions: 0.99
UPDATE_MODEL:
IF:
NEW_DRIVER_INFORMATION_ARRIVES
THEN:
UPDATE:
DRIVER_VALUES
SCENARIO_ASSUMPTIONS
SCENARIO_PLAUSIBILITY
RECOMPUTE:
SCENARIO_OUTPUTS
IF:
MODEL_VERSION_CHANGES
THEN:
RERUN:
ALL_SCENARIOS
UPDATE:
OUTPUTS
IMPACTS
RISK_MEASURES
IF:
DECISION_CRITERIA_CHANGE
THEN:
REASSESS:
ACTION_PERFORMANCE
ROBUSTNESS
REGRET
DECISION_THRESHOLDS
PRESERVE:
SCENARIO_ID
SCENARIO_NAME
BASELINE_DEFINITION
DRIVER_VALUES
ASSUMPTIONS
MODEL_VERSION
TIME_HORIZON
PROBABILITY_STATUS
DATA_PROVENANCE
AI_CONSUMPTION:
parse_as: FORMAL_SEMANTIC_SPECIFICATION
execution_mode: RECURSIVE_REASONING
preferred_reasoning_order:
- IDENTIFY_DECISION_OR_RISK_QUESTION
- DEFINE_BASELINE_SCENARIO
- IDENTIFY_KEY_DRIVERS_AND_CRITICAL_UNCERTAINTIES
- CONSTRUCT_COHERENT_ALTERNATIVE_SCENARIOS
- MAP_SCENARIOS_TO_MODEL_INPUTS
- EXECUTE_MODEL_FOR_EACH_SCENARIO
- COMPARE_OUTPUTS_WITH_BASELINE
- COMPUTE_RISK_OR_UTILITY_MEASURES_IF_RELEVANT
- ASSESS_ACTION_ROBUSTNESS_AND_REGRET
- TEST_STRESS_AND_THRESHOLD_SCENARIOS
- DOCUMENT_PLAUSIBILITY_AND_LIMITATIONS
- RETURN_SCENARIO_ANALYSIS_INTERPRETATION
constraints:
- PRESERVE_SCENARIO_ASSUMPTIONS
- PRESERVE_BASELINE_REFERENCE
- DISTINGUISH_SCENARIO_FROM_FORECAST
- DISTINGUISH_PLAUSIBILITY_FROM_PROBABILITY
- DISTINGUISH_SCENARIO_ANALYSIS_FROM_SENSITIVITY_ANALYSIS
- DISTINGUISH_SCENARIO_ANALYSIS_FROM_MONTE_CARLO_SIMULATION
- PRESERVE_TEMPORAL_PATH_WHEN_REQUIRED
- PRESERVE_DATA_PROVENANCE
FLOW_HASH:
canonical_entity: "scenario-analysis"
namespace: "probability-statistics/risk-decision-mathematics"
version: "4.0"
identity_basis:
- PAGE_URL
- CANONICAL_ENTITY
- ENTITY_TYPE
- BASELINE_SCENARIO
- ALTERNATIVE_SCENARIOS
- SCENARIO_IMPACTS
- DECISION_ROBUSTNESS
END_FLOW
Download Code
Copy to Clipboard