List of NP-complete problems

Short description: none

This is a dynamic list and may never be able to satisfy particular standards for completeness. You can help by expanding it with reliably sourced entries.

This is a list of some of the more commonly known problems that are NP-complete when expressed as decision problems. As there are thousands of such problems known, this list is in no way comprehensive. Many problems of this type can be found in (Garey Johnson).

## Contents

* 1 Graphs and hypergraphs
* 2 Mathematical programming
* 3 Formal languages and string processing
* 4 Games and puzzles
* 5 Other
* 6 See also
* 7 Notes
* 8 References
* 9 External links

## Graphs and hypergraphs

Graphs occur frequently in everyday applications. Examples include biological or social networks, which contain hundreds, thousands and even billions of nodes in some cases (e.g. Facebook or LinkedIn).

* 1-planarity[1]
* 3-dimensional matching[2][3]: SP1
* Bandwidth problem[3]: GT40
* Bipartite dimension[3]: GT18
* Capacitated minimum spanning tree[3]: ND5
* Route inspection problem (also called Chinese postman problem) for mixed graphs (having both directed and undirected edges). The program is solvable in polynomial time if the graph has all undirected or all directed edges. Variants include the rural postman problem.[3]: ND25, ND27
* Clique cover problem[2][3]: GT17
* Clique problem[2][3]: GT19
* Complete coloring, a.k.a. achromatic number[3]: GT5
* Cycle rank
* Degree-constrained spanning tree[3]: ND1
* Domatic number[3]: GT3
* Dominating set, a.k.a. domination number[3]: GT2

NP-complete special cases include the edge dominating set problem, i.e., the dominating set problem in line graphs. NP-complete variants include the connected dominating set problem and the maximum leaf spanning tree problem.[3]: ND2

* Feedback vertex set[2][3]: GT7
* Feedback arc set[2][3]: GT8
* Graph coloring[2][3]: GT4
* Graph homomorphism problem[3]: GT52
* Graph partition into subgraphs of specific types (triangles, isomorphic subgraphs, Hamiltonian subgraphs, forests, perfect matchings) are known NP-complete. Partition into cliques is the same problem as coloring the complement of the given graph. A related problem is to find a partition that is optimal terms of the number of edges between parts.[3]: GT11, GT12, GT13, GT14, GT15, GT16, ND14
* Grundy number of a directed graph.[3]: GT56
* Hamiltonian completion[3]: GT34
* Hamiltonian path problem, directed and undirected.[2][3]: GT37, GT38, GT39
* Induced subgraph isomorphism problem
* Graph intersection number[3]: GT59
* Longest path problem[3]: ND29
* Maximum bipartite subgraph or (especially with weighted edges) maximum cut.[2][3]: GT25, ND16
* Maximum common subgraph isomorphism problem[3]: GT49
* Maximum independent set[3]: GT20
* Maximum Induced path[3]: GT23
* Minimum maximal independent set a.k.a. minimum independent dominating set[4]

NP-complete special cases include the minimum maximal matching problem,[3]: GT10 which is essentially equal to the edge dominating set problem (see above).

* Metric dimension of a graph[3]: GT61
* Metric k-center
* Minimum degree spanning tree
* Minimum k-cut
* Minimum k-spanning tree
* Minor testing (checking whether an input graph G contains an input graph H as a minor); the same holds with topological minors
* Steiner tree, or Minimum spanning tree for a subset of the vertices of a graph.[2] (The minimum spanning tree for an entire graph is solvable in polynomial time.)
* Modularity maximization[5]
* Monochromatic triangle[3]: GT6
* Pathwidth,[6] or, equivalently, interval thickness, and vertex separation number[7]
* Rank coloring
* k-Chinese postman
* Shortest total path length spanning tree[3]: ND3
* Slope number two testing[8]
* Recognizing string graphs[9]
* Subgraph isomorphism problem[3]: GT48
* Treewidth[6]
* Testing whether a tree may be represented as Euclidean minimum spanning tree
* Vertex cover[2][3]: GT1
* Minimum Wiener connector problem

## Mathematical programming

