What’s in an Evolved Name? The Evolution of Modularity via Tag-Based Reference

What’s in an Evolved Name? The Evolution of Modularity via Tag-Based Reference
复制标题

通过基于标签的引用进行模块化的演变

DOI:
10.1007/978-1-4614-1770-5_1
复制
发表时间:
2011
期刊:
Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation
影响因子:
--
通讯作者:
Thomas Helmuth
Thomas Helmuth
中科院分区:
--
文献类型:
--
作者:
L. Spector;K. Harrington;Brian Martin;Thomas Helmuth

文献摘要

被引文献

相似文献

编程语言提供了各种将名称与值相关联的机制,这些机制在编程实践中发挥着核心作用。例如,它们允许在复杂程序的不同部分多次引用相同的存储位置或函数。相比之下,当前遗传编程系统中使用的表示法提供的命名机制很少(如果有的话),因此进化程序通常不可能以复杂的方式使用名称。在本章中,我们描述了一种基于Holland的标签概念的遗传编程中对名称的新方法。我们演示了基于标签的名字的使用,我们描述了它们可能有助于扩展遗传编程系统的能力和覆盖范围的一些方法,并研究了基于标签的名字在解决机器人导航问题的进化程序中实际使用的方式。
Programming languages provide a variety of mechanisms to associate names with values, and these mechanisms play a central role in programming practice. For example, they allow multiple references to the same storage location or function in different parts of a complex program. By contrast, the representations used in current genetic programming systems provide few if any naming mechanisms, and it is therefore generally not possible for evolved programs to use names in sophisticated ways. In this chapter we describe a new approach to names in genetic programming that is based on Holland’s concept of tags. We demonstrate the use of tag-based names, we describe some of the ways in which they may help to extend the power and reach of genetic programming systems, and we look at the ways that tag-based names are actually used in an evolved program that solves a robot navigation problem.