The document describes heuristic search algorithms including best first search, branch and bound search. Best first search maintains a priority queue of nodes and expands the node with the lowest cost function first. Branch and bound finds the optimal solution by keeping track of the best solution found so far and abandoning partial solutions that cannot improve on the best. It uses pruning to reduce the number of explored nodes. Both algorithms use concepts like traversing the root node and its neighbors in ascending order of distance from the root until reaching the goal node.