Algorytmy, modele, wyzwania i zastosowania

Od zarania idei komputera kwantowego w roku 1980, technologia ta przeszła znaczącą ewolucję, zwłaszcza w ostatnim dziesięcioleciu. Liczne przedsiębiorstwa angażują się w rozwój maszyn kwantowych.

Dla większości z nas zrozumienie zasad działania obliczeń kwantowych bywa wyzwaniem, a dostępnych informacji często brakuje istotnych detali.

Celem tego artykułu jest rozjaśnienie tematu. Po jego lekturze zdobędziesz wyczerpującą wiedzę na temat przetwarzania kwantowego, jego różnych odmian, mechanizmów działania, algorytmów, modeli, strategii, problemów oraz potencjalnych zastosowań.

Czym są komputery kwantowe?

Komputery kwantowe podchodzą do rozwiązywania problemów w sposób odmienny niż komputery, które powszechnie znamy – będziemy je dalej nazywać komputerami klasycznymi.

W pewnych przypadkach, komputery kwantowe wykazują przewagę nad klasycznymi, dzięki swojej zdolności do jednoczesnego przebywania w wielu stanach. Dla kontrastu, komputery klasyczne mogą przyjmować tylko jeden stan w danym momencie.

Źródło ilustracji: IBM-a

Aby pojąć działanie komputerów kwantowych, niezbędne jest zrozumienie trzech kluczowych koncepcji: superpozycji, splątania oraz interferencji.

Podstawą działania komputerów klasycznych są bity. W przypadku komputerów kwantowych ich odpowiednikiem są kubity – bity kwantowe. Działają one na zasadniczo różnej zasadzie.

Bit klasyczny przypomina przełącznik, który może przyjmować wartość 0 lub 1, co prawdopodobnie jest ci znane jako informacja binarna. Pomiar bitu po prostu ujawnia jego aktualny stan. Sytuacja z kubitami jest bardziej złożona.

Superpozycja

Można wyobrazić sobie kubit jako strzałkę, która wskazuje kierunek w przestrzeni trójwymiarowej. Jeśli strzałka jest skierowana pionowo w górę, kubit jest w stanie 1, a jeśli w dół, to w stanie 0. Podobnie jak bit klasyczny, kubit ma jednak dodatkową możliwość przebywania w stanie superpozycji – strzałka wskazuje wówczas w dowolnym innym kierunku.

Stan superpozycji jest połączeniem stanu 0 i 1.

Stan superpozycji

Pomiar kubitu zawsze da w wyniku 1 lub 0. Wynik zależy od prawdopodobieństwa determinowanego przez kierunek strzałki.

Gdy strzałka jest bardziej skierowana w górę, istnieje większe prawdopodobieństwo uzyskania 1 niż 0. Odwrotnie, gdy jest skierowana w dół, prawdopodobieństwo uzyskania 0 jest większe niż 1. W przypadku, gdy strzałka leży dokładnie na równiku, oba stany są równie prawdopodobne (50%).

To jest esencja efektu superpozycji. Teraz przejdźmy do splątania.

Splątanie

W komputerach klasycznych, bity są całkowicie od siebie niezależne. Stan jednego bitu nie wpływa na stan innych. Jednakże, w komputerach kwantowych, kubity mogą być ze sobą splątane. Oznacza to, że stają się elementami jednego, spójnego stanu kwantowego.

Rozważmy dwa kubity, każdy w innym stanie superpozycji, ale jeszcze niesplątane. Prawdopodobieństwa każdego z nich są niezależne.

Po splątaniu musimy porzucić ideę niezależnych prawdopodobieństw i obliczyć rozkład prawdopodobieństwa wszystkich możliwych stanów wynikowych: 00, 01, 10 lub 11.

Istotne jest to, że gdy kubity są splątane, zmiana kierunku strzałki jednego kubitu wpływa na rozkład prawdopodobieństwa całego układu. Kubity nie są już niezależne, ale stają się częścią jednego, rozległego stanu.

