Abstract :
The field of intelligent agents and the strongly related topic of evolutionary computation are fast-growing areas of computer science and engineering. In particular, genetic algorithms (GAs) provide a more and more attractive solution of many complex engineering problems for which classical optimization methods cannot be used. Besides the ability to learn on their own and become experts in different areas, GAs prove to be parallelizable in a natural way, thus shortening the time to obtain the results. Additionally, parallelization produces higher-quality solutions, as the approach used by parallel genetic algorithms is closer to the evolution of species in nature than the sequential approach. This paper describes the use of parallelism for genetic algorithm development and discusses two aspects of their design: efficiency and the quality of results. Several approaches are presented and comparatively analyzed. The main comparison criteria considered are: performance, flexibility, design structure, communication facilities, ease of design and programming. The analysis highlights the advantages of coarse-grain parallel genetic algorithms, which are more “adapted” to the actual architectures of high-performance computers
Keywords :
genetic algorithms; learning (artificial intelligence); message passing; parallel algorithms; coarse-grain parallel genetic algorithms; communication facilities; complex engineering problems; design structure; distributed algorithms; ease of design; efficiency; evolutionary computation; flexibility; high-performance computer architectures; high-quality solutions; intelligent agents; intrinsic parallel characteristics; learning; message passing; optimization; parallelization; performance; programming; results quality; shared objects; Algorithm design and analysis; Computer architecture; Computer science; Concurrent computing; Evolutionary computation; Genetic algorithms; Genetic engineering; Intelligent agent; Optimization methods; Parallel processing;