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 条
  • [41] Solving control allocation problems using semidefinite programming
    Oh, Jae-Hyuk
    Jamoom, Michael B.
    McConley, Marc W.
    Feron, Eric
    Journal of Guidance, Control, and Dynamics, 22 (03): : 494 - 497
  • [42] Solving rolling contact problems using be and mathematical programming
    Abascal, R
    Gonzalez, JA
    ADVANCES IN COMPUTATIONAL STRUCTURAL MECHANICS, 1998, : 9 - 18
  • [43] Solving control allocation problems using semidefinite programming
    Oh, JH
    Jamoom, MB
    McConley, MW
    Feron, E
    JOURNAL OF GUIDANCE CONTROL AND DYNAMICS, 1999, 22 (03) : 494 - 497
  • [44] Solving ecological management problems using dynamic programming
    Grüne, L
    Kato, M
    Semmler, W
    JOURNAL OF ECONOMIC BEHAVIOR & ORGANIZATION, 2005, 57 (04) : 448 - 473
  • [45] A hybrid genetic algorithm for solving a class of nonlinear bilevel programming problems
    Li, Hecheng
    Wang, Yuping
    SIMULATED EVOLUTION AND LEARNING, PROCEEDINGS, 2006, 4247 : 408 - 415
  • [46] A Genetic Algorithm for Solving Linear-Quadratic Bilevel Programming Problems
    Li, Hecheng
    Wang, Yuping
    NEW TRENDS AND APPLICATIONS OF COMPUTER-AIDED MATERIAL AND ENGINEERING, 2011, 186 : 626 - +
  • [47] Genetic algorithms for solving mixed-integer bevel programming problems
    Li, He-Cheng
    Wang, Yu-Ping
    Jilin Daxue Xuebao (Gongxueban)/Journal of Jilin University (Engineering and Technology Edition), 2009, 39 (03): : 781 - 786
  • [48] Solving nonlinear programming problems based on the Choquet integral by a genetic algorithm
    Kochi, Naomi
    Wang, Zhenyuan
    JOURNAL OF INTELLIGENT & FUZZY SYSTEMS, 2015, 29 (01) : 437 - 442
  • [49] A genetic algorithm for solving a special class of Nonlinear bilevel programming problems
    Li, Hecheng
    Wang, Yuping
    COMPUTATIONAL SCIENCE - ICCS 2007, PT 4, PROCEEDINGS, 2007, 4490 : 1159 - +
  • [50] Using genetic algorithms and genetic programming in solving problems related to safety and evacuation of people from ships and land facilities
    Lozowicka, Dorota
    SCIENTIFIC JOURNALS OF THE MARITIME UNIVERSITY OF SZCZECIN-ZESZYTY NAUKOWE AKADEMII MORSKIEJ W SZCZECINIE, 2012, 29 (101): : 130 - 133