Ta zasada obowiązuje niezależnie od liczby kubitów. Zauważmy, że jeden kubit ma rozkład prawdopodobieństwa w 2 stanach.

Dwa kubity mają rozkład na 4 stany. Trzy kubity generują rozkład na 8 stanów, a liczba ta podwaja się wraz z dodaniem kolejnego kubitu.

Ogólnie, komputer kwantowy składający się z n kubitów może przyjmować kombinację 2n stanów. To fundamentalna różnica między komputerami klasycznymi a kwantowymi.

Komputery klasyczne mogą przyjmować dowolny stan, ale tylko jeden w danym momencie. Komputery kwantowe mogą przebywać w superpozycji wszystkich tych stanów równocześnie.

Możesz się zastanawiać, w jaki sposób stan superpozycji jest przydatny w komputerze. Do tego potrzebny jest nam ostatni element – interferencja.

Interferencja

Aby wyjaśnić interferencję, musimy wrócić do ilustracji kubitu, technicznie zwaną sferą Blocha. Kubit w rzeczywistości tak nie wygląda, to tylko użyteczna wizualizacja jego stanu.

Realny stan kubitu opisuje bardziej abstrakcyjna jednostka, jaką jest kwantowa funkcja falowa. Funkcje falowe to podstawowe matematyczne opisy wszystkiego w mechanice kwantowej.

Kiedy splątamy wiele kubitów, ich funkcje falowe sumują się, tworząc ogólną funkcję falową, która opisuje stan komputera kwantowego.

To sumowanie funkcji falowych jest interferencją. Podobnie jak w przypadku fal na wodzie, kiedy fale się nakładają, mogą wzmacniać się (interferencja konstruktywna) lub znosić (interferencja destruktywna).

Ogólna funkcja falowa komputera kwantowego wyznacza prawdopodobieństwo różnych stanów. Zmieniając stan kubitów, możemy wpływać na te prawdopodobieństwa w momencie pomiaru.

Pamiętajmy, że choć komputer kwantowy może przebywać w superpozycji milionów stanów jednocześnie, po dokonaniu pomiaru uzyskamy tylko jeden konkretny stan.

Zatem, aby użyć komputera kwantowego do rozwiązania problemu obliczeniowego, musimy wykorzystać interferencję konstruktywną, aby zwiększyć szansę na uzyskanie prawidłowej odpowiedzi. Jednocześnie, używając interferencji destruktywnej, zmniejszymy prawdopodobieństwo błędnych wyników. Efektem ma być uzyskanie prawidłowej odpowiedzi po pomiarze.

Algorytmy kwantowe

Sposób, w jaki to realizujemy, to domena algorytmów kwantowych. Głównym motywem rozwoju obliczeń kwantowych jest istnienie problemów, które teoretycznie można efektywnie rozwiązać na komputerze kwantowym, ale są uważane za nierozwiązywalne dla komputerów klasycznych.

Przyjrzyjmy się im bliżej. Istnieje wiele algorytmów kwantowych, zbyt wiele, aby je wszystkie omówić. Skupimy się więc na najsłynniejszym i najważniejszym z historycznego punktu widzenia: algorytmie Shora.

#1. Algorytm Shora

Mnożenie dwóch dużych liczb to operacja, którą komputery wykonują szybko i sprawnie. Jednakże zadanie odwrotne – znalezienie liczb, które dały dany wynik (faktoryzacja), jest znacznie trudniejsze.

Faktoryzacja, czyli rozkład liczby na czynniki pierwsze, jest trudna z uwagi na ogromną przestrzeń poszukiwań. Nie istnieje wydajny klasyczny algorytm znajdowania czynników dużych liczb.

