Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Calculatoare cuantice și calcule cuantice - noi cuvant la moda, care a fost adăugat la spațiul nostru informativ împreună cu inteligenţă artificială, învățare automată și alți termeni de înaltă tehnologie. În același timp, nu am reușit niciodată să găsesc pe Internet material care să pună cap la cap puzzle-ul numit în capul meu „Cum funcționează computerele cuantice”. Da, există multe lucrări excelente, inclusiv despre Habr (vezi. Lista resurselor), comentarii la care, așa cum se întâmplă de obicei, sunt și mai informative și mai utile, dar imaginea din capul meu, după cum se spune, nu s-a potrivit.

Și recent colegii mei au venit la mine și m-au întrebat: „Înțelegeți cum funcționează un computer cuantic? Poți să ne spui?" Și apoi mi-am dat seama că nu sunt singurul care are o problemă în a-și pune cap la cap o imagine coerentă în capul meu.

Ca urmare, s-a încercat să compilați informații despre calculatoarele cuantice într-un circuit logic consistent în care nivel de bază, fără imersiune profundă în matematică și structura lumii cuantice, s-a explicat ce este un computer cuantic, pe ce principii funcționează și cu ce probleme se confruntă oamenii de știință atunci când îl creează și îl operează.


Cuprins

Disclaimer

(la cuprins)

Autorul nu este un expert în calculul cuantic și Publicul țintă al articolului este aceiași IT, nu specialiști cuantici, care doresc, de asemenea, să pună cap la cap o imagine numită „Cum funcționează computerele cuantice”. Din această cauză, multe concepte din articol sunt simplificate în mod deliberat pentru a înțelege mai bine tehnologiile cuantice la nivel „de bază”, dar fără o simplificare foarte puternică cu pierderi de conținut și adecvare a informațiilor.

Articolul în unele locuri folosește materiale din alte surse, a căror listă este dată la sfârșitul articolului. Ori de câte ori este posibil, sunt introduse legături directe și indicații către textul, tabelul sau figura originală. Dacă am uitat ceva (sau pe cineva) pe undeva, scrieți și voi corecta.

Introducere

(la cuprins)

În acest capitol, vom analiza pe scurt cum a început era cuantică, care a fost motivul motivant pentru ideea unui computer cuantic, care (ce țări și corporații) sunt în prezent principalii jucători în acest domeniu și, de asemenea, vom vorbi pe scurt. despre principalele direcții de dezvoltare a calculului cuantic.

Cum a început totul

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Punctul de plecare al erei cuantice este considerat a fi 1900, când M. Planck a prezentat pentru prima dată ipoteză acea energie este emisă și absorbită nu continuu, ci în cuante (porțiuni) separate. Ideea a fost preluată și dezvoltată de mulți oameni de știință remarcabili din acea vreme - Bohr, Einstein, Heisenberg, Schrödinger, ceea ce a dus în cele din urmă la crearea și dezvoltarea unei astfel de științe precum fizica cuantică. Există o mulțime de materiale bune pe Internet despre formarea fizicii cuantice ca știință, în acest articol nu ne vom opri în detaliu, dar a fost necesar să indicăm data când am intrat în noua era cuantică.

Fizica cuantică a adus multe invenții și tehnologii în viața noastră de zi cu zi, fără de care acum este dificil să ne imaginăm lumea din jurul nostru. De exemplu, un laser, care acum este folosit peste tot, de la aparate electrocasnice (nivele cu laser etc.) la sisteme de înaltă tehnologie (lasere pentru corectarea vederii, salut meclon ). Ar fi logic să presupunem că mai devreme sau mai târziu cineva va veni cu ideea că de ce să nu folosim sisteme cuantice pentru calcul. Și apoi în 1980 s-a întâmplat.

Wikipedia indică faptul că prima idee de calcul cuantic a fost exprimată în 1980 de omul nostru de știință Yuri Manin. Dar chiar au început să vorbească despre asta abia în 1981, când binecunoscutul R. Feynman vorbire la prima conferință de fizică computațională ținută la MIT, a observat că este imposibil să se simuleze evoluția unui sistem cuantic pe un computer clasic într-un mod eficient. El a propus un model elementar calculator cuantic, care va putea efectua o astfel de modelare.

Este un asta e treaba, în care cronologia dezvoltării calculului cuantic este considerat mai academic și în detaliu, dar vom trece pe scurt:

Etape majore în istoria creării computerelor cuantice:

După cum puteți vedea, au trecut 17 ani (din 1981 până în 1998) de la momentul ideii până la prima implementare într-un computer cu 2 qubiți și 21 de ani (din 1998 până în 2019) până când numărul de qubiți a crescut la 53. A fost nevoie de 11 ani (din 2001 până în 2012) pentru a îmbunătăți rezultatul algoritmului lui Shor (vom privi mai în detaliu puțin mai târziu) de la numărul 15 la 21. De asemenea, în urmă cu doar trei ani am ajuns la punctul de a implementând ceea ce a vorbit Feynman și învață să modelezi cele mai simple sisteme fizice.

Dezvoltarea calculului cuantic este lentă. Oamenii de știință și inginerii se confruntă cu sarcini foarte dificile, stările cuantice sunt foarte scurte și fragile, iar pentru a le păstra suficient de mult pentru a efectua calcule, trebuie să construiască sarcofage pentru zeci de milioane de dolari, în care temperatura este menținută. chiar peste zero absolut și care sunt protejate maxim de influențele externe. În continuare vom vorbi despre aceste sarcini și probleme mai detaliat.

Jucători de frunte

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Slide-urile pentru această secțiune sunt preluate din articol Computer cuantic: o mare alergare. Prelegere în Yandex, de la cercetător Centrul cuantic rusesc Alexei Fedorov. Permiteți-mi să vă dau citate directe:

Toate țările de succes tehnologic dezvoltă în prezent tehnologii cuantice. O sumă uriașă de bani este investită în această cercetare și sunt create programe speciale pentru sprijinirea tehnologiilor cuantice.

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Nu numai statele, ci și companiile private participă la cursa cuantică. În total, Google, IBM, Intel și Microsoft au investit recent aproximativ 0,5 miliarde de dolari în dezvoltarea calculatoarelor cuantice și au creat laboratoare și centre de cercetare mari.
Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Există multe articole despre Habré și pe Internet, de exemplu, aici, aici и aici, în care este examinată mai detaliat situația actuală a dezvoltării tehnologiilor cuantice în diferite țări. Principalul lucru pentru noi acum este că toate țările și jucătorii dezvoltați din punct de vedere tehnologic de vârf investesc sume uriașe de bani în cercetare în această direcție, ceea ce dă speranță pentru o ieșire din impasul tehnologic actual.

Direcții de dezvoltare

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Momentan (aș putea greși, corectează-mă) principalele eforturi (și rezultatele mai mult sau mai puțin semnificative) ale tuturor jucătorilor de frunte sunt concentrate în două domenii:

  • Calculatoare cuantice specializate, care au ca scop rezolvarea unei probleme specifice, de exemplu, o problemă de optimizare. Un exemplu de produs sunt computerele cuantice D-Wave.
  • Calculatoare cuantice universale — care sunt capabili să implementeze algoritmi cuantici arbitrari (Shor, Grover etc.). Implementări de la IBM, Google.

Alți vectori de dezvoltare pe care ni-i oferă fizica cuantică, cum ar fi:

Desigur, se află și pe lista domeniilor de cercetare, dar în prezent par să nu existe rezultate mai mult sau mai puțin semnificative.

În plus, puteți citi foaie de parcurs pentru dezvoltarea tehnologiilor cuantice, ei bine, google "dezvoltarea tehnologiilor cuantice", De exemplu, aici, aici и aici.

Bazele. Obiecte cuantice și sisteme cuantice

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Cel mai important lucru de înțeles din această secțiune este că

Calculator cuantic (spre deosebire de cele obișnuite) utilizări ca purtători de informații obiecte cuantice, iar pentru a efectua calcule, obiectele cuantice trebuie conectate în sistem cuantic.

Ce este un obiect cuantic?

Obiect cuantic - un obiect al microlumii (lumea cuantică) care prezintă proprietăți cuantice:

  • Are o stare definită cu două niveluri de limită
  • Se află într-o suprapunere a stării sale până în momentul măsurării
  • Se încurcă cu alte obiecte pentru a crea sisteme cuantice
  • Satisface teorema fără clonare (starea unui obiect nu poate fi copiată)

Să ne uităm la fiecare proprietate mai detaliat:

Are o stare definită cu două niveluri de limită (starea finală)

Un exemplu clasic din lumea reală este o monedă. Are o stare „laterală”, care are două niveluri de limită - „capete” și „cozi”.

Se află într-o suprapunere a stării sale până în momentul măsurării

Au aruncat o monedă, ea zboară și se învârte. În timp ce se rotește, este imposibil de spus în care dintre nivelurile de limită se află starea sa „laterală”. Dar de îndată ce o trântim și ne uităm la rezultat, suprapunerea stărilor se prăbușește imediat într-una dintre cele două stări limită - „capete” și „cozi”. Plmuirea unei monede în cazul nostru este o măsurătoare.

Se încurcă cu alte obiecte pentru a crea sisteme cuantice

Este dificil cu o monedă, dar hai să încercăm. Imaginați-vă că am aruncat trei monede astfel încât acestea să se rotească agățate una de cealaltă, asta înseamnă jonglare cu monede. În fiecare moment de timp, nu numai că fiecare dintre ele se află într-o suprapunere de stări, dar aceste stări se influențează reciproc (monedele se ciocnesc).

Satisface teorema fără clonare (starea unui obiect nu poate fi copiată)

În timp ce monedele zboară și se rotesc, nu există nicio modalitate de a crea o copie a stării de rotație a oricărei monede, separată de sistem. Sistemul trăiește în sine și este foarte gelos să elibereze orice informație către lumea exterioară.

Încă câteva cuvinte despre conceptul în sine „suprapoziții”, în aproape toate articolele suprapunerea este explicată ca „este în toate statele în același timp”, ceea ce este, desigur, adevărat, dar uneori derutant inutil. O suprapunere de stări poate fi imaginată și ca faptul că în fiecare moment de timp are un obiect cuantic există anumite probabilități de a se prăbuși în fiecare dintre nivelurile sale de limită și, în total, aceste probabilități sunt în mod natural egale cu 1. Mai târziu, când luăm în considerare qubit-ul, ne vom opri asupra acestui lucru mai detaliat.

Pentru monede, acest lucru poate fi vizualizat - în funcție de viteza inițială, unghiul de aruncare, starea mediului în care zboară moneda, în fiecare moment probabilitatea de a obține „capete” sau „cozi” este diferită. Și, așa cum am menționat mai devreme, starea unei astfel de monede zburătoare poate fi imaginată ca fiind „în toate stările sale limită în același timp, dar cu probabilități diferite de implementare a acestora”.

Orice obiect pentru care sunt îndeplinite proprietățile de mai sus și pe care îl putem crea și controla poate fi folosit ca purtător de informații într-un computer cuantic.

Puțin mai departe vom vorbi despre starea actuală a lucrurilor cu implementarea fizică a qubiților ca obiecte cuantice și despre ceea ce oamenii de știință folosesc acum în această calitate.

Deci, a treia proprietate afirmă că obiectele cuantice pot deveni încurcate pentru a crea sisteme cuantice. Ce este un sistem cuantic?

Sistem cuantic — un sistem de obiecte cuantice încurcate cu următoarele proprietăți:

  • Un sistem cuantic se află într-o suprapunere a tuturor stărilor posibile ale obiectelor din care constă
  • Este imposibil de cunoscut starea sistemului până în momentul măsurării
  • În momentul măsurării, sistemul implementează una dintre variantele posibile ale stărilor sale limită

(și, privind puțin înainte)

Corolar pentru programele cuantice:

  • Un program cuantic are o stare dată a sistemului la intrare, o suprapunere în interior, o suprapunere la ieșire
  • La ieșirea programului după măsurare avem o implementare probabilistică a uneia dintre posibilele stări finale ale sistemului (plus posibile erori)
  • Orice program cuantic are o arhitectură de coș (intrare -> ieșire. Nu există bucle, nu puteți vedea starea sistemului la mijlocul procesului.)

Comparație între un computer cuantic și unul convențional

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Să comparăm acum un computer convențional și unul cuantic.

Computer obișnuitCalculator cuantic

Logică

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

fizică

Tranzistor semiconductorObiect cuantic

Purtătorul de informații

Niveluri de tensiunePolarizare, spin,...

operațiuni

NU, ȘI, SAU, XOR peste bițiSupape: CNOT, Hadamard,...

Relaţie

Cip semiconductorConfuzie unul cu celălalt

Algoritmi

Standard (vezi Bici)Speciale (Shore, Grover)

principiu

Digital, deterministAnalogic, probabilistic

Nivel logic
Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Într-un computer obișnuit, acest lucru este puțin. Bine cunoscut nouă până la capăt bit determinist. Poate lua valori fie 0, fie 1. Se descurcă perfect cu rolul unitate logică pentru un computer obișnuit, dar este complet nepotrivit pentru a descrie starea obiect cuantic, care, după cum am spus deja, în sălbăticie se află însuprapuneri ale stărilor lor limită.

Cu asta au venit qubit. În stările sale limită realizează stări similare cu 0 și 1 |0> și |1>, iar în suprapunere reprezintă distribuția probabilității peste stările sale limită |0> и |1>:

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

a și b reprezintă amplitudini de probabilitate, iar pătratele modulelor lor sunt probabilitățile reale de a obține exact astfel de valori ale stărilor limită |0> и |1>, dacă restrângeți qubitul cu o măsurătoare chiar acum.

Strat fizic

La nivelul actual de dezvoltare tehnologică, implementarea fizică a unui bit pentru un computer convențional este tranzistor semiconductor, pentru cuantică, așa cum am spus deja, orice obiect cuantic. În secțiunea următoare vom vorbi despre ceea ce este utilizat în prezent ca suport fizic pentru qubiți.

Mediu de stocare

Pentru un computer obișnuit, acesta este curent electric - nivelurile de tensiune, prezența sau absența curentului etc., pentru cuantică - la fel starea unui obiect cuantic (direcția de polarizare, spin etc.), care poate fi în stare de suprapunere.

operațiuni

Pentru a implementa circuite logice pe un computer obișnuit, folosim bine-cunoscut operatii logice, pentru operațiuni pe qubiți a fost necesar să se vină cu un sistem complet diferit de operații, numit porți cuantice. Porțile pot fi cu un singur qubit sau cu dublu, în funcție de câți qubiți sunt convertiți.

Exemple de porți cuantice:
Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Există un concept set de supape universale, care sunt suficiente pentru a efectua orice calcul cuantic. De exemplu, un set universal include o poartă Hadamard, o poartă de defazare, o poartă CNOT și o poartă π⁄8. Cu ajutorul lor, puteți efectua orice calcul cuantic pe un set arbitrar de qubiți.

În acest articol nu ne vom opri în detaliu asupra sistemului de porți cuantice, puteți citi mai multe despre ele și operațiuni logice pe qubiți, de exemplu, aici. Principalul lucru de reținut:

  • Operațiile pe obiecte cuantice necesită crearea de noi operatori logici (porți cuantice)
  • Porțile cuantice vin în tipuri single-qubit și double-qubit.
  • Există seturi universale de porți care pot fi folosite pentru a efectua orice calcul cuantic

Relaţie

Un tranzistor este complet inutil pentru noi, pentru a efectua calcule, trebuie să conectăm mulți tranzistori unul la altul, adică să creăm un cip semiconductor din milioane de tranzistori pe care să construim circuite logice, ALU și, în cele din urmă, obțineți un procesor modern în forma sa clasică.

Un qubit este, de asemenea, complet inutil pentru noi (ei bine, chiar dacă doar în termeni academici),

pentru a efectua calcule avem nevoie de un sistem de qubiți (obiecte cuantice)

care, după cum am spus deja, este creată prin încurcarea qubiților între ei, astfel încât schimbările stărilor lor să apară într-o manieră coordonată.

Algoritmi

Algoritmii standard pe care umanitatea i-a acumulat până în prezent sunt complet nepotriviți pentru implementarea pe un computer cuantic. Da, în general nu este nevoie. Calculatoarele cuantice bazate pe logica de poartă peste qubiți necesită crearea de algoritmi complet diferiți, algoritmi cuantici. Dintre cei mai cunoscuți algoritmi cuantici, se pot distinge trei:

principiu

Și cea mai importantă diferență este principiul de funcționare. Pentru un computer standard, acesta este principiul digital, strict determinist, pe baza faptului că dacă setăm o stare inițială a sistemului și o trecem printr-un algoritm dat, atunci rezultatul calculelor va fi același, indiferent de câte ori rulăm acest calcul. De fapt, acest comportament este exact ceea ce ne așteptăm de la un computer.

Computerul cuantic funcționează principiul analogic, probabilistic. Rezultatul unui algoritm dat la o stare inițială dată este eșantion dintr-o distribuție de probabilitate implementări finale ale algoritmului plus posibile erori.

Această natură probabilistă a calculului cuantic se datorează esenței probabilistice a lumii cuantice. „Dumnezeu nu joacă zaruri cu universul.”, spunea bătrânul Einstein, dar toate experimentele și observațiile de până acum (în paradigma științifică actuală) confirmă contrariul.

Implementări fizice ale qubiților

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

După cum am spus deja, un qubit poate fi reprezentat de un obiect cuantic, adică un obiect fizic care implementează proprietățile cuantice descrise mai sus. Adică, aproximativ vorbind, orice obiect fizic în care există două stări și aceste două stări sunt într-o stare de suprapunere poate fi folosit pentru a construi un computer cuantic.

„Dacă putem pune un atom în două niveluri diferite și le putem controla, atunci ai un qubit. Dacă putem face asta cu un ion, este un qubit. Este la fel cu curentul. Dacă îl rulăm în sensul acelor de ceasornic și în sens invers acelor de ceasornic în același timp, aveți un qubit.” (C)

Există frumos comentariu к articol, în care varietatea actuală de implementări fizice ale qubitului este luată în considerare mai detaliat, vom enumera pur și simplu cele mai cunoscute și comune:

Dintre toată această varietate, cea mai dezvoltată este prima metodă de obținere a qubiților, bazată pe supraconductori. Google, IBM, Intel și alți jucători de top îl folosesc pentru a-și construi sistemele.

Ei bine, citește mai mult Privire de ansamblu asupra posibil implementari fizice qubits din Andrew Daley, 2014.

Bazele. Cum funcționează un computer cuantic

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Materialele pentru această secțiune (sarcină și imagini) sunt preluate din articol „Doar despre lucrurile dificile. Cum funcționează un computer cuantic?.

Deci, imaginați-vă că avem următoarea sarcină:

Există un grup de trei persoane: (A)ndrey, (B)olodya și (C)erezha. Sunt două taxiuri (0 și 1).

Se mai stie ca:

  • (A)ndrey, (B)olodya sunt prieteni
  • (A)ndrey, (C)erezha sunt dușmani
  • (B)olodya și (C)erezha sunt dușmani

Sarcină: Pune oamenii în taxiuri astfel încât Max (prieteni) и Min(inamici)

Evaluare: L = (numar de prieteni) - (numar de dusmani) pentru fiecare varianta de cazare

IMPORTANT: Presupunând că nu există euristici, nu există o soluție optimă. În acest caz, problema poate fi rezolvată doar printr-o căutare completă de opțiuni.

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Soluție pe un computer obișnuit

Cum să rezolvi această problemă pe un (super) computer obișnuit (sau cluster) - este clar că trebuie să parcurgeți toate opțiunile posibile. Dacă avem un sistem multiprocesor, atunci putem paraleliza calculul soluțiilor pe mai multe procesoare și apoi putem colecta rezultatele.

Avem 2 posibilități de cazare (taxi 0 și taxi 1) și 3 persoane. Spațiu de soluții 2 ^ 3 = 8. Puteți chiar să parcurgeți 8 opțiuni folosind un calculator, aceasta nu este o problemă. Acum să complicăm problema - avem 20 de oameni și două autobuze, spațiul de soluție 2^20 = 1. Nimic complicat nici. Să creștem numărul de persoane de 2.5 ori - luați 50 de persoane și două trenuri, spațiul de soluție este acum 2^50 = 1.12 x 10^15. Un computer obișnuit (super) începe deja să aibă probleme serioase. Să creștem numărul de oameni de 2 ori, 100 de oameni ne vor da deja 1.2 x 10 ^ 30 opțiuni posibile.

Asta este, această sarcină nu poate fi calculată într-o perioadă rezonabilă de timp.

Conectarea unui supercomputer

Cel mai puternic computer în prezent este numărul 1 al Top500Aceasta Summit-ul, productivitate 122 Pflops. Să presupunem că avem nevoie de 100 de operații pentru a calcula o opțiune, apoi pentru a rezolva problema pentru 100 de persoane vom avea nevoie de:

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

Așa cum putem vedea pe măsură ce dimensiunea datelor inițiale crește, spațiul soluției crește conform unei legi de putere, în cazul general, pentru N biți avem 2^N opțiuni posibile de soluție, care pentru N relativ mic (100) ne oferă un spațiu de soluții necalculat (la nivelul tehnologic actual).

