A heuristic approach to a problem is an empirical search or optimization method that often works at solving the problem, but doesn't have any of the rigorous proof that people like physicists and mathematicians expect. Nobody knows if it will *always* give the *best* answer to the problem. See HeuristicRule for more information.

A MetaHeuristic is a semi-mythical method for finding good heuristics for particular problems. It's a notion that comes up a lot in MachineLearning, EvolutionaryAlgorithms, and FuzzyLogic applications:

- "What parameter settings do I use to get good results when applying heuristic method X to problem Y?"
- "How do I adjust the parameters of heuristic X so I get better results on problem Y?"
- "Which is 'better', heuristic X or heuristic Y?"

You bump your head against the MetaHeuristic and MetaOptimization problem whenever you hear somebody say "I tried a GeneticAlgorithm, but the results weren't any better than the old method," or "It's really hard to design FuzzyLogic parameters empirically." (both roughly present in this Wiki as of this writing) --BillTozier

Another take: A heuristic is a pretty good rule. A metaheuristic is a pretty good rule for finding pretty good rules.

One of the most important things to remember about metaheuristics is that there's NoFreeLunch. It's so important, it has its own theorem, the NoFreeLunchTheorem.

See also MetaOptimization

EditText of this page (last edited May 12, 2012) or FindPage with title or text search