Ta właściwość matematyczna jest wykorzystywana w szyfrowaniu internetowym: do zabezpieczania stron internetowych, poczty elektronicznej i kont bankowych. Znając czynniki, można łatwo odszyfrować informację. Bez ich znajomości zadanie to staje się niewykonalne nawet dla najpotężniejszych komputerów.

Algorytm Shora

W 1994 roku Peter Shor przedstawił szybki algorytm kwantowy, który potrafił efektywnie znajdować czynniki dużych liczb. To wywołało poruszenie i skłoniło wielu do poważnego potraktowania obliczeń kwantowych. Było to pierwsze zastosowanie o potencjalnie ogromnych implikacjach dla bezpieczeństwa.

Gdy mówimy o „szybkim” algorytmie kwantowym, jak szybki jest on w porównaniu do klasycznego komputera? Aby odpowiedzieć, musimy zagłębić się w świat teorii złożoności kwantowej.

Teoria złożoności kwantowej

Teoria złożoności kwantowej to poddziedzina teorii złożoności obliczeniowej, która klasyfikuje algorytmy na podstawie ich efektywności na komputerach.

O klasyfikacji decyduje wzrost trudności rozwiązania problemu wraz ze wzrostem jego rozmiaru. Problemy z kategorii P są łatwe do rozwiązania dla komputerów klasycznych. Problemy poza tą kategorią nie mają efektywnych klasycznych rozwiązań – faktoryzacja dużych liczb jest tego przykładem.

Istnieje jednak kategoria BQP, w której problemy można efektywnie rozwiązać przy pomocy komputerów kwantowych, ale nie klasycznych. To właśnie te problemy komputery kwantowe rozwiązują lepiej niż klasyczne.

Teoria złożoności analizuje, jak trudne staje się rozwiązanie problemu, gdy jego skala rośnie. Jeśli rozkładamy na czynniki liczbę 8-cyfrową i dodamy kolejną cyfrę, o ile trudniejsze będzie nowe zadanie? Czy dwa razy trudniejsze? Wykładniczo trudniejsze? Tendencja ta, w miarę dodawania kolejnych cyfr, jest nazywana złożonością. W przypadku faktoryzacji jest ona wykładnicza.

Wszystko, co zawiera „N” w wykładniku, jest wykładniczo trudne. Te problemy stają się coraz trudniejsze wraz ze wzrostem ich skali. W świecie informatyki można zyskać uznanie za znalezienie lepszego algorytmu do rozwiązania tych najtrudniejszych problemów.

Algorytm Shora wykorzystał specyficzne cechy komputerów kwantowych do stworzenia algorytmu, który radzi sobie z faktoryzacją w tempie znacznie lepszym niż najlepsze algorytmy klasyczne.

Najlepszy algorytm klasyczny ma złożoność wykładniczą, natomiast algorytm Shora – wielomianową. To ogromna różnica, ponieważ przekształca problem nierozwiązywalny w rozwiązywalny (oczywiście, jeśli dysponujemy działającym komputerem kwantowym). Należy dodać, że dzisiejsze komputery kwantowe nie są jeszcze zdolne do uruchomienia algorytmu Shora na dużych liczbach.


IBM Quantum

Do tego celu potrzebne byłyby setki kubitów. Obecnie najbardziej zaawansowane komputery kwantowe mają ich 433.

Ponadto, opracowywane są schematy szyfrowania postkwantowego, które nie opierają się na faktoryzacji. Pomocna może być również kryptografia kwantowa.

To tylko jeden przykład algorytmu kwantowego. Jest ich znacznie więcej, a każdy z nich charakteryzuje się inną wydajnością.

#2. Algorytm Grovera

Algorytm Grovera jest kolejnym przykładem, który umożliwia szybsze przeszukiwanie nieustrukturyzowanych list danych niż najlepszy algorytm klasyczny.