* 3-partition problem[3]: SP15
* Bin packing problem[3]: SR1
* Bottleneck traveling salesman[3]: ND24
* Uncapacitated facility location problem
* Flow Shop Scheduling Problem
* Generalized assignment problem
* Integer programming. The variant where variables are required to be 0 or 1, called zero-one linear programming, and several other variants are also NP-complete[2][3]: MP1
* Some problems related to job-shop scheduling
* Knapsack problem, quadratic knapsack problem, and several variants[2][3]: MP9
* Some problems related to multiprocessor scheduling
* Numerical 3-dimensional matching[3]: SP16
* Open-shop scheduling
* Partition problem[2][3]: SP12
* Quadratic assignment problem[3]: ND43
* Quadratic programming (NP-hard in some cases, P if convex)
* Subset sum problem[3]: SP13
* Variations on the traveling salesman problem. The problem for graphs is NP-complete if the edge lengths are assumed integers. The problem for points on the plane is NP-complete with the discretized Euclidean metric and rectilinear metric. The problem is known to be NP-hard with the (non-discretized) Euclidean metric.[3]: ND22, ND23

## Formal languages and string processing

* Closest string[10]
* Longest common subsequence problem over multiple sequences[3]: SR10
* The bounded variant of the Post correspondence problem[3]: SR11
* Shortest common supersequence over multiple sequences[3]: SR8
* Extension of the string-to-string correction problem[11][3]: SR8

## Games and puzzles

* Bag (Corral)[12]
* Battleship
* Bulls and Cows, marketed as Master Mind: certain optimisation problems but not the game itself.
* Edge-matching puzzles
* Fillomino[13]
* (Generalized) FreeCell[14]
* Goishi Hiroi
* Hashiwokakero[15]
* Heyawake[16]
* (Generalized) Instant Insanity[3]: GP15
* Kakuro (Cross Sums)[17]
* Kingdomino[18]
* Kuromasu (also known as Kurodoko)[19]
* LaserTank[20]
* Lemmings (with a polynomial time limit)[21]
* Light Up[22]
* Mahjong solitaire (with looking below tiles)
* Masyu[23]
* Minesweeper Consistency Problem[24] (but see Scott, Stege, & van Rooij[25])
* Nonograms
* Numberlink
* Nurikabe[26]
* (Generalized) Pandemic[27]
* Peg solitaire
* n-Queens completion
* Optimal solution for the N×N×N Rubik's Cube[28]
* SameGame
* Shakashaka
* Slither Link on a variety of grids[29][30][31]
* (Generalized) Sudoku[29][32]
* Tatamibari
* Tentai Show
* Problems related to Tetris[33]
* Verbal arithmetic

## Other

* Berth allocation problem[34]
* Betweenness
* Assembling an optimal Bitcoin block.[35]
* Boolean satisfiability problem (SAT).[2][3]: LO1 There are many variations that are also NP-complete. An important variant is where each clause has exactly three literals (3SAT), since it is used in the proof of many other NP-completeness results.[3]: p. 48
* Circuit satisfiability problem
* Conjunctive Boolean query[3]: SR31
* Cyclic ordering[36]
* Exact cover problem. Remains NP-complete for 3-sets. Solvable in polynomial time for 2-sets (this is a matching).[2][3]: SP2
* Finding the global minimum solution of a Hartree-Fock problem[37]
* Upward planarity testing[8]
* Hospitals-and-residents problem with couples
* Knot genus[38]
* Latin square completion (the problem of determining if a partially filled square can be completed)
* Maximum 2-satisfiability[3]: LO5
* Maximum volume submatrix – Problem of selecting the best conditioned subset of a larger m×n matrix. This class of problem is associated with Rank revealing QR factorizations and D optimal experimental design.[39]
* Minimal addition chains for sequences.[40] The complexity of minimal addition chains for individual numbers is unknown.[41]
* Modal logic S5-Satisfiability
* Pancake sorting distance problem for strings[42]
* Solubility of two-variable quadratic polynomials over the integers.[43] Given positive integers A,B,C, decide existence of positive integers x,y such that Ax2+By−C=0
* By the same article[43] existence of bounded modular square roots with arbitrarily composite modulus. Given positive integers A,B,C≥0, decide existence of an integer x∈[0,C] such that x2≡AmodB. The problem remains NP-complete even if a prime factorization of B is provided.
* Serializability of database histories[3]: SR33
* Set cover (also called "minimum cover" problem). This is equivalent, by transposing the incidence matrix, to the hitting set problem.[2][3]: SP5, SP8
* Set packing[2][3]: SP3
* Set splitting problem[3]: SP4
* Scheduling to minimize weighted completion time
* Block Sorting[44] (Sorting by Block Moves)
* Sparse approximation
* Variations of the Steiner tree problem. Specifically, with the discretized Euclidean metric, rectilinear metric. The problem is known to be NP-hard with the (non-discretized) Euclidean metric.[3]: ND13
* Three-dimensional Ising model[45]

## See also

* Existential theory of the reals § Complete problems
* Karp's 21 NP-complete problems
* List of PSPACE-complete problems
* Reduction (complexity)

## Notes

