Co to jest?
Komputery kwantowe – od Feynmana do Google'a
"Informacja jest fizyczna" powiedział Rolf Landauer, fizyk, któremu zawdzięczamy zrozumienie faktu, że usunięcie 1 bitu informacji z pamięci komputera wiąże się z nieuniknionym wytworzeniem ciepła o wartości gdzie jest temperaturą otoczenia, a stałą Boltzmanna. Był to wynik, który pokazał, że warto myśleć o fizycznych podstawach przetwarzanej przez nas informacji, aby zrozumieć ograniczenia i perspektywy dalszego rozwoju komputerów. Dziś wiemy, że materia na poziomie mikroskopowym opisywana jest przez prawa fizyki kwantowej...
Pojawia się więc naturalne pytanie, jak fakt ten odbija się na naszych możliwościach przetwarzania informacji. Czy jest to bardziej przeszkoda, związana z rozmytą naturą stanów kwantowych, powodująca, że np. elektrony nie będą chciały pozostawać dobrze zlokalizowane w sytuacji zbyt daleko idącej miniaturyzacji obwodów elektrycznych, czy może daje to nadzieję na wykorzystanie potencjału układów kwantowych mogących być "w wielu stanach jednocześnie", aby uzyskać niewyobrażalne w podejściu klasycznym zrównoleglenie obliczeń?
Warto podkreślić, że działanie dzisiejszych komputerów, które w żargonie informatyków kwantowych nazywa się klasycznymi, również oparte jest na prawach fizyki kwantowej. Pasmowa struktura półprzewodników wykorzystywana do produkcji układów scalonych jest makroskopową emanacją kwantowej natury atomów. Własności magnetyczne materii wykorzystywane do zapisu danych są ściśle związane z jedną z najbardziej kwantowych cech elementarnych składników materii, jaką jest spin. Niemniej, nawet przy obecnym postępie miniaturyzacji, na każdą elementarną bramkę logiczną w układach scalonych czy pojedynczy bit informacji zapisany w pamięci komputera przypada wciąż bardzo duża liczba atomów, rzędu miliona. Ten fakt powoduje, że tak naprawdę subtelne własności kwantowe materii nie są w pełni dostępne i kontrolowalne, więc z bardzo dobrym przybliżeniem przetwarzanie informacji w takim układzie można traktować w czysto klasyczny sposób.
Richard Feynman w swoich wizjach rozwoju komputerów mówił: "jest bardzo dużo miejsca tam na dole", mając na myśli, że rozwijając nasze technologie wciąż pozostajemy na poziomie makroskopowym, nie wykorzystując w pełni potencjału oferowanego przez świat mikroskopowy. Stwierdzenie to, jak widać z powyższych rozważań, jest aktualne do dziś. Chciałoby się zbudować komputer operujący nie na układach milionów atomów, ale na pojedynczych atomach, wykorzystując do maksimum ich własności kwantowe - stworzyć komputer kwantowy.
Bawiąc się w futurologię, można w zasadzie przewidzieć datę powstania komputera kwantowego. Od lat 70. obserwuje się stale postępującą miniaturyzację układów scalonych, powodującą, że gęstość upakowania elementarnych komponentów elektronicznych rośnie dwukrotnie w czasie mniej więcej 18 miesięcy. Obserwacja ta znana jest pod nazwą prawa Moore'a. Mimo pewnych obaw co do utrzymania tego trendu, obserwujemy go do dzisiaj. Jeśli wierzyć, że trend ten się utrzyma, można oszacować moment, kiedy miniaturyzacja układów doprowadzi do sytuacji, że pojedynczy tranzystor będzie rozmiarów pojedynczego atomu. Powinno to nastąpić około roku 2040.
W idei komputera kwantowego nie chodzi jednak tylko o zbudowanie urządzenia wykonującego klasyczne obliczenia na układach logicznych zbudowanych z pojedynczych atomów. W przypadku obliczeń klasycznych wartości bitów mogą przyjmować wartości 0 lub 1. Myśląc o kwantowym odpowiedniku bitu, czyli np. o atomie, w którym wartość 0 lub będziemy zapisywać poprzez przygotowanie atomu w jeden z dwóch różnych stanów energetycznych musimy pamiętać, że zgodnie z kwantową zasadą superpozycji możemy również przygotować atom w dowolnej superpozycji tych dwóch stanów gdzie są liczbami zespolonymi spełniającymi warunek tak aby był wektorem o długości Taki kwantowy bit mogący znajdować się w stanie będącym dowolną superpozycją i nazywamy kubitem. Dzięki zasadzie superpozycji, mając np. kubitów, możemy przygotować stan będący równoczesną superpozycją stanów, które reprezentują wszystkie liczby bitowe. (W modelu obliczeń reprezentujemy taką superpozycję przez wektor długości 1 z przestrzeni ) Dzięki temu możliwe jest wykonanie obliczeń równolegle na wszystkich składnikach superpozycji (poprzez przemnożenie wektora zawartości pamięci przez macierz unitarną) i uzyskanie przyspieszenia obliczeń niedostępnego w ramach klasycznego modelu obliczeń. Jest to fundamentalna idea leżąca u podłoża wszystkich algorytmów kwantowych, których działanie opisane jest bardziej szczegółowo w artykule o modelu obliczeń kwantowych.
Jak więc zbudować komputer kwantowy? Pierwszą decyzją, jaką należy podjąć, jest wybór architektury obliczeń kwantowych. Najpopularniejszą, choć nie jedyną (popatrzmy chociażby na artykuł o kwantowym wyżarzaniu) architekturą, jest ta oparta o bramki kwantowe, które podobnie jak w podejściu klasycznym tworzą obwody logiczne realizujące obliczenia. W przypadku obliczeń klasycznych każdy obwód logiczny można zbudować z bramek typu NAND, których działanie polega na zamianie dwóch bitów wejściowych na jeden bit wyjściowy w taki sposób, że gdy i w pozostałych trzech przypadkach. Bramka NAND jest bramką nieodwracalną. Znając jedynie wartość bitu na wyjściu, w ogólności nie można odtworzyć wartości bitów wejściowych. Zwróćmy uwagę, że utrata jednego bitu informacji, która następuje podczas każdego użycia bramki NAND, zgodnie ze wspomnianą wcześniej zasadą Landauera musi wiązać się z wytworzeniem ciepła o wartości W przypadku obliczeń klasycznych możliwa jest modyfikacja bramek logicznych tak, by stały się odwracalne, poprzez przekazanie dodatkowych informacji do wyjścia bramki, unikając tym samym wytworzenia ciepła. Odbywa się to jednak kosztem komplikacji układu logicznego. Nie jest to obecnie stosowane w praktyce, gdyż energia jest wciąż o wiele rzędów wielkości niższa niż ciepło wydzielane w obecnie wykorzystywanych bramkach logicznych. W przypadku obliczeń kwantowych odwracalność obliczeń ma jednak kluczowe znaczenie. Nie chodzi tu jedynie o kwestię ciepła, ale o fakt, że utrata informacji o części układów kwantowych prowadzi w ogólności do tak zwanego zjawiska dekoherencji i niszczenia superpozycji stanów pozostałych kubitów. Dlatego też wszystkie algorytmy kwantowe formułowane są w języku obliczeń odwracalnych (a konkretnie za pomocą macierzy unitarnych), a ewentualne efekty nieodwracalne to efekty wynikające z niedoskonałej implementacji, przed którą należy chronić obliczenia za pomocą tzw. protokołów kwantowej korekcji błędów.
Okazuje się, że podobnie jak w obliczeniach klasycznych, dowolną operację kwantową na kubitach można wykonać, składając ją z względnie prostych operacji elementarnych. Wystarczą do tego operacje jednokubitowe, czyli działające na pojedynczy kubit, za pomocą których można przekształcić dowolną superpozycję stanu kubitu w dowolną inną (wystarczą macierze H i T ze strony 3) oraz jeden typ bramki dwukubitowej, którą najczęściej jest tzw. bramka CNOT (controlled-NOT). Oznaczmy przez stany dwóch kubitów, z których każdy ma dobrze określoną wartość logiczną 0 lub Ogólny stan dwóch kubitów będzie dowolną superpozycją tych stanów. Bramka CNOT zmienia stan drugiego kubitu na przeciwny w sytuacji, gdy pierwszy kubit jest w stanie a pozostawia go bez zmian, jeśli pierwszy kubit znajduje się w stanie :
Aby działanie tej bramki było rzeczywiście w pełni kwantowe, musi ona działać w sposób liniowy na dowolne superpozycje stanów wejściowych, dając na wyjściu odpowiednią superpozycję stanów wyjściowych.
Mając już wybraną architekturę obliczeń kwantowych, możemy się skupić na jej fizycznej implementacji. Fizycy próbują budować bramki kwantowe, wykorzystując różne układy fizyczne: jony w pułapkach elektromagnetycznych, fotony poruszające się w wieloramiennych interferometrach optycznych, układy nadprzewodzące, neutralne atomy w sieciach optycznych, kropki kwantowe i wiele innych. My skupimy się tutaj na eksperymentach jonowych, gdyż są one z jednej strony najłatwiejsze do zrozumienia, a z drugiej dzięki nim osiąga się największe sukcesy w realizacji bramek kwantowych.
W standardowym eksperymencie tego typu jonów umieszczonych zostaje w tzw. liniowej elektromagnetycznej pułapce Paula, w której ruch jonów jest praktycznie jednowymiarowy. Siła odpychania kulombowskiego pomiędzy jonami powoduje, że jony znajdują się w odległościach rzędu kilku-kilkudziesięciu co pozwala świecić widzialnym światłem laserowym selektywnie na każdy z jonów osobno. Podstawowym warunkiem użycia danego jonu do obliczeń kwantowych jest istnienie w nim dwóch poziomów energetycznych o długim czasie życia, które mogą pełnić rolę logicznych stanów kubitu a które w dalszym ciągu oznaczymy jako od angielskiego ground (podstawowy) i excited (wzbudzony). Przykładowo, dla jonu wapnia będą to stan podstawowy oraz metastabilny stan wzbudzony o czasie życia rzędu 1 s. Wszystkie jony są początkowo przygotowywane w stanie podstawowym. Następnie, świecąc przez odpowiednio dobrany czas światłem laserowym o częstotliwości równej częstotliwości przejścia atomowego, można doprowadzić do pochłonięcia przez jon fotonu i tym samym przeprowadzić go do stanu wzbudzonego. Jeśli operację tę zastosujemy z kolei do jonu, który początkowo był już w stanie wzbudzonym, przeprowadzimy go z powrotem do stanu podstawowego (emisja wymuszona). W ten sposób realizujemy operację, która zamienia stany i a tym samym otrzymujemy kwantową wersję bramki NOT. Jeśli natomiast, na jon w stanie będziemy świecić tym samym światłem przez krótszy czas, nie doprowadzimy do pełnego wzbudzenia jonu i znajdzie się on w superpozycji stanów W ten sposób możemy przygotować dowolną superpozycję stanów i a tym samym zrealizować dowolne operacje jednokubitowe. Wiemy, że dla realizacji obliczeń kwantowych potrzebujemy jeszcze bramki dwukubitowej, np. CNOT. To jest już znacznie większe wyzwanie, gdyż musimy wykonać operację, w której ewolucja stanu danego jonu będzie zależała od stanu innego.
Z pomocą przychodzi tu fakt, że jony bardzo silnie oddziałują elektrostatycznie i w związku z tym można je wzbudzić do wspólnych drgań w pułapce. Pułapkę możemy z dobrym przybliżeniem traktować jako potencjał oscylatora harmonicznego o częstotliwości która jest rzędu setek kHz (dla porównania częstotliwość światła widzialnego jest rzędu ). Drganie jonów w pułapce jest, oczywiście, skwantowane i mogą one być wzbudzone do energii będącej całkowitą wielokrotnością Rozważmy teraz dwa jony. Wprowadzimy następujące oznaczenie opisujące jednocześnie stany wewnętrzne jonów, jak i ich ruch drgający w pułapce. Przykładowo niech stan (dalej będziemy pisać skrótowo ), odpowiada sytuacji, gdy oba jony są w stanie podstawowym oraz są wzbudzone do ruchu drgającego o energii Rozważmy teraz sytuację, gdy czyli stan opisujący ruch drgający jonów jest również stanem podstawowym. Jeśli teraz poświecimy na pierwszy z jonów będący w stanie podstawowym impulsem laserowym o częstotliwości wzbudzimy go do stanu ale z uwagi na nadwyżkę energii dokonamy jednocześnie wzbudzenia kolektywnego drgań jonów o energii Jeśli natomiast atom byłby początkowo w stanie padający impuls światła o tej częstotliwości nie zmieni jego stanu. Tego typu operacja zachowuje kwantową superpozycję stanów - dlatego pod wpływem takiego impulsu stan, w którym pierwszy jon znajdowałby się w dowolnej superpozycji stanów i zostałby przekształcony do
Zwróćmy uwagę, że w ten sposób "przepisaliśmy" stan wewnętrzny jonu na stan drgań jonów w pułapce. Działając teraz z kolei na drugi jon impulsem o częstotliwości będziemy mogli wzbudzić ten jon, ale jedynie w przypadku obecności kwantu energii ruchu drgającego, niezbędnego dla zachowania całkowitej energii w procesie. W efekcie przekształcimy stan do
Następnie świecimy impulsem o częstotliwości na drugi jon, wykonując na nim operację NOT, i otrzymujemy ostatecznie stan
W ten sposób przenieśliśmy stan wewnętrzny jonu pierwszego na drugi jon. Pokazuje to, że dzięki pośrednictwu "magistrali" wspólnych drgań jonów możliwe jest wykonywanie operacji wielokubitowych. Nieco bardziej skomplikowany wariant powyższego schematu, którego nie będziemy tu szczegółowo przedstawiać, pozwala w szczególności wykonać operację CNOT, a tym samym dysponować wszystkimi elementami niezbędnymi do zbudowania komputera kwantowego.
Dotychczas w eksperymentach tego typu udało się maksymalnie kontrolować kilkanaście jonów. Dalsze zwiększanie ich liczby prowadzi, niestety, do utraty stabilności układu, jony mogą uciekać z pułapki i pojawiają się dodatkowe efekty psujące kwantową superpozycję. Obecnie trwają prace nad "chipowymi" pułapkami jonowymi, gdzie jony znajdują się w wielu mikropułapkach, pomiędzy którymi mogą być przemieszczane za pomocą sterowania polami elektromagnetycznymi. W ten sposób można przeprowadzić w swoje pobliże jony, na których akurat w danym momencie chcemy wykonać dwukubitową operację, następnie je rozsunąć, zamienić miejscami z innymi jonami znajdującymi się w innej mikropułapce i w ten sposób uniknąć kłopotów związanych z jedną dużą pułapką, która musiałaby kontrolować wszystkie jony równocześnie. Jest to bardzo obiecująca technologia, prace nad nią trwają.
Czy faktycznie komputer kwantowy powstanie w roku 2040? Tego nie wiemy na pewno. Wiemy natomiast, że rozwój technologii związanych z próbami zbudowania komputera kwantowego doprowadził nas do sytuacji, która nie śniła się twórcom teorii kwantowej, a w której jesteśmy w stanie kontrolować i mierzyć pojedyncze układy kwantowe, takie jak atomy i fotony. W eksperymentach z pojedynczymi jonami opisanymi powyżej można w zasadzie zobaczyć pojedynczy jon gołym okiem. Przebyliśmy długą drogę od czasów, gdy eksperymentalnie dostępne nam były jedynie uśrednione wielkości fizyczne zmierzone na bardzo wielu układach kwantowych, a wizje Feynmana wydawały się jedynie spekulacjami geniusza. W ostatnich latach poza ośrodkami akademickimi w rozwijanie technologii związanych z obliczeniami kwantowymi zaczynają angażować się również najwięksi gracze na rynku informatycznym, tacy jak Google, więc może rozwój nabierze tempa...