Należy jednak zachować ostrożność i nie umniejszać możliwości komputerów klasycznych. Są to bardzo wszechstronne urządzenia i nie jest wykluczone, że ktoś opracuje algorytm klasyczny, który poradzi sobie z faktoryzacją liczb całkowitych lepiej niż dzisiejsze rozwiązania. Uważa się to za mało prawdopodobne, ale nie jest niemożliwe. Istnieją też problemy nierozwiązywalne na komputerach klasycznych, zwane problemami nieobliczalnymi (np. problem zatrzymania), ale nie da się ich rozwiązać również na komputerze kwantowym.

Pod względem obliczeniowym, komputery klasyczne i kwantowe są równoważne. Wszystkie różnice wynikają z algorytmów, które mogą na nich działać. Możliwa jest symulacja komputera kwantowego na klasycznym i odwrotnie.

Symulacja komputera kwantowego na komputerze klasycznym staje się wykładniczo trudniejsza wraz ze wzrostem liczby symulowanych kubitów.

Dzieje się tak dlatego, że komputery klasyczne mają trudności z symulowaniem systemów kwantowych. Komputery kwantowe będąc same systemami kwantowymi, nie mają tego problemu. To prowadzi nas do ulubionego zastosowania komputerów kwantowych: symulacji kwantowej.

#3. Symulacja kwantowa

Symulacja kwantowa polega na użyciu komputera do modelowania reakcji chemicznych lub zachowań elektronów w różnych materiałach. W tym przypadku komputery kwantowe również zyskują przewagę nad klasycznymi z uwagi na trudności tych ostatnich w symulacji systemów kwantowych.

Symulacja nawet prostych systemów kwantowych jest wyzwaniem dla najpotężniejszych superkomputerów. Na obecnym etapie, komputery kwantowe jeszcze tego nie potrafią, ale w miarę ich rozwoju głównym celem jest symulacja coraz większych układów kwantowych.

Zastosowania tego obejmują badanie egzotycznych materiałów w niskich temperaturach, np. zrozumienie nadprzewodnictwa, lub badanie ważnych reakcji chemicznych w celu poprawy ich wydajności. Przykładem jest produkcja nawozów, która generuje znaczne ilości dwutlenku węgla. Dążeniem jest stworzenie bardziej ekologicznych metod.

Możesz zgłębić temat symulacji chemii kwantowej.


Symulacja kwantowa

Inne możliwe zastosowania to ulepszenia paneli słonecznych, akumulatorów i opracowywanie leków, chemikaliów i materiałów dla przemysłu lotniczego.

Generalnie, symulacja kwantowa pozwoliłaby na szybkie prototypowanie różnych materiałów w komputerze kwantowym i testowanie ich parametrów fizycznych. Nie musielibyśmy polegać wyłącznie na kosztownym i pracochłonnym procesie produkcji fizycznych próbek i testowania ich w laboratorium.

Może to znacznie przyspieszyć procesy badawczo-rozwojowe i prowadzić do oszczędności czasu i kosztów. Należy podkreślić, że to potencjalne zastosowania komputerów kwantowych, ponieważ nie mamy jeszcze maszyn, które radziłyby sobie z rzeczywistymi problemami lepiej niż nasze zwykłe komputery. Niemniej jednak, są to obszary, w których komputery kwantowe mają największe możliwości.

Modele komputerów kwantowych

W świecie obliczeń kwantowych istnieje wiele metod, które mają na celu przekształcenie różnych systemów kwantowych w komputery. Istnieją tutaj pewne niuanse, które musimy omówić.

Model obwodu

Model obwodu zakłada wykorzystanie współpracujących ze sobą kubitów i specjalnych bramek, które zmieniają stan kubitów bez dokonywania pomiaru. Ustawiając te bramki w określonej kolejności tworzymy algorytm kwantowy. Na końcu dokonujemy pomiaru kubitów, aby uzyskać wynik.

Źródło ilustracji: qiskit

Adiabatyczne obliczenia kwantowe

