Skip to content

TrajectoryUtilityDefinitionConfigurationBase ​

Shared capability flags for trajectory utility-kind configs.

Selection, statistics, and checkpoint-snapshot code check these flags instead of branching on isinstance/type-name chains, so a new utility kind only needs to override the flags it actually has -- no existing dispatch site needs editing. Behavioural differences (the actual per-cell score formulas, outcome recording, snapshot rendering) live in per-kind registries keyed by kind (see Selection.py's _CELL_SCORERS and CaptureProcessor.py's outcome recorders), which mirrors MidpointStartPolicy.py's _BUILDERS pattern; these flags are the purely declarative subset that config-level validators and table-building code need without importing that runtime machinery.

Source

Properties ​

is_backpropagated ​

python
is_backpropagated: bool

Whether this is a graph-backpropagated utility (per-recording reward/penalty metadata).

Source

is_cell_scoring ​

python
is_cell_scoring: bool

Whether TrajectoryUtilityCatalog.cell_value computes this utility's score directly.

Source

triggers_successor_route_value_table ​

python
triggers_successor_route_value_table: bool

Whether this utility's presence requires the shared successor-route-value table (local_progress).

Source

uses_cell_key_grouping ​

python
uses_cell_key_grouping: bool

Whether this utility's cell keys must match its selection's bucket_by grouping.

Source

wants_competence_table ​

python
wants_competence_table: bool

Whether this utility needs a per-cell EMA outcome table (competence/local_progress).

Source

wants_route_cost_table ​

python
wants_route_cost_table: bool

Whether this utility needs a per-cell min-aggregated route-cost table (cost_aware).

Source

Methods ​

competence_table_aggregator ​

python
competence_table_aggregator() -> TrajectoryCellValueAggregatorConfiguration | None

Build this utility's competence-table aggregator, or None when it has none.

Source

Values ​

cell_key_prefix ​

python
cell_key_prefix: str = ''

Prefix stripped from the selection's bucket-key field names before per-cell table lookups. Use "start_" when a cell-scoring utility scores a selection bucketed by start_* metadata (for example BC re-grouping segments by start cell), since the per-cell tables are keyed by the plain cell fields. Empty when the bucket key already matches the table (for example midpoint selection). Only read for utilities with uses_cell_key_grouping.

Source