Există alternative? După cum probabil ați ghicit, da, există.

Dar înainte de a înțelege cum și de ce computerele cuantice pot rezolva în mod eficient probleme de genul acesta, să luăm un moment pentru a recapitula care sunt acestea. distribuția probabilității. Nu vă alarmați, acesta este un articol de recenzie, nu va fi nicio matematică grea aici, ne vom descurca cu exemplul clasic cu o geantă și mingi.

Doar puțină combinatorie, teoria probabilității și un experimentator ciudat

Să luăm o pungă și să o punem în ea 1000 de bile albe și 1000 de bile negre. Vom efectua un experiment - scoatem mingea, notăm culoarea, întoarcem mingea în pungă și amestecăm bilele în pungă.

Experimentul a fost efectuat de 10 ori, a scos 10 bile negre. Pot fi? Destul de. Ne oferă această probă vreo idee rezonabilă despre distribuția adevărată în geantă? Evident nu. Ce trebuie făcut - corect, prepetă experimentul de un milion de ori și calculează frecvențele bilelor albe și negre. Primim, de exemplu 49.95% negru și 50.05% alb. În acest caz, structura distribuției din care eșantionăm (scoatem o minge) este deja mai mult sau mai puțin clară.

Principalul lucru este să înțelegi asta experimentul în sine are o natură probabilistică, cu un eșantion (bil) nu vom cunoaște adevărata structură a distribuției, trebuie să repetăm ​​experimentul de mai multe ori și media rezultatelor.

Să-l adăugăm în geanta noastră 10 bile roșii și 10 verzi (erori). Să repetăm ​​experimentul de 10 ori. ÎNa scos 5 roșii și 5 verzi. Pot fi? Da. Putem spune ceva despre distribuția adevărată - Nu. Ce trebuie făcut - bine, înțelegi.

Pentru a înțelege structura unei distribuții de probabilitate, este necesar să eșantionați în mod repetat rezultatele individuale din această distribuție și să faceți o medie a rezultatelor.

Conectarea teoriei cu practica

Acum, în loc de bile albe și negre, să luăm bile de biliard și să le punem într-o pungă 1000 de bile cu numărul 2, 1000 cu numărul 7 și 10 bile cu alte numere. Să ne imaginăm un experimentator care este antrenat în cele mai simple acțiuni (scoate o minge, notează numărul, pune mingea înapoi în pungă, amestecă bilele în pungă) și face asta în 150 de microsecunde. Ei bine, un astfel de experimentator al vitezei (nu o reclamă la droguri!!!). Apoi, în 150 de secunde, va putea efectua experimentul nostru de 1 milion de ori și să ne furnizeze rezultatele medii.

L-au așezat pe experimentator, i-au dat o geantă, s-au întors, au așteptat 150 de secunde și au primit:

numărul 2 - 49.5%, numărul 7 - 49.5%, numerele rămase în total - 1%.

Da, așa e, geanta noastră este un computer cuantic cu un algoritm care ne rezolvă problema, iar bilele sunt soluții posibile. Întrucât există două soluții corecte, atunci un computer cuantic ne va oferi oricare dintre aceste soluții posibile cu probabilitate egală și erori de 0.5% (10/2000), despre care vom vorbi mai târziu.

Pentru a obține rezultatul unui computer cuantic, trebuie să rulați algoritmul cuantic de mai multe ori pe același set de date de intrare și să faceți media rezultatului.

Scalabilitate a unui computer cuantic

Acum imaginați-vă că pentru o sarcină care implică 100 de persoane (Spațiul soluției 2^100 ne amintim acest lucru), există și doar două decizii corecte. Apoi, dacă luăm 100 de qubiți și scriem un algoritm care calculează funcția noastră obiectiv (L, vezi mai sus) peste acești qubiți, atunci vom obține o pungă în care vor fi 1000 de bile cu numărul primului răspuns corect, 1000 cu numărul celui de-al doilea răspuns corect și 10 bile cu alte numere. Și în aceleași 150 de secunde, experimentatorul nostru ne va oferi o estimare a distribuției de probabilitate a răspunsurilor corecte..

Timpul de execuție al unui algoritm cuantic (cu unele ipoteze) poate fi considerat constant O(1) în raport cu dimensiunea spațiului soluției (2^N).

Și aceasta este tocmai proprietatea unui computer cuantic - constanța de rulare în raport cu creșterea complexității legii puterii a spațiului de soluții este cheia.

Qubit și lumi paralele

Cum se întâmplă asta? Ce permite unui computer cuantic să efectueze calcule atât de repede? Totul ține de natura cuantică a qubitului.

Uite, am spus că un qubit este ca un obiect cuantic realizează una dintre cele două stări ale sale atunci când este observată, dar în „natura sălbatică” este în suprapuneri de stări, adică se află în ambele stări limită simultan (cu o oarecare probabilitate).

lua (A)ndreya și imaginează-ți starea (în ce vehicul se află - 0 sau 1) ca un qubit. Atunci avem (în spațiul cuantic) două lumi paralele, într-una (A) stă în taxiul 0, într-o altă lume - în taxiul 1. În două taxiuri în același timp, dar cu o oarecare probabilitate de a-l găsi în fiecare dintre ele în timpul observației.

lua (B) tânăr și să ne imaginăm și starea sa ca un qubit. Apar alte două lumi paralele. Dar deocamdată aceste perechi de lumi (A) и (LA) nu interacționați deloc. Ce trebuie făcut pentru a crea legate de sistem? Așa e, avem nevoie de acești qubits lega (deruta). O luăm și o confundăm (A) cu (B) — obținem un sistem cuantic de doi qubiți (A, B), realizând în sine patru interdependente lumi paralele. Adăuga (S)ergey și obținem un sistem de trei qubiți (ABC), implementând opt interdependente lumi paralele.

Esența calculului cuantic (implementarea unui lanț de porți cuantice peste un sistem de qubiți conectați) este faptul că calculul are loc în toate lumile paralele simultan.

Și nu contează câți dintre ei avem, 2^3 sau 2^100, algoritmul cuantic va fi executat în timp finit peste toate aceste lumi paralele și ne va oferi un rezultat, care este un eșantion din distribuția de probabilitate a răspunsurilor algoritmului.

Pentru o mai bună înțelegere, se poate imagina asta un computer cuantic la nivel cuantic rulează 2^N procese de soluție paralelă, fiecare dintre care lucrează la o opțiune posibilă, apoi colectează rezultatele muncii - și ne dă răspunsul sub forma unei suprapuneri a soluţiei (distribuția probabilității răspunsurilor), din care eșantionăm câte unul de fiecare dată (pentru fiecare experiment).

Amintiți-vă timpul necesar experimentatorului nostru (150 µs) pentru a realiza experimentul, acest lucru ne va fi de folos puțin mai departe, când vorbim despre principalele probleme ale calculatoarelor cuantice și despre timpul de decoerență.

Algoritmi cuantici

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

După cum sa menționat deja, algoritmii convenționali bazați pe logica binară nu sunt aplicabili unui computer cuantic care utilizează logica cuantică (porți cuantice). Pentru el, a fost necesar să vină cu altele noi care să exploateze pe deplin potențialul inerent naturii cuantice a computerului.

