Optimization problem
From Wikipedia, the free encyclopedia
In computer science, an optimization problem is the problem to find among all feasible solutions for some problem the best one. More formally, an optimization problem A is a quadruple (I,f,m,g), where
- I is a set of instances;
- given an instance , f(x) is the set of feasible solutions;
- given an instance x and a feasible solution y of x, m(x,y) denotes the measure of y, which is usually a positive real.
- g is the goal function, and is either min or max.
The goal is then to find for some instance x an optimal solution, that is, a feasible solution y with
For each optimization problem, there is a corresponding decision problem that asks whether there is a feasible solution for some particular measure m0.
An NP optimization problem has the following further restrictions:
- I can be recognized in polynomial time, and
- the size of a feasible solution is polynomially bounded by the instance size.
This implies that the corresponding decision problem is in NP. Since interesting optimization problems usually fulfill these criteria, "optimization problem" is often used synonymous with "NP optimization problem".