Jak działają komputery kwantowe. Układanie puzzli

Jak działają komputery kwantowe. Układanie puzzli

Komputery kwantowe i obliczenia kwantowe - nowość modne hasło, który został dodany do naszej przestrzeni informacyjnej wraz z sztuczna inteligencja, nauczanie maszynowe i inne terminy związane z zaawansowanymi technologiami. Jednocześnie nigdy nie udało mi się znaleźć w Internecie materiału, który ułożyłby w mojej głowie zagadkę tzw „Jak działają komputery kwantowe”. Tak, istnieje wiele znakomitych dzieł, w tym na temat Habr (patrz. Lista zasobów), komentarze, które jak to zwykle bywa, są jeszcze bardziej pouczające i przydatne, ale obraz w mojej głowie, jak mówią, nie pasował.

Niedawno podeszli do mnie moi koledzy i zapytali: „Czy rozumiesz, jak działa komputer kwantowy? Możesz nam powiedzieć?" I wtedy uświadomiłam sobie, że nie tylko ja mam problem z ułożeniem w głowie spójnego obrazu.

W efekcie podjęto próbę skompilowania informacji o komputerach kwantowych w spójny układ logiczny, w którym poziomie podstawowym, bez głębokiego zanurzenia się w matematyce i strukturze świata kwantowegowyjaśniono, czym jest komputer kwantowy, na jakich zasadach działa oraz z jakimi problemami spotykają się naukowcy podczas jego tworzenia i obsługi.


Spis treści

Zrzeczenie się

(do treści)

Autor nie jest ekspertem w dziedzinie obliczeń kwantowych i Docelową grupą odbiorców artykułu są ci sami informatycy, a nie specjaliści kwantowi, którzy też chcą ułożyć w głowie obraz zatytułowany „Jak działają komputery kwantowe”. Z tego powodu wiele koncepcji zawartych w artykule zostało celowo uproszczonych, aby lepiej zrozumieć technologie kwantowe na „podstawowym” poziomie, ale bez bardzo silne uproszczenie powodujące utratę treści i adekwatności informacji.

W artykule w niektórych miejscach wykorzystano materiały z innych źródeł, których lista znajduje się na końcu artykułu. Tam, gdzie to możliwe, wstawiane są bezpośrednie linki i wskazania do oryginalnego tekstu, tabeli lub rysunku. Jeśli gdzieś o czymś (lub kimś) zapomniałem, napisz, poprawię.

Wprowadzenie

(do treści)

W tym rozdziale pokrótce przyjrzymy się, jak rozpoczęła się era kwantowa, co było motywacją do powstania pomysłu komputera kwantowego, kto (które kraje i korporacje) są obecnie wiodącymi graczami w tej dziedzinie, a także pokrótce porozmawiamy o głównych kierunkach rozwoju informatyki kwantowej.

Jak to wszystko się zaczęło

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Za początek ery kwantowej uważa się rok 1900, kiedy to po raz pierwszy przedstawił ją M. Planck hipoteza że energia jest emitowana i absorbowana nie w sposób ciągły, ale w oddzielnych kwantach (porcjach). Ideę podjęło i rozwinęło wielu wybitnych naukowców tamtych czasów – Bohr, Einstein, Heisenberg, Schrödinger, co ostatecznie doprowadziło do powstania i rozwoju takiej nauki jak fizyka kwantowa. W Internecie jest wiele dobrych materiałów na temat powstawania fizyki kwantowej jako nauki, w tym artykule nie będziemy się nad tym szczegółowo rozwodzić, ale konieczne było wskazanie daty, kiedy weszliśmy w nową erę kwantową.

Fizyka kwantowa wniosła w nasze codzienne życie wiele wynalazków i technologii, bez których trudno obecnie wyobrazić sobie otaczający nas świat. Na przykład laser, który jest obecnie używany wszędzie, od urządzeń gospodarstwa domowego (poziomice laserowe itp.) Po systemy high-tech (lasery do korekcji wzroku, cześć meklon ). Logiczne byłoby założenie, że prędzej czy później ktoś wpadnie na pomysł, że dlaczego nie wykorzystać układów kwantowych do obliczeń. I wtedy, w 1980 roku, stało się.

Wikipedia wskazuje, że pierwszą ideę obliczeń kwantowych wyraził w 1980 roku nasz naukowiec Jurij Manin. Ale tak naprawdę zaczęto o tym mówić dopiero w 1981 roku, kiedy znany R. Feynman wykład na pierwszej Konferencji Fizyki Obliczeniowej, która odbyła się w MIT, zauważył, że nie da się w efektywny sposób symulować ewolucji układu kwantowego na klasycznym komputerze. Zaproponował model elementarny komputer kwantowy, która będzie w stanie przeprowadzić takie modelowanie.

Tam jest to jest ta praca, w którym Kalendarium rozwoju obliczeń kwantowych jest rozpatrywany bardziej naukowo i szczegółowo, ale omówimy pokrótce:

Najważniejsze kamienie milowe w historii tworzenia komputerów kwantowych:

Jak widać od momentu pomysłu do jego pierwszej realizacji w komputerze z 17 kubitami minęło 1981 lat (od 1998 do 2) i 21 lat (od 1998 do 2019) do momentu, gdy liczba kubitów wzrosła do 53. Poprawienie wyniku algorytmu Shora (przyjrzymy się temu nieco później) z liczby 11 na 2001 zajęło 2012 lat (od 15 do 21). Również zaledwie trzy lata temu doszliśmy do punktu, w którym wdrażając to, o czym mówił Feynman, i nauczyć się modelować najprostsze układy fizyczne.

Rozwój obliczeń kwantowych jest powolny. Naukowcy i inżynierowie stają przed bardzo trudnymi zadaniami, stany kwantowe są bardzo krótkotrwałe i kruche, a aby zachować je na tyle długo, aby można było wykonać obliczenia, muszą za dziesiątki milionów dolarów budować sarkofagi, w których utrzymuje się temperatura tuż powyżej zera absolutnego i które są maksymalnie chronione przed wpływami zewnętrznymi. Następnie omówimy te zadania i problemy bardziej szczegółowo.

Czołowi gracze

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Slajdy do tej sekcji pochodzą z artykułu Komputer kwantowy: wielka gonitwa byków. Wykład w Yandex, od badacza Rosyjskie Centrum Kwantowe Aleksiej Fiodorow. Podam Ci bezpośrednie cytaty:

Wszystkie kraje, które odniosły sukces technologiczny, aktywnie rozwijają obecnie technologie kwantowe. W te badania inwestuje się ogromne pieniądze, powstają specjalne programy wspierające technologie kwantowe.

Jak działają komputery kwantowe. Układanie puzzli

W wyścigu kwantowym biorą udział nie tylko państwa, ale także prywatne firmy. W sumie Google, IBM, Intel i Microsoft zainwestowały ostatnio około 0,5 miliarda dolarów w rozwój komputerów kwantowych oraz stworzyły duże laboratoria i centra badawcze.
Jak działają komputery kwantowe. Układanie puzzli

Na Habré i w Internecie można znaleźć wiele artykułów, np. tutaj, tutaj и tutaj, w którym bardziej szczegółowo zbadano aktualny stan rzeczy z rozwojem technologii kwantowych w różnych krajach. Najważniejsze dla nas jest teraz to, że wszystkie wiodące kraje rozwinięte technologicznie i gracze inwestują ogromne kwoty w badania w tym kierunku, co daje nadzieję na wyjście z obecnego impasu technologicznego.

Kierunki rozwoju

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

W tej chwili (mogę się mylić, popraw mnie) główne wysiłki (i mniej lub bardziej znaczące wyniki) wszystkich czołowych graczy skupiają się na dwóch obszarach:

  • Specjalistyczne komputery kwantowe, które mają na celu rozwiązanie jednego konkretnego problemu, na przykład problemu optymalizacyjnego. Przykładowym produktem są komputery kwantowe D-Wave.
  • Uniwersalne komputery kwantowe — które potrafią implementować dowolne algorytmy kwantowe (Shor, Grover itp.). Wdrożenia od IBM, Google.

Inne wektory rozwoju, jakie daje nam fizyka kwantowa, takie jak:

Oczywiście, to też jest na liście obszarów do badań, ale na razie nie widać mniej lub bardziej znaczących wyników.

