• No results found

Theory of NP-completeness plays a very important role in optimization. It provides a framework for comparing the hardness of different problems and broadly classify them as easy and hard. In this section, we give a brief review of the topic. Interested readers are referred to [98, 159] for a comprehensive treatment of the subject.

The framework of NP-completeness is designed to address the tractability of decision problems. These are problems such that every instance can be answered by either a “yes” or a “no”. Instances that can be answered with a “yes” are referred to as yes-instances for the problem and instances answered by a “no” are no-instances for the problem. Consider for example, the maximum clique problem. This can be phrased as a decision problem as follows.

Clique : Given a graph G = (V, E) and a positive integer c, does there exist a clique of size ≥ c in G?

Each instance of Clique problem is defined by (G, c) and we can solve the maximum clique problem on G by varying c from 1 to n and identifying the largest c for which (G, c) is a yes-instance.

Definition 9. A decision problem Q is said to be in class P if an algorithm exists that can answer it correctly in a running time that is polynomially bounded by its input size.

Polynomial-time algorithms are considered “efficient” and hence problems in class P and their optimization variants are considered to be “easy”. However, most opti- mization problems do not belong to this class. They belong to a larger class and are some of the hardest problems in that class.

Definition 10. A decision problem Q is in class NP if there exists a polynomial-time algorithm A such that:

1. Given a yes-instance x and a binary string y polynomially bounded in length representing a solution, A returns “yes” as the answer for some y that solves x; 2. Given a no-instance x0, for any string y, A returns “no” as the answer.

In other words, decision problem Q is placed in class NP if there exists a polynomial-time algorithm A that responds with a yes for a yes-instance x when solution y that correctly solves x is given as a hint and for a no-instance x0, A cannot

be fooled by any string y representing a solution and it always responds with a no. Note that A does not know how to construct a correct y for a given yes-instance x and can only test it for its correctness. This non-deterministic nature of “guess” y can be included in the description of A and class NP can be redefined as follows. Definition 11. A decision problem Q is said to be in class NP if there exists a non- deterministic polynomial-time algorithm A that can correctly guess a proof y for a yes-instance x and accept it; while on a no-instance x0 for any guess y returns no.

Clearly, P ⊆ NP since any decision problem that can be solved in polynomial time by an algorithm A is also included in class NP by treating A as the non- deterministic algorithm that does not have to guess, but can construct a proof y if it exists. Before we define the concept of NP-completeness, we introduce the notion of reducibility among decision problems.

Definition 12. Let Q1, Q2 be two decision problems. We say Q1 is polynomial-time reducible to Q2 (written as Q1 ∝ Q2) if there exists a polynomial-time algorithm A that, given an instance x of Q1 constructs an instance A(x) of Q2 such that: x is a yes-instance of Q1 if and only if A(x) is a yes-instance of Q2.

The reduction is also qualified as a many-one reduction as many instances x can give rise to the same instance A(x). Note that this relationship sets computational

bounds on the problems relative to each other. Up to polynomial time computations, Q1 is not harder than Q2 (equivalently Q2 is not easier than Q1). Consequently if Q2 is in class P, then so is Q1. On the other hand, if Q1 is intractable, then so is Q2. A meaningful definition of intractability was made possible by the following result that is considered the cornerstone of NP-completeness theory.

Theorem 1 (Cook’s Theorem). Every decision problem in the class NP is polynomial- time many-one reducible to the Satisfiability problem.

A proof of this theorem and the definition of the Satisfiability problem can be found in [98]. However, for our purposes it suffices to note that no problem in NP is harder than a particular problem. Hence there exists a problem that can be considered as the hardest problem in this class. In fact, many such problems exist and it is formalized by the following definitions.

Definition 13. A decision problem Q is NP-hard if every problem in class NP is polynomial-time many-one reducible to Q. An NP-hard problem Q is said to be NP-complete if Q is also in class NP.

Note than in optimization literature when the decision version of a problem is NP- complete, the corresponding optimization problem is NP-hard. Clearly, NP-complete problems are the hardest problems in class NP. If any such problem can be solved by a polynomial-time algorithm, then by polynomial-time reducibility, every problem in this class can be solved in polynomial time. However, no such efficient algorithm has been found for an NP-complete problem after decades of research by the most brilliant minds of our time. The working conjecture in NP-completeness theory is that P 6= NP and there exist problems in NP for which there are no efficient algorithms. Note that it is still an open problem and no proof establishing that P ⊂ NP or that

P = NP is known. It is widely believed by computer scientists that the former is true.

Whenever a new optimization problem is encountered, the first meaningful step is to establish its complexity. That is to either develop a polynomial-time algorithm for it, or show that its decision version is NP-complete. To prove NP-completeness of a problem Q, it suffices to show that,

1. Q ∈ NP ;

2. Some known NP-complete problem is polynomially reducible to Q.

A compendium of known NP-complete problems can be found in [98]. For the clique relaxations studied in this dissertation, such results are unknown and we utilize the aforementioned Clique problem as the known NP-complete problem in our complex- ity results presented in Chapter IV.