Player improvement
+0.137Paired score change against the original opponent.
95% bootstrap interval: [-0.017, +0.300]
Inconclusive at 95%
Two compact tactical policies, trained against a league of earlier opponents in the real DOOM engine. This is parameter search over existing behaviors, not a neural network learning DOOM from pixels.
5596 simulated matches · 32.7 seconds of wall time · seed 20260905
Paired score change against the original opponent.
95% bootstrap interval: [-0.017, +0.300]
Inconclusive at 95%
Paired score change against the original opponent.
95% bootstrap interval: [-0.233, +0.048]
Inconclusive at 95%
All cells use the same separate evaluation seeds. Training uses E1M1/E1M2 combat drills; E1M3 is unseen during selection. Wins require killing all opponents; death is a loss; the time limit produces a draw. Health and damage statistics remain original DOOM values.
| Player / enemy checkpoint | Player wins | Enemy wins | Draws | Player score |
|---|---|---|---|---|
| initial / initial | 82 | 14 | 0 | 0.838 |
| initial / middle | 82 | 14 | 0 | 0.842 |
| initial / final | 86 | 10 | 0 | 0.927 |
| middle / initial | 84 | 12 | 0 | 0.897 |
| middle / middle | 86 | 10 | 0 | 0.952 |
| middle / final | 82 | 13 | 1 | 0.861 |
| final / initial | 87 | 8 | 1 | 0.975 |
| final / middle | 89 | 7 | 0 | 1.014 |
| final / final | 91 | 4 | 1 | 1.068 |
Each candidate must beat its incumbent on separate validation encounters against the same opponents. These changing matchups are not directly comparable across generations.
| Generation | Side | Validation score gain | Decision |
|---|---|---|---|
| 1 | player | -0.027 | Kept incumbent |
| 1 | enemy | +0.028 | Promoted |
| 2 | player | -0.021 | Kept incumbent |
| 2 | enemy | -0.044 | Kept incumbent |
| 3 | player | +0.011 | Promoted |
| 3 | enemy | +0.000 | Kept incumbent |
| 4 | player | +0.015 | Promoted |
| 4 | enemy | +0.007 | Promoted |
| 5 | player | +0.000 | Kept incumbent |
| 5 | enemy | -0.003 | Kept incumbent |
| 6 | player | +0.000 | Kept incumbent |
| 6 | enemy | -0.019 | Kept incumbent |
| 7 | player | -0.021 | Kept incumbent |
| 7 | enemy | +0.017 | Promoted |
| 8 | player | +0.013 | Promoted |
| 8 | enemy | +0.371 | Promoted |
| 9 | player | +0.017 | Promoted |
| 9 | enemy | +0.416 | Promoted |
| 10 | player | -0.003 | Kept incumbent |
| 10 | enemy | +0.253 | Promoted |
| 11 | player | +0.030 | Promoted |
| 11 | enemy | -0.262 | Kept incumbent |
| 12 | player | -0.003 | Kept incumbent |
| 12 | enemy | -0.166 | Kept incumbent |
| 13 | player | -0.064 | Kept incumbent |
| 13 | enemy | -0.009 | Kept incumbent |
| 14 | player | +0.029 | Promoted |
| 14 | enemy | +0.014 | Promoted |
| 15 | player | -0.165 | Kept incumbent |
| 15 | enemy | +0.344 | Promoted |
| 16 | player | +0.000 | Kept incumbent |
| 16 | enemy | -0.002 | Kept incumbent |
The bots receive structured line-of-sight observations and geometry queries. Short combat drills do not establish full-level competence or improvement against humans. Confidence intervals summarize these sampled encounters, not every DOOM map. Trained policies are saved for further experiments and are not automatically enabled in the browser.
Full results and checkpoints · Raw match results
Engine, trainer, and IWAD fingerprint: 5083a1418e445c8bd2ae6d85ade234ab5cdb82927e77420a55d41809274a9b9e