This document discusses search algorithms and techniques used in artificial intelligence problems. It covers uninformed and informed search strategies, including local search algorithms. Adversarial search is discussed for games with multiple agents. The document also provides an in-depth explanation of alpha-beta pruning, an optimization of the minimax algorithm used in game trees to prune branches that do not need to be evaluated. Examples are provided to illustrate greedy search, A* search, and alpha-beta pruning.