Cei mai cunoscuți algoritmi astăzi sunt:

Spre deosebire de cele clasice, calculatoarele cuantice nu sunt universale.
Doar un număr mic de algoritmi cuantici au fost găsiți până acum.(C)

mulțumesc oxoron pentru link-ul către Grădina Zoologică cu algoritm cuantic, un loc în care, potrivit autorului („Stephen Jordan”), cei mai buni reprezentanți ai lumii cuantico-algoritmice au fost adunați și continuă să se adune.

În acest articol nu vom analiza în detaliu algoritmii cuantici, există o mulțime de materiale excelente pe Internet pentru orice nivel de complexitate, dar mai trebuie să trecem pe scurt peste cele trei cele mai cunoscute.

algoritmul lui Shor.

(la cuprins)

Cel mai faimos algoritm cuantic este algoritmul lui Shor (inventat în 1994 de matematicianul englez Peter Shore), care are ca scop rezolvarea problemei factorizării numerelor în factori primi (problema de factorizare, logaritm discret).

Acest algoritm este citat ca exemplu atunci când scriu că sistemele și parolele dvs. bancare vor fi în curând sparte. Având în vedere că lungimea cheilor folosite astăzi este de nu mai puțin de 2048 de biți, încă nu a sosit timpul pentru un cap.

Până în prezent, rezultate mai mult decât modest. Cele mai bune rezultate de factorizare cu algoritmul lui Shor - numere 15 и 21, care este mult mai mic decât 2048 de biți. Pentru rezultatele rămase din tabel, o altă algoritmul calcule, dar chiar și cel mai bun rezultat conform acestui algoritm (291311) este foarte departe de aplicarea reală.

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Puteți citi mai multe despre algoritmul lui Shor, de exemplu, aici. Despre implementarea practică - aici.

Unul dintre estimări curente complexitatea și puterea necesară pentru factorizarea unui număr de 2048 de biți este un computer cu 20 de milioane de qubiți. Dormim linistiti.

Algoritmul lui Grover

(la cuprins)

Algoritmul lui Grover - algoritm cuantic rezolvarea problemei de enumerare, adică găsirea unei soluții la ecuație F(X) = 1, unde F este funcţie booleană din n variabile. A fost propus de un matematician american Fishing Grover в Anul 1996.

Algoritmul lui Grover poate fi folosit pentru a găsi mediane и medie aritmetică serie de numere. În plus, poate fi folosit pentru a rezolva NP-complet probleme printr-o căutare exhaustivă printre multe soluții posibile. Acest lucru poate implica câștiguri semnificative de viteză în comparație cu algoritmii clasici, deși fără a oferi "soluție polinomială" în general.(C)

Puteți citi mai multe aiciSau aici. mai mult aici Există o explicație bună a algoritmului folosind exemplul de cutii și o minge, dar, din păcate, din motive independente de controlul oricui, acest site nu se deschide pentru mine din Rusia. Daca ai acest site este de asemenea blocat, așa că iată un scurt rezumat:

Algoritmul lui Grover. Imaginați-vă că aveți N bucăți de cutii închise numerotate. Toate sunt goale, cu excepția uneia, care conține o minge. Sarcina ta: aflați numărul cutiei în care se află mingea (acest număr necunoscut este adesea notat cu litera w).
Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Cum se rezolvă această problemă? Cel mai prost mod este să deschizi pe rând cutiile, iar mai devreme sau mai târziu vei da peste o cutie cu o minge. În medie, câte casete trebuie bifate înainte de a găsi o cutie cu o minge? În medie, trebuie să deschideți aproximativ jumătate din cutiile N/2. Principalul lucru aici este că, dacă creștem numărul de cutii de 100 de ori, atunci numărul mediu de cutii care trebuie deschise înainte de a găsi cutia cu mingea va crește și el de aceeași 100 de ori.

Acum să mai facem o clarificare. Să nu deschidem singuri cutiile cu mâinile și să verificăm prezența unei mingi în fiecare, dar există un anumit intermediar, să-i spunem Oracol. Îi spunem Oracolului „bifați caseta numărul 732”, iar Oracolul verifică și răspunde sincer: „nu există nicio minge în caseta numărul 732”. Acum, în loc să spunem câte cutii trebuie să deschidem în medie, spunem „de câte ori în medie ar trebui să mergem la Oracol pentru a găsi numărul cutiei cu mingea”

Se dovedește că, dacă traducem această problemă cu cutii, o minge și Oracolul în limbaj cuantic, obținem un rezultat remarcabil: pentru a găsi numărul unei cutii cu o minge între N cutii, trebuie să perturbăm Oracolul doar despre SQRT. (N) ori!

Adică, complexitatea sarcinii de căutare folosind algoritmul lui Grover este redusă cu rădăcina pătrată a timpului.

Algoritmul Deutsch-Jozi

(la cuprins)

Algoritmul Deutsch-Jozsa (numit și algoritmul Deutsch-Jozsa) - [algoritm cuantic](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), предложенный David Deutsch и Richard Jozsa в Anul 1992, și a devenit unul dintre primele exemple de algoritmi proiectați pentru a fi executați calculatoare cuantice. _

Problema Deutsch-Jozsi este de a determina dacă o funcție a mai multor variabile binare F(x1, x2, ... xn) este constantă (ia fie valoarea 0, fie 1 pentru orice argument) sau echilibrată (pentru jumătate din domeniul necesar). valoarea 0, pentru cealaltă jumătate 1). În acest caz, se consideră a priori cunoscut faptul că funcția este fie o constantă, fie echilibrată. (C)

Încă poți citi aici. O explicație mai simplă:

Algoritmul Deutsch (Deutsch-Jozsi) se bazează pe forța brută, dar permite ca acesta să fie realizat mai rapid decât de obicei. Imaginați-vă că există o monedă pe masă și trebuie să aflați dacă este falsă sau nu. Pentru a face acest lucru, trebuie să vă uitați la moneda de două ori și să determinați: „capete” și „cozi” sunt reale, două „capete”, două „cozi” sunt false. Deci, dacă utilizați algoritmul cuantic Deutsch, atunci această determinare se poate face cu o singură privire - măsurare. (C)

Probleme ale calculatoarelor cuantice

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Atunci când proiectează și operează computere cuantice, oamenii de știință și inginerii se confruntă cu un număr imens de probleme, care până în prezent au fost rezolvate cu diferite grade de succes. Conform explorare (si tot aici) pot fi identificate următoarele serii de probleme:

  • Sensibilitatea față de mediu și interacțiunea cu mediul
  • Acumularea erorilor în timpul calculelor
  • Dificultăți la inițializarea stărilor qubit
  • Dificultăți în crearea sistemelor multi-qubit

Recomand cu căldură să citești articolul „Caracteristicile calculatoarelor cuantice”, în special comentariile la acesta.

Să organizăm toate problemele principale în trei grupuri mari și să aruncăm o privire mai atentă la fiecare dintre ele:

Decoerența

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Descriere de la N+1.

Stare cuantică lucru foarte fragilqubiții într-o stare încurcată sunt extrem de instabili, orice influență externă poate (și face) să distrugă această legătură. O schimbare a temperaturii cu cea mai mică fracțiune de grad, presiune, un foton aleatoriu care zboară în apropiere - toate acestea ne destabilizază sistemul.

