# Heuristic search

### From Glossary

In mathematical programming, this
is any (purposeful) search procedure to seek a solution to a
global optimization problem, notably to combinatorial programs. In AI, this is a (partially) *informed search*
(vs. *blind search*), using a heuristic function for guidance.

Two types of (blind) search methods are:

*Breadth-first*: expanding a node of least depth;*Depth-first*: expanding a node of greatest depth (requiring backtracking).

A specific class of local heuristic search algorithms is the greedy algorithm. Another type is the 1-Opt for the TSP.

Here are heuristic search strategies that are based on some biological metaphor:

- Ant colony optimization, based on how ants solve problems;
- Genetic algorithm, based on genetics and evolution;
- Neural networks, based on how the brain functions;
- Simulated annealing, based on thermodynamics;
- Tabu search, based on memory-response;
- Target analysis, based on learning.