Glossary¶
Terms as Interlock uses them, with the page that covers each one.
- Action
- One of the five highway-env meta-actions the policy chooses from:
LANE_LEFT,IDLE,LANE_RIGHT,FASTER,SLOWER. Index order comes from highway-env. See Training and policy. - All blocked
- The flag on a step whose executed action was the
SLOWER/IDLElast resort, reached through a denied or timed-out escalation. Logs written before Oct 17 also used it as a decision kind. See Shield algorithm. - No compliant action
- The escalation reason when no candidate's violation probability is below the allow threshold. The shield asks the operator instead of executing a last resort on its own, and the queue lists every candidate so the operator can override. See Approval queue.
- Least bad
- The fallback tier between a confidently safe action and the last resort: the lower-ranked action with the lowest violation probability that is not a confident violation and would change the state. What deny runs when nothing is confidently safe.
- Allow
- The decision kind when the top action's violation probability is below
t_allow. The policy's choice runs unchanged. - Brier score
- Mean squared error between the predicted probability and the 0 or 1 label over every labeled check. Lower is better. See Evaluation internals.
- Calibration
- Whether a probability means what it says: among checks scored 0.8, about 80 percent should be real violations. Measured with a reliability diagram, ECE and the Brier score. See Metrics tab.
- Candidate
- One of the five actions on a given step, with its rank, Q-value, facts, sentences and per-rule checks. Every candidate is judged every step so the fallback is already in hand.
- Checker
- A closed-form function in
backend/checkers.pythat labels a candidate against a rule as violation or ok. Checkers score only; they never influence the decision. See Constraints and checkers. - Closing speed
- The speed of the vehicle behind in the target lane minus the ego speed, in m/s. Positive means it is catching up.
- Constraint, rule
- A plain-English operator rule with a stable id (
c1,c2, ...), an enabled flag and an optional checker id. Used interchangeably; the code says constraint, the console says rule. See Rules and zones. - Decision model
- A model that returns typed answers with probabilities over a closed answer space instead of generating text. Jev is the one Interlock uses. See Concepts.
- ECE, expected calibration error
- The average absolute gap between mean predicted probability and observed violation rate across ten probability bins, weighted by how many checks fall in each bin.
- Ego
- The vehicle the policy controls. Facts and the road view are both ego-centered.
- Episode
- One seeded run of the simulator from reset until termination (a crash) or truncation (60 steps).
- Escalation
- A step whose top action scored between the two thresholds. The simulator pauses and the operator approves or denies. See Approval queue.
- Exchange
- One request actually sent to Jev, recorded with the action, the constraint ids asked, the raw response, latency and request id. Cache hits produce no exchange. See Log record.
- Facts
- The structured JSON describing the ego, one candidate action and its consequences, computed in code with units in the field names. Jev judges facts; it never computes them. See Facts.
- Fallback
- The decision kind when the top action is a confident violation and a lower-ranked action is confidently safe. That action runs instead. Also the action a denied escalation executes.
- Fired constraint
- The rule with the highest violation probability on the proposed action. It is the rule the approval card quotes.
- Gap
- Bumper-to-bumper distance to a neighbouring vehicle in metres: center distance minus the 5 m vehicle length, floored at zero. Vehicles beyond 200 m are reported as absent.
- Ground truth
- The checker's label for one candidate against one rule:
true,false, ornullfor a free-text rule with no checker. - Human on the loop
- The design where the system acts on its own when confident and asks a person only in the uncertain band. See Concepts.
- Jev
- TypeSafe's decision model, pinned at
jev-1.13.0. Interlock asks it one yes/no question per candidate and rule and reads back a probability. See Jev integration. - Judge source
- Where a step's probabilities came from:
live(at least one API call),cache(every answer replayed), orunavailable(at least one question could not be answered and was set to 0.5). - Lane numbering
- Lanes count from the left starting at 1. In the four-lane demo, lane 1 is the leftmost and lane 4 the rightmost.
- Mock mode
JEV_MODE=mock: the judge answers only from the cache and marks every miss unavailable, so the shield escalates it. No network is used. See Troubleshooting.- Noul
- Jev's yes/no question type. The answer is a number from 0 to 1, which the shield reads as the probability of violation.
- Operator
- Whoever answers escalations. The console records
ui; headless runs usesimulated(answers from the checkers),approveordeny. See Command line. - Physics floor
- A time-to-collision limit in code, 2 seconds by default. A candidate whose time to collision ahead after the action is under it is removed before the rules are consulted, so it can never run, be a fallback or be chosen by an override. If every candidate is under it, SLOWER runs. Set at launch; the console cannot change it. See Shield algorithm.
- Policy
- The Stable-Baselines3 DQN trained on task reward alone. It ranks the five actions by Q-value and knows nothing about rules.
- Preset
- One of the four built-in rules with a checker: speed limit, lane change gap, left lane for passing, lane closed.
- Q-value
- The DQN's estimate of return for taking an action in the current state. Candidates are ranked by it, best first.
- Reliability diagram
- A plot of observed violation rate against mean predicted probability per bin. A calibrated judge sits on the diagonal.
- Replay
- Streaming a logged JSONL run through the console instead of the live simulator. See Replay.
- Reward, task reward
- The per-step highway-env reward the policy was trained on: up to 0.4 for speed between 20 and 30 m/s, up to 0.1 for keeping right, -1 for a collision, normalized onto 0 to 1 so a step without a crash scores between 0.667 and 1.0. It never mentions a rule. See the reward function.
- Run id
<UTC stamp>_seed<N>_on|off, the name of a run's JSONL file and the key the replay picker shows.- Seed
- The integer that fixes the simulator's traffic layout, so the same episode can be driven with the shield off and on.
- Sentences
- The plain-English rendering of a candidate's facts, generated from the same data Jev receives, shown in the approval card and the inspector.
- Session
- The server-side object holding the runner, the open escalation, the connected browsers and the replay state. One per process. See Server and session.
- Shadow mode
- Shield off. Facts, Jev and checkers still run every step and the record is still written, but the policy's top action always executes. Before and after numbers come from the same code path.
- Shield
- The runtime mechanism that allows, falls back or escalates each proposed action based on the judge's probabilities. Always lowercase; Interlock is the project, the shield is the technique.
- Step
- One policy decision and one simulator advance, one second of simulated time, one record in the log.
- Task return
- The sum of reward over an episode, at most 60 for a 60 step episode. The shield lowers it; that is the cost of safety.
- Thresholds
t_allowandt_block, defaults 0.3 and 0.7. Belowt_allowallows, abovet_blockblocks, between them escalates. See Rules and zones.- TypeSafe
- The vendor of Jev. The API key lives in
backend/.envasTYPESAFE_API_KEY. - Work zone, zone
- A closed stretch of one lane in absolute road coordinates (
lane,start_m,end_m). The default drop places one in lane 3, 120 m ahead, 200 m long. - Zone lifecycle
- Dropping a zone adds or re-enables the lane-closed rule; passing the last zone retires it. The rule and the zone are never in force without each other. See Constraints and checkers.