Jaká je teorie výpočetní složitosti?
Teorie výpočetní složitosti je oblastí matematiky a informatiky, která se týká zdrojů nezbytných k řešení problémů v počítačovém systému. K dispozici je řada technik pro stanovení požadavků na zdroj problému. Některé problémy nemusí být pro existující počítačové systémy proveditelné kvůli jejich požadavkům na zdroje. Vědci klasifikují problémy s obtížemi a mohou rozdělit výpočty na polynomiální (P) versus neeckermistické polynom (NP). Počítačový systém může mít omezení, která znemožňují problém funkčně nemožné vyřešit, protože nemá dostupné zdroje. Jak se počítačová technologie zlepšuje, dříve neřešitelný problém by se mohl s pomocí nových technologií a výzkumu v oblasti teorie výpočetní složitosti stát řešitelným problémem. Rozpouštětelnost problému není nutně určena jeho složitostí, ale naAlgoritmy použité k jeho řešení.
V teorii výpočetní složitosti je problém P problém, který lze vyřešit v polynomiálním čase s přímým algoritmem. Mohlo by to stále vyžadovat značné zdroje, ale je to jak vyvávitelné, tak kontrolovatelné pomocí počítače. Takové problémy lze považovat za tak rychle rozřešitelné, pokud má počítač dostupné zdroje pro zpracování potřebných výpočtů.
ProblémyNP jsou složitější. Není možné použít jeden algoritmus a může být nutné použít pokročilejší možnosti, jako jsou paralelní Turingovy stroje, které mohou prozkoumat několik možností. Problém by mohl být tímto způsobem řešitelný, ale bude vyžadovat podstatně více zdrojů. Takové problémy mohou být pro lidské operátory snazší, kteří jsou schopni pokročilého logického myšlení, protože bod zvratu je často spíše logikou než pouhými výpočetními obtížemi. Travel Salesman ProBlem, ve kterém je cílem najít nejúčinnější cestu mezi řadou měst podél trasy, je klasickým příkladem problému NP v teorii výpočetní složitosti.
Klasifikace P versus np problémů prostřednictvím teorie výpočetní složitosti může být složitým úkolem a problémy se mohou po celé propasti posunout tam a zpět. Malá sada výpočetních problémů se úhledně nehodí do žádné kategorie a někdy není klasifikována jako ani jedna, aby to odrážela. Nakonec by mohlo být možné vyvinout algoritmus pro vyřešení problému NP a v některých případech by se mohlo vztahovat na jiné problémy, které mají podobnou strukturu. V jiných však to může být specifické pro problém. Proces zkoumání takových programů a vývoje přístupů k jejich řešení je důležitou oblastí matematiky a informatiky, která přispívá k vývoji pokročilých vysoce výkonných počítačových systémů.