# What are the differences between heuristics and metaheuristics?

Hi all,

I have been trying to find any difference between heuristics and metaheuristics, can somebody explain?

I have been trying to find any difference between heuristics and metaheuristics, can somebody explain?

## Popular Answers

H.E. LehtihetAs already written by some contributors of this thread, heuristics are problem-dependent techniques. As such, they usually are adapted to the problem at hand and they try to take full advantage of the particularities of this problem. However, because they are often too greedy, they usually get trapped in a local optimum and thus fail, in general, to obtain the global optimum solution.

Meta-heuristics, on the other hand, are problem-independent techniques. As such, they do not take advantage of any specificity of the problem and, therefore, can be used as black boxes. In general, they are not greedy. In fact, they may even accept a temporary deterioration of the solution (see for example, the simulated-annealing technique), which allows them to explore more thoroughly the solution space and thus to get a hopefully better solution (that sometimes will coincide with the global optimum). Please note that although a meta-heuristic is a problem-independent technique, it is nonetheless necessary to do some fine-tuning of its intrinsic parameters in order to adapt the technique to the problem at hand.

You might want to take a look also at the so-called hyper-heuristics that go a step beyond meta-heuristics. The particularity of hyper-heuristics is that their search space is not the usual space of the solutions but is rather the space of heuristics or meta-heuristics. Indeed, hyper-heuristics can be viewed as "heuristics to search for heuristics". There is also a slightly different category defined as "heuristics to generate heuristics". (see links)

http://www.inf.ufpr.br/aurora/disciplinas/topicosia2/livros/search/hyper.pdf

http://www.cs.nott.ac.uk/TR/SUB/SUB-0906241418-2747.pdf

Antonio Bolufé-Röhler· University of HavanaMany heuristic algorithms are very specific and problem-dependent. On the other hand, a metaheuristic is a high-level problem-independent algorithmic frame-work that provides a set of guidelines or strategies to develop heuristic optimization algorithms. But a concrete definition has been elusive and in practice many researchers and practitioners interchange these terms. Thus, the term metaheuristic is also used to refer to a problem specific implementation of a heuristic optimization algorithm according to the guidelines expressed in such a framework.

## All Answers (29)

Philip Metzger· ResearchGateWhile on the otherhand a Meta (beyond) heuristic is a semi-mythical method for finding good heuristics for particular problems. For example: "What parameter settings do I use to get good results when applying heuristic method X to problem Y?".

The attached document good help you further in understanding the difference by application.

A Comparison between Heuristic and Meta-Heuristic Methods for Solving the Multiple Traveling Salesman Problem.

By San Nah Sze, and Wei King Tiong

Jose Caceres Cruz· Universitat Oberta de CatalunyaMeta-heuristics are general-purpose algorithms that can be applied to solve almost any optimization problem. They may be viewed as upper level general methodologies that can be used as a guiding strategy in designing underlying heuristics..."

Leonardo Dagnino Chiwiacowsky· Universidade do Vale do Rio dos SinosJardean Stjames· Empire State CollegeGloria Cerasela Crisan· University of Bacau1. Exact method: it provides the optimum for any instance of the problem.

2. Approximate method: it provides a result of a certain quality, for any instance of the problem. This means that the distance from this result to the optimum is known.

3. Heuristic method: for many instances of the problem, it provides a result that is “good enough”. The heuristic methods are used for their speed; the other methods can be very expensive when considering computing resources. So, you balance the quality of the result with the time spent on computation. It is possible that the heuristic method fails on certain instances (it cannot find any result), but these situations are extremely rare.

All this discussion supposes that you have the optimization problem.

But what about groups of problems?