Dodatkowo możesz przeczytać plan działania na rzecz rozwoju technologii kwantowychno cóż, Google”rozwój technologii kwantowych", Na przykład, tutaj, tutaj и tutaj.

Podstawy. Obiekt kwantowy i układy kwantowe

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Najważniejszą rzeczą, którą należy zrozumieć z tej sekcji, jest to

Komputer kwantowy (w przeciwieństwie do zwykłych) wykorzystuje jako nośniki informacji obiekty kwantowei aby przeprowadzić obliczenia, należy połączyć ze sobą obiekty kwantowe układ kwantowy.

Co to jest obiekt kwantowy?

Obiekt kwantowy - obiekt mikroświata (świata kwantowego) wykazujący właściwości kwantowe:

  • Ma zdefiniowany stan z dwoma poziomami brzegowymi
  • Znajduje się w superpozycji swojego stanu aż do momentu pomiaru
  • Splątuje się z innymi obiektami, tworząc układy kwantowe
  • Spełnia twierdzenie o nieklonowaniu (nie można skopiować stanu obiektu)

Przyjrzyjmy się każdej nieruchomości bardziej szczegółowo:

Ma zdefiniowany stan z dwoma poziomami granicznymi (stan końcowy)

Klasycznym przykładem ze świata rzeczywistego jest moneta. Ma stan „boczny”, który przyjmuje dwa poziomy graniczne - „głowy” i „ogony”.

Znajduje się w superpozycji swojego stanu aż do momentu pomiaru

Rzucili monetą, leci i kręci się. Podczas obrotu nie można stwierdzić, w którym z poziomów brzegowych znajduje się jego stan „boczny”. Ale gdy tylko go rzucimy i spojrzymy na wynik, superpozycja stanów natychmiast zapada się w jeden z dwóch stanów granicznych - „głowy” i „ogony”. Uderzenie monetą w naszym przypadku jest miarą.

Splątuje się z innymi obiektami, tworząc układy kwantowe

Z monetą jest to trudne, ale spróbujmy. Wyobraź sobie, że rzucaliśmy trzema monetami tak, że obracały się, przylegając do siebie, to jest żonglowanie monetami. W każdym momencie czasu każdy z nich nie tylko znajduje się w superpozycji stanów, ale stany te wzajemnie na siebie wpływają (zderzają się monety).

Spełnia twierdzenie o nieklonowaniu (nie można skopiować stanu obiektu)

Podczas gdy monety latają i kręcą się, nie ma możliwości utworzenia kopii stanu wirowania którejkolwiek z monet, niezależnie od systemu. System żyje sam w sobie i jest bardzo zazdrosny o udostępnianie jakichkolwiek informacji światu zewnętrznemu.

Jeszcze kilka słów o samej koncepcji „superpozycje”, w prawie wszystkich artykułach superpozycja jest wyjaśniona jako „jest we wszystkich stanach jednocześnie”, co jest oczywiście prawdą, lecz czasami niepotrzebnie wprowadza w błąd. Superpozycję stanów można sobie wyobrazić również jako fakt, że w każdym momencie czasu obiekt kwantowy ma istnieją pewne prawdopodobieństwa zapadnięcia się na każdy z jego poziomów brzegowych i w sumie prawdopodobieństwa te są naturalnie równe 1. Później, rozważając kubit, zastanowimy się nad tym bardziej szczegółowo.

W przypadku monet można to sobie wyobrazić – w zależności od prędkości początkowej, kąta rzutu, stanu środowiska, w którym leci moneta, w każdym momencie prawdopodobieństwo wyrzucenia „reszki” lub „reszki” jest inne. I jak wspomniano wcześniej, stan takiej latającej monety można sobie wyobrazić jako „będący we wszystkich swoich stanach granicznych jednocześnie, ale z różnym prawdopodobieństwem ich realizacji”.

Dowolny obiekt, dla którego spełnione są powyższe właściwości, który potrafimy stworzyć i kontrolować, może zostać wykorzystany jako nośnik informacji w komputerze kwantowym.

Nieco dalej porozmawiamy o obecnym stanie rzeczy z fizyczną implementacją kubitów jako obiektów kwantowych i o tym, czego naukowcy obecnie używają w tym charakterze.

Zatem trzecia właściwość stwierdza, że ​​obiekty kwantowe mogą się splątać, tworząc układy kwantowe. Co to jest układ kwantowy?

Układ kwantowy — układ splątanych obiektów kwantowych o następujących właściwościach:

  • Układ kwantowy znajduje się w superpozycji wszystkich możliwych stanów obiektów, z których się składa
  • Do momentu pomiaru nie da się poznać stanu układu
  • W momencie pomiaru system realizuje jeden z możliwych wariantów swoich stanów brzegowych

(i patrząc trochę w przyszłość)

Wniosek dla programów kwantowych:

  • Program kwantowy ma zadany stan układu na wejściu, superpozycję wewnątrz, superpozycję na wyjściu
  • Na wyjściu programu po pomiarze mamy probabilistyczną realizację jednego z możliwych stanów końcowych układu (plus ewentualne błędy)
  • Każdy program kwantowy ma architekturę komina (wejście -> wyjście. Nie ma pętli, nie można zobaczyć stanu systemu w trakcie procesu).

Porównanie komputera kwantowego i konwencjonalnego

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Porównajmy teraz komputer konwencjonalny i komputer kwantowy.

zwykły komputer Komputer kwantowy

Logika

0 / 1 `a|0> + b|1>, a^2+b^2=1`

Fizyka

Tranzystor półprzewodnikowy Obiekt kwantowy

Nośnik informacji

Poziomy napięcia Polaryzacja, spin,…

operacje

NOT, AND, OR, XOR na bitach Zawory: CNOT, Hadamard,…

Wzajemne połączenia

Układ półprzewodnikowy Zamieszanie między sobą

Algorytmy

Standard (patrz Bat) Specjalne (Shore, Grover)

Zasada

Cyfrowy, deterministyczny Analogowy, probabilistyczny

Poziom logiczny
Jak działają komputery kwantowe. Układanie puzzli

W zwykłym komputerze to trochę. Dobrze nam znane na wskroś bit deterministyczny. Może przyjmować wartości 0 lub 1. Doskonale radzi sobie z rolą jednostka logiczna dla zwykłego komputera, ale zupełnie nie nadaje się do opisu stanu obiekt kwantowy, który, jak już powiedzieliśmy, na wolności się znajdujesuperpozycje ich stanów brzegowych.

Oto, co wymyślili kubit. W swoich stanach brzegowych realizuje stany podobne do 0 i 1 |0> i |1>, a w superpozycji reprezentuje rozkład prawdopodobieństwa w stanach brzegowych |0> и |1>:

 a|0> + b|1>, такое, что a^2+b^2=1

aib reprezentują amplitudy prawdopodobieństwa, a kwadraty ich modułów to rzeczywiste prawdopodobieństwa uzyskania dokładnie takich wartości stanów brzegowych |0> и |1>, jeśli teraz zwiniesz kubit za pomocą pomiaru.

Warstwa fizyczna

Na obecnym poziomie rozwoju technologicznego fizyczna realizacja bitu dla konwencjonalnego komputera jest tranzystor półprzewodnikowydla kwantu, jak już powiedzieliśmy, dowolny obiekt kwantowy. W następnej sekcji porozmawiamy o tym, co jest obecnie używane jako nośnik fizyczny dla kubitów.

Nośnik danych

W przypadku zwykłego komputera tak jest Elektryczność - poziomy napięcia, obecność lub brak prądu itp. Dla kwantów - to samo stan obiektu kwantowego (kierunek polaryzacji, spin itp.), który może znajdować się w stanie superpozycji.

operacje

Aby zaimplementować obwody logiczne na zwykłym komputerze, używamy dobrze znanych operacje logiczne, dla operacji na kubitach trzeba było wymyślić zupełnie inny system operacji, tzw bramy kwantowe. Bramki mogą być jednokubitowe lub dwukubitowe, w zależności od tego, ile kubitów jest konwertowanych.

Przykłady bramek kwantowych:
Jak działają komputery kwantowe. Układanie puzzli

Jest koncepcja uniwersalny zestaw zaworów, które są wystarczające do wykonania wszelkich obliczeń kwantowych. Na przykład zestaw uniwersalny obejmuje bramkę Hadamarda, bramkę z przesunięciem fazowym, bramkę CNOT i bramkę π⁄8. Za ich pomocą można wykonać dowolne obliczenia kwantowe na dowolnym zestawie kubitów.

