Problém kliky patří do třídy NP-úplných problémů v oblasti teorie grafů . Poprvé byl formulován v roce 1972 Richardem Karpem . [jeden]
Klika v neorientovaném grafu je podmnožina vrcholů, z nichž každý je spojen hranou grafu. Jinými slovy, je to úplný podgraf původního grafu. Velikost kliky je definována jako počet vrcholů v ní. Problém kliky existuje ve dvou verzích: v problému rozpoznávání je třeba určit, zda v daném grafu G existujeklika o velikosti k , zatímco ve výpočtové variantě je třeba najítkliku o maximální velikosti v grafu. daný graf G.
NP-úplnost problému kliky vyplývá z NP-úplnosti problému nezávislé množiny vrcholů. Je snadné ukázat, že nezbytnou a postačující podmínkou pro existenci kliky o velikosti k je přítomnost nezávislé množiny o velikosti alespoň k v doplňku grafu. To je zřejmé, protože úplnost podgrafu znamená, že jeho doplněk neobsahuje žádné hrany.
Další důkaz NP-úplnosti lze nalézt v Algorithms: Construction and Analysis. [2]
Stejně jako u jiných NP-úplných problémů nebyl dosud nalezen účinný algoritmus pro nalezení kliky dané velikosti. Vyčerpávající prohledávání všech možných podgrafů o velikosti k a kontrola, zda je alespoň jeden z nich úplný, je neefektivní, protože celkový počet takových podgrafů v grafu s vrcholy v se rovná binomickému koeficientu.
Další algoritmus funguje takto: dvě kliky o velikosti n a m jsou „slepeny“ do velké kliky o velikosti n + m a samostatný vrchol grafu se považuje za kliku o velikosti 1 . Algoritmus se ukončí, jakmile nelze provést žádné další sloučení. Doba běhu tohoto algoritmu je lineární, ale je heuristická , protože ne vždy vede k nalezení kliky o maximální velikosti. Příkladem neúspěšného dokončení je případ, kdy jsou vrcholy patřící do maximální kliky odděleny a jsou v menších klikách a ty již nelze „slepit“ dohromady.
Je dokázáno, že za podmínky nerovnosti tříd P a NP neexistuje žádný polynomiální aproximační algoritmus s absolutní chybou rovnou libovolné . Uvažujme graf u - přímý součin grafu a kliky velikosti . Je zřejmé, že klikací číslo grafu se bude rovnat . Předpokládejme, že existuje aproximační algoritmus s absolutní chybou rovnou . Poté zavedeme graf jako vstup a za podmínky dostaneme . Nechť jsou kliky grafů ve tvaru , kde . Poznamenejte si platnost nerovnosti a dosaďte ji do výše uvedené nerovnosti následovně: . Po transformaci dostaneme , což znamená, že existuje taková, že a tedy kliková úloha je řešitelná v polynomiálním čase, což je v rozporu s podmínkou nerovnosti pro třídy P a NP.
NP-úplné problémy | |
---|---|
Maximalizační problém stohování (balení) |
|
teorie grafů teorie množin | |
Algoritmické problémy | |
Logické hry a hádanky | |