Efficient program synthesis using constraint satisfaction in inductive logic programming

被引:231
作者
Ahlgren, John [1 ]
Yuen, Shiu Yin [1 ]
机构
[1] Department of Electronic Engineering, City University of Hong Kong, Hong Kong
关键词
Boolean satisfiability problem; Constraint satisfaction; Inductive logic programming; Program synthesis; Theory induction;
D O I
10.1145/800157.805047
中图分类号
学科分类号
摘要
We present NrSample, a framework for program synthesis in inductive logic programming. NrSample uses propositional logic constraints to exclude undesirable candidates from the search. This is achieved by representing constraints as propositional formulae and solving the associated constraint satisfaction problem. We present a variety of such constraints: pruning, input-output, functional (arithmetic), and variable splitting. NrSample is also capable of detecting search space exhaustion, leading to further speedups in clause induction and optimality. We benchmark NrSample against enumeration search (Aleph's default) and Progol's A* search in the context of program synthesis. The results show that, on large program synthesis problems, NrSample induces between 1 and 1358 times faster than enumeration (236 times faster on average), always with similar or better accuracy. Compared to Progol A*, NrSample is 18 times faster on average with similar or better accuracy except for two problems: one in which Progol A* substantially sacrificed accuracy to induce faster, and one in which Progol A* was a clear winner. Functional constraints provide a speedup of up to 53 times (21 times on average) with similar or better accuracy. We also benchmark using a few concept learning (non-program synthesis) problems. The results indicate that without strong constraints, the overhead of solving constraints is not compensated for. © 2013 John Ahlgren and Shiu Yin Yuen.
引用
收藏
页码:3649 / 3681
页数:32
相关论文
共 26 条
  • [11] McCreath E., Sharma A., Extraction of meta-knowledge to restrict the hypothesis space for ILP systems, Proceedings of the Eighth Australian Joint Conference on Artificial Intelligence, pp. 75-82, (1995)
  • [12] Moskewicz M.W., Madigan C.F., Zhao Y., Zhang L., Malik S., Chaff: Engineering an efficient SAT solver, Proceedings - Design Automation Conference, pp. 530-535, (2001)
  • [13] Muggleton S., Tamaddoni-Nezhad A., QG/ga: A stochastic search for progol, Machine Learning, 70, pp. 121-133, (2008)
  • [14] Muggleton S., De Raedt L., Poole D., Bratko I., Flach P.A., Inoue K., Srinivasan A., ILP turns 20-biography and future challenges, Machine Learning, 86, 1, pp. 3-23, (2012)
  • [15] Muggleton S.H., Inverse entailment and progol, New Generation Computing, 13, pp. 245-286, (1995)
  • [16] Nienhuys-Cheng S.-H., De Wolf R., Foundations of Inductive Logic Programming, (1997)
  • [17] Plotkin G.D., A note on inductive generalization, Machine Intelligence, 5, pp. 153-163, (1970)
  • [18] Plotkin G.D., A further note on inductive generalization, Machine Intelligence, 6, pp. 101-124, (1971)
  • [19] Russell S.J., Norvig P., Candy J.F., Malik J.M., Edwards D.D., Artificial Intelligence: A Modern Approach, (1996)
  • [20] Schaefer T.J., The complexity of satisfiability problems, Proceedings of the Tenth Annual ACM Symposium on Theory of Computing, STOC '78, pp. 216-226, (1978)