p-těžké, np-těžké a np-úplné problémy

15
P-těžké, np-těžké a np-úplné problémy

Upload: selah

Post on 06-Jan-2016

31 views

Category:

Documents


0 download

DESCRIPTION

P-těžké, np-těžké a np-úplné problémy. P-těžké problémy. P-těžký problém je takový, pro který existuje algoritmus, co ho řeší v polynomiálním čase. Np-těžké problémy. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: P-těžké, np-těžké a np-úplné problémy

P-těžké, np-těžké a np-úplné problémy

Page 2: P-těžké, np-těžké a np-úplné problémy

P-těžké problémy

• P-těžký problém je takový, pro který existuje algoritmus, co ho řeší v polynomiálním čase

Page 3: P-těžké, np-těžké a np-úplné problémy

Np-těžké problémy

• Np-těžký problém (nedeterministicky polynomiální problém): existuje nedeterministický algortimus (algoritmus s nápovědou), který problém řeší v polynomiálním čase

Page 4: P-těžké, np-těžké a np-úplné problémy

Klasifikace problémů podle složitosti

• P-těžké

• Np-těžké

• Problémy řešitelné, ale ani nedetrministicky neřešitelné v polynomiálním čase

• Problémy algoritmicky neřešitelné

Page 5: P-těžké, np-těžké a np-úplné problémy

Co se dá poznat

• Problém patří do dané skupiny: stačí najít algoritmus daných vlastností

Page 6: P-těžké, np-těžké a np-úplné problémy

Co je velmi obtížné poznat

• Problém neopatří do dané skupiny:

• Je potřeba dokázat, že algoritmus daných vlastností neexistuje

• Obecně je dokázat neexistenci algoritmu algoritmicky neřešitelný problém

Page 7: P-těžké, np-těžké a np-úplné problémy

Vlastnosti np-úplných problémů

• Jsou np-těžké• Není znám algortimus pro jejich řešení v

polynomiálním čase (pravděpodobně nejsou p-těžké)

• Pokud by byl nalezen deterministický algoritmus pro jejich řešení v polynomiálním čase, dal by se z něj odvodit deterministický algoritmus pro řešení všech np-těžkých úloh v polynomiálním čase

Page 8: P-těžké, np-těžké a np-úplné problémy

SAT problém

• Pro danou výrokovou formuli zjistit, zda je splnitelná, či nikoli

• Například (A & B) ( A & B) je splnitelná (pro B=TRUE, A libovolné)

• (A & B) & ( A & B) není splnitelná

Page 9: P-těžké, np-těžké a np-úplné problémy

SAT problém

• SAT problém je np-těžký

• Existuje jednoduchý deterministický algoritmus na řešení problému, který potřebuje 2n operací

• Jestli existuje lepší algoritmus není známo

Page 10: P-těžké, np-těžké a np-úplné problémy

Modelování výpočtu Turingova stroje pomocí SAT problému

• Konfigurace TS: vnitřní stav a obsah pásky• Instrukce TS: možný přechod z jedné

konfigurace do druhé• Konfigurace budu kódovat výrokovými

proměnnými, možné přechody jejich konjunkcemi, různé varianty disjunkcemi

• Zjistit, zda stroj může přejít z konfigurace A do konfigurace B je výpočetně ekvivalentní SAT problému

• SAT problém je tedy np-úplný

Page 11: P-těžké, np-těžké a np-úplné problémy

Problém úplného podgrafu

• Je dán graf (V,E) a číslo k, existuje v grafu úplný podgraf s k-vrcholy?

• Pro k=3 existuje, pro k=4 ne.

Page 12: P-těžké, np-těžké a np-úplné problémy

Převod na SAT problém

• Výrokovou formuli převedu na konjunkci disjunkcí

• F = (y1 y2) (y2 y3) (y3 y1).

L11 (y1)

L12 (y2)

L21 ( y2)

L22 ( y3)

L31 (y3)

L32 ( y1)

Page 13: P-těžké, np-těžké a np-úplné problémy

Převod na SAT problém

• Najdu úplný podgraf velikosti 3

L11 (y1)

L12 (y2)

L21 ( y2)

L22 ( y3)

L31 (y3)

L32 ( y1)

Page 14: P-těžké, np-těžké a np-úplné problémy

Převod na SAT problém

• Mám dvě splnitelná ohodnocení y1, y2, y3 a y1, y2, y3

L11 (y1)

L12 (y2)

L21 ( y2)

L22 ( y3)

L31 (y3)

L32 ( y1)

Page 15: P-těžké, np-těžké a np-úplné problémy

Další np-úplné problémy

• Problém nezávislé množiny v grafu• Problém barevnosti grafu• TSP• Problém batohu• Problém dvou loupežníků• Problém celočíselného lineárního

programování• Problém rozkladu prvočísel