Skip to content

370. Introduction to Global Evaluators

Global evaluators are part of the Evaluation V-Suite Library. Events of interest trigger them and can identify critical or unsafe behavior or add context to a situation. These evaluators are enabled by default for the generative runs and evaluation pipeline across all scenarios.

Global Evaluators are organized in two categories:

  • Global Watchers focus on observable conditions by adding contextual intervals, helping with triaging and reducing the number of needed KPIs in the evaluation scenarios. Examples include the curvature of a road, the current speed limit, the type of road, or the weather.

  • Global Checkers focus on observable Ego behavior, primarily identifying situations that indicate unsafe or unintended driving behavior. Examples include ride comfort events, driving too close to objects, collisions, and lane departure situations.

Note

Checkers are language constructs used to declare watchers that monitor specific conditions and emit intervals. Each interval can be linked to an issue if a violation occurs. The Checker API provides methods to create, attach, and manage issues, as well as access interval data. For details, see Defining watchers and checkers.

Figure 1: Global Evaluators in Evaluation V-Suite

Global evaluators create intervals and additional data in the form of KPIs, coverage items, and contextual data in addition to the evaluation scenario matches. The combination of scenarios and global evaluators enables the user to identify relevant situations and analyze the verdict of such situations based on the additional context provided by the evaluators.

These intervals are created based on specified triggering conditions or by analyzing the current driving environment, regardless of whether real-world or simulation data is injected into the Foretellix toolchain. Depending on the type of event and evaluator, the intervals can vary in length from single-frame events to longer intervals.

370.1 Parameter Customization for Global Evaluators

Global evaluators incorporate user-configurable parameters to control key aspects of their behavior. Default values for these parameters are defined in the config file located at $FTX/tool/user_interface/domain_model/checks/ftlx_global_eval_config_top.osc. Users can override these default values to suit their specific requirements. Each global evaluator uses this configuration during setup, eliminating the need for code modifications.

To customize these parameters, the user should create a custom config file by extending the default ftlx_global_eval_config struct and setting the required values. Below is an excerpt of the default config file, located at $FTX/tool/user_interface/domain_model/checks/ftlx_global_eval_config_top.osc:

struct ftlx_global_eval_config:
    # General units
    const default_speed_unit: string = "kph"

    const ego_static_object_too_close_checker_config = static_object_too_close_checker_config = new
    # Default distance threshold to trigger the static_object_too_close checker
    set ego_static_object_too_close_checker_config.default_obj_too_close_distance_threshold = 0.5m

The customized file may look like this:

# New file for user configuration
extend ftlx_global_eval_config:
    set default_speed_unit = "mph"

    # Disable a specific checker
    set ego_kinematic_spec_checker_config.enabled = false

    # Adjust other parameters for enabled checkers
    set ego_static_object_too_close_checker_config.default_obj_too_close_distance_threshold = 1m

370.2 Global Checkers

Name Flow Actors Modifier Description
Crash generation, evaluation Physical objects physical_object.global_checkers Monitors all physical objects in the simulation and detects collisions. For details, see [Crash checker][crash].
Off-road generation, evaluation Vehicles vehicle.off_road_checker Detects when a vehicle drives off-road. For details, see [Off-road checker][vehicle-policy-off_road].
Ride Comfort Event generation, evaluation Ego sut_vehicle.ride_comfort_event Detects ride comfort events by analyzing the vehicle's acceleration and jerk. For details, see Ride Comfort Event.
Kinematic spec generation, evaluation Ego sut_vehicle.kinematic_behavior Validates Ego kinematic values against OEM specification limits. Warns when speed, acceleration, or jerk exceed acceptable operational thresholds. For details, see Kinematic spec checker.
Kinematic physical generation, evaluation Ego sut_vehicle.kinematic_behavior Validates Ego kinematic values against physical boundaries. Warns when speed, acceleration, or jerk reach physically impossible levels. For details, see Kinematic physical checker.
Static Object Too Close generation, evaluation Ego sut_vehicle.static_object_too_close Detects when a vehicle passes by a static object within a specified distance threshold. For details, see Static Object Too Close.
System Signal generation, evaluation Ego sut_vehicle.system_signal Monitors the state of the vehicle's signals and raises issues if needed. For details, see System Signal.
Lane Departure generation, evaluation Ego sut_vehicle.lane_departure Monitors whether the vehicle maintains its lane and detects deviations that cross lane boundaries. Classifies the outcome as a return to lane, lane change, timeout, or undefined maneuver. For details, see Lane Departure.
Teleportation generation, evaluation Vehicles sut_vehicle.teleportation Detects physically impossible vehicle movements by monitoring its traveled distance. For details, see Teleportation.

370.3 Global Watchers

Name Flow Actors Modifier Description
Curvature generation, evaluation Ego sut_vehicle.curvature Detects and categorizes road curvature according to a configurable radius threshold when the vehicle operates on a curved road. For details, see [Curvature][curvature].
Speed Limit generation, evaluation Ego sut_vehicle.speed_limit Monitors the current speed limit of the road the Ego is driving on. Triggers when the road's speed limit changes, providing valuable context for interval-based analysis. For details, see [Speed Limit][speed-limit].
Type of Road generation, evaluation Ego vehicle.type_of_road Classifies the Ego's road context in real-time by evaluating route elements (junction, roundabout, ramp, cloverleaf, fork, construction zone). Emits intervals whenever the Ego's current position matches a configured road type. For details, see [Type of Road][type-of-road].