Candidate solution

From Wikipedia, the free encyclopedia
Jump to: navigation, search

In optimization (a branch of mathematics) and search algorithms (a topic in computer science), a candidate solution is a member of a set of possible solutions to a given problem.[citation needed] A candidate solution does not have to be a likely or reasonable solution to the problem—it is simply in the set that satisfies all constraints; that is, it is in the set of feasible solutions. Algorithms for solving various types of optimization problems often narrow the set of candidate solutions down to a subset of the feasible solutions, whose points remain as candidate solutions while the other feasible solutions are henceforth excluded as candidates.

The space of all candidate solutions, before any feasible points have been excluded, is called the feasible region, feasible set, search space, or solution space.[citation needed] This is the set of all possible solutions that satisfy the problem's constraints. Constraint satisfaction is the process of finding a point in the feasible set.

Genetic algorithm[edit]

In the case of the genetic algorithm, the candidate solutions are the individuals in the population being evolved by the algorithm.

Calculus[edit]

In calculus, an optimal solution is sought using the first derivative test: the first derivative of the function being optimized is equated to zero, and any values of the choice variable(s) that satisfy this equation are viewed as candidate solutions (while those that do not are ruled out as candidates). There are several ways in which a candidate solution might not be an actual solution. First, it might give a minimum when a maximum is being sought (or vice versa), and second, it might give neither a minimum nor a maximum but rather a saddle point or an inflection point, at which a temporary pause in the local rise or fall of the function occurs. Such candidate solutions may be able to be ruled out by use of the second derivative test, the satisfaction of which is sufficient for the candidate solution to be at least locally optimal. Third, a candidate solution may be a local optimum but not a global optimum.

Linear programming[edit]

A series of linear programming constraints on two variables produces a region of possible values for those variables. Solvable two-variable problems will have a feasible region in the shape of a convex simple polygon. In an algorithm that tests feasible points sequentially, each tested point is in turn a candidate solution.

In the simplex method for solving linear programming problems, a vertex of the feasible polytope is selected as the initial candidate solution and is tested for optimality; if it is rejected as the optimum, an adjacent vertex is considered as the next candidate solution. This process is continued until a candidate solution is found to be the optimum.