Genetic Synthesis of Concurrent Code Using Model Checking and Statistical Model Checking

被引:0
作者
Bu, Lei [1 ]
Peled, Doron [2 ]
Shen, Dachuan [1 ]
Zhuang, Yuan [1 ]
机构
[1] Nanjing Univ, State Key Lab Novel Software Technol, Nanjing, Jiangsu, Peoples R China
[2] Bar Ilan Univ, Dept Comp Sci, Ramat Gan, Israel
来源
MODEL CHECKING SOFTWARE, SPIN 2018 | 2018年 / 10869卷
基金
中国国家自然科学基金;
关键词
D O I
10.1007/978-3-319-94111-0_16
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Genetic programming (GP) is a heuristic method for automatically generating code. It applies probabilistic-based generation and mutation of code, combined with "natural selection" principles, using a fitness function. Often, the fitness is calculated based on a large test suite. Recently, GP was applied for synthesizing correct-by-design concurrent code from temporal specification, where model checking was used for calculating the fitness function. A deficiency of this approach is that it uses a limited number of fitness values, based on a small number of modes for each verified specification property (e.g., satisfies, does not satisfy a given property). Furthermore, the need to apply model checking on many candidate solutions using the genetic process makes using an off-the-shelf model checker such as Spin prohibitively expensive. The repeated invocation of such a tool, compiling the code for a new candidate solution and running it, can render the performance of this approach several orders of magnitude slower than using an internal model checking. To tackle this problem, we describe here the use of a combination of statistical model checking, and a light use of model checking, for calculating the fitness required by GP.
引用
收藏
页码:275 / 291
页数:17
相关论文
共 27 条
  • [1] RECOGNIZING SAFETY AND LIVENESS
    ALPERN, B
    SCHNEIDER, FB
    [J]. DISTRIBUTED COMPUTING, 1987, 2 (03) : 117 - 126
  • [2] [Anonymous], 2003, The SPIN Model Checker
  • [3] [Anonymous], 1981, Lecture Notes in Computer Science, DOI DOI 10.1007/BFB0025774
  • [4] [Anonymous], 2003, Genetic programming IV: routine human-competitive machine intelligence
  • [5] [Anonymous], 1989, C RECORD 16 ANN ACM, DOI [DOI 10.1145/75277.75293, 10.1145/75277.75293]
  • [6] UPPAAL SMC tutorial
    David, Alexandre
    Larsen, Kim G.
    Legay, Axel
    Mikuionis, Marius
    Poulsen, Danny Bogsted
    [J]. INTERNATIONAL JOURNAL ON SOFTWARE TOOLS FOR TECHNOLOGY TRANSFER, 2015, 17 (04) : 397 - 415
  • [7] Dijkstra Edsger W, 1968, ORIGIN CONCURRENT PR, P65, DOI DOI 10.1007/978-1-4757-3472-0_2
  • [8] Finkbeiner B, 2010, LECT NOTES COMPUT SC, V6247, P305, DOI 10.1007/978-3-642-15205-4_25
  • [9] Fisher R.A., 1925, STAT METHODS RES WOR
  • [10] Grosu R, 2005, LECT NOTES COMPUT SC, V3440, P271