Parameter controllers followed by two 149-weight neural networks, trained through CPU mutation and selection in the real DOOM engine. Networks choose tactics from structured combat observations; navigation, aim execution, and cover mechanics are provided by the existing controllers.
Both neural policies passed the predeclared primary criterion: higher win rate and score against the same original opponents, with positive lower bounds in paired 97.5% bootstrap intervals.
| Player / enemy | Matches | Player wins | Enemy wins | Draws | Player score |
|---|---|---|---|---|---|
| original / original | 1536 | 1339 (87.2%) | 195 (12.7%) | 2 | 0.877 |
| parameter / original | 1536 | 1493 (97.2%) | 31 (2.0%) | 12 | 1.154 |
| original / parameter | 1536 | 1331 (86.7%) | 201 (13.1%) | 4 | 0.866 |
| neural / original | 1536 | 1490 (97.0%) | 35 (2.3%) | 11 | 1.148 |
| original / neural | 1536 | 1304 (84.9%) | 231 (15.0%) | 1 | 0.820 |
| parameter / parameter | 1536 | 1500 (97.7%) | 27 (1.8%) | 9 | 1.160 |
| neural / neural | 1536 | 1492 (97.1%) | 38 (2.5%) | 6 | 1.143 |
| constant neural / original | 1536 | 1492 (97.1%) | 32 (2.1%) | 12 | 1.152 |
| original / constant neural | 1536 | 1319 (85.9%) | 212 (13.8%) | 5 | 0.844 |
Differences below favor the named side when positive. Brackets give paired 97.5% bootstrap intervals; pp means percentage points.
| Side | Comparison | Win-rate difference | Score difference |
|---|---|---|---|
| Player | parameter vs original | +10.026 pp [+8.073, +12.044] | +0.277 [+0.233, +0.320] |
| Player | neural vs original | +9.831 pp [+7.812, +11.849] | +0.271 [+0.229, +0.316] |
| Player | neural vs parameter | -0.195 pp [-1.367, +0.911] | -0.006 [-0.029, +0.017] |
| Player | neural vs constant | -0.130 pp [-1.237, +0.977] | -0.004 [-0.028, +0.019] |
| Enemy | parameter vs original | +0.391 pp [-1.302, +2.083] | +0.011 [-0.024, +0.046] |
| Enemy | neural vs original | +2.344 pp [+0.260, +4.492] | +0.057 [+0.011, +0.100] |
| Enemy | neural vs parameter | +1.953 pp [-0.195, +4.036] | +0.046 [-0.001, +0.091] |
| Enemy | neural vs constant | +1.237 pp [-0.781, +3.190] | +0.025 [-0.020, +0.068] |
| Player / enemy | Matches | Player wins | Enemy wins | Draws | Player score |
|---|---|---|---|---|---|
| original / original | 512 | 446 (87.1%) | 66 (12.9%) | 0 | 0.872 |
| parameter / original | 512 | 504 (98.4%) | 8 (1.6%) | 0 | 1.152 |
| original / parameter | 512 | 458 (89.5%) | 54 (10.5%) | 0 | 0.925 |
| neural / original | 512 | 500 (97.7%) | 12 (2.3%) | 0 | 1.133 |
| original / neural | 512 | 453 (88.5%) | 59 (11.5%) | 0 | 0.906 |
| parameter / parameter | 512 | 504 (98.4%) | 8 (1.6%) | 0 | 1.154 |
| neural / neural | 512 | 495 (96.7%) | 17 (3.3%) | 0 | 1.110 |
| constant neural / original | 512 | 504 (98.4%) | 8 (1.6%) | 0 | 1.152 |
| original / constant neural | 512 | 453 (88.5%) | 59 (11.5%) | 0 | 0.907 |
Differences below favor the named side when positive. Brackets give paired 97.5% bootstrap intervals; pp means percentage points.
| Side | Comparison | Win-rate difference | Score difference |
|---|---|---|---|
| Player | parameter vs original | +11.328 pp [+8.008, +14.648] | +0.280 [+0.206, +0.361] |
| Player | neural vs original | +10.547 pp [+6.836, +14.258] | +0.261 [+0.181, +0.350] |
| Player | neural vs parameter | -0.781 pp [-2.148, +0.586] | -0.019 [-0.050, +0.010] |
| Player | neural vs constant | -0.781 pp [-2.344, +0.781] | -0.019 [-0.053, +0.014] |
| Enemy | parameter vs original | -2.344 pp [-5.664, +0.977] | -0.053 [-0.124, +0.017] |
| Enemy | neural vs original | -1.367 pp [-5.078, +2.539] | -0.034 [-0.116, +0.047] |
| Enemy | neural vs parameter | +0.977 pp [-2.344, +4.297] | +0.019 [-0.055, +0.093] |
| Enemy | neural vs constant | +0.000 pp [-2.930, +2.930] | +0.001 [-0.062, +0.065] |
Gains over the original opponent measure improvement from the full training pipeline. Neural-versus-parameter results isolate the additional training stage, but do not control for its extra compute. The constant-network ablation removes input connections while preserving learned biases and output weights; neural-versus-constant results test whether state-dependent decisions help this frozen model.
Each drill starts with a pistol player and two or three normal monsters around a map start. A player win kills all enemies; an enemy win kills the player; a 20-second timeout is a draw. Scores add a small damage/health term to the +1/−1/0 outcome. Health, damage, movement limits, and minimum attack delay stay unchanged. Final cases never select policies. These results cover short combat drills, not full levels or human opponents.
Browser behavior is unchanged. Checkpoints remain offline artifacts for future watch mode.
All metrics · Frozen policies and training history · Model dictionary · Compressed raw matches
18,432 distinct evaluation matches · 41.0 seconds · seed family 9,000,000
Source/IWAD fingerprint: 8e755ef8d102e0bcbfc38190f8b424145afbc4d1f2f684b5015af9bcd788b375