The goal of a branch-and-bound algorithm is to find a value that maximizes or minimizes the value of a real-valued function , called an objective function, among some set of admissible, or candidate solutions. The set is called the search space, or feasible region. The rest of this section assumes that minimization of is desired; this assumption comes without loss of generality, since one can find the maximum value of by finding the minimum of . A B&B algorithm operates according to two principles: