Skip to content

KB_OAT_Scanned_Parameters.txt ​

Purpose ​

Raw information from the control panel must pass through the operator's perception filters before it can support decision-making. ADS-IDAC models two perception filters:

  1. A quantitative filter — limits and focuses the operator's ability to scan control panel information.
  2. A biasing filter — can distort parameter readings (described in KB_OAT_Bias_Factors.txt).

The quantitative filter is managed through the operator's control panel scan queue. The scan queue contains the listing of parameters, component states, and alarms the operator monitors on a frequent basis. The number of items in the queue is limited by individual operator capability, available attention, and perceived plant state.

Two factors determine which items are in the scan queue:

  1. The maximum size limit of the queue (N_ScanQueue).
  2. The priority level of each item.

Items are assigned an initial priority when added to the queue. Priority decays over time if the item is not relevant to the perceived plant state. Items whose priority falls below priority_limit are removed from the queue.

Scan Queue Size Equation ​

The maximum number of items in the scan queue is determined by Equation 4:

N_ScanQueue = N_Baseline × (1 − γ1 × PIF_InfoLoad) × (1 − γ2 × PIF_SystemCriticality)

Where:

  • N_Baseline — maximum scan queue size (set by scan_queue_limit in ActionTaker.txt)
  • γ1 (information_load_sensitivity) — sensitivity to the Information Load PIF
  • γ2 (system_criticality_sensitivity) — sensitivity to the System Criticality PIF

Sensitivity Factor Constraints

Both γ1 (Info_Load_Sensitivity) and γ2 (System_Criticality_Sensitivity) must be less than 0.1. Because the maximum PIF value for either factor is 10.0, a sensitivity of 0.1 or greater can drive the scan queue size to zero or negative (γ × PIF ≥ 1), which is not valid. The BV4 reference case uses 0.05.

When the scan queue exceeds N_ScanQueue, items are removed based on relevance and priority. Items associated with a currently diagnosed functional imbalance (as defined in KB_OAT_System_Decomposition.txt) are considered relevant and retain their priority. Items not associated with any active imbalance diagnosis have their priority decremented by one at each priority_decay_time interval.

Input File Format ​

Each line is a label followed by its value(s); list entries are name priority pairs, one per line. The labels are read into placeholders and not validated — section order and counts drive the parser. The parser reads four scan lists, in this order:

text
Scan_Period_(seconds)                 scan_period
Info_Load_Sensitivity                 information_load_sensitivity
System_Criticality_Sensitivty         system_criticality_sensitivity
Priority_Decay_Time_(seconds)         priority_decay_time
Priority_Limit                        priority_limit
Relevance_Limit                       relevance_limit

Number_of_Scanned_Parameters          number_of_parameters
parameter_name_1                      parameter_priority_1
.
parameter_name_n                      parameter_priority_n

Number_of_Scanned_Components          number_of_components
component_name_1                      component_priority_1
.
component_name_n                      component_priority_n

Number_of_Scanned_Support_Systems     number_of_support_systems
support_system_name_1                 support_system_priority_1
.
support_system_name_n                 support_system_priority_n

Number_of_Scanned_Alarms              number_of_alarms
alarm_name_1                          alarm_priority_1
.
alarm_name_n                          alarm_priority_n

Shipped BV4 files omit the support-system section

The reference files KB_OAT_Scanned_Parameters.txt / KB_ODM_Scanned_Parameters.txt in tests/BV4 use the legacy three-section layout (parameters, components, alarms). Because parsing is positional, the parser consumes the file's Number_of_Scanned_Alarms 0 header as the support-system section (count 0), and the final alarm-section read fails harmlessly at end-of-file (0 alarms). The shipped files therefore work only because the alarm count is 0: in a three-section file with a nonzero alarm count, every alarm entry would be silently loaded into the support-system scan list instead of the alarm scan list. For new plant models — and for any file that scans alarms — use the full four-section layout above (an empty section is Number_of_Scanned_Support_Systems 0).

Global Parameters ​

ParameterTypeDescriptionExample Value
scan_periodDoubleTime delay (seconds) between control panel monitoring scans. Lower values improve plant state assessment accuracy but increase information load. Range: > 0.0.30.0
information_load_sensitivity (γ1)DoubleSensitivity of the scan queue size limit to the Information Load PIF. Range: 0.0 < x < 0.01.0.005
system_criticality_sensitivity (γ2)DoubleSensitivity of the scan queue size limit to the System Criticality PIF. Range: 0.0 < x < 0.01.0.005
priority_decay_timeDoubleInterval (seconds) between successive reductions in the priority level of non-relevant scan queue items. Effectively controls residence time in the queue. Range: > 0.0.300.0
priority_limitIntegerLowest priority level that can be maintained in the scan queue. Items with a priority level exceeding this value are removed. Higher integer = lower priority. Range: > 0.10
relevance_limitDoubleThreshold for determining relevance. If the maximum imbalance diagnostic score for the functions supported by a scan item is greater than this value, the item is considered relevant. Range: 0.0–1.0.0.3

Scanned Parameters List ​

ParameterTypeDescriptionExample Value
number_of_parametersIntegerNumber of parameters placed in the scan queue at simulation start.6
parameter_nameStringMust match a control panel parameter in ControlPanel.txt. No spaces; use _.Core_Power
parameter_priorityIntegerInitial priority level. Lower value = higher priority. Range: ≥ 1.1

Initial Scan Queue

Because operators cannot passively gather parameter values (indicators must be actively read), all parameters that would normally be known to the operator at simulation start should be included in the initial scan queue list.

Scanned Components List ​

ParameterTypeDescriptionExample Value
number_of_componentsIntegerNumber of component states placed in the scan queue at simulation start.3
component_nameStringMust match a control panel component in ControlPanel.txt. No spaces; use _.Reactor_Trip
component_priorityIntegerInitial priority level. Lower value = higher priority. Range: ≥ 1.1

Scanned Support Systems List ​

ParameterTypeDescriptionExample Value
number_of_support_systemsIntegerNumber of support system states placed in the scan queue at simulation start. Use 0 when no support system displays are modeled.0
support_system_nameStringMust match a support system display in ControlPanel.txt (Control_Panel_Support_System_State section). No spaces; use _.Emergency_AC_Buses
support_system_priorityIntegerInitial priority level. Lower value = higher priority. Range: ≥ 1.2

Scanned Alarms List ​

ParameterTypeDescriptionExample Value
number_of_alarmsIntegerNumber of alarms placed in the scan queue at simulation start.2
alarm_nameStringMust match a control panel alarm in ControlPanel.txt. No spaces; use _.A_SG_A_Level_Lo_Dev
alarm_priorityIntegerInitial priority level. Lower value = higher priority. Range: ≥ 1.3

Alarms with Expected OFF State

Any alarms listed in KB_OAT_HardWiredDiagnosis.txt with an expected state of OFF (integer code 3023, VOFF) should be included in the initial alarm scan list. An alarm's "off" state cannot be perceived until either the alarm actuates and clears, or the operator actively interrogates the alarm state.

Sample Input ​

text
Scan_Period_(seconds)               30.0
Info_Load_Sensitivity               0.05
System_Criticality_Sensitivty      0.05
Priority_Decay_Time_(seconds)       300.0
Priority_Limit                      5
Relevance_Limit                     0.3

Number_of_Scanned_Parameters        6
SUR                                 3
Core_Power                          1
RATE_Core_Power                     2
Loop_A_Tave                         4
Loop_B_Tave                         4
Loop_C_Tave                         4

Number_of_Scanned_Components        3
Reactor_Trip                        1
Safety_Injection                    1
Turbine_Trip                        1

Number_of_Scanned_Support_Systems   0

Number_of_Scanned_Alarms            2
A_SG_A_Level_Lo_Dev                 3
A_SG_A_Level_Hi_Dev                 3

Sample Explanation ​

This configuration places eleven items on the initial scan queue (six parameters, three components, no support systems, two alarms). The operator updates perceived values every 30 seconds.

A sensitivity factor of 0.05 is applied to both the Information Load and System Criticality PIFs. Assuming a maximum scan queue size (scan_queue_limit) of 30, an Information Load PIF of 5.0, and a System Criticality PIF of 10.0:

N_ScanQueue = 30 × (1 − 0.05 × 5.0) × (1 − 0.05 × 10.0)
            = 30 × (1 − 0.25) × (1 − 0.5)
            = 30 × 0.75 × 0.5
            = 11.25

The effective queue limit collapses to approximately 11 items under these high-stress conditions.

Every 300 seconds, the priority level of scan queue items is decremented by one if their associated relevance factor is below the 0.3 relevance_limit.

ADS-IDAC Engine Documentation