Pentru a rezolva această problemă se construiesc sarcofage cu temperatură joasă, în care temperatura (-273.14 grade Celsius) este puțin peste zero absolut, cu izolarea maximă a camerei interne cu procesorul de toate (posibile) influențe ale mediului extern.

Durata maximă de viață a unui sistem cuantic de mai mulți qubiți încâlciți, timp în care își păstrează proprietățile cuantice și poate fi folosit pentru calcule, se numește timp de decoerență.

În prezent, timpul de decoerență în cele mai bune soluții cuantice este de ordinul zeci și sute de microsecunde.

Există o minunată websiteunde te poti uita tabele de comparare a parametrilor dintre toate sistemele cuantice create. Acest articol include doar două procesoare de top ca exemple - de la IBM IBM Q System One și din Google Sycamore. După cum putem observa, timpul de decoerență (T2) nu depășește 200 μs.

Nu am găsit date exacte despre Sycamore, dar în cele mai multe articol despre supremația cuantică sunt date două numere - 1 milion de calcule în 200 de secunde, în alt loc - pentru 130 de secunde fără pierderea semnalelor de control etc.. În orice caz, asta ne oferă timpul de decoerență este de aproximativ 150 μs. Ține minte noastre experimentator cu o pungă? Ei bine, iată-l.

Numele calculatoruluiN QubitsMax împerecheatT2 (µs)
IBM Q System One20670
Google Sycamore534~ 150-200

Cu ce ​​ne amenință decoerența?

Problema principală este că, după 150 μs, sistemul nostru de calcul de N qubiți încurcați va începe să scoată zgomot alb probabilistic în loc de o distribuție probabilistică a soluțiilor corecte.

Adică avem nevoie de:

  • Inițializați sistemul qubit
  • Efectuați un calcul (lanț de operații pe poartă)
  • Citiți rezultatul

Și faceți toate acestea în 150 de microsecunde. Nu am avut timp - rezultatul s-a transformat într-un dovleac.

Dar asta nu este tot…

Erori

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

După cum am spus, procesele cuantice și calculul cuantic sunt de natură probabilistică, nu putem fi 100% siguri de nimic, ci doar cu o oarecare probabilitate. Situația este agravată și mai mult de faptul că calculul cuantic este predispus la erori. Principalele tipuri de erori în calculul cuantic sunt:

  • Erorile de decoerență sunt cauzate de complexitatea sistemului și de interacțiunea cu mediul extern
  • Erori de calcul la poartă (datorită naturii cuantice a calculului)
  • Erori la citirea stării finale (rezultat)

Erori asociate cu decoerența, apar imediat ce ne încurcăm qubiții și începem să facem calcule. Cu cât încurcăm mai mulți qubiți, cu atât sistemul este mai complex, și cu atât este mai ușor să-l distrugi. Sarcofage de joasă temperatură, camere protejate, toate aceste trucuri tehnologice au drept scop reducerea numărului de erori și extinderea timpului de decoerență.

Erori de calcul de poartă - orice operațiune (poartă) pe qubiți se poate termina, cu o oarecare probabilitate, cu o eroare, iar pentru a implementa algoritmul trebuie să realizăm sute de porți, așa că imaginați-vă ce obținem la sfârșitul execuției algoritmului nostru. Răspunsul clasic la întrebare este „Care este probabilitatea de a întâlni un dinozaur într-un lift?” - 50x50, ori te vei întâlni sau nu.

Pentru a înrăutăți problema, metodele standard de corectare a erorilor (duplicarea calculelor și medierea) nu funcționează în lumea cuantică din cauza teoremei fără clonare. Pentru corectarea erorii în calculul cuantic trebuia inventat metode de corecție cuantică. În linii mari, luăm N qubiți obișnuiți și facem 1 dintre ei qubit logic cu o rată de eroare mai mică.

Dar aici apare o altă problemă - numărul total de qubiți. Uite, să presupunem că avem un procesor cu 100 de qubiți, din care 80 de qubiți sunt folosiți pentru corectarea erorilor, apoi ne mai rămân doar 20 pentru calcule.

Erori la citirea rezultatului final — după cum ne amintim, rezultatul calculelor cuantice ne este prezentat sub formă distribuția de probabilitate a răspunsurilor. Dar citirea stării finale poate eșua și cu o eroare.

Pe aceeași On-line Există tabele comparative ale procesoarelor în funcție de nivelurile de eroare. Pentru comparație, să luăm aceleași procesoare ca în exemplul anterior - IBM IBM Q System One и Google Sycamore:

Calculator1-Qubit Gate Fidelity2-Qubit Gate FidelityReadout Fidelity
IBM Q System One99.96%98.31% -
Google Sycamore99.84%99.38%96.2%

Aici fidelitate este o măsură a asemănării a două stări cuantice. Mărimea erorii poate fi exprimată aproximativ ca 1-Fidelitate. După cum putem vedea, erorile pe porțile de 2 qubiți și erorile de citire sunt principalul obstacol în calea executării algoritmilor complexi și lungi pe computerele cuantice existente.

Încă poți citi foaia de parcurs din 2016 ani de la NQIT pentru a rezolva problema corectării erorilor.

Arhitectura procesorului

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

În teorie, construim și operăm circuite de zeci de qubiți încâlciți, in realitate totul este mai complicat. Toate cipurile (procesoarele) cuantice existente sunt construite în așa fel încât să ofere fără durere încurcarea unui qubit numai cu vecinii săi, dintre care nu sunt mai mult de șase.

Dacă trebuie să încurcăm primul qubit, să zicem, cu al 1-lea, atunci va trebui să construi un lanț de operații cuantice suplimentare, implică qubiți suplimentari etc., ceea ce crește nivelul general de eroare. Da, și nu uita timp de decoerență, poate că până când terminați conectarea qubiților în circuitul de care aveți nevoie, timpul se va termina și întregul circuit se va transforma în frumos generator de zgomot alb.

De asemenea, nu uita asta Arhitectura tuturor procesoarelor cuantice este diferită, iar programul scris în emulator în modul „conectivitate all-to-all” va trebui „recompilat” în arhitectura unui anumit cip. Există chiar și programe speciale de optimizare pentru a efectua această operație.

Conectivitate maximă și număr maxim de qubiți pentru aceleași cipuri de top:

Numele calculatoruluiN QubitsMax împerecheatT2 (µs)
IBM Q System One20670
Google Sycamore534~ 150-200

Și, pentru comparație, tabel cu date din generația anterioară de procesoare. Comparați numărul de qubiți, timpul de decoerență și rata de eroare cu ceea ce avem acum cu noua generație. Totuși, progresul este lent, dar în mișcare.

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Deci:

  • În prezent, nu există arhitecturi complet conectate cu > 6 qubiți
  • Pentru a încurca qubit 0 s pe un procesor real, de exemplu, qubit 15 poate necesita câteva zeci de operații suplimentare
  • Mai multe operațiuni -> mai multe erori -> influență mai puternică a decoerenței

Rezultatele

(la cuprins)

