Co je to DNA Computing, jak funguje a proč je tak důležitý

V posledních deseti letech narážejí inženýři při vývoji výkonnějších počítačů na tvrdou fyzikální realitu: tranzistory, vypínače, které pohánějí počítačové procesory, nelze zmenšit na současnou velikost. Při pohledu mimo křemíkový čip se v současné době vyvíjí intuitivní alternativa využívající DNA k provádění stejných druhů složitých výpočtů, jaké nyní provádějí křemíkové tranzistory. Co je to však DNA computing, jak DNA computing funguje a proč je to tak velký problém?“

Beyond The Transistor

IC Chip
Zdroj: Fritzchens Fritz / Flickr

Problém tranzistorů spočívá v tom, že nyní existují v měřítku několika nanometrů – jen několik atomů křemíku. Prakticky je nelze vyrobit menší, než jsou nyní.

Pokud by se zmenšily ještě více, elektrický proud protékající tranzistorem by snadno unikal do ostatních součástek v okolí nebo by se tranzistor vlivem tepla deformoval, čímž by se stal nepoužitelným. K tomu, aby tranzistor fungoval, potřebujete určitý minimální počet atomů a my jsme této hranice funkčně dosáhli.

Inženýři našli určité řešení tohoto problému pomocí vícejádrových a multiprocesorových systémů, které zvyšují výpočetní výkon, aniž by bylo nutné tranzistory dále zmenšovat, ale i to s sebou nese kompromisy v podobě náročnosti programování a energetických nároků, takže pokud doufáme, že se v budoucnu dočkáme výkonnějších počítačů, je zapotřebí jiné řešení.

VÍTEJTE TAKÉ: KOGNITIVNÍ VÝPOČETNÍ TECHNIKA:

I když se v poslední době hodně píše o kvantových výpočtech, DNA výpočty mohou být stejně výkonné nebo dokonce výkonnější než kvantové výpočty a nenarážejí ani zdaleka na taková omezení stability jako kvantové výpočty. Navíc víme, že to funguje; sami jsme živým příkladem ukládání dat a výpočetní síly DNA výpočtů.

Problémem DNA výpočtů je, že ve srovnání s klasickými výpočty jsou bolestně pomalé. Evoluce měla stovky milionů let na to, aby vyvinula složitou sekvenci DNA, která existuje v každé naší buňce, takže DNA je zvyklá pracovat podle geologických časových měřítek, nikoliv podle několika gigahertzů moderních klasických procesorů.

Jak tedy výpočty DNA fungují a proč se jimi zabýváme, když jsou tak pomalé?

Co je to DNA Computing, jak funguje a proč je to takový problém?“

DNA Helix
Zdroj:

Abychom pochopili, co je to DNA computing, jak funguje a proč je DNA computing taková věc, musíme o něm nejprve přestat uvažovat jako o nějaké náhradě za naše každodenní používání klasického počítače; na DNA počítači nebudeme v dohledné době hrát hry, pokud by něco takového bylo vůbec možné. Křemíkové čipy tu s námi budou ještě hodně dlouho.

Počítače DNA bychom používali k řešení problémů, které přesahují možnosti klasického počítače, stejně jako kvantové počítače dokážou prolomit šifrování RSA během několika okamžiků, zatímco klasickému počítači by to mohlo trvat tisíce let.

Počítače DNA poprvé popsal v roce 1994 počítačový vědec Leonard Adleman z University of Southern California. Poté, co si přečetl něco o struktuře DNA, byl inspirován k napsání článku do časopisu Science, v němž ukázal, jak lze DNA použít k nechvalně známému matematickému a informatickému problému známému jako problém směrované Hamiltonovy cesty, běžně nazývanému problém „putujícího obchodníka“ (ačkoli problém Hamiltonovy cesty je poněkud odlišnou verzí problému putujícího obchodníka, pro naše účely jsou v podstatě zaměnitelné).

Co je to problém putujícího obchodníka?“

Problém putujícího obchodníka
Zdroj: StodolaObrázky

