Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



26.05.2020

Cloud Native Universe

Jako patron medialny zapraszamy programistów wdrażających lub integrujących się z dowolną...
26.03.2020

Koniec certyfikatów...

MCSA, MCSD i MCSA
26.03.2020

Odświeżony OS

FortiOS 6.4
26.03.2020

Bezpieczeństwo w chmurze

Cisco SecureX
26.03.2020

Modernizacja IT

Nowości w VMware Tanzu
26.03.2020

Krytyczne zagrożenie dla...

Nowa groźna podatność
26.03.2020

Laptopy dla wymagających

Nowe ThinkPady T, X i L
26.03.2020

Serwerowe ARM-y

Ampere Altra
26.03.2020

Energooszczędny monitor

Philips 243B1

Komputer kwantowy od A do Z

Data publikacji: 20-12-2019 Autor: Marcin Bieńkowski
Komputer kwantowy Google.

Na przełomie września i października 2019 r. Google ogłosił na korporacyjnym blogu, że zbudował 54-kubitowy komputer kwantowy, który w ciągu 200 sekund jest w stanie rozwiązać zadania zajmujące współczesnym superkomputerom 10 tys. lat. Artykuł na ten temat ukazał się również w prestiżowym czasopiśmie naukowym „Nature”. Spróbujmy zatem wyjaśnić sobie, czym jest komputer kwantowy.
 

Zanim do tego przejdziemy, warto zwrócić uwagę, że oprócz czysto marketingowego przekazu wokół komputera Sycamore Google stwierdził także, że jego kwantowa maszyna osiągnęła tzw. przewagę kwantową (ang. quantum supremacy). Oznacza to, że jest ona w stanie rozwiązywać problemy, z którymi nie są w stanie poradzić sobie tradycyjne komputery. Pierwsze informacje na temat przewagi kwantowej Sycamore do publicznej wiadomości, jeszcze przed publikacją w „Nature”, podał dziennik „Financial Times”, ujawniając przy tym istnienie 54-kubitowej (a w zasadzie 53-kubitowej, bo jeden kubit okazał się niefunkcjonalny) maszyny. Według doniesień dziennika procesor wykonał w 200 sekund serię obliczeń, które tradycyjny superkomputer wykonywałby 10 tys. lat. Polegały one na wygenerowaniu ciągu cyfr i sprawdzeniu, czy ich rozkład jest losowy. W obliczeniach wykorzystano algorytm Schrödingera-Feynmana.


Oczywiście, w praktyce obecnie niewiele jeszcze z tego wynika, ale według Google udało się eksperymentalnie dowieść, że przewaga kwantowa jest realna, a kwantowe komputery za kilka lat faktycznie będą zmieniały nasz świat. Co prawda komputer Google został zaprojektowany specjalnie z myślą o rozwiązaniu konkretnego problemu – właśnie w celu dowiedzenia przewagi kwantowej, ale to niejedyny komputer kwantowy na świecie. Nad podobnymi maszynami pracują m.in. IBM czy Intel, ale również uczelnie i prywatne przedsiębiorstwa w Chinach. Ponadto na rynku są już dostępne komercyjne usługi wykorzystujące moc obliczeniową komputerów kwantowych, np. 20-kubitowego IBM Q System One czy maszyn kanadyjskiej firmy D-Wave Systems. Ta ostatnia ma już dysponować 2 tys. kubitów, ale najpewniej jest to rozwiązanie hybrydowe, nie zaś stricte kwantowe.

 

> KUBIT – PODSTAWA OBLICZEŃ KWANTOWYCH

 

Jak wiadomo, w używanych obecnie procesorach podstawowymi elementami tworzącymi ich logiczno-obliczeniową strukturę są tzw. bramki logiczne. Zarówno stan wejściowy, jak i wyjściowy tych bramek opisywany jest za pomocą rozróżnialnych wartości napięcia na tranzystorach, które je tworzą. Te wartości napięcia odpowiadają wprost zerom i jedynkom wykorzystywanym w binarnym sposobie kodowania informacji. Proces obliczeniowy polega zaś na takiej manipulacji stanami tranzystorów wchodzących w skład bramek logicznych, aby otrzymać liczbę w systemie dwójkowym, która będzie wynikiem naszych obliczeń. Kolejność oraz zasady prowadzenia tych manipulacji to nic innego jak program, który wykonywany jest przez procesor komputera.


W wypadku maszyn kwantowych dane nie są reprezentowane przez dwustanowe wartości napięcia na tranzystorach, ale przez stan kwantowy układu. Ewolucja tego układu kwantowego w czasie, analogicznie do przełączania tranzystorów, odpowiada procesowi obliczeniowemu. Właściwe zaplanowanie ewolucji układu kwantowego, czyli stworzenie odpowiedniego algorytmu (programu) kwantowego, pozwala osiągnąć wynik obliczeń znacznie szybciej, niż miałoby to miejsce w przypadku tradycyjnych komputerów. Za zdefiniowanie początkowego stanu kwantowego na kwantowych bramkach logicznych odpowiadają nie bity, ale tzw. kwantowe bity (ang. quantum bit) nazywane qubitami lub w spolszczonej wersji kubitami. Od znanego nam bita kubit różni się tym, że nie ma ustalonej wartości 0 lub 1. Zgodnie z zasadami mechaniki kwantowej znajduje się w stanie pośrednim pomiędzy zerem i jedynką, nazywanym superpozycją. Dopiero podczas pomiaru, a więc odczytania wyniku obliczeń, kubit może przyjąć jedną z dwóch wartości: 0 lub 1.

 

