Path Exploration Based on Monte Carlo Tree Search for Symbolic Execution

被引:0
作者
Yeh, Chao-Chun [1 ,3 ]
Lu, Han-Lin [1 ]
Yeh, Jia-Jun [1 ]
Huang, Shih-Kun [1 ,2 ]
机构
[1] Natl Chiao Tung Univ, Dept Comp Sci, Hsinchu 300, Taiwan
[2] Natl Chiao Tung Univ, Informat Technol Serv Ctr, Hsinchu 300, Taiwan
[3] Ind Technol Res Inst, Computat Intelligence Technol Ctr, Hsinchu 300, Taiwan
来源
2017 CONFERENCE ON TECHNOLOGIES AND APPLICATIONS OF ARTIFICIAL INTELLIGENCE (TAAI) | 2017年
关键词
Monte Carlo tree search; upper-confidence bounds for trees; symbolic execution; path exploration; software testing;
D O I
暂无
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Symbolic Execution is a widely used technique for program testing and analysis. When a program executes a trace symbolically, it simulates all possible paths. This results in an exponential growth of the number of states within the problem, which is commonly referred to as "path explosion." We therefore propose novel strategies that only require limited resources to give priority to more valuable paths. In this paper, we utilize a method based on the Monte Carlo tree search (MCTS) strategy to resolve the problem. We then compare the proposed MCTS-based strategy with other methods such as depth-first search (DFS) and breadth-first search (BFS). We also perform different scales of experiments based on time and space resource constraints. For smaller test cases, we found that MCTS performs on average 1.4 times better than BFS and DFS in terms of the block discovery rate. In addition, for larger test cases, MCTS performs on average 2.8 times better than DFS and BFS in terms of the block discovery rate.
引用
收藏
页码:33 / 37
页数:5
相关论文
共 24 条
[11]   SYMBOLIC EXECUTION AND PROGRAM TESTING [J].
KING, JC .
COMMUNICATIONS OF THE ACM, 1976, 19 (07) :385-394
[12]   Bandit based Monte-Carlo planning [J].
Kocsis, Levente ;
Szepesvari, Csaba .
MACHINE LEARNING: ECML 2006, PROCEEDINGS, 2006, 4212 :282-293
[13]  
Lin F. J., 1987, Computer Communication Review, V17, P126, DOI 10.1145/55483.55496
[14]  
Mooney C. Z., 1997, Monte Carlo Simulation
[15]   Multiobjective Monte Carlo Tree Search for Real-Time Games [J].
Perez, Diego ;
Mostaghim, Sanaz ;
Samothrakis, Spyridon ;
Lucas, Simon M. .
IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, 2015, 7 (04) :347-360
[16]   All You Ever Wanted to Know About Dynamic Taint Analysis and Forward Symbolic Execution (but might have been afraid to ask) [J].
Schwartz, Edward J. ;
Avgerinos, Thanassis ;
Brumley, David .
2010 IEEE SYMPOSIUM ON SECURITY AND PRIVACY, 2010, :317-331
[17]  
Sen K, 2007, P 22 IEEE ACM INT C, P571, DOI [10.1145/1321631.1321746, DOI 10.1145/1321631.1321746]
[18]  
Sen Koushik, 2005, Proc. ESEC/FSE, P263, DOI DOI 10.1145/1081706.1081750
[19]  
Sharma A., TECHNICAL REPORT
[20]  
Shoshitaishvili Y., 2016, IEEE S SEC PRIV S P