InfrastrukturaCIOPolecane tematy
Świt komputerów kwantowych
Na co dziś pozwalają komputery kwantowe? Na jakich prawach fizyki bazują? Jakie będą potencjalne możliwości oferowane przez komputery kwantowe? Jakie są ograniczenia tej technologii? Czym jest kubit? Do czego służy algorytm Sora? Na to i wiele innych pytań postaramy się odpowiedzieć w tym artykule.
Historia i podstawy teoretyczne współczesnych komputerów – maszyn dziś nam znanych i bez, których trudno sobie wyobrazić współczesny świat sięga okresu pomiędzy 400 a 300 rokiem p.n.e. Wówczas to znany matematyk Euklides wynalazł uważany za pierwszy w historii algorytm znajdowania największego wspólnego dzielnika dwóch dodatnich liczb całkowitych. Dzielnik (nwd) liczb A i B to największa liczba całkowita, przez którą zarówno A i B dzielą się bez reszty.
2000 lat rozwoju komputerów w telegraficznym skrócie
Już całe IX wieków później perski matematyk, astronom, geograf i kartograf Muhammad ibn Musa al-Chuwarizmi zaczął stosować pochodzący z Indii dziesiętny system liczenia i pozycyjny system zapisu liczb wraz z podaniem reguł dodawania, odejmowania, mnożenia i dzielenia liczb dziesiętnych. Od zapisu jego nazwiska w języku łacińskim „Algorismus” pochodzi dzisiejsze słowo algorytm.
Od powyższych podstaw oprogramowania do sprzętu droga była już krótka – zajęła jedynie kolejne IX wieków gdzie w roku 1801 francuz Joseph Jacquard stworzył krosno tkackie, gdzie tkany wzór konfigurowany był przez karty z otworami wykonanymi w odpowiednich miejscach. Proces ten wykonywał sterowanie urządzeniem z wykorzystaniem zaprogramowanego przez układ dziur na karcie algorytmu. Jak łatwo się domyśleć tutaj historia nabiera tępa.
To, co stanowi obecnie wyzwanie, to liczba kubitów, za pomocą których można wykonywać operacje algorytmiczne. Dodatkowo należy pamiętać, że dokładność „obliczeniowa” komputerów kwantowych zależy od warunków środowiskowych. Minimalne wstrząsy, wahania temperatury czy działanie pola elektromagnetycznego skutkują błędami. Dodatkowo procesory (serce komputera) wymagają chłodzenia blisko zera absolutnego (-273 oC), aby wyeliminować zjawisko dekoherencji.
Plany pierwszej „maszyny analitycznej” zostały wykonane przez angielskiego matematyka Charle’a Babbage’a w roku 1833. W przeciwieństwie do krosna nastawionego na wykonywanie konfigurowalnej, ale konkretnej czynności był to układ umożliwiający implementację algorytmów (programów) zapisanych na dziurkowanych kartach. Maszyna ta jednak nigdy nie została zbudowana. Dopiero w 1890 Herman Hollerith wynalazł maszynę użytą w trakcie opracowywania spisu powszechnego, działającą z użyciem czegoś, co znamy pod nazwą kart perforowanych. Potem poszło już „szybko”, gdyż za sprawą pracy wielu matematyków m.in. Alana Turinga czy Johna von Neumanna oraz zaangażowania firm komercyjnych, takich jak IBM, już w 1968 roku uznano informatykę za niezależną dyscyplinę akademicką a uniwersytety zaczęły tworzyć wydziały informatyczne. Do tego momentu upłynęło – lekko licząc – 2000 lat.
Procesor kwantowy wykonany w 7-nanometrowym procesie technologicznym
Na tle tej długiej historii rozwój komputerów kwantowych jest niezwykle szybki. W praktyce już latach 1900-1950 powstała cała teoria dotycząca dzisiejszej mechaniki kwantowej, która stała się podstawą do budowy komputerów kwantowych. Niezależnie od siebie jej podstawy zostały opisane przez Erwina Schrödingera (tzw. równanie Schrodingera) i Wernera Heisenberga (zasada nieoznaczoności) już w 1925 roku. Obecną wersję mechaniki kwantowej doprowadził do znanej nam postaci laureat Nagrody Nobla w dziedzinie fizyki Richard Feynman.
Przetwarzanie informacji, jakie znamy z dzisiejszych komputerów, telefonów komórkowych, telewizorów czy innych urządzeń wyposażonych w klasyczne procesory, wykorzystuje znane od lat mechanizmy obliczeniowe i jest przewidywalne, a otrzymywane wyniki – jednoznaczne. Przy ich budowie zeszliśmy do poziomu, w którym tranzystory ułożone są warstwami i oddzielone od siebie wielkością pojedynczych atomów. Wydajność i skalowalność takich układów, nadal, pomimo wielu odmiennym przewidywaniom, podlega prawu Moora, które zakłada, że moc obliczeniowa podwaja się, co dwa lata (pierwotnie zasada ta dotyczyła liczby tranzystorów w układzie). Obecne układy mogą być wytwarzane w technologii 12nm, a niebawem pojawią się rozwiązania bazujące na 10-nanometrowym procesie wytwórczym.
Rozwój komputerów kwantowych jest niezwykle szybki. W praktyce już latach 1900-1950 powstała cała teoria dotycząca dzisiejszej mechaniki kwantowej, która stała się podstawą do budowy komputerów kwantowych. Niezależnie od siebie jej podstawy zostały opisane przez Erwina Schrödingera (tzw. równanie Schrodingera) i Wernera Heisenberga (zasada nieoznaczoności) już w 1925 roku. Obecną wersję mechaniki kwantowej doprowadził do znanej nam postaci laureat Nagrody Nobla w dziedzinie fizyki Richard Feynman.
Dzięki nowym metodom wytwórczym (między innymi litografii EUV, zastosowaniu innych półprzewodników) firmie IBM dało się stworzyć prototyp procesora wykonanego w 7-nanometrowym procesie technologicznym. Biorąc jednak pod uwagę klasyczną fizykę (nieuwzględniającą efektów kwantowych, takich jak nadpłynność, efekt tunelowy, efekty Casimira, Josephsona, Halla czy Meissnera) granicę stanowi rozmiar atomu, a w drugim kroku prędkość światła określająca maksymalną prędkość przesyłania informacji. Stąd m.in. tak wielkie zainteresowanie alternatywnymi – specjalizowanymi architekturami procesorowymi jak np. projekt SyNAPSE.
Komputery kwantowe i nowe algorytmy, m.in. Shora
Przełomu jednak upatruje się w komputerach kwantowych, wykorzystujących mechanikę kwantową. W odróżnieniu od standardowych komputerów operują one na tzw. bitach kwantowych (kubity – cząstki podstawowe) gdzie w jednym czasie pojedynczy kubit może przyjmować wiele stanów (wartości) jednocześnie. Pozwala to na niezwykle szybkie przetwarzanie informacji. Praktycznie dowolny problem rozwiązywalny przy pomocy komputera kwantowego może zostać rozwiązany przy użyciu współczesnych technik obliczeniowych – niektóre jednak mogą trwać latami, a czas ich rozwiązania dążyć relatywnie do nieskończoności.
Najczęściej wykorzystywanym przykładem porównawczym jest rozkład liczb na czynniki pierwsze z wykorzystaniem kwantowego algorytmu Shora. Algorytm ten stanowi teoretyczne zagrożenie dla znanego i powszechnie używanego RSA – obecnie najpopularniejszego asymetrycznego algorytmu kryptograficznego z kluczem publicznym. Klucz publiczny w RSA jest iloczynem dwóch dużych liczb pierwszych. Możliwość efektywnego odtworzenia tych liczb na podstawie klucza publicznego pozwalałaby poznać klucz prywatny i tym samym złamać cały szyfr. Skutek – m.in. koniec bankowości elektronicznej, jaką znamy, brak możliwości weryfikacji tożsamości użytkownika bazująca na podpisie elektronicznym – jednym słowem chaos. Dlatego przewiduje się, że komputery kwantowe znajdą w przyszłości głównie zastosowanie w kryptografii i zabezpieczeniu transakcji.
Przyspieszenie modelowania zdarzeń i rozwiązywania aktualnych problemów
Spodziewane jest, że wiele dotychczasowych złożonych zagadnień związanych z modelowaniem zdarzeń czy problemów optymalizacyjnych zostanie rozwiązana dzięki komputerom kwantowym, a czas rozwiązywania skomplikowanych modeli matematycznych będzie skończony i możliwy do przewidzenia. Teoretyczne możliwości mówią o skrócenie czasu rozwiązywania niektórych zagadnień do dni, z poziomu tysięcy lat obecnie.
Spodziewane jest, że wiele dotychczasowych złożonych zagadnień związanych z modelowaniem zdarzeń czy problemów optymalizacyjnych zostanie rozwiązana dzięki komputerom kwantowym, a czas rozwiązywania skomplikowanych modeli matematycznych będzie skończony i możliwy do przewidzenia. Teoretyczne możliwości mówią o skrócenie czasu rozwiązywania niektórych zagadnień do dni, z poziomu tysięcy lat obecnie.
To, co stanowi obecnie wyzwanie, to liczba kubitów, za pomocą których można wykonywać operacje algorytmiczne. Dodatkowo należy pamiętać, że dokładność „obliczeniowa” komputerów kwantowych zależy od warunków środowiskowych. Minimalne wstrząsy, wahania temperatury czy działanie pola elektromagnetycznego skutkują błędami. Dodatkowo procesory (serce komputera) wymagają chłodzenia blisko zera absolutnego (-273 oC), aby wyeliminować zjawisko dekoherencji.
Dwie, dostępne dziś implementacje komputerów kwantowych
Znane są dwie główne implementacje komputerów kwantowych udostępnione do użycia. Są to rozwiązania firm D-Wave Systems i IBM różniące się od siebie znacząco zastosowanym podejściem. D-Wave koncentruje się na możliwości rozwiązywania problemów optymalizacji a IBM implementacji bardziej skomplikowanych i różnorakich algorytmów. Ma to w przyszłości doprowadzić do skonstruowania uniwersalnego komputera kwantowego – urządzenia, które byłoby zdolne wykonać dowolne zadanie znacznie szybciej, niż dostępne dziś maszyny. Dostęp do tego rozwiązania został zapewniony poprzez platformę IBM Cloud – Quantum Experience. Platforma pozwala użytkownikom na formułowanie i testowanie algorytmów, pracę z pojedynczymi kubitami, a także na zapoznanie się z instrukcjami i symulacjami pokazującymi, jakie korzyści może przynieść wykorzystanie procesorów kwantowych.
Komputery kwantowe są kolejnym krokiem przybliżającym ludzkość do przełomowych odkryć, choćby w dziedzinie leków, zastosowania materiałów przemysłowych czy sztucznej inteligencji. Mają potencjał rozwiązania zagadnień technicznych, dziś niedostępnych dla superkomputerów.
Piotr Pietrzak jest Chief Technology Officer’em w IBM Poland & Baltics