Decoerența este patul procrustean al calculului cuantic modern. Trebuie să potrivim totul în 150 μs:

  • Inițializarea stării inițiale a qubiților
  • Calcularea unei probleme folosind porți cuantice
  • Corectați erorile pentru a obține rezultate semnificative
  • Citiți rezultatul

Până acum rezultatele sunt însă dezamăgitoare aici pretind că atinge un timp de reținere a coerenței de 0.5 s pe un computer cuantic bazat pe capcane de ioni:

Măsurăm un timp de coerență qubit care depășește 0.5 s, iar cu ecranarea magnetică ne așteptăm să se îmbunătățească să fie mai lung de 1000 s

Puteți citi și despre această tehnologie aici sau de exemplu aici.

Situația este și mai complicată de faptul că atunci când se efectuează calcule complexe este necesar să se utilizeze circuite de corectare a erorilor cuantice, care consumă, de asemenea, atât timp, cât și qubiții disponibili.

Și, în sfârșit, arhitecturile moderne nu permit implementarea unor scheme de întanglement mai bune decât 1 din 4 sau 1 din 6 la costuri minime.

Modalități de rezolvare a problemelor

(la cuprins)

Pentru a rezolva problemele de mai sus, sunt utilizate în prezent următoarele abordări și metode:

  • Folosind criocamere cu temperaturi scăzute (10 mK (–273,14°C))
  • Folosind unități de procesor care sunt protejate maxim de influențele externe
  • Utilizarea sistemelor de corectare a erorilor cuantice (Qubit logic)
  • Utilizarea optimizatorilor la programarea circuitelor pentru un anumit procesor

De asemenea, se efectuează cercetări care vizează creșterea timpului de decoerență, căutarea de noi (și îmbunătățirea unor implementări fizice cunoscute) ale obiectelor cuantice, optimizarea circuitelor de corecție etc., etc. Există progrese (uitați-vă mai sus la caracteristicile cipurilor de vârf și anterioare și de astăzi), dar până acum este lent, foarte, foarte lent.

D-Wave

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Calculator D-Wave 2000Q 2000-qubit. Sursă: Sisteme D-Wave

Pe fondul anunțului Google de a obține supremația cuantică folosind un procesor de 53 de qubiți, calculatoare и anunturi de la compania D-Wave, în care numărul de qubiți este de mii, este oarecum confuz. Ei bine, într-adevăr, dacă 53 de qubiți au fost capabili să atingă supremația cuantică, atunci de ce este capabil un computer cu 2048 de qubiți? Dar nu totul este atât de bun...

Pe scurt (luat de pe wiki):

Calculatoare D-Wave lucrează pe principiul relaxare cuantică (recoacere cuantică), poate rezolva o subclasă foarte limitată de probleme de optimizare și nu sunt potrivite pentru implementarea algoritmilor cuantici tradiționali și a porților cuantice.

Pentru mai multe detalii puteți citi, de exemplu, aici, aici (atenție, s-ar putea să nu se deschidă din Rusia) sau Scott Aaronson в articol din a lui post pe blog. Apropo, recomand cu căldură să citești blogul lui în general, există o mulțime de material bun acolo

În general, încă de la începutul anunțurilor, comunitatea științifică a avut întrebări despre calculatoarele D-Wave. De exemplu, în 2014, IBM a pus la îndoială faptul că D-Wave folosește efecte cuantice. S-a ajuns la punctul în care, în 2015, Google, împreună cu NASA, a cumpărat unul dintre aceste computere cuantice și după cercetări confirmat, asta da, calculatorul functioneaza si calculeaza problema mai repede decat unul obisnuit. Puteți citi mai multe despre declarația Google aici și, de exemplu, aici.

Principalul lucru este că calculatoarele D-Wave, cu sutele și miile lor de qubiți, nu pot fi folosite pentru a calcula și rula algoritmi cuantici. Nu puteți rula algoritmul lui Shor pe ele, de exemplu. Tot ce pot face este să folosească anumite mecanisme cuantice pentru a rezolva o anumită problemă de optimizare. Putem considera că D-Wave este un ASIC cuantic pentru o anumită sarcină.

Câteva despre emularea computerului cuantic

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Calculul cuantic poate fi emulat pe un computer obișnuit. Într-adevăr, uite:

  • Starea qubitului poate fi prezenta număr complex, ocupând de la 2x32 până la 2x64 biți (8-16 octeți) în funcție de arhitectura procesorului
  • Starea N qubiți conectați poate fi reprezentată ca 2^N numere complexe, adică. 2^(3+N) pentru arhitectura pe 32 de biți și 2^(4+N) pentru 64 de biți.
  • O operație cuantică pe N qubiți poate fi reprezentată printr-o matrice 2^N x 2^N

Apoi:

  • Pentru a stoca stările emulate de 10 qubiți, sunt necesari 8 KB
  • Pentru a stoca stările de 20 de qubiți aveți nevoie de 8 MB
  • Pentru a stoca stările de 30 de qubiți, sunt necesari 8 GB
  • Sunt necesari 40 Terabytes pentru a stoca stările de 8 de qubiți
  • Pentru a stoca stările de 50 de qubiți, sunt necesari 8 petaocteți etc.

(C)

Pentru comparație, Summit-ul (Top-1 din Top-500) are doar 2.8 Petabytes de memorie.

Înregistrare curentă de simulare — 49 de qubit livrat anul trecut celui mai mare supercomputer chinez (Sunway Taihu Light)

Limita simulării unui computer cuantic pe sistemele clasice este determinată de cantitatea de RAM necesară pentru a stoca starea qubiților.

Recomand si lectura acest comentariu. De acolo:

Prin operare - pentru emularea precisă a unui circuit de 49 de qubiți constând din aproximativ 39 de „cicluri” (straturi independente de porți) a luat 2^63 înmulțiri complexe - 4 Pflopi ai unui supercalculator timp de 4 ore

Emularea unui computer cuantic de peste 50 de qubiți pe sistemele clasice este considerată imposibilă într-un timp rezonabil. Acesta este și motivul pentru care Google a folosit un procesor de 53 de qubiți pentru experimentul său de supremație cuantică.

Supremația calculului cuantic.

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Wikipedia ne oferă următoarea definiție a supremației calculului cuantic:

Supremația cuantică - abilitate calculul cuantic dispozitive pentru a rezolva probleme pe care computerele clasice practic nu le pot rezolva.

De fapt, atingerea supremației cuantice înseamnă că, de exemplu, factorizarea numerelor mari folosind algoritmul Shor poate fi rezolvată în timp adecvat, sau molecule chimice complexe pot fi emulate la nivel cuantic și așa mai departe. Adică a sosit o nouă eră.

Dar există o lacună în formularea definiției, „pe care calculatoarele clasice practic nu le pot rezolva" De fapt, asta înseamnă că dacă creați un computer cuantic de 50+ qubiți și rulați un circuit cuantic pe el, atunci, așa cum am discutat mai sus, rezultatul acestui circuit nu poate fi emulat pe un computer obișnuit. Acesta este un computer clasic nu va putea recrea rezultatul unui astfel de circuit.

Dacă un astfel de rezultat constituie supremație cuantică reală sau nu este mai degrabă o întrebare filozofică. Dar înțelegeți ce a făcut Google și pe ce se bazează a anunțat recent că a atins supremația cuantică cu noul său procesor Sycamore necesar.