1. ↑ Grigoriev & Bodlaender (2007). harv error: no target: CITEREFGrigorievBodlaender2007 (help)
2. ↑ 2.00 2.01 2.02 2.03 2.04 2.05 2.06 2.07 2.08 2.09 2.10 2.11 2.12 2.13 2.14 2.15 2.16 (Karp 1972)
3. ↑ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 3.21 3.22 3.23 3.24 3.25 3.26 3.27 3.28 3.29 3.30 3.31 3.32 3.33 3.34 3.35 3.36 3.37 3.38 3.39 3.40 3.41 3.42 3.43 3.44 3.45 3.46 3.47 3.48 3.49 3.50 3.51 3.52 3.53 3.54 3.55 3.56 (Garey Johnson)
4. ↑ Minimum Independent Dominating Set
5. ↑ Brandes, Ulrik; Delling, Daniel; Gaertler, Marco; Görke, Robert; Hoefer, Martin; Nikoloski, Zoran; Wagner, Dorothea (2006), Maximizing Modularity is hard, Bibcode: 2006physics...8255B
6. ↑ 6.0 6.1 (Arnborg Corneil)
7. ↑ (Kashiwabara Fujisawa); (Ohtsuki Mori); (Lengauer 1981).
8. ↑ 8.0 8.1 Garg, Ashim; Tamassia, Roberto (1995). "On the computational complexity of upward and rectilinear planarity testing". Lecture Notes in Computer Science. 894/1995. pp. 286–297. doi:10.1007/3-540-58950-3_384. ISBN 978-3-540-58950-1.
9. ↑ Schaefer, Marcus; Sedgwick, Eric; Štefankovič, Daniel (September 2003). "Recognizing string graphs in NP". Journal of Computer and System Sciences 67 (2): 365–380. doi:10.1016/S0022-0000(03)00045-X.
10. ↑ Lanctot, J. Kevin; Li, Ming; Ma, Bin; Wang, Shaojiu; Zhang, Louxin (2003), "Distinguishing string selection problems", Information and Computation 185 (1): 41–55, doi:10.1016/S0890-5401(03)00057-9
11. ↑ Wagner, Robert A. (May 1975). "On the complexity of the Extended String-to-String Correction Problem". Proceedings of seventh annual ACM symposium on Theory of computing - STOC '75. pp. 218–223. doi:10.1145/800116.803771. ISBN 9781450374194. https://dl.acm.org/doi/10.1145/800116.803771.
12. ↑ Friedman, Erich. "Corral Puzzles are NP-complete". https://erich-friedman.github.io/papers/corral.pdf.
13. ↑ Yato, Takauki (2003). Complexity and Completeness of Finding Another Solution and its Application to Puzzles.
14. ↑ Malte Helmert, Complexity results for standard benchmark domains in planning, Artificial Intelligence 143(2):219-262, 2003.
15. ↑ "HASHIWOKAKERO Is NP-Complete". http://www.cs.au.dk/~koda/hashiwokakero.
16. ↑ (Holzer Ruepp)
17. ↑ Takahiro, Seta (February 5, 2002). "The complexities of puzzles, cross sum and their another solution problems (ASP)". http://www-imai.is.s.u-tokyo.ac.jp/~seta/paper/senior_thesis/seniorthesis.pdf.
18. ↑ Nguyen, Viet-Ha; Perrot, Kévin; Vallet, Mathieu (2020-06-24). "NP-completeness of the game KingdominoTM" (in en). Theoretical Computer Science 822: 23–35. doi:10.1016/j.tcs.2020.04.007. ISSN 0304-3975.
19. ↑ Kölker, Jonas (2012). "Kurodoko is NP-complete". Journal of Information Processing 20 (3): 694–706. doi:10.2197/ipsjjip.20.694. https://pdfs.semanticscholar.org/4971/aa310e07aaa07c1ba7299f519b39ba5c5195.pdf.
20. ↑ Alexandersson, Per; Restadh, Petter (2020). "LaserTank is NP-Complete" (in en). Mathematical Aspects of Computer and Information Sciences. Lecture Notes in Computer Science. 11989. Springer International Publishing. pp. 333–338. doi:10.1007/978-3-030-43120-4_26. ISBN 978-3-030-43119-8.
21. ↑ Cormode, Graham (2004). "The hardness of the lemmings game, or Oh no, more NP-completeness proofs". http://dimacs.rutgers.edu/~graham/pubs/papers/cormodelemmings.pdf.
22. ↑ Light Up is NP-Complete
23. ↑ Friedman, Erich. "Pearl Puzzles are NP-complete". https://erich-friedman.github.io/papers/pearl/pearl.html.
24. ↑ (Kaye 2000)
25. ↑ Allan Scott, Ulrike Stege, Iris van Rooij, Minesweeper may not be NP-complete but is hard nonetheless, The Mathematical Intelligencer 33:4 (2011), pp. 5–17.
26. ↑ Holzer, Markus; Klein, Andreas; Kutrib, Martin; Ruepp, Oliver (2011). "Computational Complexity of NURIKABE". Fundamenta Informaticae 110 (1–4): 159–174. doi:10.3233/FI-2011-534.
27. ↑ Nakai, Kenichiro; Takenaga, Yasuhiko (2012). "NP-Completeness of Pandemic". Journal of Information Processing 20 (3): 723–726. doi:10.2197/ipsjjip.20.723. ISSN 1882-6652.
28. ↑ Demaine, Erik; Eisenstat, Sarah; Rudoy, Mikhail (2018). "Solving the Rubik's Cube Optimally is NP-complete". 35th Symposium on Theoretical Aspects of Computer Science (STACS 2018). doi:10.4230/LIPIcs.STACS.2018.24.
29. ↑ 29.0 29.1 Sato, Takayuki; Seta, Takahiro (1987). "Complexity and Completeness of Finding Another Solution and Its Application to Puzzles". International Symposium on Algorithms (SIGAL 1987). http://www-imai.is.s.u-tokyo.ac.jp/~yato/data2/SIGAL87-2.pdf. Retrieved 8 April 2017.
30. ↑ Nukui; Uejima (March 2007). "ASP-Completeness of the Slither Link Puzzle on Several Grids". Ipsj Sig Notes 2007 (23): 129–136. http://ci.nii.ac.jp/naid/110006249219/en/.
31. ↑ Kölker, Jonas (2012). "Selected Slither Link Variants are NP-complete". Journal of Information Processing 20 (3): 709–712. doi:10.2197/ipsjjip.20.709.
32. ↑ A SURVEY OF NP-COMPLETE PUZZLES, Section 23; Graham Kendall, Andrew Parkes, Kristian Spoerer; March 2008. (icga2008.pdf)
33. ↑ Demaine, Eric D.; Hohenberger, Susan; Liben-Nowell, David (25–28 July 2003). "Tetris is Hard, Even to Approximate". Proceedings of the 9th International Computing and Combinatorics Conference (COCOON 2003). Big Sky, Montana. http://erikdemaine.org/papers/Tetris_COCOON2003/paper.pdf.
34. ↑ Lim, Andrew (1998), "The berth planning problem", Operations Research Letters 22 (2–3): 105–110, doi:10.1016/S0167-6377(98)00010-8
35. ↑ J. Bonneau, "Bitcoin mining is NP-hard"
36. ↑ Galil, Zvi; Megiddo, Nimrod (October 1977). "Cyclic ordering is NP-complete". Theoretical Computer Science 5 (2): 179–182. doi:10.1016/0304-3975(77)90005-6.
37. ↑ Whitfield, James Daniel; Love, Peter John; Aspuru-Guzik, Alán (2013). "Computational complexity in electronic structure". Phys. Chem. Chem. Phys. 15 (2): 397–411. doi:10.1039/C2CP42695A. PMID 23172634. Bibcode: 2013PCCP...15..397W. https://doi.org/10.1039/C2CP42695A.
38. ↑ Agol, Ian; Hass, Joel; Thurston, William (2002-05-19). "3-manifold knot genus is NP-complete". Proceedings of the thiry-fourth annual ACM symposium on Theory of computing. STOC '02. New York, NY, USA: Association for Computing Machinery. pp. 761–766. doi:10.1145/509907.510016. ISBN 978-1-58113-495-7. https://doi.org/10.1145/509907.510016.
39. ↑ Çivril, Ali; Magdon-Ismail, Malik (2009), "On selecting a maximum volume sub-matrix of a matrix and related problems", Theoretical Computer Science 410 (47–49): 4801–4811, doi:10.1016/j.tcs.2009.06.018, http://www.meliksah.edu.tr/acivril/max-vol-original.pdf
40. ↑ Peter Downey, Benton Leong, and Ravi Sethi. "Computing Sequences with Addition Chains" SIAM J. Comput., 10(3), 638–646, 1981
41. ↑ D. J. Bernstein, "Pippinger's exponentiation algorithm" (draft)
42. ↑ Hurkens, C.; Iersel, L. V.; Keijsper, J.; Kelk, S.; Stougie, L.; Tromp, J. (2007). "Prefix reversals on binary and ternary strings". SIAM J. Discrete Math. 21 (3): 592–611. doi:10.1137/060664252.
43. ↑ 43.0 43.1 Manders, Kenneth; Adleman, Leonard (1976). "NP-complete decision problems for quadratic polynomials". Proceedings of the eighth annual ACM symposium on Theory of computing - STOC '76. pp. 23–29. doi:10.1145/800113.803627. ISBN 9781450374149. https://dl.acm.org/doi/10.1145/800113.803627.
44. ↑ Bein, W. W.; Larmore, L. L.; Latifi, S.; Sudborough, I. H. (2002-01-01). "Block sorting is hard". Proceedings International Symposium on Parallel Architectures, Algorithms and Networks. I-SPAN'02. pp. 307–312. doi:10.1109/ISPAN.2002.1004305. ISBN 978-0-7695-1579-3.
45. ↑ Barry Arthur Cipra, "The Ising Model Is NP-Complete", SIAM News, Vol 33, No 6.

## References

General

* Garey, Michael R.; Johnson, David S. (1979), Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman, ISBN 0-7167-1045-5 . This book is a classic, developing the theory, then cataloguing many NP-Complete problems.
* Cook, S.A. (1971). "The complexity of theorem proving procedures". pp. 151–158. doi:10.1145/800157.805047.
* Karp, Richard M. (1972). "Reducibility among combinatorial problems". in Miller, Raymond E.; Thatcher, James W.. Complexity of Computer Computations. Plenum. pp. 85–103.
* Dunne, P.E.. "An annotated list of selected NP-complete problems". COMP202, Dept. of Computer Science, University of Liverpool. http://www.csc.liv.ac.uk/~ped/teachadmin/COMP202/annotated_np.html.
* Crescenzi, P.. "A compendium of NP optimization problems". KTH NADA, Stockholm. https://www.csc.kth.se/~viggo/problemlist/compendium.html.
* Dahlke, K. "NP-complete problems". Math Reference Project. http://www.mathreference.com/lan-cx-np,intro.html.

Specific problems

* Friedman, E (2002). "Pearl puzzles are NP-complete". Stetson University, DeLand, Florida. https://erich-friedman.github.io/papers/pearl/pearl.html.
* Grigoriev, A (2007). "Algorithms for graphs embeddable with few crossings per edge". Algorithmica 49 (1): 1–11. doi:10.1007/s00453-007-0010-x.
* Hartung, S; Nichterlein, A (2012). "NP-Hardness and Fixed-Parameter Tractability of Realizing Degree Sequences with Directed Acyclic Graphs". How the World Computes. Lecture Notes in Computer Science. 7318. Springer, Berlin, Heidelberg. pp. 283–292. doi:10.1007/978-3-642-30870-3_29. ISBN 978-3-642-30869-7.
* Holzer, Markus; Ruepp, Oliver (2007). "The Troubles of Interior Design–A Complexity Analysis of the Game Heyawake". Springer, Berlin/Heidelberg. pp. 198–212. doi:10.1007/978-3-540-72914-3_18. ISBN 978-3-540-72913-6. http://mediatum.ub.tum.de/doc/1289953/document.pdf.
* Kaye, Richard (2000). "Minesweeper is NP-complete". Mathematical Intelligencer 22 (2): 9–15. doi:10.1007/BF03025367. Further information available online at Richard Kaye's Minesweeper pages .
* Kashiwabara, T.; Fujisawa, T. (1979). "NP-completeness of the problem of finding a minimum-clique-number interval graph containing a given graph as a subgraph". International Symposium on Circuits and Systems. pp. 657–660.
* Ohtsuki, Tatsuo; Mori, Hajimu; Kuh, Ernest S.; Kashiwabara, Toshinobu; Fujisawa, Toshio (1979). "One-dimensional logic gate assignment and interval graphs". IEEE Transactions on Circuits and Systems 26 (9): 675–684. doi:10.1109/TCS.1979.1084695.
* Lengauer, Thomas (1981). "Black-white pebbles and graph separation". Acta Informatica 16 (4): 465–475. doi:10.1007/BF00264496.
* Arnborg, Stefan (1987). "Complexity of finding embeddings in a k-tree". SIAM Journal on Algebraic and Discrete Methods 8 (2): 277–284. doi:10.1137/0608024.
* Cormode, Graham (2004). "The hardness of the lemmings game, or Oh no, more NP-completeness proofs". pp. 65–76.

## External links

* A compendium of NP optimization problems
* Graph of NP-complete Problems

0.00

(0 votes)

Original source: https://en.wikipedia.org/wiki/List of NP-complete problems. Read more

|

Retrieved from "https://handwiki.org/wiki/index.php?title=List_of_NP-complete_problems&oldid=4417301"