W tym artykule nie będziemy się szczegółowo rozwodzić nad systemem bramek kwantowych, możesz przeczytać więcej o nich i operacjach logicznych na kubitach, na przykład: tutaj. Najważniejszą rzeczą do zapamiętania:

  • Operacje na obiektach kwantowych wymagają stworzenia nowych operatorów logicznych (bram kwantowych)
  • Bramki kwantowe występują w wersjach jednokubitowych i podwójnych.
  • Istnieją uniwersalne zestawy bramek, które można wykorzystać do wykonania dowolnych obliczeń kwantowych

Wzajemne połączenia

Jeden tranzystor jest dla nas zupełnie bezużyteczny, aby przeprowadzić obliczenia musimy połączyć ze sobą wiele tranzystorów, czyli z milionów tranzystorów stworzyć układ półprzewodnikowy, na którym można zbudować obwody logiczne, ALU i docelowo zdobądź nowoczesny procesor w jego klasycznej formie.

Jeden kubit też jest dla nas całkowicie bezużyteczny (no, choćby w sensie akademickim),

do przeprowadzenia obliczeń potrzebny jest układ kubitów (obiektów kwantowych)

który, jak już powiedzieliśmy, powstaje poprzez splątanie kubitów ze sobą, tak aby zmiany ich stanów następowały w sposób skoordynowany.

Algorytmy

Standardowe algorytmy, jakie ludzkość zgromadziła do tej pory, zupełnie nie nadają się do implementacji na komputerze kwantowym. Tak, generalnie nie ma takiej potrzeby. Komputery kwantowe oparte na logice bramkowej na kubitach wymagają stworzenia zupełnie innych algorytmów, algorytmów kwantowych. Spośród najbardziej znanych algorytmów kwantowych można wyróżnić trzy:

Zasada

Najważniejszą różnicą jest zasada działania. W przypadku standardowego komputera tak jest cyfrowa, ściśle deterministyczna zasada, bazując na tym, że jeśli ustalimy jakiś stan początkowy układu i przepuścimy go przez zadany algorytm, to wynik obliczeń będzie taki sam, niezależnie od tego, ile razy będziemy przeprowadzać te obliczenia. Właściwie to zachowanie jest dokładnie tym, czego oczekujemy od komputera.

Komputer kwantowy działa analogowa zasada probabilistyczna. Wynikiem danego algorytmu w danym stanie początkowym jest próbka z rozkładu prawdopodobieństwa końcowe implementacje algorytmu plus możliwe błędy.

Ta probabilistyczna natura obliczeń kwantowych wynika z bardzo probabilistycznej istoty świata kwantowego. „Bóg nie gra w kości ze wszechświatem”.”, powiedział stary Einstein, ale wszystkie dotychczasowe eksperymenty i obserwacje (w obecnym paradygmacie naukowym) potwierdzają coś przeciwnego.

Fizyczne implementacje kubitów

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Jak już powiedzieliśmy, kubit może być reprezentowany przez obiekt kwantowy, czyli obiekt fizyczny, który realizuje opisane powyżej właściwości kwantowe. Oznacza to, że z grubsza każdy obiekt fizyczny, w którym występują dwa stany i te dwa stany znajdują się w stanie superpozycji, można wykorzystać do zbudowania komputera kwantowego.

„Jeśli uda nam się umieścić atom na dwóch różnych poziomach i kontrolować je, wówczas otrzymamy kubit. Jeśli możemy to zrobić za pomocą jonu, jest to kubit. Podobnie jest z prądem. Jeśli przeprowadzimy to jednocześnie zgodnie z ruchem wskazówek zegara i przeciwnie do ruchu wskazówek zegara, otrzymamy kubit. (C)

Jest piękny komentarz к Artykuł, w którym bardziej szczegółowo rozważymy obecną różnorodność fizycznych implementacji kubitu, po prostu wymienimy najbardziej znane i powszechne:

Z całej tej odmiany najbardziej rozwinięta jest pierwsza metoda uzyskiwania kubitów, oparta na nadprzewodniki. Google, IBM, Intel i inni czołowi gracze używają go do budowy swoich systemów.

Cóż, czytaj więcej przegląd możliwy implementacje fizyczne kubity z Andrew Daleya, 2014.

Podstawy. Jak działa komputer kwantowy

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Materiały do ​​tej sekcji (zadanie i zdjęcia) pochodzą z artykułu „Tylko o trudnych sprawach. Jak działa komputer kwantowy?.

Wyobraźmy sobie więc, że mamy następujące zadanie:

Jest grupa trzech osób: (A)ndrey, (B)olodia i (C)erezha. Są dwie taksówki (0 i 1).

Wiadomo również, że:

  • (A)ndrey, (B)olodya są przyjaciółmi
  • (A)ndrey, (C)erezha są wrogami
  • (B)olodia i (C)erezha są wrogami

Zadanie: Umieść ludzi w taksówkach tak, aby Maks (przyjaciele) и Min. (wrogowie)

Ocena: L = (liczba przyjaciół) - (liczba wrogów) za każdą opcję zakwaterowania

WAŻNE: Zakładając, że nie ma heurystyk, nie ma rozwiązania optymalnego. W takim przypadku problem można rozwiązać jedynie poprzez pełne przeszukanie opcji.

Jak działają komputery kwantowe. Układanie puzzli

Rozwiązanie na zwykłym komputerze

Jak rozwiązać ten problem na zwykłym (super) komputerze (lub klastrze) - jest to jasne musisz przejść przez wszystkie możliwe opcje. Jeśli mamy system wieloprocesorowy, możemy zrównoleglić obliczenia rozwiązań na kilku procesorach, a następnie zebrać wyniki.

Mamy 2 możliwe opcje zakwaterowania (taksówka 0 i taksówka 1) i 3 osoby. Przestrzeń rozwiązań 2 ^ 3 = 8. Możesz nawet przejść przez 8 opcji za pomocą kalkulatora, nie stanowi to problemu. A teraz skomplikujmy problem – mamy 20 osób i dwa autobusy, przestrzeń rozwiązań 2^20 = 1 048 576. Nic skomplikowanego. Zwiększmy liczbę osób 2.5 razy - weźmy 50 osób i dwa pociągi, przestrzeń rozwiązań jest teraz 2^50 = 1.12 x 10^15. Zwykły (super)komputer zaczyna już mieć poważne problemy. Zwiększmy liczbę osób 2 razy, da nam już 100 osób 1.2 x 10^30 możliwe opcje.

To wszystko, tego zadania nie da się obliczyć w rozsądnym czasie.

Podłączenie superkomputera

Najpotężniejszy komputer jest obecnie numerem 1 Top500To Szczyt, produktywność 122 Pflops. Załóżmy, że do obliczenia jednej opcji potrzebujemy 100 operacji, to do rozwiązania problemu dla 100 osób będziemy potrzebować:

(1.2x10^30 100) / 122×10^15 / (606024365) = 3x10^37 lat.

Jak możemy zobaczyć wraz ze wzrostem wymiaru danych początkowych przestrzeń rozwiązań rośnie zgodnie z prawem potęgowym, w ogólnym przypadku dla N bitów mamy 2^N możliwych opcji rozwiązań, co dla stosunkowo małych N (100) daje nam nieobliczoną (na obecnym poziomie technologicznym) przestrzeń rozwiązań.

Czy są jakieś alternatywy? Jak można się domyślić, tak, istnieje.

Zanim jednak przejdziemy do tego, jak i dlaczego komputery kwantowe mogą skutecznie rozwiązywać takie problemy, poświęćmy chwilę na podsumowanie, czym one są. rozkład prawdopodobieństwa. Nie martwcie się, to jest artykuł poglądowy, nie będzie tu żadnej trudnej matematyki, poprzestaniemy na klasycznym przykładzie z torbą i piłkami.

Wystarczy trochę kombinatoryki, teorii prawdopodobieństwa i dziwnego eksperymentatora

Weźmy torbę i włóżmy ją do niej 1000 białych i 1000 czarnych kulek. Przeprowadzimy eksperyment - wyjmij kulkę, zapisz kolor, włóż piłkę z powrotem do worka i wymieszaj kulki w worku.

