heuristics, metaheuristics, hyperheuristics

Loosely speaking, heuristic means to find or to discover by trial and error.

Two major components of any metaheuristic algorithms are: intensification and diversification, or exploitation and exploration (Blum and Roli, 2003).

Diversification means to generate diverse solutions so as to explore the search space on a global scale, while intensification means to focus the search in a local region knowing that a current good solution is found in this region.

A good balance between intensification and diversification should be found during the selection of the best solutions to improve the rate of algorithm convergence. The selection of the best ensures that solutions will converge to the optimum, while diversification via randomization allows the search to espace from local optima and, at the same time, increases the diversity of solutions.

A good combination of these two major components will usually ensure that global optimality is achievable.

NP-complete problems problem-specific approximating solutions chess alpha-beta pruning heurisitic algorithm

meta-heuristic algorithms are problem independent; don’t know anything about the problem we want to solve black box method use underlying features of the problems

genetic heuristic simulated annealing particle swarm optimization metaheuristic

References:

Metaheuristic Optimization