Droga do Blue Mountain
Tuż za wąskim przesmykiem między dwoma płaskowyżami, tam gdzie Otowi Bridge spina brzegi Rio Grande, New Mexico State Road 502, jedna z najpiękniejszych dróg górskich w całej Ameryce, wspina się stromo na Pajarito Plateau, na którym wznoszą się zabudowania Los Alamos National Laboratory. Podczas II wojny światowej rezydenci tej podniebnej placówki weszli na krótko w posiadanie najsilniejszej broni stworzonej dotąd przez człowieka – bomby jądrowej o mocy 20 kT, która posłużyła ostatecznie do przetopienia na szkło piasku na pustynnym poligonie Trinity. W Los Alamos, choć wciąż ma ono rangę najważniejszego amerykańskiego laboratorium zbrojeniowego, nie produkuje się już ładunków jądrowych, a jedynie bada ich skutki. Najpotężniejszą bronią w arsenale pracujących tam naukowców nie jest obecnie bomba atomowa, lecz superkomputer o nazwie Blue Mountain. Umieszczony w przestronnej hali o powierzchni około 1000 m2, należącej do głównego kompleksu budynków laboratorium, Blue Mountain jest jednym z najpotężniejszych
narzędzi obliczeniowych na świecie. Komputer, który stoi na waszym biurku, ma najprawdopodobniej tylko jeden silny procesor, w którym miliony maluteńkich przełączników zmieniają swe stany pomiędzy 1 i 0 kilkaset milionów razy na sekundę. Natomiast każda z 384 ogromnych szaf, z jakich składa się Blue Mountain, zawiera 16 takich chipów. Wszystko to razem tworzy superkomputer o 6144 procesorach wykonujących równoległe operacje, który ma za zadanie rozwiązywać jeden niesamowicie skomplikowany problem – cyfrową symulację wybuchu jądrowego. W erze pozimnowojennej, odkąd przeprowadzanie prób jądrowych w atmosferze oraz pod ziemią zostało zakazane na mocy traktatów międzynarodowych, Departament Energii USA przerzucił się na testy dokonywane in silico, czyli modelowanie rzeczywistych wybuchów w liczącej 1,5 biliona bajtów krzemowej pamięci Blue Mountain.
Obsługa superkomputera chętnie wymienia z pamięci jego monstrualne parametry techniczne. Tysiące procesorów połączonych jest za pomocą ponad 800 km światłowodów, przenoszących impulsy światła. Urządzenie pożera 1,6 MW energii elektrycznej i wymaga instalacji chłodzącej o wydajności 1,9 MW. Wszystko to razem daje komputer o mocy obliczeniowej 3 teraopów, czyli wykonujący 3 biliony operacji na sekundę. Przy pewnej wprawie przemnożenie 2 przez 2 na kieszonkowym kalkulatorze trwa 2–3 sekundy. Załóżmy, że opanowaliśmy tę czynność do perfekcji i potrzeba nam na nią zaledwie sekundę. Sto lat to około 3 miliardy sekund, a więc obliczenia, które Blue Mountain wykonuje w ciągu sekundy, zajęłyby nam około tysiąca wieków. Gdybyśmy cofnęli się o tyle w przeszłość, znaleźlibyśmy się pod koniec epoki środkowego plejstocenu, gdy gatunek Homo sapiens dopiero co pojawił się na Ziemi.
Choć bezpośrednio po zainstalowaniu superkomputera w Los Alamos w roku 1998, jego moc zrobiła na nich wrażenie, pracujący tam badacze rychło uznali go za przeraźliwie wolny. Odczucie to nieobce jest każdemu posiadaczowi peceta usiłującemu nadążyć za nowinkami technicznymi. Podczas niedawnej próby odtworzenia przebiegu wybuchu jądrowego w ciągu jednej milionowej sekundy, ilość danych do przetworzenia okazała się tak ogromna, że Blue Mountain międlił je przez pełne cztery miesiące. Do efektywnego zastąpienia rzeczywistych wybuchów ich cyfrowymi symulacjami potrzeba zatem znacznie silniejszych komputerów.
Nieopodal Blue Mountain dobiegają końca prace nad komputerem tak wielkim, że trzeba było wybudować dla niego specjalny trzypiętrowy budynek o powierzchni 28 100 m2. Jego niemal dwukrotnie większa niż Blue Mountain liczba procesorów, i to pięciokrotnie szybszych, zapewnia mu moc obliczeniową rzędu 30 teraopów2. Ochrzczono go po prostu Q. Nazwa ta ma rozliczne konotacje – tak nazywa się zarówno obdarzona zdolnością przeskakiwania pomiędzy wymiarami tajemnicza istota pozaziemska zagrażająca bohaterom serialu Star Trek, jak i filmowy konstruktor wymyślnych szpiegowskich gadżetów Jamesa Bonda. Q to również ostatnia litera w nazwie firmy Compaq, która zbudowała ten superkomputer, oraz sygnatura supertajnych dokumentów rządowych. Zasilany mocą 7 MW gigant będzie w stanie wykonywać w ciągu sekundy ilość operacji, która supersprawnemu rachmistrzowi bębniącemu w klawisze kalkulatora zajęłaby milion lat.
Dla Q przeznaczono powierzchnię czterokrotnie większą od zajmowanej przez Blue Mountain – 4 tysiące m2. Początkowo struktura obliczeniowa zajmie jedynie mniej więcej połowę tej powierzchni, lecz projektanci przewidują, że po latach w miarę jej dalszej rozbudowy, by osiągnąć docelową moc obliczeniową rzędu 100 lub nawet 150 teraopów, cała powierzchnia zostanie wykorzystana. W przyległych laboratoriach zastępy naukowców będą studiować wyniki przeżute przez Q. Dla większej dramaturgii będą mogli oni w specjalnym, olbrzymim kinoteatrze śledzić symulowany przebieg wybuchu wyświetlany na otaczającym ich ekranie, niczym w oku szalejącego cyklonu.
Zaledwie parę kroków od ośrodka komputerowego, jeszcze niedawno pełnego łoskotu pracujących koparek, zgrzytu piłowanego metalu i innych odgłosów budowy, dwaj młodzi fizycy, Manny Knill i Raymond Laflamme, zajmują się budową superkomputera w znacznie mniej hałaśliwy sposób. W niepozornym, pokrytym brązowym stiukiem budynku na obrzeżach głównego zespołu laboratoriów programują komputer tak miniaturowy, iż nie da się go zobaczyć nawet pod mikroskopem – pojedynczą cząsteczkę składającą się z kilkunastu atomów.
Nie popełniając zbytniej herezji pojęciowej, możemy sobie wyobrażać atom jako wirującego bąka. Zależnie od tego, czy obraca się zgodnie z kierunkiem ruchu wskazówek zegara, czy przeciwnie, przypisujemy mu wartość 0 lub 1, jeden z dwóch stanów binarnych czyli jeden „bit” w uniwersalnym języku informacji. Poddając cząsteczki działaniu silnego pola magnetycznego i przełączając orientację wchodzących w ich skład atomów za pomocą fal radiowych o wysokiej częstotliwości, naukowcy potrafią manipulować krótkimi sekwencjami bitów, a tym samym wykonywać proste obliczenia. Ostatni rekord liczby atomów, które posłużyły za koraliki kwantowego liczydła, wynosi 7. Następnym etapem będzie komputer złożony z 10 atomów.
W zestawieniu z procesorem Pentium 4 zawierającym 40 milionów przełączników, dziesięć nie wydaje się liczbą imponującą. Gdy jednak przełączniki są aż tak małe – wielkości atomu lub jeszcze mniejsze – podlegają prawom mechaniki kwantowej. Wyjaśnienie znaczenia tego zjawiska, jest celem tej książki. Na razie stwierdźmy najogólniej, że w mikroświecie nie obowiązują znane nam prawa (tzn. prawa, które znamy z obserwacji otaczającego nas świata). Wbrew zdroworozsądkowej logice, jedna i ta sama cząstka może jednocześnie znajdować się w dwóch miejscach. Zatem o ile konwencjonalny komputerowy przełącznik może być tylko albo włączony, albo wyłączony, a więc może reprezentować wartość 1 lub 0, przełącznik kwantowy może paradoksalnie pozostawać w obu stanach jednocześnie3 – czyli jednocześnie mieć wartość 1 i 0. Jeżeli wydaje Ci się to niemożliwe, nie ma sprawy. Dla fizyków jest to równie zdumiewające, jak dla każdego człowieka. Ale tak właśnie działa natura.
Dlaczego ta kwantowa nieokreśloność jest pożyteczna, zamiast być jedynie źródłem zamętu, zrozumiemy lepiej, jeżeli wyobrazimy sobie dwa kwantowe przełączniki o takich schizofrenicznych cechach. Dwa przełączniki klasyczne tworzą tylko jedną z czterech możliwych konfiguracji. Oba mogą być włączone lub wyłączone: 11 lub 00, lub też pozostawać w stanach przeciwnych: 01 lub 10. Natomiast w obrębie mikroświata poszczególne stany się wzajemnie nie wykluczają. Skoro jeden przełącznik kwantowy może jednocześnie być w stanie 0 lub 1, to dwa mogą jednocześnie pozostawać w czterech stanach: 00, 01, 10 lub 11. Trzy przełączniki mogą być w ośmiu stanach: 000, 001, 010, 011, 100, 101, 110 i 111, i to we wszystkich w tym samym czasie. I tu tkwi klucz do nowych możliwości. Trzy klasyczne przełączniki przyjmujące wartość albo 0, albo 1 możemy ustawić w dowolnej konfiguracji, z których każda jest dwójkową reprezentacją jednej z liczb od 0 do 7. Trzy przełączniki kwantowe, mogące przyjmować jednocześnie wartość 0 i 1,
umożliwiają zakodowanie jednocześnie wszystkich ośmiu liczb. Trudno w to uwierzyć, ale tak jest naprawdę. Zatem już wiemy, że dzięki niezwykłym własnościom obiektów kwantowych będziemy mogli co najmniej upakować olbrzymią ilość danych w małej przestrzeni. Ale to jeszcze nie wszystko. Załóżmy, że informacji zapamiętanej w tych trzech obiektach kwantowych użyjemy do wykonywania obliczeń – na przykład dzielenia przez dwa lub wyciągania pierwiastka kwadratowego. Jako że ciąg obiektów kwantowych reprezentuje jednocześnie osiem liczb, umożliwi to wykonanie ośmiu operacji jednocześnie. Nie zaprzątajmy sobie na razie głowy technicznymi aspektami realizacji obliczeń kwantowych. Przyjmijmy po prostu, że ciągi atomów4 przechodzą przez czarną skrzynkę – z jednej strony wprowadzamy do niej ciągi reprezentujące dane do obliczeń, a z drugiej wychodzą wyniki.
A jeśli weźmiemy 4 atomy? Z każdym kolejnym atomem dodanym do ciągu liczba konfiguracji, jakie można przy jego pomocy zapamiętać i przetwarzać podwaja się: 4 atomy dają 16 konfiguracji, 5 atomów to 32 konfiguracji, a następnie odpowiednio 64, 128 i 256. Przy 10 atomach osiągniemy liczbę 210, czyli 1024. Chcemy obliczyć pierwiastki kwadratowe z wszystkich liczb od 1 do 1000? Wystarczy zapisać je w ciągu złożonym z 10 atomów, by wykonując jedno obliczenie otrzymać od razu wszystkie tysiąc wyników. Wprawdzie dotąd nikomu nie udało się tego zrobić w praktyce, lecz nie jest to sprzeczne z prawami fizyki. Jeśli weźmiemy 13 atomów, otrzymujemy narzędzie zdolne wykonywać 213, czyli 8192, operacji równoległych, a tym samym prześcigniemy Blue Mountain, wykonującego na raz zaledwie 6144 operacji. Aby dorównać pod względem zdolności obliczeniowych monstrualnemu 30-teraopowemu superkomputerowi, wystarczy dodać jeszcze jeden atom, dzięki czemu liczba jednoczesnych operacji wzrośnie do 16384. Taka potęga tkwi w
obliczeniach kwantowych. Chyba to właśnie komputerowi molekularnemu należy się miano Q. Powyższe zestawienie „wielkiego” Q z „małym” Q nie jest do końca poprawne. Komputer molekularny o 13 atomach przeprowadzałby obliczenia na 13-bitowych sekwencjach danych, podczas gdy nowy superkomputer obrabia na raz sekwencje po 64 bity. Wystarczy jednak zwiększyć liczbę atomów do 64, by otrzymać komputer zdolny do wykonywania 264, czyli 18 446 744 073 709 551 616 jednoczesnych obliczeń. To 18 trylionów (18x1018) – jeden trylion to bilion (1012) powtórzony milion razy.
Superkomputer, taki jak w Los Alamos do wykonywania obliczeń w tej skali, musiałby mieć miliony bilionów procesorów. Przy zachowaniu obecnej wielkości elementów zajmowałby on powierzchnię ponad 3 bilionów km2. Nie zmieściłby się na Ziemi, której powierzchnia liczy ledwie 510 milionów km2. Oznacza to, że superkomputer o mocy obliczeniowej dorównującej komputerowi kwantowemu o 64 bitach wymagałby powierzchni niemal 6 tysięcy kul ziemskich, zakładając, że udałoby znaleźć sposób na wykorzystanie powierzchni zajmowanej przez oceany5. A tymczasem wystarczy użyć jednej cząsteczki...
W naukach komputerowych już dawno temu „niemożliwe” zastąpiono mniej kategorycznym terminem „niewykonalne”. Komputer zaprogramowany do gry w kółko i krzyżyk zawsze wygra z człowiekiem (lub zremisuje gdy obierzemy właściwą taktykę). Na każdym etapie gry maszyna szybko przegląda wszystkie warianty rozwoju gry i wybiera ten, który jest najbardziej korzystny. Nie popełnia przy tym błędów. W przypadku szachów procedura ta komplikuje się w takim stopniu, że choć jest teoretycznie możliwa, nie da się jej w pełni zrealizować. Całkowite przeszukanie gąszczu wszystkich wariantów zajęłoby wieczność nawet drużynie komputerów klasy Blue Mountain. Pomimo to maszyny są w stanie wygrywać w szachy z ludźmi, gdyż szybciej analizują olbrzymią liczbę scenariuszy. Przeanalizowanie wszystkich możliwych ruchów wcale nie jest konieczne.
Za przykład problemu niewykonalnego uważa się również faktoryzację – rozkładanie liczb na czynniki pierwsze czyli przedstawienie danej liczby w postaci iloczynu liczb mniejszych, których już dalej na iloczyny rozłożyć nie można. Jedną z możliwych procedur jest wypróbowywanie kolejno wszystkich mnożeń (2 x 2, 2 x 3, 2 x 4...), aż do znalezienia właściwego rozkładu. Dla małych liczb jest to proste zadanie, lecz dla liczb o setkach cyfr nie wystarczyłoby czasu od początku świata6. O ile nie odkryje się jakiegoś przełomowego sposobu, faktoryzacja liczb kilkusetcyfrowych może nawet najszybszym komputerom zająć miliardy lat. Wobec takiego ogromu obliczeń imponujące przyspieszenie wykonywania obliczeń, jakie przynosi każda kolejna generacja komputerów, nie ma w zasadzie żadnego znaczenia. Instytucje rządowe i finansowe wykorzystują ten fakt do zabezpieczenia swych najtajniejszych sekretów za pomocą szyfrów, których podstawą jest właśnie praktyczna niewykonalność rozkładu na czynniki wielkich liczb.
Niewątpliwie szokiem dla kryptografów było uświadomienie sobie, że powstanie komputerów kwantowych całkowicie odmieni tę sytuację. W ciągu ostatnich kilku lat matematycy dowiedli, że dla rozkładu wielkich liczb na czynniki pierwsze komputery kwantowe, wykorzystujące specyficzne możliwości świata subatomowego, będą wyjątkowo efektywne, przewyższą wszelkie superkomputery „klasyczne”. Pozwolą one również na przeszukiwanie w rekordowym czasie wielkich baz danych, choć w tym przypadku różnica wydajności nie będzie aż tak znaczna. Dzięki temu, że zbiory obiektów kwantowych – atomów, elektronów, fotonów – mogą pozostawać jednocześnie w wielu stanach, umożliwiają one wykonywanie większej liczby równoległych operacji niż jakiekolwiek podzespoły mechaniczne czy też elektroniczne. Wraz z pojawieniem się komputerów kwantowych istotnie zmniejszy się liczba problemów uchodzących dotychczas za beznadziejne. Fundamentalne siły natury zaprzęgnięte zostaną tym razem nie do przemieszczania materii, lecz do manipulowania
liczbami, powodując istną eksplozję informacyjną. Obliczenia kwantowe zrewolucjonizują technikę obliczeniową w równym stopniu, jak wyzwolenie energii jądrowej odmieniło oblicze energetyki i zbrojeń.
Ponad pół wieku minęło od czasu, gdy do Los Alamos zjechali fizycy, aby wziąć udział w legendarnym projekcie Manhattan, który doprowadził do zbudowania bomby jądrowej. Wykazał on, jak wiele można osiągnąć poprzez zgromadzenie w jednym miejscu odpowiednio dużych zasobów intelektualnych i finansowych skupionych na tym samym zadaniu (czy to dobrym, czy złym). Obecnie rząd Stanów Zjednoczonych wydaje rocznie dziesiątki milionów dolarów na przedsięwzięcia o podobnym charakterze i ten poziom finansowania przypuszczalnie gwałtownie wzrośnie w najbliższym czasie. Podatne na złamanie szyfry są dla państwa równie niebezpieczne jak słabo bronione granice. Nowa, superwydajna technika obliczeniowa jest wielką szansą, ale i wielkim zagrożeniem.
W laboratorium National Institute of Standards and Technology w Boulder w stanie Colorado naukowcy używają jako malutkich przełączników komputerowych naładowanych atomów uwięzionych w polu magnetycznym. Inni badacze próbują wykorzystać do przeprowadzania obliczeń kwantowych cząstki światła – fotony. Badania nad komputerami kwantowymi prowadzone s¹ miêdzy innymi w Caltechu, MIT, University of California w Berkeley, Stanford University, University of Michigan i University of Southern California. Poza Stanami Zjednoczonymi rangę wiodącego ośrodka tych badań zyskał University of Oxford. Badaniami możliwości wykorzystania cząstek subatomowych do wykonywania obliczeń zajmują się również wielkie firmy, jak IBM, Lucent i Microsoft. Podobnie jak w przypadku fizyki jądrowej w latach czterdziestych XX w., niezbyt spektakularna dziedzina fizyki teoretycznej skupia na sobie powszechną uwagę.
Wszyscy zadają sobie pytanie, jak szybko uda się zbudować działający komputer kwantowy. Naukowcy w swych laboratoriach wykazali już, że zasadnicze założenia idei obliczeń kwantowych są słuszne. Aby jednak można było skonstruować komputer zdolny rozwiązać któryś z problemów uważanych dotąd za niewykonalny, konieczne jest opanowanie metod manipulowania zespołami atomów na dużą skalę, a nie jedynie kilkoma pojedynczymi atomami jak dotychczas.
Optymiści twierdzą, że obliczenia kwantowe znajdują się aktualnie w punkcie, w którym fizyka jądrowa była pod koniec lat trzydziestych XX w., gdy przeprowadzono pierwszą reakcję rozszczepienia jąder w laboratorium. W zaledwie kilka lat później dokonano pierwszego wybuchu jądrowego na poligonie Trinity, co dało początek szybkiemu rozwojowi w zakresie wykorzystania energii jądrowej.
Można się spodziewać, że rozwój komputerów kwantowych dokona się w podobnej skali czasowej. Każdy, choćby najmniejszy, postęp w tej dziedzinie przybliża nas do tego momentu. Niewykluczone, że dla nas, postronnych obserwatorów, ten przełom w technice obliczeniowej stanowić będzie jeden z najważniejszych, a zarazem najbardziej fascynujących spektakli naukowych stulecia. Biletem wstępu, abyśmy byli w stanie śledzić to pasjonujące widowisko, jest ogólna orientacja w zakresie podstawowych idei mechaniki kwantowej i teorii obliczeń oraz pozbycie się postawy niedowierzającej.