Skip to content

Collision Checks

Collision Checks

Official HA-VLN repository: https://github.com/F1y1113/HA-VLN

This module provides finer-grained collision traceability than binary collision flags, with emphasis on separating human collisions from environment collisions and enabling strict evaluation.

collisions_detail

  • Purpose: Returns object-level collision details for the current step.
  • Prerequisite: Enable COLLISIONS_DETAIL in task measurements.
observations, reward, done, info = env.step(action)

if "collisions_detail" in info:
    details = info["collisions_detail"]
    if any("human" in str(obj).lower() for obj in details):
        print("Warning: Human collision detected")
        done = True

Calculate_Metric

  • Purpose: Uses the metric implementation's pre-computed unavoidable collision component to compute net human-aware TCR, CR, and strict SR.
  • When to call: Offline evaluation after an episode ends.
from HASimulator.metric import Calculate_Metric

metric_calc = Calculate_Metric(split="val_unseen")
metric_calc(info, episode_id)

tcr = info["TCR"]
cr = info["CR"]
strict_sr = info["SR"]