Podle definice problému obchodního cestujícího má firma obchodního cestujícího, který musí navštívit n měst a obvolat je, přičemž každé město může navštívit pouze jednou. Jaká posloupnost navštívených měst poskytuje nejkratší, a tedy nejlevnější cestu?

Když je n rovno 5, lze problém vyřešit ručně na kusu papíru a klasický počítač může relativně rychle otestovat všechny možné cesty. Ale co když je n rovno 20? Nalezení nejkratší cesty přes 20 měst se stává výpočetně mnohem náročnější a klasickému počítači by trvalo exponenciálně déle, než by našel odpověď.

Zkuste najít nejkratší cestu mezi 500 městy a klasickému počítači by nalezení nejkratší cesty trvalo déle než celý život vesmíru, protože jediný způsob, jak ověřit, že jsme našli nejkratší cestu, je ověřit každou jednotlivou permutaci měst. Existují některé algoritmy využívající dynamické výpočty, které mohou teoreticky snížit počet potřebných kontrol (a skutečný problém Hamiltonovy cesty nevyžaduje kontrolu každého uzlu v grafu), ale to by mohlo ušetřit několik milionů let; problém bude stále všechno, jen ne výpočetně nemožný na klasickém počítači.

Jak tento problém řeší výpočet DNA

DNA šroubovice
Zdroj: NIH / Flickr

Adlemanovi se podařilo prokázat, že DNA lze sestavit tak, že zkumavka plná bloků DNA se může sestavit tak, aby zakódovala všechny možné cesty v problému putujícího obchodníka najednou.

V DNA je genetické kódování reprezentováno čtyřmi různými molekulami, které se nazývají A, T, C a G. Tyto čtyři „bity“, pokud jsou zřetězeny dohromady, mohou obsahovat neuvěřitelné množství dat. Vždyť lidský genom je zakódován v něčem, co se vejde do jediného jádra buňky.

Smícháním těchto čtyř molekul ve zkumavce se molekuly přirozeně poskládaly do vláken DNA. Pokud nějaká kombinace těchto molekul představuje město a letovou dráhu, mohlo by každé vlákno DNA představovat jinou letovou dráhu pro prodavače, přičemž všechny se počítají najednou při syntéze paralelně se skládajících vláken DNA.

Poté by šlo jednoduše o odfiltrování delších cest, dokud by nezbyla jen ta nejkratší. Ve svém článku ukázal, jak by se to dalo provést pomocí 7 měst a řešení problému by bylo zakódováno hned po syntéze vláken DNA.

Počítače DNA
Zdroj:

Důvodem, proč to vyvolalo vzrušení, byla skutečnost, že struktury DNA jsou levné, relativně snadno se vyrábějí a jsou škálovatelné. Výkon, který může výpočetní technika DNA teoreticky mít, není omezen, protože její výkon roste s tím, čím více molekul do rovnice přidáte, a na rozdíl od křemíkových tranzistorů, které mohou provádět jednu logickou operaci najednou, mohou tyto struktury DNA teoreticky provádět tolik výpočtů najednou, kolik je potřeba k vyřešení problému, a to najednou.

Problémem je však rychlost. Přestože Adlemanovo řešení problému obchodního cestujícího bylo do jeho vláken DNA ve zkumavce zakódováno během několika okamžiků, trvalo několik dní filtrování špatných řešení, než bylo nalezeno hledané optimální řešení – po pečlivé přípravě na tento jediný výpočet.

Přesto se jednalo o rozumný koncept a potenciál neuvěřitelného zvýšení kapacity paměti a rychlosti výpočtů byl zřejmý. To odstartovalo dvě desetiletí výzkumu, jak vytvořit praktické výpočty s DNA realitou.

Jaké jsou výhody výpočtů s DNA?

DNA Helix
Zdroj:

Jak ukázal Adlemanův článek, hlavní výhodou DNA výpočtů oproti klasickým výpočtům – a do jisté míry i kvantovým výpočtům – je to, že mohou provádět nespočet výpočtů paralelně. Tato myšlenka paralelních výpočtů není nová a v klasických výpočtech se napodobuje již desítky let.

