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 条
  • [1] CADIAPLAYER: A Simulation-Based General Game Player
    Bjornsson, Yngvi
    Finnsson, Hilmar
    [J]. IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, 2009, 1 (01) : 4 - 15
  • [2] A Survey of Monte Carlo Tree Search Methods
    Browne, Cameron B.
    Powley, Edward
    Whitehouse, Daniel
    Lucas, Simon M.
    Cowling, Peter I.
    Rohlfshagen, Philipp
    Tavener, Stephen
    Perez, Diego
    Samothrakis, Spyridon
    Colton, Simon
    [J]. IEEE TRANSACTIONS ON COMPUTATIONAL INTELLIGENCE AND AI IN GAMES, 2012, 4 (01) : 1 - 43
  • [3] Cadar Cristian, 2008, OSDI'08, P209, DOI 10.5555/1855741.1855756
  • [4] Unleashing MAYHEM on Binary Code
    Cha, Sang Kil
    Avgerinos, Thanassis
    Rebert, Alexandre
    Brumley, David
    [J]. 2012 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP), 2012, : 380 - 394
  • [5] Chaslot G., 2008, P AAAI C ARTIFICIAL, P216
  • [6] The S2E Platform: Design, Implementation, and Applications
    Chipounov, Vitaly
    Kuznetsov, Volodymyr
    Candea, George
    [J]. ACM TRANSACTIONS ON COMPUTER SYSTEMS, 2012, 30 (01):
  • [7] Z3: An efficient SMT solver
    de Moura, Leonardo
    Bjorner, Nikolaj
    [J]. TOOLS AND ALGORITHMS FOR THE CONSTRUCTION AND ANALYSIS OF SYSTEMS, 2008, 4963 : 337 - 340
  • [8] Analytical Results on the BFS vs. DFS Algorithm Selection Problem: Part II: Graph Search
    Everitt, Tom
    Hutter, Marcus
    [J]. AI 2015: ADVANCES IN ARTIFICIAL INTELLIGENCE, 2015, 9457 : 166 - 178
  • [9] DART: Directed automated random testing
    Godefroid, P
    Klarlund, N
    Sen, K
    [J]. ACM SIGPLAN NOTICES, 2005, 40 (06) : 213 - 223
  • [10] King J. C., 1975, SIGPLAN Notices, V10, P228, DOI 10.1145/390016.808444