This document discusses various heuristic search techniques used in artificial intelligence. It begins by defining heuristics as techniques that find approximate solutions faster than classic methods when exact solutions are not possible or not feasible due to time or memory constraints. It then describes heuristic search, hill climbing, simulated annealing, A* search, and best-first search. Hill climbing is presented as an example heuristic technique that evaluates neighboring states to move toward an optimal solution. The document also discusses problems that can occur with hill climbing like getting stuck in local maxima.