1: \documentclass[10pt,twoside]{article}
2: \usepackage{graphicx}
3: \usepackage{amsmath}
4: \usepackage{Latex-document}
5:
6: \def\volumeno{III}
7:
8: \markboth{Approximation Thresholds for Combinatorial Optimization
9: Problems}{Uriel Feige}
10:
11: \title{\bf Approximation Thresholds for \vskip -2mm Combinatorial Optimization
12: Problems\vskip 6mm}
13:
14: \author{Uriel Feige\vspace*{-0.5cm}\thanks{Department of Computer Science
15: and Applied Mathematics, The Weizmann Institute, Rehovot 76100, Israel. E-mail: feige@wisdom.weizmann.ac.il}}
16: \date{\vspace{-8mm}}
17:
18: \begin{document}
19:
20: \maketitle
21:
22: \thispagestyle{first} \setcounter{page}{649}
23:
24: \begin{abstract}
25:
26: \vskip 3mm
27:
28: An NP-hard combinatorial optimization problem $\Pi$ is said to
29: have an {\em approximation threshold} if there is some $t$ such
30: that the optimal value of $\Pi$ can be approximated in polynomial
31: time within a ratio of $t$, and it is NP-hard to approximate it
32: within a ratio better than $t$. We survey some of the known
33: approximation threshold results, and discuss the pattern that
34: emerges from the known results.
35:
36: \vskip 4.5mm
37:
38: \noindent {\bf 2000 Mathematics Subject Classification:} 68Q17, 68W25.
39:
40: \noindent {\bf Keywords and Phrases:} Approximation algorithms, NP-hardness,
41: Thresholds.
42: \end{abstract}
43:
44: \vskip 12mm
45:
46: \section{Introduction}
47: \label{sec:1}
48:
49: \vskip-5mm \hspace{5mm}
50:
51: Given an instance $I$ of a combinatorial optimization problem $\Pi$,
52: one wishes to find a feasible solution of optimal value to $I$.
53: For example, in the maximum clique problem, the input instance is
54: a graph $G(V,E)$, a feasible solution is a clique (a set of vertices
55: $S \subset V$ such
56: that for all vertices $u,v \in S$, edge $(u,v)\in E$), the value of the
57: clique is its size,
58: and the objective is to find a feasible solution of maximum value.
59: By introducing an extra parameter $k$ to a combinatorial maximization problem,
60: one can formulate a decision problem of the form ``does $I$ have a feasible
61: solution of value at least $k$?'' (or ``at most $k$'', for a minimization
62: problem). In this work we consider only combinatorial optimization problems
63: whose decision version is NP-complete. Hence solving these problems is
64: NP-hard, informally meaning that there is no polynomial time algorithm
65: that is guaranteed to output the optimal solution for every input instance
66: (unless P=NP).
67: (For information on the theory of
68: NP-completeness, see~\cite{GJ}, or essentially any book on computational
69: complexity.)
70:
71:
72:
73:
74:
75: One way of efficiently coping with NP-hard combinatorial optimization problems
76: is by using polynomial time approximation algorithms. These algorithms
77: produce a feasible solution that is not necessarily optimal.
78: The quality of the
79: approximation algorithm is measured by its approximation ratio: the worst case
80: ratio between the value of the solution found by the algorithm and the value
81: of the optimal solution.
82: Numerous approximation algorithms have been designed for various
83: combinatorial optimization problems, applying a diverse set of algorithmic
84: techniques (such as greedy algorithms, dynamic programming, linear programming
85: relaxations, applications of the probabilistic method, and more).
86: See for example~\cite{hochbaum,vazirani,compendium}.
87:
88:
89: When one attempts to design an approximation algorithm for a specific
90: problem, it is natural to ask whether there
91: are limits to the best approximation ratio achievable.
92: The theory of NP-completeness is useful in this context, allowing one to
93: prove NP-hardness of approximation results. Namely, for some value of $\rho$,
94: achieving an approximation
95: ratio better than $\rho$ is NP-hard.
96: Of particular interest are {\em threshold} results.
97: A combinatorial optimization problem $\Pi$ is said to have an approximation
98: threshold at $t$ if
99: there is a polynomial time algorithm
100: that approximates the optimal value within a ratio of $t$,
101: and a hardness of
102: approximation result that shows that achieving approximation ratios better
103: than $t$ is NP-hard.
104:
105: The notion of an approximation threshold is often not fully appreciated,
106: so let us discuss it in more detail. First, let us make the point that
107: thresholds of approximation (in the sense above) need not exist at all.
108: One may well imagine that for certain problems there is a gradual change
109: in the complexity of achieving various approximation ratios: solving the
110: problem exactly is NP-hard, approximating it within a ratio of $\rho$
111: can be done in polynomial time, and achieving approximation ratios between
112: $\rho$ and~1 is neither in P nor NP-hard, but rather of some intermediate
113: complexity. The existence of an approximation threshold says that nearly
114: all approximation ratios (except for ratios that differ from the threshold only
115: in low order terms)
116: are either NP-hard to achieve, or in P. This is analogous
117: to the well known empirical observation that ``most'' combinatorial
118: optimization
119: problems that people study turn out to be either in P or NP-hard,
120: with very few exceptions. But note that in the context of approximation
121: ratios, the notion of ``most'' is well defined.
122: The second point that we wish to make is that an NP-hardness of approximation
123: result is really a polynomial time algorithm. This algorithm reduces
124: instances of 3SAT (or of some other NP-complete language) to instances
125: of $\Pi$, and an approximation within a ratio better than $\rho$ for $\Pi$
126: can be used in order to solve 3SAT. Hence the threshold is a meeting point
127: between two polynomial time algorithms: the reduction and the approximation
128: algorithm. Here is another way of looking at it.
129: For problem $\pi$, we can say that approximation ratio $\rho_1$
130: reduces to $\rho_2$ if there is a polynomial time algorithm that can
131: approximate instances of $\pi$ within ratio $\rho_1$ by invoking a subroutine
132: that approximates instances of $\pi$ within ratio $\rho_2$. (Each call
133: to the subroutine counts as one time unit.) Two approximation ratios are
134: equivalent if they are mutually reducible to each other.
135: The existence of a threshold of approximation for problem $\Pi$ says that
136: essentially all approximation ratios for it fall into two equivalent classes
137: (those above the threshold and those below the threshold).
138: A-priori, it is not clear why the number of equivalent classes should be two.
139:
140: Hardness of approximation results are often (though not always)
141: proved using ``PCP techniques''. For more details on these
142: techniques, see for example the survey of Arora~\cite{arora}. We
143: remark that in all cases the hardness results apply also to the
144: problem of {\em estimating} the optimal value for the respective
145: problem. An estimation algorithm is a polynomial time algorithm
146: that outputs an upper bound and a lower bound on the value of the
147: optimal solution (without necessarily producing a solution whose
148: value falls within this range). The estimation ratio of the
149: algorithm is the worst case ratio between the upper bound and the
150: lower bound. An approximation algorithm is stronger than an
151: estimation algorithm in a sense that it supports its estimate by
152: exhibiting a feasible solution of the same value. Potentially,
153: designing estimation algorithms is easier than designing
154: approximation algorithms. See for example the remark in
155: Section~\ref{sec:domatic}
156:
157: For many combinatorial optimization problems, approximation
158: thresholds are known.
159: In Section~\ref{sec:survey}
160: we survey some of these problems.
161: For each such problem, we sketch an efficient algorithm
162: for estimating the optimal value
163: of the solution. The estimation ratios of these algorithms
164: (the analog of approximation ratios) meet the thresholds of approximation
165: for the respective problems (up to low order additive terms),
166: and hence are best possible (unless P=NP).
167: One would expect these estimation algorithms to be the ``state of the art'' in
168: algorithmic design.
169: However, as we shall see, for every problem above there is a
170: {\em core} version for which the best possible estimation algorithm
171: is elementary: it bases its estimate only on easily computable properties
172: of the input instance, such as the number of clauses in a formula,
173: without searching for a solution.
174: The core versions that we present often have the property that
175: Hastad~\cite{hastad2} characterizes
176: as ``non-approximable beyond the random
177: assignment threshold''. In these cases (e.g., max 3SAT),
178: the estimates on the value of
179: the optimal solution are derived from analysing the expected value
180: of a random solution.
181:
182: In contrast, for problems that are known to have a polynomial time
183: approximation scheme (namely, that can be approximated within ratios
184: arbitrarily close to 1), their approximation algorithms do perform
185: an extensive search for a good solution, often using dynamic programming.
186:
187: The empirical findings are discussed in Section~\ref{sec:discussion}
188:
189: \section{A survey of some threshold results}
190: \label{sec:survey}
191:
192: \vskip-5mm \hspace{5mm}
193:
194: In this section we survey some of the known threshold of approximation
195: results. For each problem we show simple lower bounds and
196: upper bounds on
197: the value of the optimal solution. Obtaining any better bounds is NP-hard.
198: (There are certain exceptions to this. For set cover and domatic number
199: the matching hardness result are under the assumption that NP does not
200: have slightly super-polynomial time algorithms. The hardness results for
201: clique and chromatic number
202: assume that NP does not have randomized algorithms that run
203: in expected polynomial time.).
204:
205: {\bf Conventions.} For a graph, $n$ denotes the number of vertices, $m$ denotes
206: the number of edges, $\delta$ denotes the minimum degree, $\Delta$ denotes
207: the maximum degree. For a formula, $n$ denotes the number of variables,
208: $m$ denotes the number of clauses. For each problem we define
209: its inputs, feasible solutions, value of solutions, and objective.
210: We present the known approximation ratios and hardness results, which
211: are given up to low order additive terms.
212: We then present a {\em core} version of the problem. For the core version,
213: we present an upper bound and a
214: lower bound on the value of the optimal solution.
215: Improving over these bounds (in the worst case) is NP-hard.
216: In most cases, we give hints to the proofs of our claims. We also
217: cite references were full proofs can be found.
218:
219:
220: \subsection{Max coverage~\cite{johnson,setcover}}
221:
222: \noindent
223: {\bf Input.} A collection $S_1, \ldots, S_m$ of sets with
224: $\bigcup_{i=1}^m S_i = \{1, \ldots, n\}$. A parameter $k$.
225:
226: \noindent {\bf Feasible solution.} A collection $I$ of $k$
227: indices.
228:
229: \noindent {\bf Value.} Number of covered items, namely
230: $|\bigcup_{i\in I} S_i|$.
231:
232: \noindent
233: {\bf Objective.} Maximize.
234:
235: \noindent {\em Algorithm.} Greedy. Iteratively add to $I$ the set
236: containing the maximum number of yet uncovered items, breaking
237: ties arbitrarily.
238:
239: \noindent
240: {\em Approximation ratio.} $1 - 1/e$.
241:
242: \noindent
243: {\em Hardness.} $1 - 1/e$. %+ \epsilon$, for every $\epsilon > 0$.
244:
245: \noindent
246: {\bf Core.}
247: $d$-regular, $r$-uniform.
248: Every set is of cardinality $d$. Every item is in
249: $r$ sets. $k = n/d$.
250:
251: \noindent
252: {\em Upper bound.} $n$.
253:
254:
255: \noindent
256: {\em Lower bound.} $(1 - 1/e)n$. (Pick $k = {n/d} = {m/r}$ sets at random.)
257:
258:
259: \noindent
260: {\em Hardness of core.} $(1 - 1/e + \epsilon)$ for every
261: $\epsilon > 0$, when $d,r$ are large enough.
262:
263:
264: \noindent {\bf Remarks.} For the special case in which each item
265: belongs to exactly~4 sets, and $k = m/2$, there always is a choice
266: of sets covering at least $15n/16$ items. For very $\epsilon > 0$,
267: a $(1 + \epsilon)15/16$ approximation ratio is
268: NP-hard~\cite{holmerin}.
269:
270:
271: \subsection{Min set cover~\cite{johnson,setcover}}
272:
273: \noindent
274: {\bf Input.} A collection $S_1, \ldots, S_m$ of sets with
275: $\bigcup_{i=1}^m S_i = \{1, \ldots, n\}$.
276:
277:
278: \noindent
279: {\bf Feasible solution.} A set of indices $I$ such that
280: $\bigcup_{i\in I} S_i = \{1, \ldots, n\}$.
281:
282:
283: \noindent
284: {\bf Value.} Number of sets used in the cover, namely, $|I|$.
285:
286: \noindent
287: {\bf Objective.} Minimize.
288:
289: \noindent {\em Algorithm.} Greedy. Iteratively add to $I$ the set
290: containing the maximum number of yet uncovered items, breaking
291: ties arbitrarily.
292:
293: \noindent
294: {\em Approximation ratio.} $\ln n$. %(Slightly better, by low order terms.)
295:
296: \noindent
297: {\em Hardness.} $\ln n$. % for every $\epsilon > 0$.
298:
299: \noindent
300: {\bf Core.}
301: $d$-regular, $r$-uniform.
302: Every set is of cardinality $d$. Every item is in
303: $r$ sets.
304:
305: \noindent
306: {\em Lower bound.} $n/d$.
307:
308: \noindent
309: {\em Upper bound.} $(n/d) \ln n$, up to low order terms.
310: (Include every set in $I$ independently
311: with probability $\frac{\ln n}{r}$.)
312:
313: \noindent
314: {\em Hardness of core.} $\ln n$. %for every $\epsilon > 0$.
315:
316: \noindent {\bf Remarks.} The hardness results for set cover
317: in~\cite{setcover} assume that NP does not have deterministic
318: algorithms that run in slightly super-polynomial time (namely,
319: time $n^{O(\log \log n)}$).
320:
321:
322:
323: \subsection{Domatic number~\cite{FHKS}}
324: \label{sec:domatic}
325:
326: \noindent
327: {\bf Input.}
328: A graph.
329:
330:
331: \noindent
332: {\bf Feasible solution.} A domatic partition of the graph. That is, a partition
333: of the vertices of the graph into disjoint sets, where each set is
334: a dominating set. (A dominating set is a set $S$ of vertices that is adjacent
335: to every vertex not in $S$.)
336:
337:
338:
339: \noindent
340: {\bf Value.} Number of dominating sets in the partition.
341:
342:
343: \noindent
344: {\bf Objective.} Maximize.
345:
346: \noindent {\em Algorithm.} Let $\delta$ be the minimum degree in
347: the graph. Partition the vertices into $(1 - \epsilon)(\delta +
348: 1)/\ln n$ sets at random, where $\epsilon$ is arbitrarily small
349: when $\delta/\ln n$ is large enough. Almost all these sets will be
350: dominating. The sets that are not dominating can be unified with
351: the first of the dominating sets to give a domatic partition. The
352: algorithm can be derandomized to give (a somewhat unnatural)
353: greedy algorithm.
354:
355: \noindent
356: {\em Approximation ratio.} $1/\ln n$.
357:
358: \noindent
359: {\em Hardness.} $1/\ln n$. % for every $\epsilon > 0$.
360:
361: \noindent
362: {\bf Core.} $\delta/\ln n$ is large enough.
363:
364: \noindent
365: {\em Upper bound.} $\delta + 1$.
366:
367:
368: \noindent
369: {\em Lower bound.} $(1 - \epsilon)(\delta + 1)/\ln n$.
370:
371:
372: \noindent
373: {\em Hardness of core.}
374: $(1 + \epsilon)/\ln n$, for every $\epsilon > 0$.
375:
376: \noindent {\bf Remarks.} The hardness results assume that NP does
377: not have deterministic algorithms that run in time $n^{O(\log \log
378: n)}$. The lower bound can be refined to $(1 - \epsilon)(\delta +
379: 1)/\ln \Delta$, where $\Delta$ is the maximum degree in the graph.
380: This is shown using a nonconstructive argument (based on a two
381: phase application of the local lemma of Lovasz). It is not known
382: how to find such a domatic partition in polynomial time.
383:
384:
385: \subsection{$k$-center~\cite{HN,DF,HS}}
386:
387: \noindent
388: {\bf Input.} A metric on a set of $n$ points
389: and a parameter $k < n$.
390:
391: \noindent
392: {\bf Feasible solution.} A set $S$ of $k$ of the points.
393:
394: \noindent
395: {\bf Value.} Distance between $S$ and point furthest away from $S$.
396:
397: \noindent
398: {\bf Objective.} Minimize.
399:
400: \noindent
401: {\em Algorithm.} Greedy.
402: Starting with the empty set, iteratively add into $S$
403: the point furthest away from $S$, resolving ties arbitrarily.
404:
405: \noindent
406: {\em Approximation ratio.} 2.
407:
408: \noindent
409: {\em Hardness.} 2.
410:
411: \noindent
412: {\bf Core.}
413: The $n$ points are vertices of a
414: graph with minimum degree $\delta$,
415: equipped with a shortest distance metric.
416: $k \ge n/(\delta+1)$.
417:
418: \noindent
419: {\em Lower bound.} 1. (Because $k < n$.)
420:
421: \noindent
422: {\em Upper bound.} 2. (As long as there is a vertex of distance more than~2
423: from the current set $S$,
424: every step of the greedy algorithm covers at least $\delta+1$ vertices.)
425:
426: \noindent
427: {\em Hardness of core.} 2.
428: (Because it is
429: NP-hard to tell if the underlying graph has a dominating set of size $k$.)
430:
431:
432:
433: \subsection{Min sum set cover~\cite{FLT}}
434:
435: \noindent
436: {\bf Input.} A collection $S_1, \ldots, S_m$ of sets with
437: $\bigcup_{i=1}^m S_i = \{1, \ldots, n\}$.
438:
439:
440: \noindent
441: {\bf Feasible solution.}
442: A linear ordering. That is, a one to one
443: mapping $f$ from the collection of sets to $\{1, \ldots, m\}$.
444:
445:
446:
447: \noindent
448: {\bf Value.} The average time by which an item is covered.
449: Namely, $\frac{1}{n}\sum_i \min_{\{j|i \in S_j\}} f(j)$.
450:
451:
452: \noindent
453: {\bf Objective.} Minimize.
454:
455: \noindent
456: {\em Algorithm.} Greedy. Iteratively pick the set containing the
457: maximum number of yet uncovered items, breaking ties arbitrarily.
458:
459: \noindent
460: {\em Approximation ratio.} 4.
461:
462: \noindent
463: {\em Hardness.} 4.
464:
465: \noindent
466: {\bf Core.}
467: $d$-regular, $r$-uniform.
468: Every set is of cardinality $d$. Every item is in
469: $r$ sets.
470:
471: \noindent
472: {\em Lower bound.} $n/2d = m/2r$. (Because every set covers $d$ items.)
473:
474:
475: \noindent
476: {\em Upper bound.} $m/(r+1)$. (By ordering the sets at random.)
477:
478:
479:
480:
481: \noindent
482: {\em Hardness of core.} $2 - \epsilon$, for every $\epsilon > 0$,
483: when $r$ is large enough.
484:
485: \noindent {\bf Remarks.} Note that the core has a lower threshold
486: of approximation than the general case.
487:
488:
489: \subsection{Min bandwidth~\cite{unger}}
490:
491: \noindent
492: {\bf Input.}
493: A graph.
494:
495:
496:
497: \noindent
498: {\bf Feasible solution.}
499: A linear arrangement. That is, a one to one
500: mapping $f$ from the set of
501: vertices to $\{1, \ldots, n\}$.
502:
503:
504:
505: \noindent
506: {\bf Value.} Longest stretch of an edge.
507: Namely, the maximum over all edges $(i,j)$ of $|f(i) - f(j)|$.
508:
509: \noindent
510: {\bf Objective.} Minimize.
511:
512:
513:
514: \noindent
515: {\bf Core.}
516: The input graph $G$ is a unit length circular arc graph.
517: Namely, the vertices represent arcs of equal length on a circle.
518: Two vertices are connected by an edge if their respective arcs overlap.
519: Let $\omega(G)$ denote the size of the maximum clique
520: in $G$. (In circular arc graphs,
521: a clique corresponds to
522: a set of mutually
523: intersecting arcs, and $\omega(G)$ can be computed easily.)
524:
525:
526: \noindent
527: {\em Lower bound.}
528: $\omega(G) - 1$.
529:
530: \noindent
531: {\em Upper bound.} $2\omega(G) - 2$.
532:
533:
534: \noindent
535: {\em Hardness of core.} 2. %- \epsilon$, for every $\epsilon > 0$.
536:
537: \noindent {\bf Remarks.} No threshold of approximation is known
538: for the problem on general graphs.
539:
540: \subsection{Max 3XOR~\cite{hastad2}}
541:
542: \noindent
543: {\bf Input.}
544: A logical formula with $n$ variables and $m$ clauses.
545: Every clause is the {\em exclusive or} of three distinct literals.
546:
547:
548: \noindent
549: {\bf Feasible solution.} An assignment to the $n$ variables.
550:
551:
552:
553: \noindent
554: {\bf Value.} Number of clauses that are satisfied.
555:
556:
557: \noindent
558: {\bf Objective.} Maximize.
559:
560: \noindent
561: {\em Algorithm.} Gaussian elimination can be used in order to test if the
562: formula is satisfiable. If the formula is not satisfiable, pick a random
563: assignment to the variables.
564:
565:
566: \noindent
567: {\em Approximation ratio.} $1/2$. (In expectation a random assignments
568: satisfies $m/2$ clauses, whereas no assignment satisfies more
569: than $m$ clauses.)
570:
571: \noindent
572: {\em Hardness.} $1/2$.% + \epsilon$, for every $\epsilon > 0$.
573:
574: \noindent
575: {\bf Core.}
576: Same as above.
577:
578: \noindent
579: {\em Upper bound.}
580: $m$.
581:
582: \noindent
583: {\em Lower bound.}
584: $m/2$.
585:
586: \noindent
587: {\em Hardness of core.}
588: $1/2$. % - \epsilon$, for every $\epsilon > 0$.
589:
590: %\noindent
591: %{\bf Remarks.}
592:
593: \subsection{Max 3AND~\cite{hastad2,zwick}}
594:
595: \noindent
596: {\bf Input.}
597: A logical formula with $n$ variables and $m$ clauses.
598: Every clause is the {\em and} of three literals.
599:
600:
601:
602: \noindent
603: {\bf Feasible solution.} An assignment to the $n$ variables.
604:
605:
606:
607: \noindent
608: {\bf Value.} Number of clauses that are satisfied.
609:
610:
611: \noindent
612: {\bf Objective.} Maximize.
613:
614:
615: \noindent
616: {\em Algorithm.}
617: Based on semidefinite programming.
618:
619: \noindent
620: {\em Approximation ratio.} $1/2$.
621:
622: \noindent
623: {\em Hardness.} $1/2$. %+ \epsilon$, for every $\epsilon > 0$.
624:
625: \noindent
626: {\bf Core.} Pairwise independent version.
627: Every variable appears at most once in each clause.
628: For a pair of variables
629: $x_i$ and $x_j$, let $n_{ij}(0,0)$
630: ($n_{ij}(0,1)$, $n_{ij}(1,0)$, $n_{ij}(1,1)$, respectively) denote the number
631: of clauses in which they both appear negated ($i$ negated and $j$ positive,
632: $i$ positive and $j$ negated, both positive, respectively).
633: Then for every $i$ and $j$,
634: $n_{ij}(0,0) = n_{ij}(0,1) = n_{ij}(1,0) = n_{ij}(1,1)$.
635:
636:
637: \noindent
638: {\em Upper bound.} $m/4$. (Consider the pairs of literals in the satisfied
639: clauses. There must be at least
640: three times as many pairs in unsatisfied clauses.)
641:
642:
643: \noindent
644: {\em Lower bound.} $m/8$. (The expected number of clauses satisfied by a
645: random assignment.)
646:
647:
648: \noindent
649: {\em Hardness of core.} $1/2$.% + \epsilon$, for every $\epsilon > 0$.
650:
651: \noindent {\bf Remarks.} This somewhat complicated core comes up
652: as an afterthought, by analysing the structure of instances that
653: result from the reduction from max 3XOR.
654:
655:
656: \subsection{Max 3SAT~\cite{hastad2,KZ}}
657:
658:
659: \noindent
660: {\bf Input.}
661: A logical formula with $n$ variables and $m$ clauses.
662: Every clause is the {\em or} of three literals.
663:
664:
665:
666: \noindent
667: {\bf Feasible solution.} An assignment to the $n$ variables.
668:
669:
670:
671: \noindent
672: {\bf Value.} Number of clauses that are satisfied.
673:
674:
675: \noindent
676: {\bf Objective.} Maximize.
677:
678:
679: \noindent
680: {\em Algorithm.}
681: Based on semidefinite programming.
682:
683: \noindent
684: {\em Approximation ratio.} $7/8$.
685:
686:
687: \noindent
688: {\em Hardness.} $7/8$. %+ \epsilon$, for every $\epsilon > 0$.
689:
690: \noindent
691: {\bf Core.} In every clause, the three literals are distinct.
692:
693:
694: \noindent
695: {\em Upper bound.} $m$.
696:
697:
698:
699:
700: \noindent
701: {\em Lower bound.} $7m/8$. (The expectation for a random assignment.)
702:
703:
704: \noindent
705: {\em Hardness of core.} $7/8$. %+ \epsilon$, for every $\epsilon > 0$.
706:
707: \noindent {\bf Remarks.} The approximation ratio of the algorithm
708: of~\cite{KZ} is determined using computer assisted analysis.
709:
710:
711:
712: \subsection{Inapproximable problems}
713: \vskip -5mm \hspace{5mm}
714:
715: For some problems the best approximation ratios known are of the form
716: $n^{1 - \epsilon}$ for every $\epsilon > 0$ (where the range of the
717: objective function is between~1 and $n$). This is often interpreted as
718: saying that approximation algorithms are almost helpless with respect
719: to these problems. Among these problems we mention
720: finding the smallest maximal independent set~\cite{hall},
721: max clique~\cite{hastad1}, and chromatic number~\cite{FK}.
722: %and longest directed simple path (attributed to Sanjeev Khanna).
723: The hardness results in~\cite{hastad1,FK} are proved under the assumption
724: that NP does not have expected polynomial time randomized algorithms.
725:
726: \subsection{Thresholds within multiplicative factors}
727: \vskip -5mm \hspace{5mm}
728:
729: For some problems, the best approximation ratio is of the form $O(n^c)$,
730: for some $0 < c < 1$, and there is a hardness of approximation result
731: of the form $\Omega(n^{c'})$, where $c'$ can be chosen arbitrarily close
732: to $c$. We may view these as thresholds of approximation up to a low
733: order multiplicative factor. An interesting example of this sort
734: is the {\em max disjoint paths} problem~\cite{GKRSY}.
735:
736: \noindent
737: {\bf Input.} A directed graph and a set $S$ of pairs of terminals
738: $\{(s_1,t_1), \ldots (s_k,t_k)\}$.
739:
740:
741:
742: \noindent
743: {\bf Feasible solution.} A collection of edge disjoint paths, each connecting
744: $s_i$ to $t_i$ for some $i$.
745:
746:
747:
748: \noindent
749: {\bf Value.} Number of
750: pairs of terminals from $S$ that are connected by some path in the solution.
751:
752: \noindent
753: {\bf Objective.} Maximize.
754:
755: \noindent
756: {\em Algorithm.} Greedy. Iteratively add the shortest path that connects
757: some yet unconnected pair from $S$.
758:
759: \noindent
760: {\em Approximation ratio.} $m^{-1/2}$, where $m$ is the number of arcs
761: in the graph.
762:
763: \noindent
764: {\em Hardness.} $m^{-1/2 + \epsilon}$, for every $\epsilon > 0$.
765:
766: \noindent
767: {\bf Core.}
768: There is a path from $s_1$ to $t_1$.
769:
770:
771: \noindent
772: {\em Upper bound.} $k$. At most all pairs can be connected
773: simultaneously by disjoint paths.
774:
775:
776: \noindent
777: {\em Lower bound.} 1. There is a path from $s_1$ to $t_1$.
778:
779:
780: \noindent
781: {\em Hardness of core.} $1/k$.
782: Here $k$ can be chosen as $m^{1/2 - \epsilon}$ for arbitrarily small
783: $\epsilon$.
784:
785: \section{Discussion}
786: \label{sec:discussion}
787:
788: \vskip-5mm \hspace{5mm}
789:
790: We summarized the pattern presented in Section~\ref{sec:survey} Given an NP-hard combinatorial optimization
791: problem that has an approximation threshold, we identify a core version of the problem. For the core version we
792: identify certain key parameters. Thereafter, an upper bound and a lower bound on the value of the optimal solution
793: is expressed by a formula involving only these parameters. Even an algorithm that examines the input for
794: polynomial time cannot output better lower bounds or upper bounds on the value of the optimal solution (in the
795: worst case, and up to low order terms), unless P=NP.
796:
797: Note that if we do not restrict what qualifies as being
798: a key parameter, then the pattern above can be enforced on essentially
799: any problem with an approximation threshold.
800: We can simply take the key parameter to be the output of an approximation
801: algorithm for the same problem. Likewise, if we do not restrict what
802: qualifies as a core version, we can simply take the core version
803: to be all those input instances on which a certain approximation algorithm
804: outputs a certain value.
805:
806: Hence we would like some restrictions on what may qualify as a key parameter,
807: or as a core version. One option is to enforce a computational complexity
808: restriction. Namely, the core should be such that
809: deciding whether an input instance belongs to the core
810: is computationally easy, for example, computable in logarithmic space.
811: (Note that in this respect, the core that we defined for the max disjoint
812: paths problem may be problematic, because testing whether there is a directed
813: path from $s_1$ to $t_1$ is complete for nondeterministic logarithmic space.)
814: Likewise, computing the key parameters should be easy.
815: Another option is to enforce structural restrictions.
816: For example, membership in the core should be invariant over renaming
817: of variables. Ideally, the notions of ``core'' and ``key parameter''
818: should be defined well enough so that we should be able to say that certain
819: classes of inputs do not qualify as being a core (e.g.,
820: because the class is not closed under certain operations),
821: and that certain parameters
822: are not legitimate parameters to be used by an estimation algorithm.
823: Also, the definitions should allow in principle the possibility that
824: certain problems have approximation thresholds without having a core.
825:
826: Hand in hand with suggesting formal definitions to the notion of a core,
827: it would be useful to collect more data. Namely, to find more approximation
828: threshold results, and to identify plausible core versions to these problems.
829: As the case of min bandwidth shows, one may find core versions even for
830: problems for which an approximation threshold is not known.
831:
832: In this manuscript we mainly addressed the issue of collecting data regarding
833: approximation thresholds, and describing this data using the notion
834: of a core. The issue of uncovering principles that explain why the patterns
835: discussed in this manuscript emerge is left to the reader.
836:
837: \begin{thebibliography}{22}
838:
839: \bibitem{arora}
840: S.~Arora.
841: ``How NP got a new definition: a survey of Probabilistically Checkable
842: Proofs''.
843: In {\em Proceedings of ICM}, 2002.
844:
845:
846: \bibitem{compendium}
847: G.~Ausiello, P.~Crescenzi, G.~Gambosi, V.~Kann, A.~Marchetti-Spaccamela
848: and M.~Protasi.
849: {\em Complexity and Approximation. Combinatorial optimization problems and
850: their approximability properties.}
851: Springer, 1999.
852:
853: %\bibitem{chvatal}
854: %V.~Chvatal.
855: %``A greedy heuristic for the set covering problem''.
856: %{\em Math. Oper. Res., 4, 1979, 233--235.}
857:
858: \bibitem{DF}
859: M.~Dyer and A.~Frieze.
860: ``A simple heuristic for the $p$-center problem''.
861: {\em Oper. Res. Lett., 3, 1985, 285--288.}
862:
863: \bibitem{setcover}
864: U.~Feige.
865: ``A Threshold of $\ln n$ for Approximating Set Cover''.
866: {\em Journal of the ACM}, 45(4), 634--652, 1998.
867:
868:
869: \bibitem{FHKS}
870: U.~Feige, M.~Halldorsson, G.~Kortsarz and A.~Srinivasan.
871: ``Approximating the domatic number''.
872: Submitted to {\em SIAM Journal on Computing}.
873: A preliminary version appeared in
874: {\em Proc. of 32nd STOC, 2000}, 134--143.
875:
876: \bibitem{FK}
877: U.~Feige and J.~Kilian.
878: ``Zero Knowledge and the Chromatic Number''.
879: {\em Journal of Computer and System Sciences}, 57(2), 187--199,
880: 1998.
881:
882: \bibitem{FLT}
883: U.~Feige, L.~Lovasz and P.~Tetali.
884: ``Approximating Min-sum Set Cover''.
885: Manuscript, 2002.
886:
887: \bibitem{GJ}
888: M.~Garey and D.~Johnson.
889: {\em Computers and Intractability: A Guide to the Theory of NP-Completeness}.
890: W.~H.~Freeman and Co., San Francisco, 1979.
891:
892: \bibitem{GKRSY}
893: V.~Guruswami, S.~Khanna, R.~Rajaraman, B.~Shepherd, M.~Yannakakis.
894: ``Near optimal hardness results and approximation algorithms for edge-disjoint
895: paths and related problems''.
896: Proceedings of the 31st Annual ACM symposium on Theory of Computing,
897: 1999, 19--28.
898:
899: \bibitem{hall}
900: M.~Halldorsson.
901: ``Approximating the minimum maximal independence number''.
902: {\em Inform. Process. Lett. 46 (1993) 169--172}.
903:
904: \bibitem{hastad1}
905: J.~Hastad.
906: ``Clique is hard to approximate within $n^{1 - \epsilon}$''.
907: {\em Acta Mathematica}, Vol. 182, 1999, 105--142.
908:
909: \bibitem{hastad2}
910: J.~Hastad.
911: ``Some optimal inapproximability results''.
912: {\em Journal of the ACM}, Vol. 48, 2001, 798--859.
913:
914: \bibitem{HPS}
915: J.~Hastad, S.~Phillips and S.~Safra.
916: ``A well characterized approximation problem''.
917: {\em Information Processing Letters}, 47:6, 1993, 301--305.
918:
919: \bibitem{hochbaum}
920: D.~Hochbaum (editor).
921: {\em Approximation Algorithms for NP-hard Problems}.
922: PWS Publishing Company, 1997.
923:
924: \bibitem{HS}
925: D.~Hochbaum and D.~Shmoys.
926: ``A best possible approximation algorithm for the $k$-center problem''.
927: {\em Math. Oper. Res., 10, 1985, 180--184.}
928:
929: \bibitem{holmerin}
930: J.~Holmerin.
931: ``Vertex cover on 4-regular hypergraphs is hard to approximate within
932: $2 - \epsilon$''.
933: In {\em proceedings of the 34th Annual ACM Symposium on Theory
934: of Computing}, 2002,
935: 544--552.
936:
937: \bibitem{HN}
938: W.~Hsu and G.~Nemhauser.
939: ``Easy and hard bottleneck location problems''.
940: {\em Discrete Applied Math., 1, 1979, 209--216.}
941:
942: \bibitem{johnson}
943: D.~Johnson.
944: ``Approximation algorithms for combinatorial problems''.
945: {\em J. Comput. System Sci. 9, 1974, 256--278}.
946:
947: \bibitem{KZ}
948: H.~Karloff and U.~Zwick.
949: ``A 7/8-approximation algorithm for max 3SAT?''.
950: In {\em Proceedings of the 38th Annual Symposium on Foundations of Computer
951: Science}, 1997,
952: 406--415.
953:
954:
955: %\bibitem{lovasz}
956: %L.~Lovasz. ``On the ratio of the optimal integral and fractional
957: %covers''.
958: %{\em Discrete Mathematics 13 (1975) 383--390}.
959:
960:
961: \bibitem{unger}
962: W.~Unger.
963: ``The complexity of approximating the bandwidth problem''.
964: In {\em Proceedings of the 39th Annual Symposium on Foundations of Computer
965: Science}, 1998, 82--91.
966:
967: \bibitem{vazirani}
968: V.~Vazirani.
969: {\em Approximation Algorithms}.
970: Springer-Verlag, New York, 1999.
971:
972: \bibitem{zwick}
973: U.~Zwick.
974: ``Approximation algorithms for constraint satisfaction problems
975: involving at most three variables per constraint''.
976: {\em Proceedings of SODA}, 1998, 201--210.
977: \end{thebibliography}
978:
979: \label{lastpage}
980:
981: \end{document}
982: