Scalable architecture for parallel distributed implementation of genetic programming on network of workstations
We present an approach for developing a scalable architecture for parallel distributed implementation of genetic programming (PDIGP). The approach is based on exploitation of the inherent parallelism among semi-isolated subpopulations in genetic programming (GP). Proposed implementation runs on cost-efficient configurations of networks on workstations in LAN and Internet environment. Developed architecture features single global migration broker and centralized manager of the semi-isolated subpopulations, which contribute to achieving quick propagation of the globally fittest individuals among the subpopulations, reducing the performance demands to the communication network, and achieving flexibility in system configurations by introducing dynamically scaling up opportunities. PDIGP exploits distributed component object model (DCOM) as a communication paradigm, which as a true system model offers generic support for the issues of naming, locating and protecting the distributed entities in proposed architecture of PDIGP. Experimentally obtained results of computational effort of proposed PDIGP are discussed. The results show that computational effort of PDIGP marginally differs from the computational effort in canonical panmictic GP evolving single large population. For PDIGP running on systems configurations with 16 workstations the computational effort is less than panmictic GP, while for smaller configurations it is insignificantly more. Analytically obtained and empirically proved results of the speedup of computational performance indicate that PDIGP features linear, close to ideal characteristics. Experimentally obtained results of PDIGP running on configurations with eight workstations show close to 8-fold overall speedup. These results are consistent with the anticipated cumulative effect of the insignificant increase of computational effort for the considered configuration and the close to linear speedup of computational performance.
genetic programming network of workstations distributed component object model island model of parallelism