Mechaniczna twarz podzielona na pół.

Stany Kwantowe Komputera

Komputery kwantowe już działają. Co musimy zrobić, żeby je udoskonalić?

Aktualny horyzont przetwarzania kwantowego

Dotychczas koncentrowałem się głównie na technologii komputerów kwantowych i problemach blisko z tym związanymi. Należy jednak spojrzeć na kwantowe przetwarzanie z nieco szerszej perspektywy. Realna wizja pojawienia się dostępnej do przetwarzania technologii komputerów kwantowych, pomimo na razie niewielkiej skali, spowodowała ogromny apetyt na jej szerokie możliwości. Od razu dostrzeżono ogromny potencjał i niejako automatycznie wyznaczony został kierunek rozwoju platform programistycznych na potrzeby najbardziej wizjonerskich rozwiązań takich jak: deep neural network, deep learning, machine learning, sztucznej inteligencji, zadań optymalizacyjnych czy symulacji złożonych procesów z różnych dziedzin życia.

Dostępne w chmurze przetwarzania kwantowe IBM Q Experience i Rigetti (Forest API), zapewniające środowiska kwantowe o mocy 5- 20 kubitów (a w najbliżej przyszłości nawet 50 kubitów), oferują oczywiście fizyczne platformy procesorów kwantowych, ale nie tylko i nie zawsze. Intencją tych usług jest głównie udostępnienie narzędzi programistycznych odpowiednich dla przetwarzania kwantowego, tak aby użytkownicy, programiści w miarę szybko odnaleźli się w nowych formułach przetwarzania. Jeśli w ramach IBM Q Experience piszemy prosty program w logice kubitów i chcemy go wykonać, to nie jest on od razu kierowany na zasoby fizycznego procesora kwantowego. Jeśli jest to typowy program (np. z bazy programów szkoleniowych dostępnych z tutorialu), to możliwe jest pobranie wyników już wcześniej uzyskanych rezultatów. Sugerowane jest także wykonanie symulacji naszego kodu kwantowego (oczywiście na jakimś symulatorze na platformie x86). Jeśli się upieramy i oczekujemy wykonania kodu na fizycznym procesorze kwantowym, trafiamy w system kolejkowania (scheduler), jaki zwykle można znaleźć w rozwiązaniach HPC, a więc czekamy na przydzielony nam slot czasowy na procesorze.

Wiele firm związanych z technologią procesorów kwantowych proponuje rozbudowane środowiska programistyczne, np. IBM QISKit (Quantum Information Software Kit), Microsoft Quantum Development Kit, a także integrację komputerowych obliczeń kwantowych w Visual Studio, D-Wave, biblioteki C/C++, Pyton, MATLAB, Rigetti Forest API (Quil – Quantum Instruction Language, pyQuil – Pyton Quil), itd. Ciekawą inicjatywą jest Open-Source Software Framework for Quantum Computing – ProjectQ, zainicjowany przez politechnikę w Zurychu. Projekt ten współpracuje z zespołami IBM Q, Google, Microsoftu oraz Intela.

Istnieją także firmy, które zdając sobie sprawę z pojawiającej się szansy zaistnienia w obszarze komputerów kwantowych, nawet jeśli nie dysponują i może nie planują uruchomienia fizycznie u siebie tej technologii, to jednak oferują symulatory procesorów kwantowych na bazie technologii klasycznych układów krzemowych. Towarzyszy temu oczywiście cała otoczka środowiska programistycznego dla technologii kwantowych. Przykładem takiej firmy jest Atos, firma oferująca handlowo dostępne symulatory kwantowe ATOS QLM o mocy symulacji od 30 do 40 kubitów, zbudowane na bazie platform procesorów x86. Innym przykładem jest Fujitsu, pracujące nad rozwiązaniem komputera wyżarzania kwantowego, opartego o krzemowe układy FPGA.

Efektem popularyzacji środowisk programistycznych, związanych z technologiami kwantowymi, jest powstawanie wielu aplikacji, które są „quantum ready”, nawet jeśli są aktualnie wykonywane na symulatorach kwantowych.

Podsumowanie

Rozwiązania technologii komputerów kwantowych są na razie na wczesnym etapie rozwoju. To co już teraz są w stanie pokazać, daje przedsmak tego, co będzie działo się w najbliższych latach. Wizje ich wykorzystania są niemal nieograniczone. Dzięki dostępom chmurowym do wydzielonych zasobów komputerów kwantowych, technologia daje się dotknąć każdemu zainteresowanemu użytkownikowi. Stworzenie zadowalającej skali rozwiązań komputerów kwantowych wciąż stanowi technologiczny problem i wymaga ogromnych nakładów badawczych na wielu płaszczyznach. Procesory kwantowe, poza firmami D-Wave, IBM i Rigetti, mają już Google (we współpracy z University of California Santa Barbara) oraz Intel (49-kubitowy testowy procesor), ale na razie nie ma łatwo dostępnych komputerów na bazie tych procesorów.

Wciąż pojawiają się doniesienia o próbach znalezienia technologii kwantowych mniej restrykcyjnych niż aktualnie stosowane, np. na bazie wysokotemperaturowych materiałów nadprzewodzących. Jako alternatywa dla platform kwantowych powstają symulatory, umożliwiające testowanie koncepcji kwantowych rozwiązań programistycznych, a także rozwiązywanie konkretnych problemów. Realność świata komputerów kwantowych pomimo ograniczonej na razie ich skali zaowocowała powstaniem różnorodnych narzędzi programistycznych, skierowanych na obliczenia kwantowe. Daje to duże możliwości opracowywania zastosowań przetwarzania kwantowego, które wraz ze wzrostem skali platform sprzętowych, doprowadzą do rozwiązywania bardzo złożonych problemów, jakie na nawet największych dostępnych klasycznych systemach komputerowych nie są możliwe do pokonania.

Śledzenie rozwoju tej technologii samo w sobie jest fascynujące, a dodatkową zachętą może być poczucie, że na naszych oczach rodzi się przyszłość. | CHIP


O autorze:

Marek Gardziński jest związany z branżą IT od ponad 30 lat. Od blisko 15 pracuje w Fujitsu Technology Solutions, od 10 lat jako Solution Architect. Jest specjalistą w zakresie systemów fizyki doświadczalnej, technik mikrofalowych i badawczych technik izotopów promieniotwórczych. Zajmuje się też technologiami transmisji danych, wirtualizacji środowisk IT, rozwiązaniami High Performance Computing, technologiami IT klasy business continuity, mission-critical oraz platformami serwerowymi x86 i RISC.

Źródła: