Breakout ROM Fidelity v2
forced_loss_trace
{
"episodes": 2,
"steps": 2400,
"policy": "forced-loss-v1",
"reward_count": 2,
"reset_like_events": [
{
"episode": 0,
"step": 24,
"previous_step": 23,
"prev_ball_x": 77,
"prev_ball_y": 205,
"new_ball_x": 80,
"new_ball_y": 0,
"last_high_ball_step": 23,
"last_high_ball_y": 205
},
{
"episode": 1,
"step": 99,
"previous_step": 98,
"prev_ball_x": 53,
"prev_ball_y": 204,
"new_ball_x": 50,
"new_ball_y": 0,
"last_high_ball_step": 98,
"last_high_ball_y": 204
}
],
"reset_like_count": 2,
"candidate_ram": {
"reset_window_changed": [
{
"byte": 57,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 5,
"after": 4,
"delta": -1
},
{
"episode": 1,
"step": 99,
"before": 5,
"after": 4,
"delta": -1
}
]
},
{
"byte": 86,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 25,
"after": 20,
"delta": -5
},
{
"episode": 1,
"step": 99,
"before": 25,
"after": 20,
"delta": -5
}
]
},
{
"byte": 101,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 205,
"after": 0,
"delta": -205
},
{
"episode": 1,
"step": 99,
"before": 204,
"after": 0,
"delta": -204
}
]
},
{
"byte": 103,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 1,
"after": 0,
"delta": -1
},
{
"episode": 1,
"step": 99,
"before": 1,
"after": 0,
"delta": -1
}
]
},
{
"byte": 105,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 255,
"after": 0,
"delta": -255
},
{
"episode": 1,
"step": 99,
"before": 1,
"after": 0,
"delta": -1
}
]
},
{
"byte": 99,
"event_changes": 2,
"decreases": 1,
"increases": 1,
"examples": [
{
"episode": 0,
"step": 24,
"before": 77,
"after": 80,
"delta": 3
},
{
"episode": 1,
"step": 99,
"before": 53,
"after": 50,
"delta": -3
}
]
},
{
"byte": 90,
"event_changes": 2,
"decreases": 0,
"increases": 2,
"examples": [
{
"episode": 0,
"step": 24,
"before": 109,
"after": 113,
"delta": 4
},
{
"episode": 1,
"step": 99,
"before": 154,
"after": 158,
"delta": 4
}
]
},
{
"byte": 104,
"event_changes": 1,
"decreases": 1,
"increases": 0,
"examples": [
{
"episode": 1,
"step": 99,
"before": 128,
"after": 0,
"delta": -128
}
]
},
{
"byte": 107,
"event_changes": 1,
"decreases": 1,
"increases": 0,
"examples": [
{
"episode": 1,
"step": 99,
"before": 130,
"after": 0,
"delta": -130
}
]
},
{
"byte": 102,
"event_changes": 1,
"decreases": 0,
"increases": 1,
"examples": [
{
"episode": 1,
"step": 99,
"before": 0,
"after": 128,
"delta": 128
}
]
}
],
"life_like_decreasing": [
{
"byte": 57,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 5,
"after": 4,
"delta": -1
},
{
"episode": 1,
"step": 99,
"before": 5,
"after": 4,
"delta": -1
}
]
},
{
"byte": 86,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 25,
"after": 20,
"delta": -5
},
{
"episode": 1,
"step": 99,
"before": 25,
"after": 20,
"delta": -5
}
]
},
{
"byte": 101,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 205,
"after": 0,
"delta": -205
},
{
"episode": 1,
"step": 99,
"before": 204,
"after": 0,
"delta": -204
}
]
},
{
"byte": 103,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 1,
"after": 0,
"delta": -1
},
{
"episode": 1,
"step": 99,
"before": 1,
"after": 0,
"delta": -1
}
]
},
{
"byte": 105,
"event_changes": 2,
"decreases": 2,
"increases": 0,
"examples": [
{
"episode": 0,
"step": 24,
"before": 255,
"after": 0,
"delta": -255
},
{
"episode": 1,
"step": 99,
"before": 1,
"after": 0,
"delta": -1
}
]
},
{
"byte": 104,
"event_changes": 1,
"decreases": 1,
"increases": 0,
"examples": [
{
"episode": 1,
"step": 99,
"before": 128,
"after": 0,
"delta": -128
}
]
},
{
"byte": 107,
"event_changes": 1,
"decreases": 1,
"increases": 0,
"examples": [
{
"episode": 1,
"step": 99,
"before": 130,
"after": 0,
"delta": -130
}
]
}
]
},
"known_ram": {
"ball_x": 99,
"ball_y": 101,
"paddle_x": 72
},
"video_urls": [
"https://file.aimusic.win/gemma/breakout/rom_fidelity_v2_forced_loss_atari.mp4"
]
}
transfer_delta
{
"before_report": "breakout/calibration/reports/transfer_v1_report.json",
"after_report": "breakout/calibration/reports/transfer_v2_report.json",
"before_ratio": 0.45,
"after_ratio": 0.5,
"ratio_delta": 0.04999999999999999,
"before_go_mean": 10.0,
"after_go_mean": 9.0,
"before_atari_mean": 4.5,
"after_atari_mean": 4.5,
"after_verdict": "partial_transfer"
}
changes
[
"Added forced-loss-v1 to intentionally produce Atari life/reset evidence.",
"Set Go lives from 3 to 5 after forced-loss RAM byte 57 decreased 5 -> 4 in both reset windows.",
"Set Go bottom_margin from 60 to 0 after Atari ball-y RAM reset near 204/205 instead of far below the screen.",
"Added paddle_bounce_y=10.0 to make post-paddle rallies harder while preserving the first reward timing."
]
next_recommendation
"Use the reset-window candidate RAM bytes to confirm lives with a longer forced-loss trace before adding brick bitmap state."