language-icon Old Web
English
Sign In

Parallel metaheuristic

Parallel metaheuristic is a class of techniques that are capable of reducing both the numerical effort and the run time of a metaheuristic. To this end, concepts and technologies from the field of parallelism in computer science are used to enhance and even completely modify the behavior of existing metaheuristics. Just as it exists a long list of metaheuristics like evolutionary algorithms, particle swarm, ant colony optimization, simulated annealing, etc. it also exists a large set of different techniques strongly or loosely based in these ones, whose behavior encompasses the multiple parallel execution of algorithm components that cooperate in some way to solve a problem on a given parallel hardware platform. Parallel metaheuristic is a class of techniques that are capable of reducing both the numerical effort and the run time of a metaheuristic. To this end, concepts and technologies from the field of parallelism in computer science are used to enhance and even completely modify the behavior of existing metaheuristics. Just as it exists a long list of metaheuristics like evolutionary algorithms, particle swarm, ant colony optimization, simulated annealing, etc. it also exists a large set of different techniques strongly or loosely based in these ones, whose behavior encompasses the multiple parallel execution of algorithm components that cooperate in some way to solve a problem on a given parallel hardware platform. In practice, optimization (and searching, and learning) problems are often NP-hard, complex, and time consuming.Two major approaches are traditionally used to tackle these problems: exact methodsand metaheuristics. Exact methods allow to find exact solutions but are often impractical as they areextremely time-consuming for real-world problems (large dimension, hardly constrained, multimodal,time-varying, epistatic problems). Conversely, metaheuristics provide sub-optimal (sometimes optimal)solutions in a reasonable time. Thus, metaheuristics usually allow to meet the resolution delays imposedin the industrial field as well as they allow to study general problem classes instead that particularproblem instances. In general, many of the best performing techniques in precision and effort to solvecomplex and real-world problems are metaheuristics. Their fields of application range from combinatorialoptimization, bioinformatics, and telecommunications to economics, software engineering, etc. These fields are full of manytasks needing fast solutions of high quality. See for more details on complex applications. Metaheuristics fall in two categories: trajectory-based metaheuristics and population-based metaheuristics. The main difference of these two kind of methods relies in the number of tentativesolutions used in each step of the (iterative) algorithm. A trajectory-based technique starts with a singleinitial solution and, at each step of the search, the current solution is replaced by another (often the best)solution found in its neighborhood. It is usual that trajectory-based metaheuristics allow to quickly finda locally optimal solution, and so they are called exploitation-oriented methods promoting intensificationin the search space. On the other hand, population-based algorithms make use of a population of solutions.The initial population is in this case randomly generated (or created with a greedy algorithm),and then enhanced through an iterative process. At each generation of the process, the whole population(or a part of it) is replaced by newly generated individuals (often the best ones). These techniques arecalled exploration-oriented methods, since their main ability resides in the diversification in the searchspace.

[ "Meta-optimization", "Multi-swarm optimization" ]
Parent Topic
Child Topic
    No Parent Topic