Explore tens of thousands of sets crafted by our community.
Heuristic Search Algorithms
5
Flashcards
0/5
A* Search Algorithm
The A* Search Algorithm is a pathfinding and graph traversal algorithm that is widely used for its performance and accuracy. It combines the best features of Dijkstra's Algorithm (favoring vertices that are close to the start point) and the Greedy Best-First Search (favoring vertices that are close to the goal). It is considered heuristic because it uses a heuristic function to estimate the lowest cost path from a given vertex to the goal, often noted as where is the cost from the start to and is the heuristic estimate from to the goal.
Tabu Search
Tabu Search is a local search metaheuristic that guides a local heuristic search procedure to explore the solution space beyond local optimality. It is considered heuristic as it uses memory structures that describe the visited solutions or user-defined rules to avoid cycling back to previously encountered suboptimal solutions. It makes use of a 'tabu list' that stores recently visited solutions and forbids or penalizes their selection, allowing the algorithm to escape local minima and explore more of the solution space.
Simulated Annealing
Simulated Annealing is inspired by the process of annealing in metallurgy. This algorithm is used to find an approximate global optimum in a large search space and works by starting with a high 'temperature' that is slowly 'cooled down'. The heuristic aspect is in the acceptance probability of worse solutions as a way to escape local optima, typically represented as where is the current energy state, is the energy of the new state, and is the temperature.
Genetic Algorithm
Genetic Algorithms (GAs) are inspired by the process of natural selection. They are used to generate high-quality solutions for optimization and search problems by iteratively improving a population of individual solutions. The heuristic nature of GAs lies in their use of operations like selection, crossover, and mutation to evolve solutions without any guarantee of optimality. They are considered heuristic as they mimic biological evolution, and the best solution 'emerges' from the process rather than being directly calculated.
Greedy Algorithm
Greedy Algorithms make a sequence of choices, each of which is the locally optimum choice at the time, with the hope of finding a global optimum. They are considered heuristic because they do not always produce the optimal solution for all problems, but can quickly find a good enough solution for a wide range of problems especially when a problem has the 'greedy-choice property' and an 'optimal substructure'. This heuristic approach is used when speed is important and an exact solution is not necessary.
© Hypatia.Tech. 2024 All rights reserved.