Doświadczenie przeprowadzono 10 razy, wyciągnął 10 czarnych kul. Może? Całkiem. Czy ta próbka daje nam rozsądne pojęcie o prawdziwym rozmieszczeniu w torbie? Oczywiście, że nie. Co trzeba zrobić – prawda, spowtórz eksperyment milion razy i oblicz częstość występowania kul czarnych i białych. Dostajemy np 49.95% czerni i 50.05% bieli. W tym przypadku struktura rozkładu, z którego pobieramy próbki (wyjmujemy jedną kulkę) jest już mniej więcej jasna.

Najważniejsze to to zrozumieć sam eksperyment ma charakter probabilistyczny, przy jednej próbce (kuli) nie poznamy prawdziwej struktury rozkładu, musimy powtórzyć eksperyment wiele razy i uśrednij wyniki.

Dodajmy to do naszej torby 10 czerwonych i 10 zielonych kulek (błędy). Powtórzmy eksperyment 10 razy. Wwyciągnąłem 5 czerwonych i 5 zielonych. Może? Tak. Można coś powiedzieć o prawdziwym rozkładzie – Nie. Co należy zrobić - cóż, rozumiesz.

Aby zrozumieć strukturę rozkładu prawdopodobieństwa, konieczne jest wielokrotne próbkowanie poszczególnych wyników z tego rozkładu i uśrednianie wyników.

Łączenie teorii z praktyką

Teraz zamiast czarno-białych bil, weźmy kule bilardowe i włóżmy je do torby 1000 kulek z numerem 2, 1000 z numerem 7 i 10 piłek z innymi numerami. Wyobraźmy sobie eksperymentatora przeszkolonego w najprostszych czynnościach (wyjęcie piłki, zapisanie liczby, włożenie piłki z powrotem do worka, wymieszanie kulek w worku) i robi to w 150 mikrosekund. No cóż, taki eksperymentator na szybkości (nie reklama leku!!!). Następnie w ciągu 150 sekund będzie mógł wykonać nasz eksperyment 1 milion razy i przekaż nam średnie wyniki.

Posadzili eksperymentatora, dali mu torbę, odwrócili się, odczekali 150 sekund i otrzymali:

liczba 2 – 49.5%, liczba 7 – 49.5%, pozostałe liczby ogółem – 1%.

Tak to prawda, nasza torba to komputer kwantowy z algorytmem rozwiązującym nasz problem, a kule są możliwymi rozwiązaniami. Ponieważ istnieją dwa prawidłowe rozwiązania komputer kwantowy poda nam którekolwiek z możliwych rozwiązań z równym prawdopodobieństwem i 0.5% (10/2000) błędów, o czym porozmawiamy później.

Aby uzyskać wynik komputera kwantowego, należy wielokrotnie uruchomić algorytm kwantowy na tym samym zbiorze danych wejściowych i uśrednić wynik.

Skalowalność komputera kwantowego

Teraz wyobraź sobie, że w przypadku zadania angażującego 100 osób (przestrzeń rozwiązań 2^100 pamiętamy o tym), są też tylko dwie prawidłowe decyzje. Następnie, jeśli weźmiemy 100 kubitów i napiszemy algorytm obliczający naszą funkcję celu (L, patrz wyżej) po tych kubitach, to otrzymamy worek, w którym będzie 1000 kulek z numerem pierwszej poprawnej odpowiedzi, 1000 z numer drugiej poprawnej odpowiedzi i 10 kulek z innymi liczbami. I w ciągu tych samych 150 sekund nasz eksperymentator poda nam szacunkowy rozkład prawdopodobieństwa prawidłowych odpowiedzi.

Czas wykonania algorytmu kwantowego (przy pewnych założeniach) można uznać za stały O(1) w odniesieniu do wymiaru przestrzeni rozwiązań (2^N).

I to jest właśnie właściwość komputera kwantowego - stałość czasu działania w związku z rosnącą złożonością prawa potęgowego przestrzeni rozwiązań jest kluczem.

Światy kubitowe i równoległe

Jak to się stało? Co pozwala komputerowi kwantowemu tak szybko wykonywać obliczenia? Wszystko zależy od kwantowej natury kubitu.

Słuchaj, powiedzieliśmy, że kubit jest jak obiekt kwantowy po obserwacji realizuje jeden ze swoich dwóch stanów, ale w „dzikiej naturze” tak jest superpozycje stanów, czyli znajduje się w obu stanach brzegowych jednocześnie (z pewnym prawdopodobieństwem).

Weź (A)ndreya i wyobraź sobie jego stan (w jakim pojeździe się znajduje - 0 lub 1) jako kubit. Następnie mamy (w przestrzeni kwantowej) dwa równoległe światy, w jednym (ALE) siedzi w taksówce 0, w innym świecie - w taksówce 1. W dwóch taksówkach jednocześnie, ale z pewnym prawdopodobieństwem znalezienia go w każdym z nich podczas obserwacji.

Weź (B) młody i wyobraźmy sobie także jego stan jako kubit. Powstają dwa inne równoległe światy. Ale na razie te pary światów (ALE) и (B) w ogóle nie wchodzić w interakcje. Co trzeba zrobić, żeby stworzyć związane z system? Zgadza się, potrzebujemy tych kubitów związać (zmieszać). Bierzemy to i mieszamy (A) z (B) — otrzymujemy układ kwantowy składający się z dwóch kubitów (A, B), urzeczywistniając w sobie cztery współzależny światy równoległe. Dodać (S)ergej i otrzymujemy układ trzech kubitów (ABC), wdrażanie ośmiu współzależny światy równoległe.

Istotą obliczeń kwantowych (realizacja łańcucha bramek kwantowych na układzie połączonych kubitów) jest to, że obliczenia odbywają się we wszystkich równoległych światach jednocześnie.

I nie ma znaczenia, ile ich mamy, 2^3 czy 2^100, algorytm kwantowy zostanie wykonany w skończonym czasie na wszystkich tych równoległych światach i da nam wynik będący próbką z rozkładu prawdopodobieństwa odpowiedzi algorytmu.

Dla lepszego zrozumienia można to sobie wyobrazić komputer kwantowy na poziomie kwantowym obsługuje 2^N równoległych procesów rozwiązywania, z których każdy pracuje nad jedną możliwą opcją, a następnie zbiera wyniki pracy - i daje nam odpowiedź w postaci superpozycji rozwiązania (rozkład prawdopodobieństwa odpowiedzi), z którego za każdym razem (dla każdego eksperymentu) pobieramy po jednej próbie.

Pamiętaj o czasie wymaganym przez naszego eksperymentatora (150µs) do przeprowadzenia eksperymentu, przyda się nam to nieco dalej, gdy będziemy rozmawiać o głównych problemach komputerów kwantowych i czasie dekoherencji.

Algorytmy kwantowe

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Jak już wspomniano, konwencjonalne algorytmy oparte na logice binarnej nie mają zastosowania w komputerze kwantowym wykorzystującym logikę kwantową (bramki kwantowe). Dla niego konieczne było wymyślenie nowych, które w pełni wykorzystają potencjał tkwiący w kwantowej naturze informatyki.

Najbardziej znane obecnie algorytmy to:

W odróżnieniu od klasycznych komputerów kwantowych nie są one uniwersalne.
Jak dotąd odkryto jedynie niewielką liczbę algorytmów kwantowych.(C)

Dzięki oksoron za link do Zoo algorytmów kwantowych, miejsce, gdzie według autora („Stefan Jordan”), najlepsi przedstawiciele świata algorytmów kwantowych zostali zebrani i gromadzą się nadal.

W tym artykule nie będziemy szczegółowo analizować algorytmów kwantowych, w Internecie jest wiele doskonałych materiałów o dowolnym poziomie złożoności, ale nadal musimy pokrótce omówić trzy najbardziej znane.

Algorytm Shora.

(do treści)

Najbardziej znanym algorytmem kwantowym jest Algorytm Shora (wynaleziony w 1994 roku przez angielskiego matematyka Piotra Shore’a), którego celem jest rozwiązanie problemu rozkładu liczb na czynniki pierwsze (zadanie faktoryzacji, logarytm dyskretny).

To właśnie ten algorytm jest przytaczany jako przykład, gdy piszą, że Twoje systemy bankowe i hasła zostaną wkrótce zhakowane. Biorąc pod uwagę, że długość używanych dzisiaj kluczy wynosi nie mniej niż 2048 bitów, czas na ograniczenie jeszcze nie nadszedł.

