Best-first search is a family of algorithms tree-search or graph-search strategy. The key idea is that nodes are selected for expansion using an evaluation function, . We expand the node that appears the best according to . Thus, different choices of yields different search behaviors.

We use a priority queue ordered by increasing , where the node with the lowest is expanded next. Typically, incorporates domain knowledge via a heuristic .