Automatic modularization by speciation

Real-world problems are often too difficult to solve by a single monolithic system. There are many examples of natural and artificial systems which show that a modular approach can reduce the total complexity of the system while solving a difficult problem satisfactorily. The success of modular artificial neural networks in speech and image processing is a typical example. However, designing a modular system is a difficult task. It relies heavily on human experts and prior knowledge about the problem. There is no systematic and automatic way to form a modular system for a problem. This paper proposes a novel evolutionary learning approach to designing a modular system automatically, without human intervention. Our starting point is speciation, using a technique based on fitness sharing. While speciation in genetic algorithms is not new, no effort has been made towards using a speciated population as a complete modular system. We harness the specialized expertise in the species of an entire population, rather than a single individual, by introducing a gating algorithm. We demonstrate our approach to automatic modularization by improving co-evolutionary game learning, learning to play the iterated prisoner's dilemma. We review some problems of earlier co-evolutionary learning methods, and explain their poor generalization ability and sudden mass extinctions. The generalization ability of our approach is significantly better than past efforts. Using the specialized expertise of the entire speciated population though a gating algorithm, instead of the best individual, is the main contributor to this improvement.

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

[2]  R. Dawkins The Blind Watchmaker , 1986 .

[3]  Kalyanmoy Deb,et al.  An Investigation of Niche and Species Formation in Genetic Function Optimization , 1989, ICGA.

[4]  David H. Wolpert,et al.  Constructing a generalizer superior to NETtalk via a mathematical theory of generalization , 1990, Neural Networks.

[5]  David H. Wolpert,et al.  A Mathematical Theory of Generalization: Part II , 1990, Complex Syst..

[6]  Tyler C. Folsom,et al.  A modular hierarchical neural network for machine vision , 1990, 1990 IJCNN International Joint Conference on Neural Networks.

[7]  Phil Husbands,et al.  Simulated Co-Evolution as the Mechanism for Emergent Planning and Scheduling , 1991, International Conference on Genetic Algorithms.

[8]  B. Freisleben Teaching a Neural Network to Play GO–MOKU , 1992 .

[9]  Kalyanmoy Deb,et al.  Massive Multimodality, Deception, and Genetic Algorithms , 1992, PPSN.

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

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

[12]  Risto Miikkulainen,et al.  Evolving Complex Othello Strategies Using Marker-Based Genetic Encoding ofNeural Networks , 1993 .

[13]  Alan S. Perelson,et al.  Searching for Diverse, Cooperative Populations with Genetic Algorithms , 1993, Evolutionary Computation.

[14]  Alan S. Perelson,et al.  Using Genetic Algorithms to Explore Pattern Recognition in the Immune System , 1993, Evolutionary Computation.

[15]  R. Palmer,et al.  Artificial economic life: a simple model of a stockmarket , 1994 .

[16]  Xin Yao,et al.  An Experimental Study of N-Person Iterated Prisoner's Dilemma Games , 1993, Informatica.

[17]  Marc M. Van Hulle,et al.  The EDANN concept: A Modular Artificial Neural Network model for biological vision and image processing , 1994 .

[18]  Xin Yao,et al.  On Evolving Robust Strategies for Iterated Prisoner's Dilemma , 1993, Evo Workshops.

[19]  John J. Grefenstette,et al.  A Coevolutionary Approach to Learning Sequential Decision Rules , 1995, ICGA.

[20]  Richard K. Belew,et al.  Methods for Competitive Co-Evolution: Finding Opponents Worth Beating , 1995, ICGA.

[21]  Xin Yao,et al.  A dilemma for fitness sharing with a scaling function , 1995, Proceedings of 1995 IEEE International Conference on Evolutionary Computation.