Declarația de supremație cuantică a Google

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului
Procesor Sycamore de 54 de qubiți

Deci, în octombrie 2019, dezvoltatorii Google au publicat un articol în publicația științifică Nature „Supremație cuantică folosind un procesor supraconductor programabil" Autorii au anunțat obținerea supremației cuantice pentru prima dată în istorie folosind procesorul Sycamore de 54 de qubiți.

Articolele online Sycamore se referă adesea fie la un procesor de 54 de qubiți, fie la un procesor de 53 de qubiți. Adevărul este că conform Articol original, procesorul constă fizic din 54 de qubiți, dar unul dintre ei nu funcționează și a fost scos din funcțiune. Astfel, în realitate avem un procesor de 53 de qubiți.

Pe web chiar acolo a apărut set de materiale pe această temă, al căror grad a variat de la entuziast la sceptic.

Echipa IBM de calcul cuantic a declarat mai târziu că Google a raportat în mod fals atingerea supremației cuantice. Compania susține că un computer convențional va face față acestei sarcini în cel mai rău caz în 2,5 zile, iar răspunsul rezultat va fi mai precis decât cel al unui computer cuantic. Această concluzie a fost făcută pe baza rezultatelor unei analize teoretice a mai multor metode de optimizare.

Și, desigur, Scott Aaronson în al lui postare pe blog Nu am putut ignora această afirmație. A lui analiză împreună cu toate legăturile și Întrebări frecvente privind supremația cuantică supremă a lui Scott! ca de obicei, merită să-ți petreci timpul. Pe hub există o traducere Aceste întrebări frecvente și asigurați-vă că citiți comentariile, există link-uri către documente preliminare care au fost scurse online înainte de anunțul oficial.

Ce a făcut Google de fapt? Pentru o înțelegere detaliată, citiți Aaronson, dar pe scurt aici:

Pot, desigur, să vă spun, dar mă simt destul de prost. Calculul este următorul: experimentatorul generează un circuit cuantic aleatoriu C (adică o secvență aleatorie de porți de 1 qubit și 2 qubit între cei mai apropiați vecini, cu o adâncime de, de exemplu, 20, care acționează pe o rețea 2D de n = 50-60 qubiți). Apoi, experimentatorul trimite C la computerul cuantic și îi cere să aplice C la o stare inițială de 0, să măsoare rezultatul pe baza {0,1}, să trimită înapoi o secvență observată de n biți (șir) și să repete mai multe de mii sau milioane de ori. În cele din urmă, folosind cunoștințele sale despre C, experimentatorul efectuează un test statistic pentru a vedea dacă rezultatul se potrivește cu rezultatul așteptat de la computerul cuantic.

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Foarte pe scurt:

  • Un circuit aleatoriu cu lungimea 20 din 53 qubiți este creat folosind porți
  • Circuitul începe cu starea inițială [0…0] pentru execuție
  • Ieșirea circuitului este un șir de biți aleatoriu (eșantion)
  • Distribuția rezultatului nu este aleatorie (interferență)
  • Distribuția probelor obținute este comparată cu cea așteptată
  • Încheie supremația cuantică

Adică, Google a implementat o problemă sintetică pe un procesor de 53 de qubiți și își bazează afirmația de a obține supremația cuantică pe faptul că este imposibil să emulezi un astfel de procesor pe sisteme standard într-un timp rezonabil.

Pentru înțelegere - Această secțiune nu diminuează în niciun fel realizările Google, inginerii sunt cu adevărat grozavi, iar întrebarea dacă aceasta poate fi considerată superioritate cuantică reală sau nu, așa cum am menționat mai devreme, este mai filozofică decât inginerie. Dar trebuie să înțelegem că, după ce am atins o asemenea superioritate computațională, nu am înaintat nici un pas către capacitatea de a rula algoritmul lui Shor pe numere de 2048 de biți.

Rezumat

(la cuprins)
Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Calculatoarele cuantice și calculul cuantic sunt un domeniu foarte promițător, foarte tânăr și până acum puțin aplicabil industrial al tehnologiei informației.

Dezvoltarea calculului cuantic ne va permite (într-o zi) să rezolvăm probleme:

  • Modelarea sistemelor fizice complexe la nivel cuantic
  • De nerezolvat pe un computer obișnuit din cauza complexității de calcul

Principalele probleme în crearea și operarea calculatoarelor cuantice:

  • Decoerența
  • Erori (decoerenta si poarta)
  • Arhitectura procesorului (circuite qubit complet conectate)

Starea actuală a lucrurilor:

  • De fapt - chiar începutul C&D.
  • Nu există încă o exploatare comercială REALĂ (și nu este clar când va exista)

Ce poate ajuta:

  • Un fel de descoperire fizică care reduce costurile de cablare și de operare a procesoarelor
  • Descoperirea a ceva care va crește timpul de decoerență cu un ordin de mărime și/sau va reduce erorile

În opinia mea (opinie pur personală), În paradigma științifică actuală a cunoașterii, nu vom obține un succes semnificativ în dezvoltarea tehnologiilor cuantice, aici avem nevoie de o descoperire calitativă într-un domeniu al științei fundamentale sau aplicate, care să dea impuls unor idei și metode noi.

Între timp, câștigăm experiență în programarea cuantică, colectarea și crearea de algoritmi cuantici, testarea ideilor etc., etc. Așteptăm o descoperire.

Concluzie

(la cuprins)

În acest articol, am trecut prin principalele repere în dezvoltarea calculatoarelor cuantice și a calculatoarelor cuantice, am examinat principiul funcționării acestora, am examinat principalele probleme cu care se confruntă inginerii în dezvoltarea și funcționarea procesoarelor cuantice și, de asemenea, am analizat ce multi-qubit. De fapt, computerele D sunt Wave și anunțul recent al Google privind atingerea supremației cuantice.

Au rămas în culise întrebări de programare a calculatoarelor cuantice (limbaje, abordări, metode etc.) și întrebări legate de implementarea fizică specifică a procesoarelor, cum sunt controlați, legați, citiți qubiții etc. Poate că acesta va fi subiectul următorului articol sau articole.

Vă mulțumesc pentru atenție, sper că acest articol va fi de folos cuiva.

(C) Kruegger

Mulțumiri

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

@Oxoron pentru corecturi și comentarii la textul sursă, precum și pentru articol „Caracteristicile calculatoarelor cuantice”

@a5b pentru comentarii bogate în informații „Caracteristicile calculatoarelor cuantice”, și nu numai ei, ceea ce m-a ajutat în multe privințe să dezleg acest puzzle.

Tuturor autorilor de articole și publicații ale căror materiale au fost folosite la scrierea acestui articol.

Lista resurselor

(la cuprins)

Cum funcționează computerele cuantice. Punerea cap la cap a puzzle-ului

Articole de actualitate de la [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

Articole de la Habr (în ordine aleatorie)

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/

Articole nesortate (dar nu mai puțin interesante) de pe Internet

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

Cursuri și prelegeri

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

Sursa: www.habr.com

Cumpărați găzduire de încredere pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără găzduire web fiabilă cu protecție DDoS, servere VPS VDS | ProHoster