Do chwili Ustalenia więcej niż skromne. Najlepsze wyniki faktoryzacji za pomocą algorytmu Shora — liczby 15 и 21, czyli znacznie mniej niż 2048 bitów. Dla pozostałych wyników z tabeli jest inaczej algorytm obliczeń, ale nawet najlepszy wynik według tego algorytmu (291311) jest bardzo odległy od rzeczywistego zastosowania.

Jak działają komputery kwantowe. Układanie puzzli

Możesz przeczytać więcej o algorytmie Shora, na przykład: tutaj. O praktycznym wdrożeniu - tutaj.

Jeden z aktualne szacunki złożoność i moc wymaganą do rozłożenia na czynniki liczby 2048-bitowej, jaką posiada komputer 20 milionów kubitów. Śpimy spokojnie.

Algorytm Grovera

(do treści)

Algorytm Grovera - algorytm kwantowy rozwiązanie problemu wyliczeniowego, czyli znalezienie rozwiązania równania F(X) = 1, gdzie F jest funkcja boolowska od n zmienne. Został zaproponowany przez amerykańskiego matematyka Grover wędkarski в 1996 roku.

Do znalezienia można zastosować algorytm Grovera mediany и Średnia arytmetyczna seria liczb. Ponadto można go używać do rozwiązywania NP-kompletny problemów poprzez wyczerpujące poszukiwanie wielu możliwych rozwiązań. Może to pociągać za sobą znaczny wzrost prędkości w porównaniu z klasycznymi algorytmami, chociaż bez zapewnienia „rozwiązanie wielomianowe" ogólnie.(C)

Możesz przeczytać więcej tutajLub tutaj. Więcej tutaj Istnieje dobre wyjaśnienie algorytmu na przykładzie pudełek i piłki, ale niestety z przyczyn od nikogo niezależnych ta strona nie otwiera mi się z Rosji. Jeśli masz ta strona jest również zablokowany, więc oto krótkie podsumowanie:

Algorytm Grovera. Wyobraź sobie, że masz N sztuk ponumerowanych zamkniętych pudełek. Wszystkie są puste, z wyjątkiem jednego, który zawiera kulkę. Twoje zadanie: znajdź numer pudełka, w którym znajduje się kula (ten nieznany numer jest często oznaczany literą w).
Jak działają komputery kwantowe. Układanie puzzli

Jak rozwiązać ten problem? Najgłupszym sposobem jest otwieranie pudełek na zmianę, a prędzej czy później natkniesz się na pudełko z piłką. Ile średnio pudełek należy sprawdzić, zanim zostanie znalezione pudełko z kulką? Średnio trzeba otworzyć około połowy N/2 pudełek. Najważniejsze jest to, że jeśli zwiększymy liczbę pudełek 100 razy, to średnia liczba pudełek, które należy otworzyć, zanim zostanie znalezione pudełko z kulką, również wzrośnie o te same 100 razy.

A teraz dokonajmy jeszcze jednego wyjaśnienia. Nie otwierajmy sami pudełek rękami i nie sprawdzajmy, czy w każdym jest kulka, ale jest pewien pośrednik, nazwijmy go Wyrocznią. Mówimy Wyroczni „pole wyboru nr 732”, a Wyrocznia uczciwie sprawdza i odpowiada: „w polu nr 732 nie ma kulki”. Teraz zamiast podawać, ile średnio pudełek musimy otworzyć, mówimy „ile średnio razy powinniśmy udać się do Wyroczni, aby znaleźć numer pudełka z kulką”

Okazuje się, że jeśli przetłumaczymy ten problem ze skrzynkami, kulą i Wyrocznią na język kwantowy, otrzymamy niezwykły wynik: aby znaleźć numer pudełka z kulką wśród N pudełek, musimy zakłócić Wyrocznię tylko o SQRT (N) razy!

Oznacza to, że złożoność zadania wyszukiwania przy użyciu algorytmu Grovera jest zmniejszona przez pierwiastek kwadratowy czasów.

Algorytm Deutscha-Joziego

(do treści)

Algorytm Deutscha-Jozsy (zwany także algorytmem Deutscha-Jozsy) - [algorytm kwantowy](https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%D0%B0%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC), предложенный Dawid Deutsch и Ryszard Joza в 1992 rokui stał się jednym z pierwszych przykładów algorytmów przeznaczonych do wykonywania komputery kwantowe. _

Problem Deutscha-Jozsiego polega na ustaleniu, czy funkcja kilku zmiennych binarnych F(x1, x2, ... xn) jest stała (dla dowolnych argumentów przyjmuje wartość 0 lub 1), czy zrównoważona (dla połowy dziedziny przyjmuje się wartość 0, dla drugiej połowy 1). W tym przypadku uważa się, że apriorycznie wiadomo, że funkcja jest stała lub zrównoważona. (C)

Więcej można przeczytać tutaj. Prostsze wyjaśnienie:

Algorytm Deutscha (Deutsch-Jozsi) opiera się na brutalnej sile, ale pozwala to zrobić szybciej niż zwykle. Wyobraź sobie, że na stole leży moneta i musisz sprawdzić, czy jest fałszywa, czy nie. Aby to zrobić, musisz dwukrotnie spojrzeć na monetę i określić: „reszka” i „reszka” są prawdziwe, dwie „reszki”, dwie „reszki” są fałszywe. Jeśli więc użyjesz algorytmu kwantowego Deutscha, ustalenia tego można dokonać jednym spojrzeniem - pomiarem. (C)

Problemy komputerów kwantowych

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Projektując i obsługując komputery kwantowe, naukowcy i inżynierowie stają przed ogromną liczbą problemów, które dotychczas udało się rozwiązać z różnym powodzeniem. Według badania (i także tutaj) można zidentyfikować następującą serię problemów:

  • Wrażliwość na otoczenie i interakcja z otoczeniem
  • Kumulacja błędów podczas obliczeń
  • Trudności z początkową inicjalizacją stanów kubitów
  • Trudności w tworzeniu układów wielokubitowych

Gorąco polecam przeczytać artykuł „Charakterystyka komputerów kwantowych”, zwłaszcza komentarze do niego.

Zorganizujmy wszystkie główne problemy w trzy duże grupy i przyjrzyjmy się bliżej każdemu z nich:

Dekoherencja

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Opis z N+1.

Stan kwantowy bardzo delikatna rzeczkubity w stanie splątanym są wyjątkowo niestabilne, jakikolwiek wpływ zewnętrzny może (i faktycznie) zniszczyć to połączenie. Zmiana temperatury o najmniejszy ułamek stopnia, ciśnienie, przypadkowy foton przelatujący w pobliżu – to wszystko destabilizuje nasz system.

Aby rozwiązać ten problem, budowane są sarkofagi niskotemperaturowe, w których temperatura (-273.14 stopnia Celsjusza) jest nieco powyżej zera absolutnego, przy maksymalnej izolacji komory wewnętrznej z procesorem od wszelkich (możliwych) wpływów środowiska zewnętrznego.

Maksymalny czas życia układu kwantowego składającego się z kilku splątanych kubitów, podczas którego zachowuje on swoje właściwości kwantowe i może być wykorzystany do obliczeń, nazywa się czasem dekoherencji.

Obecnie czas dekoherencji w najlepszych rozwiązaniach kwantowych jest rzędu dziesiątki i setki mikrosekund.

Jest wspaniały brokergdzie możesz zajrzeć tabele porównawcze parametrów wszystkich stworzonych układów kwantowych. W tym artykule jako przykłady podano tylko dwa topowe procesory - firmy IBM IBM Q System One ., i od Google Sycamore. Jak widać czas dekoherencji (T2) nie przekracza 200 μs.

Nie znalazłem dokładnych danych na temat Sycamore, ale w większości artykuł o supremacji kwantowej podano dwie liczby - 1 milion obliczeń w 200 sekund, gdzie indziej - za 130 sekund bez utraty sygnałów sterujących itp.. W każdym razie to nam daje czas dekoherencji wynosi około 150 μs. Pamiętaj o naszym eksperymentator z torbą? Cóż, oto on.

Nazwa komputera N Qubitów Maks w parze T2 (µs)
IBM Q System One ., 20 6 70
Google Sycamore 53 4 ~ 150–200

Czym grozi nam dekoherencja?

Główny problem polega na tym, że po 150 μs nasz system obliczeniowy złożony z N splątanych kubitów zacznie generować probabilistyczny biały szum zamiast probabilistycznego rozkładu poprawnych rozwiązań.

Oznacza to, że potrzebujemy:

  • Zainicjuj system kubitowy
  • Wykonaj obliczenia (łańcuch operacji na bramce)
  • Przeczytaj wynik

A wszystko to w 150 mikrosekund. Nie miałem czasu - wynik zamienił się w dynię.

Ale to nie wszystko…

Błędy

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Jak powiedzieliśmy, procesy kwantowe i obliczenia kwantowe mają charakter probabilistyczny, nie możemy być niczego pewni na 100%, a jedynie z pewnym prawdopodobieństwem. Sytuację dodatkowo pogarsza fakt, że obliczenia kwantowe są podatne na błędy. Główne rodzaje błędów w obliczeniach kwantowych to:

  • Błędy dekoherencji są spowodowane złożonością systemu i interakcją ze środowiskiem zewnętrznym
  • Błędy obliczeniowe bramki (ze względu na kwantową naturę obliczeń)
  • Błędy w odczycie stanu końcowego (wyniku)

Błędy związane z dekoherencją, powstają natychmiast, gdy tylko splątamy nasze kubity i zaczniemy wykonywać obliczenia. Im więcej kubitów splątamy, tym bardziej złożony jest systemi tym łatwiej jest go zniszczyć. Sarkofagi niskotemperaturowe, komory chronione, wszystkie te sztuczki technologiczne mają na celu właśnie zmniejszenie liczby błędów i wydłużenie czasu dekoherencji.

Błędy obliczeniowe bramki - każda operacja (bramka) na kubitach może z pewnym prawdopodobieństwem zakończyć się błędem, a żeby zaimplementować algorytm musimy wykonać setki bramek, więc wyobraźcie sobie co otrzymamy na końcu wykonania naszego algorytmu. Klasyczna odpowiedź na pytanie brzmi: „Jakie jest prawdopodobieństwo spotkania dinozaura w windzie?” - 50x50, albo się spotkasz, albo nie.

Problem pogłębia fakt, że standardowe metody korekcji błędów (powielanie obliczeń i uśrednianie) nie sprawdzają się w świecie kwantowym ze względu na twierdzenie o nieklonowaniu. Dla korekta błędów w informatyce kwantowej trzeba było wynaleźć metody korekcji kwantowej. Z grubsza mówiąc, bierzemy N zwykłych kubitów i tworzymy 1 z nich kubit logiczny z niższym poziomem błędów.

Ale tutaj pojawia się inny problem - całkowita liczba kubitów. Spójrz, powiedzmy, że mamy procesor ze 100 kubitami, z czego 80 kubitów służy do korekcji błędów, wtedy zostaje nam tylko 20 do obliczeń.

Błędy w odczycie wyniku końcowego — jak pamiętamy, wynik obliczeń kwantowych przedstawiany jest nam w formie rozkład prawdopodobieństwa odpowiedzi. Ale odczytanie stanu końcowego może również zakończyć się niepowodzeniem z powodu błędu.

Na takim samym witryna internetowa Istnieją tabele porównawcze procesorów według poziomów błędów. Dla porównania weźmy te same procesory, co w poprzednim przykładzie - IBM IBM Q System One ., и Google Sycamore:

Komputer Wierność bramki 1-kubitowej 2-Wierność bramki Qubit Wierność odczytu
IBM Q System One ., 99.96% 98.31% -
Google Sycamore 99.84% 99.38% 96.2%

Tutaj wierność jest miarą podobieństwa dwóch stanów kwantowych. Wielkość błędu można z grubsza wyrazić jako 1-Fidelity. Jak widać, błędy na bramkach 2-kubitowych i błędy odczytu są główną przeszkodą w wykonywaniu skomplikowanych i długich algorytmów na istniejących komputerach kwantowych.

Więcej można przeczytać plan działania z 2016 r lat od NQIT rozwiązać problem korekcji błędów.

Architektura procesora

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Teoretycznie budujemy i obsługujemy obwody kilkudziesięciu splątanych kubitóww rzeczywistości wszystko jest bardziej skomplikowane. Wszystkie istniejące chipy kwantowe (procesory) są zbudowane w taki sposób, aby działały bezboleśnie splątanie tylko jednego kubitu z sąsiadami, których jest nie więcej niż sześć.

Jeśli będziemy musieli splątać pierwszy kubit, powiedzmy, z dwunastym, będziemy musieli zbudować łańcuch dodatkowych operacji kwantowych, obejmują dodatkowe kubity itp., co zwiększa ogólny poziom błędu. Tak i nie zapomnij o czas dekoherencji, być może zanim skończysz podłączać kubity do potrzebnego obwodu, czas się skończy i cały obwód zamieni się w fajny generator białego szumu.

Nie zapomnij też o tym Architektura wszystkich procesorów kwantowych jest inna, a program napisany w emulatorze w trybie „łączności „wszystko z każdym” będzie musiał zostać „przekompilowany” do architektury konkretnego chipa. Są nawet specjalne programy optymalizujące aby wykonać tę operację.

Maksymalna łączność i maksymalna liczba kubitów dla tych samych najlepszych chipów:

Nazwa komputera N Qubitów Maks w parze T2 (µs)
IBM Q System One ., 20 6 70
Google Sycamore 53 4 ~ 150–200

A dla porównania tabela z danymi z poprzedniej generacji procesorów. Porównaj liczbę kubitów, czas dekoherencji i poziom błędów z tym, co mamy teraz w nowej generacji. Postęp jest jednak powolny, ale dynamiczny.

Jak działają komputery kwantowe. Układanie puzzli

Tak więc:

  • Obecnie nie ma w pełni połączonych architektur z > 6 kubitami
  • Aby splątać kubit 0 s na rzeczywistym procesorze np. kubit 15 może wymagać kilkudziesięciu dodatkowych operacji
  • Więcej operacji -> więcej błędów -> silniejszy wpływ dekoherencji

Wyniki

(do treści)

Dekoherencja to prokrustowe podłoże współczesnego przetwarzania kwantowego. Musimy wszystko zmieścić w 150 μs:

  • Inicjalizacja stanu początkowego kubitów
  • Obliczanie problemu z wykorzystaniem bramek kwantowych
  • Popraw błędy, aby uzyskać znaczące wyniki
  • Przeczytaj wynik

Póki co jednak wyniki są rozczarowujące tutaj twierdzą, że osiągnęli czas utrzymywania spójności na poziomie 0.5 s na komputerze kwantowym pułapki jonowe:

Mierzymy czas koherencji kubitu przekraczający 0.5 s i spodziewamy się, że w przypadku ekranowania magnetycznego będzie on dłuższy niż 1000 s

Możesz także przeczytać o tej technologii tutaj lub na przykład tutaj.

Sytuację dodatkowo komplikuje fakt, że przy skomplikowanych obliczeniach konieczne jest zastosowanie układów kwantowej korekcji błędów, co też pochłania zarówno czas, jak i dostępne kubity.

I wreszcie, nowoczesne architektury nie pozwalają na wdrażanie schematów splątania lepszych niż 1 na 4 lub 1 na 6 przy minimalnych kosztach.

Sposoby rozwiązywania problemów

(do treści)

Aby rozwiązać powyższe problemy, obecnie stosuje się następujące podejścia i metody:

  • Korzystanie z komór kriogenicznych o niskich temperaturach (10 mK (–273,14°C))
  • Korzystanie z jednostek procesorowych, które są maksymalnie chronione przed wpływami zewnętrznymi
  • Korzystanie z systemów kwantowej korekcji błędów (kubit logiczny)
  • Stosowanie optymalizatorów przy programowaniu obwodów dla konkretnego procesora

Prowadzone są także badania mające na celu zwiększenie czasu dekoherencji, poszukiwanie nowych (i udoskonalanie znanych) fizycznych implementacji obiektów kwantowych, optymalizację obwodów korekcyjnych itp., itp. Jest postęp (spójrz powyżej na charakterystykę wcześniejszych i dzisiejszych chipów z najwyższej półki), ale jak dotąd jest powolny, bardzo, bardzo powolny.

D-Wave

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Komputer D-Wave 2000Q 2000-kubitowy. Źródło: D-Wave Systems

