A learning algorithm, referred to as concurrent training and based on genetic algorithms for a neural network, is described. A neural network is modeled as a collection of modules, or sub-networks, that are interconnected. Concurrent learning does not require knowledge of training sets for each module so that all modules can be trained concurrently. The concurrent training algorithm is applied to train multi-layered feedforward networks by considering each layer of connections as a 1-layer network module. The algorithm is tested and validated using the parity and the classification problems; the learning behavior and performance are analyzed. The performance is compared to that of a conventional genetic algorithm-based learning algorithm.