Mechaniczna twarz podzielona na pół.

Stany Kwantowe Komputera

W drugiej połowie XX wieku, głównie za sprawą fizyka, Richarda Feynmana, pojawiły się koncepcje budowy logiki komputerowej, opartej na zjawiskach znanych z mechaniki kwantowej. W ostatnim czasie liderom rynku udało się pokazać pierwsze udane projekty, będące urzeczywistnieniem tych pomysłów. Tak właśnie pojawiła się nowa jakość w zakresie możliwości przetwarzania – komputery kwantowe. Jak pracują? Jakie mają ograniczenia? Jak daleko jesteśmy od bycia "quantum ready"?

To niezwykle ciekawy moment rozwoju nowoczesnych technologii. Systemy komputerowe czy serwerowe wielu z nas rozpoznaje i ma o nich pewne pojęcie. Generacje procesorów x86 Intela, AMD, a także ARM, RISC (w tym SPARC i Power) – kolejne mikroarchitektury, rdzenie, taktujące zegary i kolejne rekordy w benchmarkach. Czy to wszystko wystarczy jednak do stworzenia rozwiązań, o których teraz tak szeroko się mówi – technologii Big Data, internetu rzeczy, modelowania bardzo złożonych procesów fizycznych i biologicznych, uczenia maszynowego czy sztucznej inteligencji?

Obliczenia krzemowe

Najpowszechniejsze systemy są oparte na rozwiązaniach procesorowych, tzw. ogólnego zastosowania, a więc z założenia nieuwzględniających specyficznych wymagań konkretnych zastosowań. Lawinowo narastająca ilość danych różnego typu, wiążąca się ze zróżnicowanymi wymaganiami sposobu ich przetwarzania, a jednocześnie oczekiwanie natychmiastowych wyników tych przetwarzań spowodowały, że wielu użytkowników rozwiązań IT i dostawców usług już dawno dostrzegło dużą nieefektywność platform ogólnego zastosowania w procesie realizowania wspomnianych zadań.

Na wczesnym etapie prób stworzenia architektury specjalizowanej do specyficznych celów popularność zdobyły procesory graficzne GPGPU. Ich architektura, początkowo przeznaczona do przetwarzania grafiki 3D, uelastyczniła się na tyle, że mogą być z powodzeniem wykorzystywane w rozwiązaniach nie tylko HPC (high-performance computing), ale także w uczeniu maszynowym. Wciąż jednak nie można było liczyć na osiągnięcie pożądanych efektów w pewnych zastosowaniach. Powstały więc np.:

  • rozwiązania NVIDII do deep learning – DGX-1 z Tesla Volta100 + Jetson TX2 (Edge AI)
  • Google TPU (Tensor Processor Unit) drugiej generacji do przetwarzań Google Search, Street View, Google Photos i Translate
  • projekt IBM TrueNorth (rozwiązanie inspirowane budową mózgu człowieka)
  • Intel FPGA, Intel Nervana i Intel Movidius (budowa sztucznej inteligencji)
  • Microsoft BrainWave oparte na procesorach FPGA Intela.

Wszystkie wymienione rozwiązania bazują na krzemie, czyli technologii półprzewodnikowej dobrze ugruntowanej i realizowanej przez każdego dostawcę układów scalonych. Wszystko jednak wskazuje na to, że przyszłość należy do technologii kwantowej.

Kluczowe elementy fizyki komputerów kwantowych

Kluczowymi elementami, jakie są wykorzystywane w rozwiązaniach procesorów kwantowych, są zjawiska superpozycji, splątania kwantowego oraz tunelowania kwantowego.

Bit, jako jednostka informacji w klasyczny ujęciu, jest w stanie „0” lub „1”. Świat kwantowy, poprzez zjawisko superpozycji, zapewnia nam podstawową jednostkę informacji znaną jako kubit (bit kwantowy), będący jednocześnie w stanach „0” i „1”.

Przykładowo, dla słowa 8-bitowego – w ujęciu klasycznym daje to wartość jedną z 28 permutacji, natomiast w ujęciu kwantowym daje to jednocześnie wszystkie wartości z 28 permutacji. Chcąc zbadać wszystkie możliwe stany słowa 8-bitowego w wydaniu klasycznym musimy wykonać 28 operacji, w ujęciu kwantowym wystarczy tylko jedna operacja. To pokazuje, jaki potencjał drzemie w technologii kwantowej, jakie możliwości trafiają w ręce programistów i naukowców, a także, jakie znajdzie ona zastosowanie komercyjne. Należy ją jeszcze tylko techniczne ujarzmić.

Stany bitów w ujęciu klasycznym oraz kubitów, czyli kwantowych jednostek informacji

Zjawisko splątania kwantowego (ang. entanglement) zapewnia ustalenie stanu kwantowego kubitu w korelacji do stanu innych kubitów, a tym samym stany splątanych kubitów wpływają na siebie nawzajem. Przy określonych warunkach brzegowych stanów początkowych, stanowi to kluczowy czynnik ustalenia stanu końcowego, a tym samym uzyskania rozwiązania określonego problemu.

Zjawisko tunelowania kwantowego umożliwia przejście cząstki przez większą barierę potencjału niż energia samej cząstki. Jest to najistotniejszy element w przechodzeniu do najniższego możliwego stanu energetycznego. Znajdowanie minimum funkcji leży u podstaw funkcjonowania komputerów kwantowych, realizujących zadania optymalizacyjne. Ale do tego wątku jeszcze wrócę.