Reward Engineering for Software Tasks: A Survey of Reinforcement Learning Approaches
Not on the map. Why?
Abstract (arXiv)
Reinforcement learning is increasingly used for code-centric software engineering tasks, including code generation, understanding, repair, testing, and optimization, especially with the rise of large language models and autonomous agents. A core challenge in these settings is reward design. Unlike standard RL domains with clear scalar objectives, software tasks involve competing goals such as correctness, security, efficiency, and readability, which are difficult to capture with a single reward. As a result, RL-for-SE systems rely on heterogeneous signals, including compilation results, unit tests, coverage metrics, retrieval scores, and learned preferences. Yet this work remains scattered across tasks and communities. This survey provides the first systematic review of reward engineering for RL in software tasks. We organize prior work by reward source, granularity, and aggregation. We then distill the findings into practical guidance, including a decision matrix, a design guide, and a reward engineering reporting standard for future RL-for-SE systems.
Key facts. Cited by 2 papers in the map (data through 14 Oct 2026). First posted on arXiv 27 Jan 2026.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2026: 2.
2 papers.
- 2026Long-Horizon RL Needs Muon14 Oct 2026
- 2026When Errors Can Be Beneficial: A Categorization of Imperfect Rewards for Policy Gradient28 Apr 2026