p-těžké, np-těžké a np-úplné problémy
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 PresentationTRANSCRIPT
![Page 1: P-těžké, np-těžké a np-úplné problémy](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/1.jpg)
P-těžké, np-těžké a np-úplné problémy
![Page 2: P-těžké, np-těžké a np-úplné problémy](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/2.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/3.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/4.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/5.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/6.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/7.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/8.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/9.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/10.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/11.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/12.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/13.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/14.jpg)
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](https://reader031.vdocuments.site/reader031/viewer/2022020219/56813bc5550346895da4f18d/html5/thumbnails/15.jpg)
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