Adiabatyczne obliczenia kwantowe wykorzystują zjawisko, że każdy układ fizyczny dąży do osiągnięcia minimalnego stanu energetycznego. Problemy są konstruowane tak, aby rozwiązaniem był najniższy stan energetyczny układu kwantowego.

Wyżarzanie kwantowe

Wyżarzanie kwantowe nie jest uniwersalnym schematem obliczeń kwantowych. Działa na tej samej zasadzie co obliczenia adiabatyczne, gdzie system dąży do minimalnego stanu energetycznego.

Topologiczne obliczenia kwantowe

W tym podejściu kubity są tworzone z jednostki nazywanej quasi-cząstką trybu zerowego Majorany. Przewiduje się, że quasi-cząstki będą bardziej stabilne z uwagi na ich fizyczne oddalenie od siebie.

Kredyt obrazu Civilsday

Wyzwania w budowie

Niezależnie od wybranego podejścia, wszystkie z nich napotykają podobne przeszkody, którym musimy się przyjrzeć.

  • Dekoherencja: Trudno jest kontrolować systemy kwantowe, ponieważ każda interakcja ze światem zewnętrznym powoduje utratę informacji. Nazywa się to dekoherencją. Kubity wykonane z materiału fizycznego, potrzebują dodatkowych elementów do kontroli i pomiaru. Twoje kubity są „wrażliwe” i będą splątywały się ze wszystkim w pobliżu. Należy starannie chronić je przed splątaniem z otoczeniem.
  • Szum: Kubity należy chronić przed szumem, promieniowaniem, energią cieplną. Pewna ilość dekoherencji i szumu jest nieunikniona i nie da się jej całkowicie wyeliminować.
  • Skalowalność: Do każdego kubitu potrzebne są liczne przewody do sterowania i pomiarów. Wraz z dodawaniem kolejnych kubitów, niezbędna infrastruktura rośnie, co stanowi wyzwanie inżynieryjne. Każdy projekt komputera kwantowego musi znaleźć sposób na efektywne splątywanie, kontrolowanie i pomiar wszystkich kubitów w miarę rozwoju skali.
  • Korekcja błędów kwantowych: Korekcja błędów jest schematem pozwalającym tworzyć odporne na błędy komputery kwantowe. Wykorzystuje się do tego celu wiele splątanych kubitów, tworząc w ten sposób jeden kubit, odporny na szumy. Wymaga to znacznej liczby fizycznych kubitów.

Implementacje fizyczne

Istnieje wiele różnych implementacji fizycznych komputerów kwantowych, ponieważ można je potencjalnie budować z wielu różnych systemów kwantowych. Oto niektóre z najczęściej wykorzystywanych metod:

  • Nadprzewodzące komputery kwantowe: Kubity nadprzewodzące to obecnie najpopularniejsze podejście. Te kubity są wykonywane z drutów nadprzewodzących, z przerwą w nadprzewodniku – tzw. złączem Josephsona. Najpopularniejszym typem kubitu nadprzewodzącego jest transmon.
  • Komputery kwantowe z kropkami kwantowymi: Kubity tworzone są z elektronów lub ich grup. Dwupoziomowy system kodowany jest w spinie lub ładunku elektronów. Te kubity są wykonane z półprzewodników, np. krzemu.
  • Liniowe optyczne obliczenia kwantowe: Optyczne komputery kwantowe wykorzystują fotony jako kubity. Operacje na kubitach wykonuje się za pomocą elementów optycznych (luster, płytek falowych, interferometrów).
  • Komputery kwantowe z uwięzionymi jonami: Naładowane atomy są wykorzystywane jako kubity. Stan kubitu jest kodowany w poziomach energii atomu, którymi można manipulować lub mierzyć za pomocą mikrofal lub laserów.
  • Komputery kwantowe z centrami kolorów lub pustymi azotami: Te kubity są wykonywane z atomów osadzonych w materiałach takich jak azot w diamencie lub węgliku krzemu. Tworzą się one za pomocą spinów jądrowych osadzonych atomów i są splątane z elektronami.
  • Neutralne atomy w siatkach optycznych: Podejście to polega na wychwytywaniu neutralnych atomów w sieci optycznej utworzonej z wiązek laserowych. Dwupoziomowy układ kubitów może obejmować nadsubtelny poziom energii atomu lub stany wzbudzone.

