Co to znaczy, że obliczenia są kwantowe?
-
Obliczenia kwantowe
-
5 minut
Co to znaczy, że obliczenia są kwantowe?
O komputerach kwantowych mówi się często jak o jednej z najbardziej przełomowych i obiecujących technologii przyszłości. Często nie rozumiemy, z czym się wspomniana "kwantowość" wiąże. Klasyczne procesory zbudowane są w oparciu o tranzystory, te zaś skonstruowano, wykorzystując zdobycze mechaniki kwantowej - mimo to nikt nie nazywa ich kwantowymi. Nie chodzi też o większą szybkość, bardziej zaawansowany sprzęt czy możliwość sprawdzania wielu odpowiedzi naraz. Istota sprawy leży w odmiennym sposobie kodowania i przetwarzania informacji.
TL;DR
- Obliczenia kwantowe różnią się od klasycznych nie tylko technologią, ale przede wszystkim sposobem reprezentowania i przetwarzania informacji.
- Ich kwantowy charakter wynika z tego, że informacja reprezentowana jest przy pomocy stanów kwantowych i podlega prawom mechaniki kwantowej.
- Kluczową rolę odgrywają tu superpozycja, interferencja i pomiar.
- Komputery kwantowe nie są zamiennikiem komputerów klasycznych.
O obliczeniach mówimy, kiedy przekształcamy jakieś dane wejściowe (stan początkowy) w dane wyjściowe (stan końcowy) przy pomocy reguł przekształcania stanu (operacje).
Obliczenia klasyczne polegają na przetwarzaniu informacji zapisanej w postaci bitów, czyli wartości 0 lub 1. Stan początkowy systemu opisany jest za pomocą ciągów zer i jedynek, a klasyczny procesor przetwarza te ciągi bardzo szybko za pomocą bramek logicznych, takich jak OR czy AND. Wynik tych operacji można odczytać z pamięci dowolną liczbę razy.
Komputery kwantowe wymagają innego sposobu opisu i przetwarzania informacji. Korzystają ze stanów kwantowych, które podlegają prawom mechaniki kwantowej. Podstawową jednostką informacji w obliczeniach kwantowych jest kubit (ang. qubit - quantum bit).
Stan kubitu opisany jest za pomocą superpozycji, czyli kombinacji liniowej wartości 0 i 1: |ψ⟩ = α|0⟩ + β|1⟩.
Każda z tych wartości występuje z określonymi amplitudami prawdopodobieństwa α i β.
Czyli tam, gdzie stan bitu określa jedna z dwóch wartości, stan kubitu określa para liczb zespolonych, opisujących w jakiej kombinacji stanów 0 i 1 się znajduje.
(Kubit przyjmuje stan 0 lub 1 w momencie wykonania pomiaru.)
Zmieniają się również operacje, przy pomocy których przekształca się stan systemu. Do działania na kubitach wykorzystuje się bramki kwantowe, które reprezentują operacje odwracalne - każda bramka ma swoją odwrotność, możemy więc przywrócić stan układu do poprzedniego stanu, jeśli nie zrobiliśmy pomiaru.
(Informacja może więc zmieniać się w sposób wykraczający poza ramy klasycznego paradygmatu. )
Dlatego obliczenia kwantowe nie są ulepszoną wersją obliczeń klasycznych, ale innym modelem przetwarzania informacji.
Zmienia się nie tylko sprzęt, ale również, a nawet przede wszystkim, reprezentacja informacji oraz reguły, według których transformuje modyfikuje się stan systemu.
Stan kubitu opisany jest przez superpozycję, czyli kombinację liniową 0 i 1 z określonymi amplitudami prawdopodobieństwa. Amplitudy te mogą być wzmacniane przez interferencję konstruktywną, lub osłabiane przez interferencję negatywną. Pozwala to wzmacniać prawdopodobieństwo uzyskania pożądanych wyników.
Skąd się biorą większe możliwości komputerów kwantowych?
W 3-bitowym systemie klasycznym istnieje 8 możliwych konfiguracji ciągu zer i jedynek. W danym momencie rejestr klasyczny ma jednak dokładnie jedną z tych wartości, na przykład 010 albo 111.
W systemie kwantowym 3 kubity również mają 8 stanów bazowych. Różnica polega na tym, że przed pomiarem stan takiego rejestru może być superpozycją wszystkich tych stanów bazowych. Opisujemy go za pomocą 8 amplitud zespolonych, z których każda jest przypisana do jednego stanu bazowego.
Natomiast sama superpozycja nie pozwala przyspieszyć obliczeń. W modelu klasycznym odczyt wyniku jest prosty, przynajmniej na pewnym poziomie abstrakcji: sprawdzamy stan końcowy systemu i po prostu go poznajemy. W modelu kwantowym sytuacja jest zupełnie inna. Pomiar końcowego stanu systemu kwantowego zwróciłby losowy wynik, a w obliczeniach zwykle zależy nam na precyzyjnie określonym rezultacie. Przewaga pojawia się dopiero wtedy, gdy projektujemy operacje tak, by amplitudy poprawnych rozwiązań się wzmacniały, a błędnych wygaszały. Dlatego mówimy o przyspieszeniu dla konkretnych problemów, dla których możliwe jest zaprojektowanie takich operacji.
Komputery kwantowe potrafią rozbudzić wyobraźnię, dlatego warto powiedzieć, czego słowo „kwantowe” nie oznacza.
„Kwantowe” nie znaczy bezwarunkowo szybsze
Komputery kwantowe nie oferują przewagi w każdym rozwiązaniu każdego problemu i nie zastępują klasycznych komputerów we wszystkich zastosowaniach. Ich znaczenie polega na tym, że dla pewnych klas problemów mogą zyskać przewagę obliczeniową, wykorzystując własności stanów kwantowych. Klasycznymi przykładami są algorytmy Shora i Grovera.
„Kwantowe” nie znaczy wszechmocne
Obliczenia kwantowe działają w ramach określonego modelu fizycznego, który daje pewne możliwości, ale nakłada też własne ograniczenia.
„Kwantowe” nie znaczy po prostu bardziej zaawansowane
Różnica nie polega tylko na tym, że komputer kwantowy jest trudniejszy do zbudowania. Sednem sprawy jest zmiana samego modelu opisu informacji i przebiegu obliczenia.
Co więc naprawdę znaczy, że obliczenia są kwantowe? To znaczy, że informacja nie jest w nich reprezentowana i przetwarzana wyłącznie w sposób klasyczny, lecz za pomocą stanów kwantowych, których ewolucję opisują prawa mechaniki kwantowej. W takim modelu znaczenie mają superpozycja, interferencja i pomiar.
Symulacja cząsteczek, atomów czy materiałów polega na opisie układów, które są naturalnie kwantowe. Klasyczny komputer musi te kwantowe elementy modelować, co prowadzi do wykładniczego wzrostu złożoności wraz z rozmiarem układu. Komputer kwantowy potrzebuje takich złożonych modeli, tylko po prostu działa według tych samych reguł, więc skala problemu rośnie znacznie łagodniej.
Z kolei zadania takie jak edycja tekstu, przeglądanie internetu czy typowe przetwarzanie danych to problemy, które są:
- dyskretne,
- dobrze opisane przez klasyczną logikę,
- mają dobrze określoną podatność na błędy.
Nie ma w nich struktury kwantowej, którą dałoby się wykorzystać algorytmicznie, więc komputer kwantowy nie wnosi tu uzasadnionej przewagi.
Jeśli chcemy naprawdę rozumieć jak działają komputery kwantowe, nie powinniśmy zaczynać od najbardziej chwytliwych haseł, lecz od pytania o naturę samych obliczeń. Różnica między modelem klasycznym i kwantowym nie sprowadza się jedynie do sprzętu ani do obietnicy większej szybkości obliczeń. Dotyczy tego, w jaki sposób reprezentowana jest informacja, jak stan systemu może się zmieniać i jak otrzymujemy wynik.
Złap mnie na IG @qubic.blog i pogadajmy o tym!
- Dlaczego nie wystarczy powiedzieć, że komputer kwantowy jest po prostu szybszy?
- Czym różni się klasyczny opis informacji od opisu kwantowego?
- Jak obliczenia kwantowe mają się do obliczeń klasycznych w praktycznych zastosowaniach?
- Deutsch, D. (1985) ‘Quantum theory, the Church–Turing principle and the universal quantum computer’, Proceedings of the Royal Society A, 400(1818), s. 97–117.
- Grover, L. K. (1996) ‘A fast quantum mechanical algorithm for database search’, arXiv:quant-ph/9605043.
- Mermin, N. D. (2007) Quantum Computer Science: An Introduction. Cambridge: Cambridge University Press.
- Nielsen, M. A. i Chuang, I. L. (2010) Quantum Computation and Quantum Information. 10th Anniversary Edition. Cambridge: Cambridge University Press.
- Preskill, J. Lecture Notes for Quantum Information and Computation. California Institute of Technology.
- Shor, P. W. (1995) ‘Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer’, arXiv:quant-ph/9508027.