Właśnie ze zjawiskiem superpozycji, a więc możliwością wyrażania dwóch wartości jednocześnie przez kubit, wiąże się ogromny obliczeniowy potencjał komputerów kwantowych. Dwa kubity reprezentują już bowiem jednocześ­nie cztery splątane ze sobą wartości (00, 01, 10, 11), a trzy kubity osiem (000, 001, 010, 100, 101, 110, 011, 111) – odpowiednio 22 i 23 możliwości. Osiem kubitów może przechować już 256 wartości jednocześnie, a 16 kubitów odpowiednio 65 536 wartości. Oczywiście, stany te nie mogą być już traktowane jako niezależne, dlatego mówi się o nich, że są one ze sobą splątane. Idąc dalej, komputer dysponujący tysiącem kubitów to już 21 000 splątanych stanów, a w teorii maszyna taka jak wspomniany 2000-kubitowy D-Wave 2000Q potrafi naraz zakodować 22 000 zależnych od siebie wartości. To więcej niż liczba atomów w znanym nam wszechświecie.


Dzięki temu, że kubity są ze sobą splątane, komputer kwantowy wykonuje obliczenia na wszystkich wartościach jednocześnie, a nie, jak tradycyjny komputer, w ściśle określonej kolejności – jedna operacja za drugą. To właśnie ten sposób prowadzenia obliczeń na wszystkich splątanych ze sobą stanach jednocześnie daje ogromną prędkość przetwarzania danych. Komputer kwantowy jest w stanie w ciągu dosłownie ułamka sekundy wykonać tak złożone obliczenia, jak np. odnalezienie klucza prywatnego stosowanego w algorytmie RSA, co zwykłym superkomputerom zajęłyby tysiące lat. Układ wielu kubitów tworzy tzw. rejestr kwantowy (ang. quantum register). Może on być rozpatrywany jako jeden izolowany układ złożony z wielu układów składowych. Dane zawarte w rejestrze kwantowym są przetwarzane przez odpowiednio zaprojektowane układy kwantowych bramek logicznych, czyli tzw. obwody kwantowe (ang. quantum circuits).


> ALGORYTMY KWANTOWE I KONTROWERSYJNY  ALGORYTM SHORA


Tworzenie algorytmów kwantowych jest bardzo trudne z kilku powodów. Po pierwsze, wykorzystuje się w nich nieintuicyjne efekty mechaniki kwantowej, takie jak superpozycja stanów czy interferencja amplitud prawdopodobieństwa, kwantowe splątanie oraz kwantowy paralelizm, tj. wzmacnianie prawdopodobieństwa wystąpienia danego wyniku poprzez wykonywanie innych obliczeń. Po drugie, algorytmy kwantowe są algorytmami probabilistycznymi i bazują na rozkładzie prawdopodobieństwa oraz ewolucji rozkładu prawdopodobieństwa w czasie. Programowanie komputera kwantowego komplikuje też fakt, że może on wykonywać ogromną liczbę obliczeń w sposób współbieżny, posługując się jednocześnie wieloma drogami obliczeń, ale na wynik końcowy wpływają też po części rezultaty składowe obliczeń na pozór bezpośrednio niezwiązanych z głównym algorytmem obliczeń. Jest to efekt wspomnianego kwantowego paralelizmu.


Do najbardziej znanych algorytmów kwantowych należą algorytm Shora z 1994 r. służący do znajdowania liczb pierwszych, Kitajewa z 1995 r. do przeprowadzania szybkiej kwantowej transformacji Fouriera, Grovera z 1996 r. do przeszukiwania bazy danych oraz Simona z 1997 r. do znajdowania maski XOR funkcji 2-na-1. Chyba najwięcej emocji wśród informatyków i kryptologów budzi algorytm Petera Shora. W efekcie wykorzystania iloczynu dwóch bardzo dużych liczb pierwszych pozwala on bowiem na praktycznie natychmiastowe odtworzenie klucza prywatnego używanego w powszechnie wykorzystywanym algorytmie szyfrowania RSA, który jest niemożliwy do odszyfrowania w rozsądnym czasie za pomocą współczesnych superkomputerów. Więcej na ten temat można przeczytać w poprzednim numerze „IT Professional” na s. 73. Drugi ciekawy algorytm został opracowany przez Lova Kumara Grovera z laboratoriów firmy Bell w New Jersey. Jest przydatny podczas przeszukiwania ogromnych nieustrukturyzowanych baz danych. Teoretycznie przeszukanie wszystkich zdjęć umieszczonych w internecie i znalezienie na nich np. konkretnej osoby nie powinno zająć komputerowi kwantowemu korzystającemu z algorytmu Grovera więcej niż kilka sekund.

 

[...]

 

Autor jest niezależnym dziennikarzem zajmującym się propagowaniem nauki i techniki.

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

prenumerata Numer niedostępny Spis treści

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"