Solving Novel Program Synthesis Problems with Genetic Programming using Parametric Polymorphism

被引:2
|
作者
Pantridge, Edward [1 ]
Helmuth, Thomas [2 ]
机构
[1] Swoop, Cambridge, MA 02140 USA
[2] Hamilton Coll, Clinton, NY USA
关键词
automatic programming; genetic programming; inductive program synthesis; polymorphism;
D O I
10.1145/3583131.3590502
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Contemporary genetic programming (GP) systems for general program synthesis have been primarily concerned with evolving programs that can manipulate values from a standard set of primitive data types and simple indexed data structures. In contrast, human programmers do not limit themselves to a small finite set of data types and use polymorphism to express an unbounded number of types including nested data structures, product types, and generic functions. Code-building Genetic Programming (CBGP) is a recently introduced method that compiles type-safe programs from linear genomes using stack-based compilation and a formal type system. Although prior work with CBGP has shown initial demonstrations of polymorphism inside evolved programs, we have provided a deeper exploration of these capabilities through the evolution of programs which make use of generic data types such as key-value maps, tuples, and sets, as well as higher order functions and functions with polymorphic type signatures. In our experiments, CBGP is able to solve problems with all of these properties, where every other GP system that we know of has restrictions that make it unable to even consider problems with these properties. This demonstration provides a significant step towards fully aligning the expressiveness of GP to real world programming.
引用
收藏
页码:1175 / 1183
页数:9
相关论文
共 50 条
  • [1] Solving mathematical programming problems using genetic algorithms
    Malasri, S
    Martin, JR
    Medina, RA
    COMPUTING IN CIVIL ENGINEERING, 1996, : 233 - 239
  • [2] Solving curve fitting problems using genetic programming
    Kamal, HA
    Eassa, MH
    11TH IEEE MEDITERRANEAN ELECTROTECHNICAL CONFERENCE, PROCEEDINGS, 2002, : 316 - 321
  • [3] Solving classification problems using infix form genetic programming
    Oltean, M
    Grosan, C
    ADVANCES IN INTELLIGENT DATA ANALYSIS V, 2003, 2810 : 242 - 253
  • [4] Solving Classification Problems Using Genetic Programming Algorithms on GPUs
    Cano, Alberto
    Zafra, Amelia
    Ventura, Sebastian
    HYBRID ARTIFICIAL INTELLIGENCE SYSTEMS, PT 2, 2010, 6077 : 17 - 26
  • [5] Solving Real-valued Optimisation Problems using Cartesian Genetic Programming Genetic Programming Track
    Walker, James Alfred
    Miller, Julian Francis
    GECCO 2007: GENETIC AND EVOLUTIONARY COMPUTATION CONFERENCE, VOL 1 AND 2, 2007, : 1724 - 1730
  • [6] Synthesis of Parametric Programs using Genetic Programming and Model Checking
    Katz, Gal
    Peled, Doron
    ELECTRONIC PROCEEDINGS IN THEORETICAL COMPUTER SCIENCE, 2013, (140): : 70 - 84
  • [7] Dynamic Synthesis of Program Invariants using Genetic Programming
    Cardamone, Luigi
    Mocci, Andrea
    Ghezzi, Carlo
    2011 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION (CEC), 2011, : 624 - 631
  • [8] Solving the even parity problems using best SubTree genetic programming
    Muntean, Oana
    Diosan, Laura
    Oltean, Mihai
    NASA/ESA CONFERENCE ON ADAPTIVE HARDWARE AND SYSTEMS, PROCEEDINGS, 2007, : 511 - +
  • [9] Solving even-parity problems using traceless genetic programming
    Oltean, M
    CEC2004: PROCEEDINGS OF THE 2004 CONGRESS ON EVOLUTIONARY COMPUTATION, VOLS 1 AND 2, 2004, : 1813 - 1819
  • [10] Solving symbolic regression problems using incremental evaluation in Genetic Programming
    Hoang Tuan-Hao
    McKay, R. I.
    Essam, Daryl
    Nguyen Xuan Hoai
    2006 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION, VOLS 1-6, 2006, : 2119 - +