220 likes | 429 Views
Taxonomie problémů, případ NP není P. Všechny rozhodovací problémy. Rozhodnutelné problémy. Přečíslitelné, ale nerozhodnutelné problémy. Nepřečíslitelné problémy. NP problémy. Nikoli NP problémy. Doplňkově přečíslitelné problémy. Doplňkově Nepřečíslitelné problémy. P problémy.
E N D
Taxonomie problémů, případ NP není P Všechny rozhodovací problémy Rozhodnutelné problémy Přečíslitelné, ale nerozhodnutelné problémy Nepřečíslitelné problémy NP problémy Nikoli NP problémy Doplňkově přečíslitelné problémy Doplňkově Nepřečíslitelné problémy P problémy NP, ale ne P problémy NP, ale ne NP úplné NP úplné problémy
Taxonomie problémů, případ NP je P Všechny rozhodovací problémy Rozhodnutelné problémy Přečíslitelné, ale nerozhodnutelné problémy Nepřečíslitelné problémy NP problémy Nikoli NP problémy Doplňkově přečíslitelné problémy Doplňkově Nepřečíslitelné problémy P problémy NP, ale ne P problémy Toto vše je to samé, jako NP NP, ale ne NP úplné NP úplné problémy
Jak obejít nepřijatelnou časovou složitost • 1. Nahradit daný problém jiným problémem, který v polynomiálním čase řešit umíme a jehož řešení „není příliš odlišné“ od řešení původního problému, které nás zajímá, nebo se od něj příliš neliší „v převážné většině případů“. • 2. Užít algoritmus pro řešení původního problému, jehož pesimistická časová složitost sice není polynomiální, nalézt však takovou jeho modifikaci, při které k časově neúnosně dlouhému výpočtu dochází spíše výjimečně a ve „většině“ případů je potřebná doba přijatelná. • 3. Zpochybnit Churchovu tezi, tedy pokusit se o nalezení takového technického prostředku pro výpočet, který bude „umět více“, než Turingův stroj. To ovšem určitě nemůže být současný počítač založený na von Neumannově architektuře.
Gradientní algoritmy V řadě optimalizačních algoritmů je vhodné volit metodu postupného přibližování k optimu tak, že přiblížení volíme „tím směrem“, kde se sledovaná hodnota zlepšuje nejrychleji. Je to jako když horolezec chce dosáhnout vrcholu hory tak, že leze tím směrem, kterým je svah nejpříkřejší. V řadě případů to k cíli vede. Ne však vždy. Může se snadno stát, že horolezec, který si dal za cíl zdolat nejvyšší vrchol pohoří vyleze do sedla mezi dvěma vrcholy a na základě zvoleného principu vyleze na ten nižší z obou.
Genetické algoritmy • Genetické algoritmy jsou založeny na Darwinově evolučním principu vývoje populace živých organizmů přirozeným výběrem. V něm se genetická informace nové generace vytváří kombinováním (křížením) genetické informace úspěšných jedinců generace předchozí s připuštěním určitých samovolně vznikajících mutací.
Neuronové sítě • Modelují naše představy o funkci mozku u vyšších živočichů a člověka.
Paraelní systémy Tradiční paralelizmus (výpočetní systémy na principu SIMD, MIMD, multicube, … ) pro řešení úloh, kde není znám polynomiálně složitý algoritmus příliš nepomohou. Je-li K procesorů, zvýší se propustnost systému nejvýše K- krát. Třídu složitosti to neovlivní.
Kvantové počítače • Foton se může nacházet „současně na více místech“ (s různou pravděpodobností). Nemá deterministicky určenou polohu. To dává šanci elementární částice užít přímo pro modelování nedeterministického Turingova stroje či jiného modelu nedeterministického výpočtu. • Ve stádiu předběžných úvah a neurčitých záměrů
První úspěšný pokus, 1989 • Vzdálenost 37cm
Chemické počítače • Data jsou reprezentována různými koncentracemi chemikálií na vstupu. Výpočet je modelován průběhem chemické reakce. • Ve stádiu předběžných úvah a neurčitých záměrů
DNA počítače • Myšlenka založena se schopnosti řetězců aminokyselin DNA vytvářet masivně vlastní kopie paralelně. Výpočet by byl realizován jako biologický experiment. Pokud se aminokyseliny spojí do vhodného řetězce, lze jej považovat za řešení úlohy. • Lepší perspektivu skýtají možná peptidy (12 bází místo 4 bází u DNA). • Ve stádiu předběžných experimretnů
DNA ČIPEhudShapiro (2004) Dokáže vyhodnotit pravdivost jednoduchých formulí výrokové logiky. Například (A and B) or C
Analogové počítače • Jsou starší než číslicové. • Ke škodě věci se na ně poněkud pozapomenulo. • Vytvoří se fyzikální, obvykle spojitě pracující model děje (mechanický, hydraulický, elektromagnetický, …), který se řídí stejnými nebo podobnými zákony jako řešený problém. • Nechá se proběhnout vývoj na tomto modelu. • Výsledek poskytne informaci o řešení původního problému. • Dávno známé, dnes možná neprávem poněkud opomíjené
Mlhavost • Možné příčiny nejistoty: • Stochastický charakter jevu (zítra bude pršet). • Kvantová nejistota (teplota vody v umyvadle je 10 stupňů) • Mlhavost pojmů (jsem vysoký člověk)
Fuzzy množiny • Klasická teorie množin : prvek do množiny patří, nebo nepatří. • Exisstuje charakteristická funkce množiny A A, MA. • MA = 1, pokud x A, MA = 0, pokud není x A. • Fuzzy množina je určena svou charakteristickou funkcí μAz univerza U na interval <0,1> • μA (x)= 1, pokud x je určitě v A. • μA (x)= 0, pokud x určitě není v A. • μAje mezi 0 a 1, pokud nevíme jistě, zda x je v A, nebo není.
Fuzzy množiny • Nosič A: supp(A)={xU|μA (x) > 0}. • Jádro A: core(A)={xU|μA (x) = 1}. • Výška fuzzy množiny: sup(μA (x)). • Normální fuzzy množina: Výška je rovna 1. • α-hladina fuzzy množiny A {xU|μA (x) ≥ α}. • Α-řez fuzzy množiny A {xU|μA (x) = α}.
Operace s fuzzy množinami • A je podmnožina of B: μA (x) ≤ μB(x) • B je doplněk of A: μB(x) = 1 - μA(x) • C je (standardní) sjednocení A a B: μC(x)=max(μA(x), μB(x)) • C je (standardní) průnik A a B:μC(x)=min(μA(x),μB(x))
Fuzzy čísla • Nechťa≤b≤c≤djsou 4 reálná čísla, která splňují: • μA(x)=0 , prox<a and x>d • μA(x)=1 , pro x mezi ba c • μA(x) je rostoucí meziaab. • μA(x) je klesající mezi c a d. • Takovou množinu A nazýváme fuzzy interval. • Pokud b=c nazýváme tuto množinu fuzzy číslo.