Genetic Algorithms Hierarchical Execution Control under a Global Application State Monitoring Infrastructure
Adam Smyk, Marek Tudruj · 2013
We present a new approach to the design of parallel genetic algorithms executed in multicore processor systems. To design the algorithms, a programming environment is used with parallel program global control flow functions and asynchronous process/thread internal behaviour control. Global application states monitoring is provided by generalized synchronization processes called synchronizers which collect local states of program elements, construct consistent global states and send control signals to program components based on predicates computed on global states. Such control/synchronization mechanisms are provided as a ready to use program infrastructure which is structurally decoupled from computational code for threads, processes and groups of threads/processes. A parallel genetic algorithm design based on such global control infrastructure is discussed. The algorithm has been used for optimal partitioning of parallel mesh computations represented as a data flow graph for solving a FDTD numerical problem.