Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 1 / 14 NP-ÚPLNÉ.

Slides:



Advertisements
Podobné prezentace
LOGISTICKÉ SYSTÉMY 14/15.
Advertisements

Normalizace Řada analytiků se mylně domnívá, že pro každý objekt existuje jedno jediné univerzálně použitelné nejlepší řešení bez ohledu na řešený problém.
Rozhodnutelnost.
NEJKRATŠÍ CESTY MEZI VŠEMI UZLY
PLANARITA A TOKY V SÍTÍCH
Stavový prostor. • Existují úlohy, pro které není k dispozici univerzální algoritmus řešení • různé hry • problém batohu, problém obchodního cestujícího.
Zajímavé aplikace teorie grafů
Ekvivalence následujících tří úloh
Aplikace teorie grafů Základní pojmy teorie grafů
ALGO – Algoritmizace 1. cvičení
Genetické algoritmy. V průběhu výpočtu používají náhodné operace. Algoritmus není jednoznačný, může projít více cestami. Nezaručují nalezení řešení.
FORMALIZACE PROJEKTU DO SÍŤOVÉHO GRAFU
LOGISTICKÉ SYSTÉMY 7/14.
Church-Turingova teze Univerzální Turingův stroj Diagonalizace
Fakulta životního prostředí Katedra informatiky a geoinformatiky
TI 7.1 NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6. TI 7.2 Nejkratší cesty z jednoho uzlu Seznámíme se s následujícími pojmy: w-vzdálenost (vzdálenost na.
ORIENTOVANÉ GRAFY V této části se seznámíme s následujícími pojmy:
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Složitost.
KIV/PRO Cvičení Přátelské mince Mějme nově založený stát – Je potřeba vydat vlastní měnu – Uvažujme pouze mince, bankovky zanedbáme Vstup:
Stromy.
Časová složitost algoritmů, řazení a vyhledávání
Třída P (PTIME) DEF: P je třída všech jazyků, které jsou rozhodnutelné deterministickým Turingovým strojem v polynomiálním čase. Neboli: Třída P je.
Výukový materiál zpracován v rámci projektu EU peníze školám Registrační číslo projektu: CZ.1.07/1.5.00/ Šablona III/2VY_32_INOVACE_763.
CW – 05 TEORIE ROZHODOVACÍCH PROCESŮ
VLASTNOSTI GRAFŮ Vlastnosti grafů - kap. 3.
P-těžké, np-těžké a np-úplné problémy
KIV/PRO Cvičení Nejkratší cesta Vstup – N měst – Mezi některými dvojicemi měst vedou obousměrné silnice, zadány délky cest Výstup – Nejkratší.
Problém obchodního cestujícího a příbuzné úlohy
Grafický zápis algoritmů (vývojové diagramy) Test na trojúhelník (trojúhelníková nerovnost) Maximum ze tří čísel s použitím pomocné proměnné Pravoúhlý.
Výpočetní složitost Odhlédneme-li od realizace algoritmu na konkrétním hardwaru a v konkrétním prostředí informačního systému, lze časovou složitost hodnotit.
hledání zlepšující cesty
Barvení grafů Platónská tělesa
Churchova (Turingova) teze
Graf nepřímé úměrnosti
Mlhavost Fuzzy logika, fuzzy množiny, fuzzy čísla
Kanonické indexování vrcholů molekulového grafu Molekulový graf: G = (V, E, L, ,  ) Indexování vrcholů molekulového grafu G: bijekce  : V  I I je indexová.
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)Prohledávání stavového prostoruGRA, LS 2013/14, Lekce 11.
NP-úplné problémy v grafech
Sylabus V rámci PNV budeme řešit konkrétní úlohy a to z následujících oblastí: Nelineární úlohy Řešení nelineárních rovnic Numerická integrace Lineární.
Planarita a toky v sítích
Teorie čísel Prvočíslo Generování prvočísel: Erathosenovo síto
SIGNÁLY A LINEÁRNÍ SYSTÉMY
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)Turingovy strojeGRA, LS 2012/13, Lekce 12 1 / 21 TURINGOVY.
VLASTNOSTI GRAFŮ Doc. RNDr. Josef Kolář, CSc
Výpočetní složitost Odhlédneme od realizace algoritmu na konkrétním hardwaru a v konkrétním prostředí informačního systému časovou složitost hodnotit počtem.
STROMY A KOSTRY Doc. RNDr. Josef Kolář, CSc
© Institut biostatistiky a analýz INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ ANALÝZA A KLASIFIKACE DAT prof. Ing. Jiří Holčík, CSc.
GRAFOVÉ ALGORITMY A ZÁKLADY TEORIE SLOŽITOSTI Doc. RNDr
McEllisova šifra.
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)Toky v sítích IIGRA, LS 2013/14, Lekce 10 1 / 35 TOKY V.
Funkce, funkční závislosti Lineární funkce. Obsah: Definice funkce Grafické znázornění funkce Konstantní funkce Lineární funkce Vlastnosti lineárních.
Lineární funkce Rozdělení lineárních funkcí Popis jednotlivých funkcí.
Složitost algoritmu Vybrané problémy: Při analýze složitosti jednotlivých algoritmů často narazíme na problém, jakým způsobem vzít v úvahu velikost vstupu.
NEJKRATŠÍ CESTY Nejkratší cesty - kap. 6.
Definiční obor a obor hodnot
STROMY A KOSTRY Stromy a kostry - odst. 3.2.
Znázornění dopravní sítě grafem a kostra grafu Předmět: Teorie dopravy - cvičení Ing. František Lachnit, Ph.D.
Operační výzkum Lineární programování Dopravní úloha nevyrovnaná.
Překladače 5. Syntaktická analýza
Maximální propustnost rovinné dopravní sítě
MINIMÁLNÍ KOSTRA V GRAFU
Výpočetní složitost Odhlédneme-li od realizace algoritmu na konkrétním hardwaru a v konkrétním prostředí informačního systému, lze časovou složitost hodnotit.
Běžné reprezentace grafu
Výpočetní složitost algoritmů
DEFINICE FUNKCE Název školy: Základní škola Karla Klíče Hostinné
Různé algoritmy mají různou složitost
Toky v sítích.
Název projektu: Moderní výuka s využitím ICT
Třída P (PTIME)  .
Transkript prezentace:

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 1 / 14 NP-ÚPLNÉ PROBLÉMY Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze BI-GRA, LS 2012/2013, Lekce 13 Doc. Josef Kolář (ČVUT)NP-úplné problémy

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 2 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 2 / 14 NP-úplné problémy Seznámíme se s následujícími pojmy: složitost problému, polynomiálně / exponenciálně složité problémy, třída složitosti P, rozhodovací / optimalizační varianta problému nedeterministický algoritmus, polynomiálně omezený nedeterministický algoritmus, třída složitosti NP, NP-úplné problémy Skripta kap. 9, str

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 3 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 3 / 14 Členění problémů podle složitosti řešení problémy řešitelné neřešitelné snadno hůře... těžko VELMI těžko

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 4 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 4 / 14 (Výpočetní) složitost problémů jedná se o problémy, nikoliv o algoritmy zajímají nás nejlepší možné algoritmy jejich řešení časová / paměťová složitost O(n k ) – polynomiálně složité (snadné, zvládnutelné) O(e n ) – exponenciálně složité (těžké, prakticky nezvládnutelné) Příklad: 1.Součet dvou binárních čísel x 1 x 2 x 3... x n a y 1 y 2 y 3... y m počet základních operací je O(n+m) ~ snadný problém 2.Rozklad binárního čísla x 1 x 2 x 3... x n na prvočinitele předpokládaná exponenciální složitost ~ těžký problém

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 5 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 5 / 14 Hledání prvočíselného dělitele čísla N (hrubou silou): 1. k= celá část(  N) 2. for (i=2; i<=k; i++) { if (N % i == 0) return i; } Počet základních operací ~  N, tedy pro n-bitové číslo N ~ 2 n,  N ~ 2 n/2 ~ e n.ln2/2 exponenciální složitost ? Existuje O(n k ) algoritmus ? ?Je polynomiální složitost "lepší" než exponenciální? n 1000 :: e n... exponenciální je "lepší" pro n<9500 Třída složitosti P (polynomiální) obsahuje problémy, pro které existuje O(n k ) složitý algoritmus řešení (Výpočetní) složitost problémů

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 6 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 6 / 14 "Velmi těžko" řešitelné problémy Plnění krabic Máme krabice s jednotkovým objemem a n předmětů s objemem s 1, s 2, s 3,..., s n. Rozhodovací úloha: Pro dané k určit, zda lze těchto n předmětů uložit do k krabic. Problém batohu Máme batoh s kapacitou K a n předmětů o velikosti s 1, s 2, s 3,..., s n a ceně c 1, c 2, c 3,..., c n (vše kladná celá čísla). Rozhodovací úloha: Pro dané (kladné celé) k určit, zda lze do batohu uložit nějakou podmnožinou předmětů v ceně přesně k.

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 7 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 7 / 14 Součet podmnožiny Máme n předmětů s objemem s 1, s 2, s 3,..., s n (kladná celá čísla). Rozhodovací úloha: Pro dané k určit, zda existuje podmnožina předmětů s objemem přesně k. Rozhodovací úloha obarvení grafu Pro daný (obyčejný) graf G =  H,U  a kladné celé číslo k určit, zda existuje obarvení grafu G pomocí k barev. Rozhodovací úloha o Hamiltonovské kružnici grafu Pro daný (obyčejný) graf G =  H,U  určit, zda v něm existuje Hamiltonovská kružnice (ta prochází všemi uzly). (podobně pro Hamiltonovskou cestu) "Velmi těžko" řešitelné problémy

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 8 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 8 / 14 Problém obchodního cestujícího Pro daný (obyčejný) graf G =  H,U  s ohodnocením hran w: H  R + a dané číslo k určit, zda v něm existuje Hamiltonovská kružnice s ohodnocením nejvýše rovným k. Splnitelnost logických formulí Literál – logická proměnná nebo její negace Klausule – logický součet libovolného počtu literálů Konjunktivní normální forma (CNF) – logický součin libovolného počtu klausulí Rozhodovací úloha Pro logickou formuli  danou pomocí CNF určit, zda existuje přiřazení true/false hodnot proměnným této formule, které dá celé formuli hodnotu true. "Velmi těžko" řešitelné problémy

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 9 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 9 / 14 Uvedené úlohy mají i své optimalizační varianty, např. Problém obchodního cestujícího Pro daný (obyčejný) graf G =  H,U  s ohodnocením hran w: H  R + určit Hamiltonovskou kružnici s minimálním ohodnocením. Co mají tyto úlohy společného? Umíme je řešit, ale není znám polynomiálně složitý algoritmus, NICMÉNĚ není vyloučeno, že existuje... "Velmi těžko" řešitelné problémy

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 10 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 Co kdybychom řešení uměli uhádnout? (např. pro součet podmnožiny bychom dodali vybrané prvky) Pak už jen stačí ověřit, že jejich součet je opravdu roven k Takové "řešení" lze použít pro každou z uvedených úloh, přitom ověření lze vždy zajistit v polynomiálním čase. Tyto úlohy tedy mají nedeterministické polynomiálně (NP) složité řešení "Velmi těžko" řešitelné problémy

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 11 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 Nedeterministický algoritmus pro rozhodovací úlohy má následující dvě fáze: 1. nedeterministická fáze do paměti se zapíše nějaký řetěz znaků (uhádnuté řešení) 2. deterministická fáze použije se deterministický algoritmus pro určení, zda řetěz představuje opravdu řešení zadané úlohy Nedeterministický algoritmus je polynomiálné omezený, pokud existuje konstanta k tak, že pro lib. vstup délky n, pro který je výsledek ANO, existuje výpočet délky O(n k ) s výsledkem ANO. Nedeterministický algoritmus

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 12 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 Třída složitosti NP - množina rozhodovacích úloh, pro které existuje polynomiálně omezený nedeterministický algoritmus řešení. Všechny dříve uvedené úlohy (plnění krabic, problém batohu, součet podmnožiny, obarvení grafu, Hamiltonovská kružnice/cesta, problém obchodního cestujícího, splnitelnost CNF (SAT, dokonce i 3SAT ale pozor na 2SAT) patří do třídy NP. P  NP (jasné) P  NP nebo P = NP ??? (problém století) Třída složitosti NP

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 13 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 Princip redukovatelnosti T1 ⊲ T2 umíme řešit úlohu T2 umíme polynomiálně převést úlohu T1 na T2 NP-úplná úloha je taková úloha T  NP, pro kterou je každá úloha S  NP redukovatelná na T. Věta (Cook 71): Problém splnitelnosti logických formulí je NP-úplný. P NP-úplné NP P=NP Třída složitosti NP

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 14 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 Příklad: Redukce 3SAT na INDEP. SET 3SAT je problém splnitelnosti, kde klausule obsahují max. 3 literály, např. (  x  y   z) (x   y  z) (x  y  z) (  x   y). Sestrojíme odpovídající graf : K 3 / K 2 pro k. klausuli, hrany mezi  u a u xx zz y xz yy xz y xx yy 3SAT je splnitelný, právě když vytvořený graf má nezávislou množinu uzlů velikosti k (k je počet klausulí).

Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 15 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce / 14 INFORMACE KE ZKOUŠKÁM PŘEDTERMÍN letos nestiháme TERMÍNY ROZSTŘELU (vypsané jako ZKOUŠKA) UT ČT ( ), UT ( ) TERMÍNY 2. ČÁSTI (vypsané jako JEDNORÁZOVÉ AKCE) PÁ (8.00), ST (8.00) (7.45) (7.45) DALŠÍ TERMÍNY budou později nebo radši ne – sedíme u státnic!