Meta-heuristic is a framework: some general directions on how to solve a set of problems. Some successful meta-heuristics are inspired by nature. One example is the Ant Colony Optimization (ACO, see http://mitpress.mit.edu/catalog/item/default.asp?ttype=2&tid=10139). When solving a specific problem, you can choose the solution representation, the local search modules, and so on, in order to be more efficient and to exploit the problem's characteristics.

For example, for the TSP (Traveler Salesman Problem) you can use the brute force approach (it is an exact method), or you can code an algorithm that follows the ACO (and so you are coding a heuristic application, based on ACO meta-heuristic).

Shreya Malani· Microsoft IDCZenon Medina-Zuñiga· Autonomous University of TamaulipasSo heuristic is a term relative to results for a problem and a no guarantee obtained solutions.

Metaheuristic methods is also a heuristic with a powerful mechanism to achieve better solutions.

Thanks to all,.

Elias D. Niño· Universidad del Norte (Colombia)I hope you are doing well. Heuristic are designed for the solution to specific problems, for instance Dijkstra and Floyd. Meta-heuristic are master strategies for the solution of problem under some conditions for instance MODS and Ant Colony inspired algorithms.

I hope this help you!

Best regards,

Elias Nino.

Mohsen Davarynejad· Delft University Of TechnologyMohammad Dib· Université de Technologie de Belfort-MontbéliardMetaheuristic is a generalized solving method like GA, TS, etc.

Tarcísio Souza Costa· Leibniz Universität HannoverNima H.Ensaniyat· Islamic Azad UniversityA metaheuristic is a method for solving very general classes of problems. It combines objective functions or heuristics in an abstract and hopefully efficient way, usually without utilizing deeper insight into their structure, i. e., by treating them as black-box-procedures" (http://www.it-weise.de/projects/book.pdf)

I think it depends on the problem to choose a method. (sometimes entering complexity to the problem reduces the efficiency of the solution)

Anoop Verma· Wayne State UniversityEisa Alanazi· University of ReginaUsually Metaheuristics are incomplete methods. They do not guarantee finding global *best* solution. They often find an approximation to it. Heuristics ,although not always, are done in a way to guarantee finding the best solution (being consistent heuristic function). Heuristics try to answer the question: which node should I expand next?

Samuel Deleplanque· Université Libre de BruxellesThe heuristics are specific to the problem. The Metaheuristics are different by its genericity (not specific to the problem, in a certain way it's like a pattern).

Thanasis Anthopoulos· Renishaw plcH.E. LehtihetAs already written by some contributors of this thread, heuristics are problem-dependent techniques. As such, they usually are adapted to the problem at hand and they try to take full advantage of the particularities of this problem. However, because they are often too greedy, they usually get trapped in a local optimum and thus fail, in general, to obtain the global optimum solution.

Meta-heuristics, on the other hand, are problem-independent techniques. As such, they do not take advantage of any specificity of the problem and, therefore, can be used as black boxes. In general, they are not greedy. In fact, they may even accept a temporary deterioration of the solution (see for example, the simulated-annealing technique), which allows them to explore more thoroughly the solution space and thus to get a hopefully better solution (that sometimes will coincide with the global optimum). Please note that although a meta-heuristic is a problem-independent technique, it is nonetheless necessary to do some fine-tuning of its intrinsic parameters in order to adapt the technique to the problem at hand.

You might want to take a look also at the so-called hyper-heuristics that go a step beyond meta-heuristics. The particularity of hyper-heuristics is that their search space is not the usual space of the solutions but is rather the space of heuristics or meta-heuristics. Indeed, hyper-heuristics can be viewed as "heuristics to search for heuristics". There is also a slightly different category defined as "heuristics to generate heuristics". (see links)

http://www.inf.ufpr.br/aurora/disciplinas/topicosia2/livros/search/hyper.pdf

http://www.cs.nott.ac.uk/TR/SUB/SUB-0906241418-2747.pdf

Pankaj Agrrawal· University of MaineMetaheuristics are used for combinatorial optimization in which an optimal solution is sought over a discrete search-space. An example problem is the traveling salesman problem where the search-space of candidate solutions grows faster than exponentially as the size of the problem increases, which makes an exhaustive search for the optimal solution infeasible. Additionally, multidimensional combinatorial problems, including most design problems in engineering such as form-finding and behavior-finding, suffer from the curse of dimensionality, which also makes them infeasible for exhaustive search or analytical methods. Popular metaheuristics for combinatorial problems include simulated annealing by Kirkpatrick et al.,[9] genetic algorithms by Holland et al.,[10] scatter search[11] and tabu search[12] by Glover. Literature review on metaheuristic optimization,[13] suggested that it was Fred Glover who coined the word metaheuristics [14] http://en.wikipedia.org/wiki/Metaheuristic

Hope this sheds some light to the origins of these words/concepts...

Ali. Akbar. Shaikh· krishnagar govt. collegeNegar Ahmadi· Delft University of Technologyhttp://www.waset.org/journals/waset/v1/v1-56.pdf

Stefan Voss· Universität HamburgWe have a nice (hopefully you agree) survey on this available, e.g., at the following link:

https://www.researchgate.net/publication/226711844_Metaheuristics_Intelligent_Problem_Solving?ev=prf_pub

Finally, let me add, that hybridizing metaheuristics with mathematical programming leads to something we call MATHEURISTICS; see http://en.wikipedia.org/wiki/Matheuristics .

## Chapter: Metaheuristics: Intelligent Problem Solving

ABSTRACT:Metaheuristics support managers in decision making with robust tools providing high quality solutions to important problems in business, engineering, economics and science in reasonable time horizons. While finding exact solutions in these applications still poses a real challenge despite the impact of recent advances in computer technology and the great interactions between computer science, management science/operations research and mathematics, (meta-) heuristics still seem to be the methods of choice in many (not to say most) applications. In this chapter we give some insight into the state of the art of metaheuristics. It focuses on the significant progress regarding the methods themselves as well as the advances regarding their interplay and hybridization with exact methods.DeletedCarlos Eduardo Maldonado· Universidad del RosarioHeuristics are concern in one problem at the time, whereas metaheuristics work on sets of problems, joining them, f.i., in terms of isomorphisms and other characteristics.

However, the most salient distinction is that - vis-à-vis the history of science, heuristics corresponds to classical science, and metaheuristics as more adequately used when working with complex systems or behaviors. In fact, metaheuristics is one of the methods in complex theory.

Antonio Bolufé-Röhler· University of HavanaMany heuristic algorithms are very specific and problem-dependent. On the other hand, a metaheuristic is a high-level problem-independent algorithmic frame-work that provides a set of guidelines or strategies to develop heuristic optimization algorithms. But a concrete definition has been elusive and in practice many researchers and practitioners interchange these terms. Thus, the term metaheuristic is also used to refer to a problem specific implementation of a heuristic optimization algorithm according to the guidelines expressed in such a framework.

Anantkumar Umbarkar· Walchand College of Engineering, Sanglican not distinguish.

Ramy A. Fathy· National Telecommunication Regulatory AuthorityBy a mere linguistic definition, a heuristic is a process involving or serving as an aid to learning, discovery, or problem-solving by experimental and especially trial-and-error methods <heuristic techniques> <a heuristic assumption>; also : of or relating to exploratory problem-solving techniques that utilize self-educating techniques (as the evaluation of feedback) to improve performance <a heuristic computer program>.

Meta-heuristics on the other hand simply provide a framework beyond the experimental problem solving methods. Hence the term "meta", i.e. beyond in Greek. Meta-heuristics mainly involve the parallel probabilistic (can be changed based on the internal fine tuning of the algorithms parameters) exploitation and exploration of the solution space in order to search for sub-optimal solutions. They do provide a means to realise the probabilistic escape of local minima, a feature not catered for (at least in the generic default sense) in traditional heuristic algorithms.

Hope that brings some new insights on the very well written information of our previous colleagues in this thread.

Emile Glorieux· Högskolan VästI find this discussion very interesting. I totally agree with that heuristics are typically only suited for a very specific problem. On the other hand, metaheuristics are more generally applicable to a wider range of problems.

I do still have the following question. Is it a general characteristic of heuristics that these are greedy, and thereby generally get stuck in local optima? Whereas metaheuristics are in general less greedy and can escape from local optima. Or is this only true for some heuristics/metaheuristics?

Can you help by adding an answer?