W związku z ogłoszeniem przez Google osiągnięcia supremacji kwantowej przy użyciu procesora 53-kubitowego, komputery и ogłoszenia firmy D-Wave, w której liczba kubitów idzie w tysiące, jest nieco myląca. Cóż, naprawdę, jeśli 53 kubity byłyby w stanie osiągnąć supremację kwantową, to do czego byłby zdolny komputer z 2048 kubitami? Ale nie wszystko jest takie dobre...

W skrócie (zaczerpnięte z wiki):

Komputery D-Wave pracować na zasadzie relaksacja kwantowa (wyżarzanie kwantowe), mogą rozwiązać bardzo ograniczoną podklasę problemów optymalizacyjnych i nie nadają się do implementacji tradycyjnych algorytmów kwantowych i bramek kwantowych.

Więcej szczegółów można przeczytać np. tutaj, tutaj (ostrożnie, nie można otworzyć z Rosji) lub Scott aaronson в Artykuł od jego blog. Swoją drogą gorąco polecam ogólnie przeczytać jego blog, jest tam mnóstwo dobrych materiałów

W ogóle od samego początku zapowiedzi społeczność naukowa miała pytania dotyczące komputerów D-Wave. Na przykład w 2014 roku IBM zakwestionował fakt, że D-Wave wykorzystuje efekty kwantowe. Doszło do tego, że w 2015 roku Google wspólnie z NASA kupił jeden z takich komputerów kwantowych i po badaniach Potwierdzony, że tak, komputer działa i oblicza problem szybciej niż zwykły. Więcej można przeczytać w oświadczeniu Google tutaj i na przykład tutaj.

Najważniejsze jest to, że komputerów D-Wave z setkami i tysiącami kubitów nie można używać do obliczania i uruchamiania algorytmów kwantowych. Nie można na nich na przykład uruchomić algorytmu Shora. Jedyne, co mogą zrobić, to użyć pewnych mechanizmów kwantowych do rozwiązania określonego problemu optymalizacyjnego. Możemy uznać, że D-Wave jest kwantowym układem ASIC do konkretnego zadania.

Trochę o emulacji komputera kwantowego

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Obliczenia kwantowe można emulować na zwykłym komputerze. Rzeczywiście, Zobaczyć:

  • Stan kubitu może być obecny Liczba zespolona, zajmujący od 2x32 do 2x64 bitów (8-16 bajtów) w zależności od architektury procesora
  • Stan N połączonych kubitów można przedstawić jako 2^N liczb zespolonych, tj. 2^(3+N) dla architektury 32-bitowej i 2^(4+N) dla architektury 64-bitowej.
  • Operację kwantową na N kubitach można przedstawić za pomocą macierzy 2^N x 2^N

Następnie:

  • Do przechowywania emulowanych stanów 10 kubitów potrzeba 8 KB
  • Do przechowywania stanów 20 kubitów potrzeba 8 MB
  • Do przechowywania stanów 30 kubitów potrzeba 8 GB
  • Do zapisania stanów 40 kubitów potrzeba 8 terabajtów
  • Do przechowywania stanów 50 kubitów potrzeba 8 petabajtów itp.

(C)

Dla porównania Szczyt (Top-1 z Top-500) zawiera tylko 2.8 petabajta pamięci.

Aktualny zapis symulacji — 49 kubitów dostarczonych w ubiegłym roku do największego chińskiego superkomputera (Sunway Taihu Światło)

Granicę symulacji komputera kwantowego w klasycznych układach wyznacza ilość pamięci RAM potrzebnej do przechowywania stanu kubitów.

Polecam też lekturę ten komentarz. Stamtąd:

Operacyjnie - do dokładnej emulacji 49-kubitowego obwodu składającego się z około 39 „cykli” (niezależnych warstw bramek) to zajęło 2^63 złożone mnożenia - 4 Pflopy superkomputera na 4 godziny

Emulacja komputera kwantowego o wielkości ponad 50 kubitów w systemach klasycznych jest uważana za niemożliwą w rozsądnym czasie. Z tego też powodu Google w swoim eksperymencie z supremacją kwantową użył 53-kubitowego procesora.

Dominacja obliczeń kwantowych.

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Wikipedia podaje następującą definicję supremacji obliczeń kwantowych:

Supremacja kwantowa - zdolność obliczenia kwantowe urządzenia do rozwiązywania problemów, których klasyczne komputery praktycznie nie są w stanie rozwiązać.

W rzeczywistości osiągnięcie supremacji kwantowej oznacza, że ​​na przykład faktoryzację dużych liczb za pomocą algorytmu Shora można rozwiązać w odpowiednim czasie lub można emulować złożone cząsteczki chemiczne na poziomie kwantowym i tak dalej. Oznacza to, że nadeszła nowa era.

Jednak w brzmieniu definicji jest pewna luka: „których klasyczne komputery praktycznie nie są w stanie rozwiązać" W rzeczywistości oznacza to, że jeśli utworzysz komputer kwantowy składający się z ponad 50 kubitów i uruchomisz na nim obwód kwantowy, to, jak omówiliśmy powyżej, wyniku tego obwodu nie można emulować na zwykłym komputerze. To jest klasyczny komputer nie będzie w stanie odtworzyć wyniku takiego obwodu.

To, czy taki wynik stanowi prawdziwą supremację kwantową, czy nie, jest raczej pytaniem filozoficznym. Ale zrozum, co zrobił Google i na czym się opiera ogłosił niedawno, że osiągnął supremację kwantową dzięki nowemu procesorowi Sycamore niezbędny.

Oświadczenie Google o supremacji kwantowej

(do treści)

Jak działają komputery kwantowe. Układanie puzzli
Procesor Sycamore 54-kubitowy

I tak w październiku 2019 roku programiści Google opublikowali artykuł w publikacji naukowej Nature „Supremacja kwantowa za pomocą programowalnego procesora nadprzewodzącego" Autorzy po raz pierwszy w historii ogłosili osiągnięcie supremacji kwantowej przy użyciu 54-kubitowego procesora Sycamore.

Artykuły Sycamore w Internecie często odnoszą się do procesora 54-kubitowego lub 53-kubitowego. Prawda jest taka, że ​​wg oryginalny artykuł, procesor fizycznie składa się z 54 kubitów, ale jeden z nich jest niedziałający i został wycofany z użytku. Zatem w rzeczywistości mamy procesor 53-kubitowy.

Właśnie tam, w sieci pojawiło się zestaw materiałów na ten temat, których stopień był zróżnicowany entuzjastyczny do sceptyczny.

Później stwierdził to zespół IBM zajmujący się obliczeniami kwantowymi Google fałszywie zgłosił osiągnięcie supremacji kwantowej. Firma twierdzi, że konwencjonalny komputer poradzi sobie z tym zadaniem w najgorszym przypadku w ciągu 2,5 dnia, a uzyskana odpowiedź będzie dokładniejsza niż komputer kwantowy. Wniosek ten został wyciągnięty na podstawie wyników analizy teoretycznej kilku metod optymalizacyjnych.

I oczywiście, Scott aaronson w jego post na blogu Nie mogłem przejść obojętnie obok tej wypowiedzi. Jego анализ wraz ze wszystkimi linkami i Najczęściej zadawane pytania dotyczące najwyższej supremacji kwantowej Scotta! jak zwykle warto poświęcić im czas. Na koncentratorze jest tłumaczenie w tym FAQ i koniecznie przeczytaj komentarze, znajdują się tam linki do wstępnych dokumentów, które wyciekły do ​​sieci przed oficjalnym ogłoszeniem.

Co właściwie Google zrobił? Aby uzyskać szczegółowe zrozumienie, przeczytaj Aaronsona, ale krótko tutaj:

Mogę ci oczywiście powiedzieć, ale czuję się dość głupio. Obliczenia są następujące: eksperymentator generuje losowy obwód kwantowy C (tj. losową sekwencję bramek 1-kubitowych i 2-kubitowych pomiędzy najbliższymi sąsiadami, o głębokości np. 20, działającej na dwuwymiarową sieć n = 2-50 kubitów). Następnie eksperymentator wysyła C do komputera kwantowego i prosi go o zastosowanie C do stanu początkowego 60, zmierzenie wyniku w bazie {0}, odesłanie n-bitowej zaobserwowanej sekwencji (łańcuch) i powtórzenie kilku tysiąc lub miliony razy. Na koniec, korzystając ze swojej wiedzy o języku C, eksperymentator przeprowadza test statystyczny, aby sprawdzić, czy wynik odpowiada oczekiwanemu wyjściu komputera kwantowego.

