J. Marques de Sá et al. (Eds.): ICANN, Part I, LNCS 4668, pp. 788–798, 2007. © Springer-Verlag Berlin Heidelberg 2007 Automatic Design of Modular Neural Networks Using Genetic Programming Naser NourAshrafoddin, Ali R. Vahdat, and M.M. Ebadzadeh Amirkabir University of Technology (Tehran Polytechnic) Abstract. Traditional trial-and-error approach to design neural networks is time consuming and does not guarantee yielding the best neural network feasible for a specific application. Therefore automatic approaches have gained more importance and popularity. In addition, traditional (non-modular) neural networks can not solve complex problems since these problems introduce wide range of overlap which, in turn, causes a wide range of deviations from efficient learning in different regions of the input space, whereas a modular neural network attempts to reduce the effect of these problems via a divide and conquer approach. In this paper we are going to introduce a different approach to autonomous design of modular neural networks. Here we use genetic programming for automatic modular neural networks design; their architectures, transfer functions and connection weights. Our approach offers important advantages over existing methods for automated neural network design. First it prefers smaller modules to bigger modules, second it allows neurons even in the same layer to use different transfer functions, and third it is not necessary to convert each individual into a neural network to obtain the fitness value during the evolution process. Several tests were performed with problems based on some of the most popular test databases. Results show that using genetic programming for automatic design of neural networks is an efficient method and is comparable with the already existing techniques. Keywords: Modular neural networks, evolutionary computing, genetic programming, automatic design. 1 Introduction The human brain is the most elaborate information processing system known. Researchers believe that it derives most of its processing power from the huge numbers of neurons and connections. It is also believed that the human brain contains about 11 10 neurons, each of which is connected to an average of 4 10 other neurons. This amounts to a total of 15 10 connections. This sophisticated biologic system teaches us some important principles regarding design of NNs: Despite its massive connections it is relatively small, and highly organized [1]. Subsequent layers of neurons, arranged in a hierarchical fashion, form increasingly complex representations.