[发明专利]一种基于强化学习的程序验证方法及装置有效
申请号: | 202011394907.2 | 申请日: | 2020-12-03 |
公开(公告)号: | CN112506767B | 公开(公告)日: | 2022-07-05 |
发明(设计)人: | 贺飞;杨璨;于千山;杨柳 | 申请(专利权)人: | 清华大学 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06N3/04;G06N3/08;G06K9/62 |
代理公司: | 北京新知远方知识产权代理事务所(普通合伙) 11397 | 代理人: | 马军芳;张艳 |
地址: | 100089*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 强化 学习 程序 验证 方法 装置 | ||
本发明实施例公开一种基于强化学习的程序验证方法及装置。该方法包括:获取待验证程序;待验证程序包括多个子程序;运行第一个子程序,得到对应的第一程序特征;将第一子程序的下一子程序作为当前子程序,将第一程序特征作为当前程序特征;将当前程序特征输入预先训练得到的神经网络模型中,得到当前程序特征对应的当前抽象域;基于当前抽象域,对当前子程序进行验证,得到当前子程序对应的当前程序特征;当存在未验证的子程序时,将当前子程序的下一子程序作为当前子程序,返回执行将当前程序特征输入预先训练得到的神经网络模型中,得到当前程序特征对应的当前抽象域的步骤。应用本发明实施例提供的方案,能够提高抽象域确定的效率。
技术领域
本发明涉及程序验证技术领域,具体而言,涉及一种基于强化学习的程序验证方法及装置。
背景技术
程序是复杂的,容易出错的,人工测试无法保证测试的完备性,因此程序验证是必要的,特别是对程序安全有极高敏感度的领域,如航空航天领域等。
CEGAR(Counter-example Guided Abstract Refinement,反例制导的抽象精化)是程序验证中一种重要的方法,在对程序进行抽象建模的基础上,该技术基于从当前抽象层次中抽取不可达的错误路径,也可以称为反例路径,来迭代地精化抽象模型,将模型从最初抽象层次很高的状态精化为接近真实程序行为的状态。
在CEGAR的框架中,当找到一条反例路径时,可以使用不同的抽象域进行反例消除。但是不同的抽象域在进行反例消除时,所花费的代价和能从反例路径中抽取出的信息往往是不同的,即他们会影响程序验证的效率。因此,如何在CEGAR的框架下,有效地进行抽象域的选择成为影响程序验证效率的重要因素。
传统的方法需要专家经验在程序中获取有限的特征,再通过大量实验对特征进行排序得到一个通用的启发式决策,以基于该启发式决策确定抽象域。然而,这种方法需要耗费大量的时间成本,抽象域的确定过程效率较低。
发明内容
本发明提供了一种基于强化学习的程序验证方法及装置,以提高抽象域确定的效率。具体的技术方案如下。
第一方面,本发明实施例提供一种基于强化学习的程序验证方法,所述方法包括:
获取待验证程序;所述待验证程序包括多个子程序,各所述子程序具有先后执行顺序关系;
运行所述多个子程序中的第一个子程序,在所述第一个子程序运行过程中统计得到所述第一个子程序对应的第一程序特征;
将所述第一子程序的下一子程序作为当前子程序,将所述第一程序特征作为当前程序特征;
将所述当前程序特征输入预先训练得到的神经网络模型中,得到所述当前程序特征对应的当前抽象域;所述神经网络模型为预先根据各样本子程序,以及各所述样本子程序对应的样本抽象域训练得到的;
基于所述当前抽象域,对所述当前子程序进行验证,并在验证过程中统计得到所述当前子程序对应的当前程序特征;
判断是否存在未验证的子程序;当存在未验证的子程序时,将所述当前子程序的下一子程序作为当前子程序,返回执行所述将所述当前程序特征输入预先训练得到的神经网络模型中,得到所述当前程序特征对应的当前抽象域的步骤。
第二方面,本发明实施例提供一种基于强化学习的程序验证装置,所述装置包括:
程序获取模块,用于获取待验证程序;所述待验证程序包括多个子程序,各所述子程序具有先后执行顺序关系;
特征提取模块,用于运行所述多个子程序中的第一个子程序,在所述第一个子程序运行过程中统计得到所述第一个子程序对应的第一程序特征;
程序处理模块,用于将所述第一子程序的下一子程序作为当前子程序,将所述第一程序特征作为当前程序特征;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011394907.2/2.html,转载请声明来源钻瓜专利网。