Jak działają komputery kwantowe. Układanie puzzli

Bardzo krótko:

  • Za pomocą bramek tworzony jest losowy obwód o długości 20 z 53 kubitów
  • Aby wykonać, obwód rozpoczyna się od stanu początkowego [0…0].
  • Wyjściem obwodu jest losowy ciąg bitów (próbka)
  • Rozkład wyniku nie jest losowy (interferencja)
  • Rozkład uzyskanych próbek porównuje się z oczekiwanym
  • Kończy supremację kwantową

Oznacza to, że Google zaimplementował syntetyczny problem na 53-kubitowym procesorze, a swoje twierdzenie o osiągnięciu supremacji kwantowej opiera na fakcie, że nie da się emulować takiego procesora w standardowych systemach w rozsądnym czasie.

Dla zrozumienia - Ta sekcja w żaden sposób nie umniejsza osiągnięć Google, inżynierowie są naprawdę świetni, a pytanie, czy można to uznać za rzeczywistą wyższość kwantową, czy nie, jak wspomniano wcześniej, jest bardziej filozoficzne niż inżynieryjne. Musimy jednak zrozumieć, że osiągnąwszy taką przewagę obliczeniową, nie posunęliśmy się ani o krok w kierunku możliwości uruchomienia algorytmu Shora na liczbach 2048-bitowych.

Streszczenie

(do treści)
Jak działają komputery kwantowe. Układanie puzzli

Komputery kwantowe i informatyka kwantowa to bardzo obiecujący, bardzo młody i jak dotąd mało mający zastosowanie przemysłowe obszar technologii informatycznych.

Rozwój obliczeń kwantowych pozwoli (kiedyś) rozwiązać problemy:

  • Modelowanie złożonych układów fizycznych na poziomie kwantowym
  • Nierozwiązywalne na zwykłym komputerze ze względu na złożoność obliczeniową

Główne problemy w tworzeniu i obsłudze komputerów kwantowych:

  • Dekoherencja
  • Błędy (dekoherencja i bramka)
  • Architektura procesora (w pełni połączone obwody kubitowe)

Aktualny stan rzeczy:

  • Właściwie – już na początku R & D.
  • Nie ma jeszcze PRAWDZIWEGO wykorzystania komercyjnego (i nie jest jasne, kiedy to nastąpi)

Co może pomóc:

  • Jakiś rodzaj fizycznego odkrycia, które zmniejsza koszty okablowania i obsługi procesorów
  • Odkrycie czegoś, co wydłuży czas dekoherencji o rząd wielkości i/lub zmniejszy błędy

Moim zdaniem (czysto osobistym zdaniem) W obecnym paradygmacie wiedzy naukowej nie odniesiemy znaczącego sukcesu w rozwoju technologii kwantowych, tutaj potrzebny jest jakościowy przełom w jakiejś dziedzinie nauk podstawowych lub stosowanych, który da impuls nowym pomysłom i metodom.

W międzyczasie zdobywamy doświadczenie w programowaniu kwantowym, zbieraniu i tworzeniu algorytmów kwantowych, testowaniu pomysłów itp., itp. Czekamy na przełom.

wniosek

(do treści)

W tym artykule omówiliśmy główne kamienie milowe w rozwoju obliczeń kwantowych i komputerów kwantowych, zbadaliśmy zasadę ich działania, zbadaliśmy główne problemy stojące przed inżynierami przy opracowywaniu i działaniu procesorów kwantowych, a także przyjrzeliśmy się, jakie wielokubitowe D-komputery rzeczywiście są. Wave i niedawne ogłoszenie Google o osiągnięciu supremacji kwantowej.

W tle pozostają kwestie programowania komputerów kwantowych (języki, podejścia, metody itp.) oraz pytania związane z konkretną fizyczną implementacją procesorów, sposobem zarządzania kubitami, łączenia ich, odczytywania itp. Być może będzie to tematem kolejnego artykułu lub artykułów.

Dziękuję za uwagę, mam nadzieję, że ten artykuł komuś się przyda.

(C) Krueggera

Podziękowanie

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

@Oxoron za korektę i uwagi do tekstu źródłowego oraz za artykuł „Charakterystyka komputerów kwantowych”

@a5b za bogate w informacje komentarze dot „Charakterystyka komputerów kwantowych”i nie tylko jej, co w dużej mierze pomogło mi w rozwikłaniu tej zagadki.

Wszystkim autorom artykułów i publikacji, z których materiałów skorzystano przy pisaniu tego artykułu.

Lista zasobów

(do treści)

Jak działają komputery kwantowe. Układanie puzzli

Artykuły o sprawach bieżących z [The National Academies Press]

http://cs.brown.edu/courses/csci1800/sources/2018_NAE_QuantumComputing_ProgressAndProspects.pdf
https://www.nap.edu/catalog/25196/quantum-computing-progress-and-prospects

Artykuły z Habr (w kolejności losowej)

https://habr.com/ru/post/458450/
https://habr.com/ru/post/401315/
https://habr.com/ru/post/458134/
https://habr.com/ru/post/246483/
https://habr.com/ru/post/95428/
https://habr.com/ru/post/387761/
https://habr.com/ru/post/468911/
https://habr.com/ru/post/435560/
https://habr.com/ru/post/316810/
https://habr.com/ru/company/microsoft/blog/351624/
https://habr.com/ru/company/microsoft/blog/351628/
https://habr.com/ru/company/ua-hosting/blog/377533/
https://habr.com/ru/company/acronis/blog/455559/
https://habr.com/ru/company/yandex/blog/332106/
https://habr.com/ru/company/mailru/blog/350208/
https://habr.com/ru/company/mailru/blog/476444/
https://habr.com/ru/company/misis/blog/470445/
https://habr.com/ru/company/it-grad/blog/452424/
https://habr.com/ru/company/piter/blog/450480/

Nieposortowane (ale nie mniej interesujące) artykuły z Internetu

http://homepages.spa.umn.edu/~duplij/publications/Duplij-Shapoval_TOPOLOGICAL-QUANTUM-COMPUTERS.pdf
https://quantum.country/qcvc
http://extremal-mechanics.org/wp-content/uploads/2015/07/RIFFEL.pdf
https://thecode.media/quantum/
https://naked-science.ru/article/nakedscience/quantum-computers
https://ru.ihodl.com/technologies/2018-10-29/prosto-o-slozhnom-kak-rabotaet-kvantovyj-kompyuter/
https://pikabu.ru/story/chto_takoe_kvantovyiy_kompyuter_5204054
https://nplus1.ru/search?q=%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D1%8F+%D0%B0%D0%B7%D0%B1%D1%83%D0%BA%D0%B0
https://www.scottaaronson.com/blog/?p=4372
https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80
https://quantumcomputingreport.com/scorecards/qubit-quality/
https://quantumcomputing.stackexchange.com/questions/2499/is-quantum-computing-just-pie-in-the-sky
https://quantumcomputing.stackexchange.com/questions/1289/how-does-a-quantum-computer-do-basic-math-at-the-hardware-level
https://www.extremetech.com/extreme/284306-how-quantum-computing-works
https://techno.nv.ua/it-industry/chto-takoe-kvantovyy-kompyuter-i-kvantovoe-prevoshodstvo-google-protiv-ibm-50049940.html
https://www.nature.com/articles/s41586-019-1666-5?utm_source=commission_junction&utm_medium=affiliate
https://petrimazepa.com/nemnogo_o_kvantovykh_kompyuterakh
https://www.forbes.ru/tehnologii/371669-ibm-protiv-d-wave-nastupila-li-era-kvantovyh-kompyuterov

Kursy i wykłady

https://www.coursera.org/learn/kvantovyye-vychisleniya
https://www.youtube.com/watch?v=uPw9nkJAwDY&amp=&index=4&amp=&t=0s
https://courses.edx.org/courses/BerkeleyX/CS191x/2013_Spring/course/#
https://www.youtube.com/watch?v=xLfFWXUNJ_I&list=PLnbH8YQPwKbnofSQkZE05PKzPXzbDCVXv
https://cs269q.stanford.edu/syllabus.html
https://quantum-computing.ibm.com/support/guides/user-guide?section=5dcb2b45330e880045abccb0
https://gitlab.com/qkitchen/basics-of-quantum-computing

Źródło: www.habr.com

Dodaj komentarz