Separating Decision Time from Decision Quality in the Real-Time Gap of Distilled Deciders: Evidence from a Game and a Conveyor Simulator
Organizations: Myeongseongsimjae AX Institute, Yeongyang-gun, Gyeongsangbuk-do, Republic of Korea · Department of Computer Science and Software Engineering, Korea University, Seoul, Republic of Korea · Electronics and Telecommunications Research Institute (ETRI), Daejeon, Republic of Korea
Abstract
Real-time agents are often evaluated with the world paused, or with decision time rounded to whole ticks (tick conversion). Tick conversion predicts almost no loss for a learned decider whose hit accuracy falls by 14.8 percentage points (pp) on the same games in asynchronous play. We instead split the decider's gap to a zero-latency teacher into time and quality components. In ViZDoom, we train a small decider by imitating a scripted teacher, run the game on wall-clock time, and add a control in which the teacher waits for a call to the decider's server before deciding. On a Windows host, three preregistered studies put the time component at 6.5-8.7 pp and the quality component at 6.3-8.6 pp. On a Linux host that skips 0.08-0.09% of ticks, the time component disappeared (-0.1 pp; paired 95% bootstrap interval [-0.4, 0.0]) while the quality component remained (5.6 pp [3.7, 7.5]). Retraining on teacher-labelled states from the decider's own play (DAgger) improved it on new games on both hosts (2.6 pp [0.4, 4.9] and 3.1 pp [1.1, 5.2]), a preregistered partial success. Imposing one delay schedule on every arm in live play left a quality component of 5.8 pp [4.0, 7.5] on 100 new games, and retraining cut the decider's disagreement with the teacher on its own states from 22.7% to 14.9%. In a conveyor simulator with a 400 ms deadline, delay past it erased the quality component. A latency-matched control whose delays match the decider's shows which remedy to try.
Figures & tables
| Symbol | Meaning |
|---|---|
| T0 | teacher with no added latency |
| S | the same teacher waiting for the decider’s server before acting (latency-matched teacher) |
| SS | the teacher deciding from the state sentence the decider reads (v10) |
| D | a learned decider on the server, in Sections 4 and 5 (O, N, N32 or M) |
| O | original imitation decider |
| N | decider after two on-policy DAgger rounds, in which the decider plays, the teacher labels the states it reaches, and the decider is retrained on them; N1 after one round |
| Arm or contrast | Hit accuracy (%) | 95% interval | |
|---|---|---|---|
| or difference (pp) | game bootstrap | run-level | |
| T0 | 95.5% | – | – |
| S | 86.8% | – | – |
| O | 80.0% | – | – |
| Time, T0 S | 8.7 pp | [6.6, 10.9] | – |
| Quality, S O | 6.8 pp | [4.5, 8.8] | [1.2, 12.4] |
| Arm or contrast | Hit accuracy (%) | 95% interval | |
|---|---|---|---|
| or difference (pp) | game bootstrap | run-level | |
| T0 | 95.5% | – | – |
| S | 87.3% | – | – |
| N | 82.8% | – | – |
| O | 78.7% | – | – |
| Improvement, N O | 4.1 pp | [2.3, 5.9] | [ 0.4, 8.8] |
| Arm or contrast | Hit accuracy (%) | Game-bootstrap | Skipped |
|---|---|---|---|
| or difference (pp) | 95% interval | ticks (%) | |
| T0 | 94.3% | – | 0.1% |
| S | 87.9% | – | 8.5% |
| N (seed 31) | 84.2% | – | 7.8% |
| N32 (seed 32) | 84.7% | – | 8.2% |
| O | 81.6% | – | 7.3% |
| Study and contrast | Estimate (pp or points) | 95% interval |
|---|---|---|
| v12, host 2, defend_the_center (hit accuracy, pp) | ||
| time T0 S | 0.1 | [ 0.4, 0.0] |
| quality S O | 5.6 | [3.7, 7.5] |
| DAgger N O | 3.1 | [1.1, 5.2] |
| v11, host 2, deadly_corridor (mean reward, points) | ||
| time T0 S | 0.0 | [0.0, 0.0] |
Appendix figures & tables48 assets
Supplementary material from the paper’s appendix.
Appendix
| State source | Decider | Agreement | Error |
|---|---|---|---|
| version | (%) | rate (%) | |
| Teacher demonstrations (validation split, 2,500 sampled) | original | 98.4 | 1.6 |
| On-policy, round 1 (24,547 decisions, 60 games) | original | 88.8 | 11.2 |
| On-policy, round 2 (25,529 decisions, 60 games) | after one round | 90.0 | 10.0 |
| Contrast (host-1 recorded schedules, 29 games) | Original decider O | DAgger decider N |
|---|---|---|
| Teacher on S schedule teacher on own schedule (bias term) | 2.7 [ 6.2, 0.5] | 2.2 [ 6.2, 1.6] |
| Quality, schedules matched exactly | 7.1 [3.7, 10.6] | 0.2 [ 2.5, 2.1] |
| Quality, shares matched (original design) | 4.4 [0.2, 8.9] | 2.5 [ 6.7, 1.8] |
| DAgger gain N O on N’s schedule | 4.8 [1.8, 7.6] | |
| Run | Acc. dist. | Acc. raw | Kills | Shots | Hits taken | Ticks | Lone react. | Skip % |
|---|---|---|---|---|---|---|---|---|
| S1 | 85.3 | 87.3 | 22.50 | 25.7 | 5.53 | 1250 | 29.2 | 11.3 |
| D4 | 80.7 | 81.6 | 19.37 | 23.7 | 5.20 | 1112 | 35.0 | 7.1 |
| S2 | 86.6 | 87.9 | 22.87 | 26.0 | 6.10 | 1235 | 25.5 | 5.9 |
| D5 | 83.7 | 81.9 | 18.83 | 23.0 | 6.00 | 1072 | 38.7 | 9.6 |
| S3 | 86.3 | 86.7 | 22.13 | 25.5 | 5.53 | 1243 | 25.9 | 6.9 |
| D6 | 83.2 | 82.4 | 19.17 | 23.3 | 6.03 | 1087 | 36.0 | 6.7 |
| Run | Acc. dist. | Acc. raw | Kills | Shots | Hits taken | Ticks | Lone react. | Skip % |
|---|---|---|---|---|---|---|---|---|
| S1 | 86.5 | 87.2 | 22.47 | 25.8 | 5.53 | 1234 | 27.0 | 7.4 |
| N1 | 79.5 | 80.3 | 20.50 | 25.5 | 5.57 | 1159 | 32.9 | 15.7 |
| O1 | 74.5 | 74.2 | 17.60 | 23.7 | 5.70 | 1050 | 35.1 | 19.0 |
| O2 | 72.4 | 71.1 | 16.10 | 22.6 | 5.17 | 997 | 38.8 | 25.3 |
| N2 | 82.0 | 83.3 | 21.37 | 25.6 | 5.47 | 1192 | 27.2 | 11.1 |
| S2 | 89.5 | 88.2 | 22.40 | 25.4 | 6.00 | 1245 | 30.1 | 6.8 |
| Triad | Skip S | Skip N | Skip O | S N | S N adj. | N O | N O adj. |
|---|---|---|---|---|---|---|---|
| 1 | 7.4 | 15.7 | 19.0 | 7.0 | 1.9 | 5.1 | 3.0 |
| 2 | 6.8 | 11.1 | 25.3 | 7.5 | 4.8 | 9.6 | 1.0 |
| 3 | 8.0 | 8.1 | 7.2 | 2.3 | 2.2 | 4.9 | 5.5 |
| 4 | 9.6 | 8.3 | 6.7 | 3.0 | 3.8 | 1.5 | 2.5 |
| 5 | 9.9 | 9.4 | 9.3 | 2.7 | 3.0 | -0.1 | -0.0 |
| Round | Driver | Seeds | Rows | Engaged | Skip % | Minutes |
|---|---|---|---|---|---|---|
| 1 | a814587e03 | 720000–720059 | 44,820 | 43,707 | 11.5 | 31 |
| 2 | 240805651d | 720100–720159 | 47,905 | 46,725 | 11.1 | 33 |
| Teacher | TL | TR | F | SL | SR | FSL | FSR | |
|---|---|---|---|---|---|---|---|---|
| Round 1 (original decider in control) , 24,547 decisions | ||||||||
| TL | 11,635 | 93.2 | 4.0 | 0.0 | 0.6 | 0.4 | 1.0 | 0.9 |
| TR | 7,190 | 20.7 | 73.5 | 0.0 | 1.3 | 1.2 | 1.3 | 2.0 |
| SL | 992 | 0.2 | 0.2 | 0.0 | 98.8 | 0.1 | 0.7 | 0.0 |
| SR | 819 | 0.2 | 0.2 | 0.0 | 0.0 | 99.5 | 0.0 | 0.0 |
| FSL | 1,658 | 0.1 | 0.1 | 0.0 | 0.2 | 0.0 | 99.1 | 0.5 |
| Host 1 | AMD Ryzen 7 7800X3D (8 cores, 16 threads), 31 GB RAM, NVIDIA GeForce RTX 3060, Windows 11 Education 10.0.26200 |
| Host 2 | AMD Ryzen 5 5600G (6 cores, 12 threads), 31 GB RAM, Ubuntu 24.04.4 LTS, Linux 6.11.0-29-generic |
| Game and runtime | ViZDoom 1.3.1 (asynchronous player mode, 35 ticks per second), NumPy 2.5.3; Python 3.14.0 (host 1), 3.12.3 (host 2) |
| Training | PyTorch 2.13.0 CPU (host 1), 2.14.0 CPU (host 2); 2,500 steps, training seed 31 (and 32 for N32) |
| Decider | hashed n-gram encoder to 1,785 features, 265,665 parameters, served over local HTTP; original O a814587e03, after one DAgger round 240805651d, after two rounds N 8ce6b41475, seed-32 replicate 2f4785728c, data-volume control M 2061ae8b; second scene O a164d90514, N 11409b5c60 |
| Open-weight comparator | qwen3:1.7b through Ollama on host 1 (model layer 3d0b790534) |
| Commercial comparator | gpt-6-sol through the Codex command-line tool 0.156.1, default settings, run on 2026-09-23 |
| Recorded arm | Exact matches | Hit accuracy (%) | Skipped ticks (%) | ||
|---|---|---|---|---|---|
| recorded | replayed | recorded | replayed | ||
| N, DAgger decider | 0 of 50 | 87.8 | 99.2 | 8.2 | 8.2 |
| O, original decider | 0 of 50 | 80.9 | 98.8 | 8.6 | 8.7 |
| S, teacher | 0 of 50 | 85.2 | 99.3 | 9.6 | 9.6 |
| Scene and threshold | Automated (%) | Agreement (%) | Handed off (%) |
|---|---|---|---|
| defend_the_center (30,385 states) | |||
| none | 100.0 | 96.1 | 0.0 |
| 0.8 | 95.1 | 97.8 | 4.9 |
| 0.9 | 90.8 | 98.4 | 9.2 |
| 0.95 | 84.8 | 98.8 | 15.2 |
| 0.99 | 63.4 | 99.4 | 36.6 |
| ID | Study | Host | Scene | Episodes | Frozen text | Verdict |
|---|---|---|---|---|---|---|
| S1/E1 | first real-time demonstration: paused, tick-converted and asynchronous play | 1 | defend | 320 | yes | see text |
| E2 | competing methods (hybrid, action queue, language models) on one real-time ruler | 1 | defend | 1,365 | amended | see text |
| v3 | asynchronous replication of teacher and decider | 1 | defend | 210 | yes | – |
| v4 | latency-matched decomposition, three pairs (episodes in v4b: its first three pairs) | 1 | defend | 0 | yes | – |
| v4b | extension to five pairs; run- and game-level intervals | 1 | defend | 300 | yes | claim of quality component 5 pp allowed: no |
| v5 | on-policy asynchronous DAgger, five triads | 1 | defend | 450 | yes | partial success |
| ID | Content | Evaluation seeds | Hash |
|---|---|---|---|
| v3 | zero-latency teacher (T0) and decider, asynchronous replication | 850000–850029 | 299dafd18395 |
| v4 | latency-matched decomposition, three pairs | 850000–850029 | d4c13a3bcfce |
| v4b | extension to five pairs; run-level and game-level intervals | 850000–850029 | a317edf316e7 |
| v5 | on-policy asynchronous distillation, five triads | 850000–850029 | 404982264335 |
| v6a | calibration of core-pinned concurrent evaluation | 850000–850029 | b96753c944f2 |
| v6b | replication with contemporaneous T0 and seed-32 replicate | 860000–860099 | 1ab89caac991 |
| Line A | Line B | Line A | ||||
| (ms) | teacher | teacher 50 | D | teacher | D | D, solo |
| 0 | 0.03 (0.0) | 0.03 (0.0) | 0.88 (0.0) | 0.03 (0.0) | 0.88 (0.0) | – |
| 200 | 0.03 (0.0) | 0.03 (0.0) | 0.88 (0.0) | 0.03 (0.0) | 0.88 (0.0) | – |
| 340 | 0.03 (0.0) | 0.85 (9.6) | 1.37 (7.3) | 0.03 (0.0) | 0.90 (0.2) | 0.92 (0.2) |
| 360 | 0.03 (0.0) | 2.06 (30.4) | 1.83 (13.1) | 0.03 (0.0) | 2.99 (31.2) | 0.88 (0.4) |
| 370 | 0.03 (0.0) | 3.16 (40.0) | 1.25 (6.0) | 0.03 (0.0) | 1.38 (6.7) | 0.88 (0.3) |
| Delay (ms) | T0 | S | O | S skipped (%) | O skipped (%) |
|---|---|---|---|---|---|
| 0 | 61.6 | 61.6 | 63.0 | 1.6 | 1.6 |
| 30 | 61.6 | 89.4 | 91.5 | 48.6 | 48.6 |
| 60 | 61.6 | 82.4 | 84.5 | 63.1 | 63.1 |
Agent Evaluation
Agent evaluation measures how reliably AI systems act, use tools, and complete tasks across interactive environments.
See all 144 papers