To jedne z kluczowych podejść do budowy komputerów kwantowych. Każde z nich ma swoje wyzwania. Technologia obliczeń kwantowych szybko się zmienia, a wybór odpowiedniego podejścia jest kluczowy dla przyszłego sukcesu.

Zastosowania komputerów kwantowych

  • Symulacja kwantowa: Komputery kwantowe mogą symulować złożone układy kwantowe. Umożliwia to badanie reakcji chemicznych, zachowania elektronów w materiałach i różnych parametrów fizycznych. Ma to zastosowanie w ulepszaniu paneli słonecznych, baterii, opracowywaniu leków, materiałach lotniczych i nie tylko.
  • Algorytmy kwantowe: Algorytmy, takie jak algorytm Shora i algorytm Grovera, mogą rozwiązywać problemy, które są uważane za nierozwiązywalne dla komputerów klasycznych. Znajdują zastosowanie w kryptografii, optymalizacji złożonych systemów, uczeniu maszynowym i sztucznej inteligencji.
  • Cyberbezpieczeństwo: Komputery kwantowe stanowią zagrożenie dla klasycznych systemów szyfrowania. Mogą jednak również przyczynić się do cyberbezpieczeństwa, dzięki rozwojowi szyfrowania odpornego na kwanty. Kryptografia kwantowa, dziedzina powiązana z obliczeniami kwantowymi, może zwiększyć bezpieczeństwo.
  • Problemy optymalizacyjne: Komputery kwantowe mogą skuteczniej rozwiązywać złożone problemy optymalizacyjne niż komputery klasyczne. Znajduje to zastosowanie w różnych branżach, od zarządzania łańcuchem dostaw po modelowanie finansowe.
  • Prognozowanie pogody i zmiany klimatyczne: Komputery kwantowe potencjalnie mogą usprawnić modele prognozowania pogody i pomóc w walce ze zmianami klimatycznymi. Jest to obszar, który w przyszłości może odnieść korzyści z obliczeń kwantowych.
  • Kryptografia kwantowa: Kryptografia kwantowa podnosi poziom bezpieczeństwa danych, wykorzystując zasady kwantowe do bezpiecznej komunikacji. Jest to kluczowe w czasach rosnących zagrożeń cybernetycznych.

Należy zachować ostrożność w ocenie potencjału tej technologii. Wiele twierdzeń na temat potencjalnych zastosowań komputerów kwantowych pochodzi od osób zaangażowanych w ich budowę.

Historia uczy, że przy pojawieniu się nowych technologii trudno jest przewidzieć, jak będą one faktycznie wykorzystywane.

Na przykład, twórcy pierwszych komputerów nie przewidzieli powstania Internetu.

Końcowe przemyślenia

Komputery kwantowe stają się coraz lepsze. Chociaż na chwilę obecną nie możemy z nich korzystać w życiu codziennym, mają one potencjał do praktycznych zastosowań w przyszłości.

W tym artykule omówiliśmy różne aspekty komputerów kwantowych, w tym podstawowe koncepcje, takie jak superpozycja, splątanie i interferencja.

Zbadaliśmy także algorytmy kwantowe, w tym algorytm Shora i algorytm Grovera. Przyjrzeliśmy się teorii złożoności kwantowej i różnym modelom komputerów kwantowych.

Omówiliśmy wyzwania i problemy związane z wdrożeniem obliczeń kwantowych. Na końcu przedstawiliśmy potencjalne zastosowania komputerów kwantowych.

Możesz również zapoznać się z często zadawanymi pytaniami dotyczącymi obliczeń kwantowych.