Když na počítači spustíte dvě aplikace současně, ve skutečnosti neběží souběžně; v každém okamžiku se provádí pouze jedna instrukce. Pokud tedy posloucháte hudbu a nakupujete online pomocí prohlížeče, počítač ve skutečnosti používá něco, čemu se říká přepínání kontextu, aby vytvořil zdání souběhu.

Spustí instrukci pro jeden program, po provedení instrukce uloží stav tohoto programu a odstraní program z aktivní paměti. Poté načte dříve uložený stav druhého programu, spustí jeho další instrukci, uloží jeho nový stav a poté jej vyřadí z aktivní paměti. Poté znovu načte první program, aby provedl jeho další instrukci, a tak dále.

Prováděním milionů inkrementálních kroků za sekundu napříč různými programy se dosahuje zdání souběžnosti, ale ve skutečnosti se nikdy nic nespouští paralelně. Výpočet DNA může ve skutečnosti provádět tyto miliony operací současně.

Do jediného krychlového centimetru lze vtěsnat více než 10 bilionů molekul DNA. Tento krychlový centimetr materiálu by teoreticky mohl provádět 10 bilionů výpočtů najednou a pojmout až 10 terabajtů dat. V mnoha ohledech je mnoho z dechberoucího, ale nepřesného tisku, kterého se kvantovým výpočtům dostává, ve skutečnosti možné pomocí výpočtů DNA.

Výpočet DNA je pak nejlepší považovat za doplněk kvantového výpočtu, takže když se spojí dohromady a řídí se klasickým počítačem, který funguje jako manažer ve stylu Singletona, druhy dramatických nárůstů výpočetního výkonu, které lidé doufají, že v budoucnu uvidí, se skutečně stanou reálně možnými.

Jak dlouho bude trvat, než se objeví DNA počítače

Od roku 1994 jsme ušli dlouhou cestu. Krátce poté, co Adleman publikoval svůj článek, se vědcům podařilo zkonstruovat logická hradla z DNA – části obvodu sestavené z jednotlivých tranzistorů, které dokáží z elektrického proudu sestavit složité logické rovnice typu pravda-nepravda.

Právě tento měsíc syntetizovali počítačoví vědci z Kalifornské univerzity v Davisu a Caltechu molekuly DNA, které se mohou samy skládat do struktur tím, že v podstatě spouštějí svůj vlastní program pomocí šestibitových vstupů.

Microsoft má dokonce programovací jazyk pro DNA computing, který může pomoci učinit DNA computing praktickým, jakmile technologie bioprocesorů pokročí do té míry, že budou moci spouštět složitější algoritmy. Společnost Microsoft ve skutečnosti plánuje do roku 2020 zavést do svých cloudových služeb výpočet DNA a aktivně vyvíjí úložiště dat DNA, které by integrovala do svých cloudových služeb.

Je pravděpodobné, že tyto pokroky budou realizovány mnohem rychleji než pokroky v kvantové výpočetní technice. Kvantové výpočty vyžadují sofistikované stroje, supravodiče a extrémně chladné podmínky, aby byly qubity dostatečně stabilní k provádění skutečně užitečných výpočetních úloh, a pokud nevyvineme materiál, který by se mohl chovat jako supravodič při pokojové teplotě, v dohledné době se do našich počítačů nedostanou.

DNA výpočty mezitím využívají DNA, s níž jsme se stali odborníky na manipulaci do té míry, že dokážeme nahradit jediný gen vlákna DNA pomocí CRISPR. Materiály potřebné k syntéze molekul DNA jsou levné a snadno dostupné a zůstávají stabilní při pokojové teplotě i mimo ni. To, čeho je DNA Computing potenciálně schopen dosáhnout vzhledem k odolnosti DNA a biologickému paralelismu, představuje zásadní krok směrem k budoucnosti výpočetní techniky.

Leave a Reply