paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Valg: A Fast Reinforcement Learning Based Runtime Verification Tool for Java

Valg:一个基于强化学习的快速 Java 运行时验证工具
ICSE Proceedings of the 2026 IEEE/ACM 48th International Conference on Software Engineering2026匹配度 3/10 · 论文属于运行时验证与强化学习交叉,关注 Java RV 的冗余监控与开销优化,与用户核心研究方向(静态分析、LLM/Agent 改进静态分析与形式化验证、浮点程序分析、贝叶斯程序分析)无直接关系;仅在“机器学习用于程序分析/验证”和工程落地层面有边缘关联。引用 4 inbox
Shinhae Kim, Saikat Dutta, Owolabi Legunsen
crossref: 2026-09-12

AI 速览

一句话:提出并实现基于强化学习的 Java 运行时验证工具 Valg,通过减少冗余监控大幅降低开销。

运行时验证(RV)通过动态监控方法调用等事件序列是否违反形式规约来发现缺陷,但监控开销高。先前工作发现 99.87% 的被监控轨迹是冗余的。本文提出 Valg,将基于强化学习(RL)的技术实现于 Java,以减少冗余监控。相比原型,Valg 增加逐规约超参数、RL 轨迹保存、离线超参数调优和性能优化,并集成 JavaMOP 与 TraceMOP,修复一个长期规约缺陷。在 56 个开源项目上,调参后的 Valg 相对原型在 JavaMOP 和 TraceMOP 上分别最高加速 4.2 倍和 1.9 倍,唯一轨迹保留率最高提升 94.5 个百分点,离线调参比在线调参快数个数量级。

问题
运行时验证能动态发现违反形式规约的程序轨迹,但监控会带来很高的运行时开销,且绝大多数被监控轨迹是冗余的。
方法
Valg 用强化学习决定是否监控轨迹以减少冗余,并在 Java 中实现;相比原型加入逐规约超参数、RL 轨迹保存、离线调参和性能优化,同时集成 JavaMOP 与 TraceMOP。
评估
在 56 个开源项目上评估 Valg 的加速比、唯一轨迹保留率和调参速度,并与原型及集成的 JavaMOP、TraceMOP 进行比较。
原文摘要(Abstract)

Runtime Verification (RV) dynamically monitors whether traces—sequences of program events like method calls—violate formal specifications. RV helped find many bugs, but it incurs high runtime overheads. Prior work showed that 99.87% of monitored traces are redundant: they are identical to the other 0.13%. So, we recently proposed a new technique based on reinforcement learning (RL) to speed up RV by reducing redundant monitoring. This paper presents Valg, a tool that implements the technique for Java. Compared to our previous prototype, Valg adds (i) per-spec hyperparameters, (ii) RL trajectory saving, (iii) offline hyperparameter tuning, and (iv) performance optimizations. We also integrate Valg with the main development branch of JavaMOP and TraceMOP, two state-of-the-art RV tools, and fix a long-standing specification bug. On 56 open-source projects, Valg with tuned hyperparameters is up to 4.2x and 1.9x faster than our prototype when applied to JavaMOP and TraceMOP, respectively, and improves unique trace preservation by up to 94.5pp. Valg’s offline hyperparameter tuning is orders of magnitude faster than our prototype’s online tuning, and our optimizations make JavaMOP, TraceMOP, and Valg faster. Valg is open-sourced at: https://github.com/SoftEngResearch/tracemop, and a video demo can be found at: https://youtu.be/_QCyHaa_ICc.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot11715,
  title = {Valg: A Fast Reinforcement Learning Based Runtime Verification Tool for Java},
  author = {Shinhae Kim and Saikat Dutta and Owolabi Legunsen},
  booktitle = {ICSE},
  year = {2026},
  doi = {10.1145/3774748.3787620}
}