Training Function Stacks to play the Iterated Prisoner's Dilemma

Cartesian genetic programming uses a directed acyclic graph structure rather than a tree structure for its representation of evolvable programs or formulas. In this paper a derivative of Cartesian genetic programming called a function stack is introduced and trained to play the iterated prisoner's dilemma with an evolutionary algorithm. Function stacks differ from Cartesian genetic programming in that (i) they use a crossover operator and (ii) they have a form of memory or recurrence that permits the use of internal state information. Several properties of function stacks are developed and compared with other representations for the iterated prisoner's dilemma. Function stacks are proved to encode the same strategy space as finite state machines but to explore that strategy space in a significantly different manner. A technique called fingerprinting is used to automatically classify the evolved strategies. Function slacks are shown to produce a significantly different distribution of strategies from those found when evolution is used to train finite state machines. Function stacks are shown to be different from many other representations studied for the iterated prisoner's dilemma. They are relatively prone to cooperation and encode a rich space of strategies

[1]  Mark D. Smucker,et al.  Analyzing Social Network Structures in the Iterated Prisoner's Dilemma with Choice and Refusal , 1995, adap-org/9501002.

[2]  W. Hamilton,et al.  The Evolution of Cooperation , 1984 .

[3]  W. Hamilton,et al.  The evolution of cooperation. , 1984, Science.

[4]  K. Lindgren,et al.  Evolutionary dynamics of spatial games , 1994 .

[5]  Julian Francis Miller,et al.  Cartesian genetic programming , 2000, GECCO '10.

[6]  Daniel A. Ashlock,et al.  The impact of cellular representation on finite state agents for prisoner's dilemma , 2005, GECCO '05.

[7]  David B. Fogel,et al.  Evolving Behaviors in the Iterated Prisoner's Dilemma , 1993, Evolutionary Computation.

[8]  D. Fogel,et al.  Evolving continuous behaviors in the Iterated Prisoner's Dilemma. , 1996, Bio Systems.

[9]  C. Terry,et al.  Competitiveness and Conflict Behavior in Simulation of a Social Dilemma , 2000, Psychological reports.

[10]  David B. Fogel,et al.  On the Relationship between the Duration of an Encounter and the Evolution of Cooperation in the Iterated Prisoner's Dilemma , 1995, Evolutionary Computation.

[11]  Peter Nordin,et al.  Genetic programming - An Introduction: On the Automatic Evolution of Computer Programs and Its Applications , 1998 .

[12]  Thomas Bäck,et al.  Evolutionary computation: comments on the history and current state , 1997, IEEE Trans. Evol. Comput..

[13]  D. Roy Learning and the theory of games. , 2000, Journal of theoretical biology.

[14]  M. Hemesath Cooperate or Defect? Russian and American Students in a Prisoner's Dilemma , 1994 .

[15]  L. Tesfatsion,et al.  Preferential partner selection in an evolutionary study of Prisoner's Dilemma. , 1994, Bio Systems.

[16]  Jörgen W. Weibull,et al.  Evolutionary Game Theory , 1996 .

[17]  Julian Francis Miller,et al.  Finding Needles in Haystacks Is Not Hard with Neutrality , 2002, EuroGP.

[18]  John H. Miller,et al.  The coevolution of automata in the repeated Prisoner's Dilemma , 1996 .

[19]  Kristian Lindgren,et al.  Evolutionary phenomena in simple dynamics , 1992 .

[20]  J. Wendelberger Adventures in Stochastic Processes , 1993 .