Mai repede decât oricând, lumea se schimbă datorită schimbărilor digitale.
Odată cu apariția iminentă a unui alt val nou-nouț de tehnologie capabilă să modifice drastic paradigmele actuale cu o viteză și o putere uluitoare: calculul cuantic, înțelegerea ideilor fundamentale ale erei digitale va deveni și mai importantă.
O tehnică inovatoare numită calculul cuantic folosește fizica cuantică pentru a rezolva probleme care depășesc scopul computerelor convenționale.
Principiile teoriei cuantice arată cum se comportă materia și energia la scara atomică și subatomică, iar Qiskit de la IBM este un kit de dezvoltare software cuantic open-source care ajută la crearea sistemelor de calcul cuantic.
Acest articol încearcă să explice acest lucru și să vă ofere o privire de ansamblu asupra calculului cuantic.
Vom explica cititorilor noștri cu ajutorul unui calcul cuantic open-source SDK, adică. Qiskit și lăsați-i să exploreze folosind Jupiter Notebooks găzduit la IBM Quantum Lab.
Ce este calculul cuantic?
Calcularea cuantică este o ramură a informaticii care se concentrează pe dezvoltarea tehnologiei informatice folosind idei din teoria cuantică.
Profită de capacitatea excepțională a particulelor subatomice de a exista simultan în multe stări, cum ar fi 0 și 1.
Sunt capabili să proceseze mult mai multe date decât computerele obișnuite.
În procesele de calcul cuantic, un qubit este realizat folosind starea cuantică a unui obiect. Informațiile esențiale în calculul cuantic sunt qubiții.
Aceștia îndeplinesc aceeași funcție ca biții în calculul convențional în calculul cuantic, dar acționează destul de diferit. Calculul cuantic este un domeniu care a apărut în anii 1980.
Apoi s-a descoperit că algoritmii cuantici erau mai eficienți în realizarea unor sarcini de calculator decât omologii lor clasici.
Suprapunerea și încurcarea, două concepte din fizica cuantică, sunt bazele pe care se bazează aceste supercalculatoare.
În comparație cu computerele convenționale, computerele cuantice pot în prezent să facă sarcini mai rapid, în timp ce consumă mult mai puțină energie.
Trebuie să continuăm cu operarea calculatoarelor cuantice pentru a o înțelege pe deplin. Să începem acum.
Cum funcționează de fapt un computer cuantic?
În comparație cu computerele tradiționale cu care suntem obișnuiți, calculatoarele cuantice abordează diferit rezolvarea problemelor. Pentru unele sarcini, computerele cuantice sunt preferabile celor tradiționale în mai multe moduri.
Capacitatea lor de a exista în numeroase state simultan este considerată a fi cauza. Pe de altă parte, computerele convenționale pot fi doar într-o singură stare deodată.
Există trei concepte cheie pe care trebuie să le înțelegi pentru a înțelege cum funcționează computerele cuantice:
- Suprapunere.
- Încurcarea.
- Interferență.
Suprapunere
Biții sunt componentele fundamentale ale computerelor tradiționale. Biții cuantici, sau Qubiții, sunt unitățile de bază ale calculatoarelor cuantice.
În mod fundamental, biții cuantici funcționează diferit. Un bit binar, uneori cunoscut ca bit tradițional, este un comutator care poate fi fie 0, fie 1.
Primim starea curentă a bitului înapoi când îl măsurăm. Qubits sunt o excepție de la aceasta. Qubiții pot fi comparați cu săgețile care indică în trei dimensiuni.
Sunt în condițiile 0 dacă sunt îndreptate în sus. Sunt în starea 1 dacă sunt îndreptate în jos. Același lucru este valabil și cu bițile clasice.
Cu toate acestea, ei pot alege să fie într-o stare de suprapunere.
O săgeată este în starea în care indică în orice altă direcție. Suprapunerea lui 0 și 1 are ca rezultat această stare. Un Qubit va produce în continuare fie un 1, fie un 0 ca rezultat atunci când este măsurat.
Oricum, orientarea săgeții determină o probabilitate care este relevantă.
Este mai probabil să primiți un 1 dacă săgeata este îndreptată în primul rând în jos și un 0 dacă este îndreptată în primul rând în sus.
Veți avea 50% șanse de a câștiga pentru fiecare dacă săgeata este în centru. Pe scurt, aceasta este suprapunerea.
rețea de sârmă ghimpată
Biții dintr-un computer tradițional sunt independenți unul de celălalt. Starea unui bit nu are nicio legătură cu starea celuilalt bit.
Qubiții din computerele cuantice se pot încurca unul cu celălalt. Acest lucru implică faptul că ele fuzionează într-o singură stare cuantică mare.
Pentru ilustrare, luați în considerare doi qubiți care sunt în diferite stări de suprapunere, dar nu sunt încă încurși. În acest moment, probabilitatea lor nu se bazează una pe alta.
Când le încurcăm, trebuie să renunțăm la acele probabilități independente și să determinăm probabilitățile tuturor stărilor alternative de care putem scăpa, și anume 00, 01, 10 și 11.
Distribuția de probabilitate a întregului sistem este schimbată dacă direcția săgeții de pe un qubit este schimbată deoarece qubiții sunt încurși.
Independența qubitilor unul față de celălalt a fost pierdută. Fiecare dintre ele este o componentă a aceleiași stări considerabile. Indiferent de câți qubiți ai, acesta este încă cazul.
Există o combinație posibilă de 2n stări pentru un computer cuantic cu n qubiți.
Aveți o distribuție de probabilitate în două stări, de exemplu, pentru un qubit. Aveți o distribuție de probabilitate în patru stări pentru doi qubiți etc. Principala distincție între computerele clasice și cele cuantice este aceasta.
Puteți pune computerele clasice în orice condiție alegeți, dar numai unul câte unul. Toate aceste stări pot exista simultan pe computerele cuantice ca o suprapunere.
Cum poate beneficia computerul de a fi în toate acele stări simultan? Ultimul element de interferență intră în acest punct.
Ingerință
O funcție de undă cuantică poate fi utilizată pentru a descrie starea unui qubit.
Descrierea matematică fundamentală a tuturor lucrurilor din fizica cuantică este oferită de funcțiile de undă.
Când mulți qubiți sunt încurși, funcțiile lor individuale de undă sunt combinate împreună pentru a forma o singură funcție de undă care descrie starea generală a computerului cuantic.
Interferența este rezultatul adunării acestor funcții de undă împreună. Când valurile sunt adăugate împreună, ele pot interacționa constructiv și se pot combina pentru a crea un val mai mare, la fel cum fac ondulațiile de apă.
De asemenea, pot interacționa distructiv pentru a se contracara unul pe celălalt. Probabilitatea variată a diferitelor stări este determinată de funcția de undă generală a computerului cuantic.
Putem modifica probabilitatea ca anumite stări să apară atunci când măsurăm computerul cuantic prin modificarea stărilor diferiților qubiți.
Chiar dacă computerul cuantic poate exista în mai multe suprapuneri de stări simultan, măsurătorile relevă doar una dintre acele stări.
Prin urmare, în timp ce se utilizează un computer cuantic pentru a finaliza o lucrare de calcul, este necesară interferența constructivă pentru a crește probabilitatea de a primi răspunsul corect și interferența distructivă pentru a reduce probabilitatea de a primi unul incorect.
Acum, să începem cu Qiskit.
Ce este Qiskit?
Qiskit este un cadru software finanțat de IBM, conceput pentru a facilita intrarea oricui în domeniul calculului cuantic.
Deoarece computerele cuantice sunt greu de obținut, puteți obține unul printr-un furnizor de cloud, cum ar fi IBM, folosind caseta de instrumente Qiskit.
Este disponibil gratuit și tot codul său este open-source.
Este o manual online care vă învață toate elementele fundamentale ale fizicii cuantice, ceea ce este foarte util pentru cei care nu sunt familiarizați cu subiectul. Python este folosit pentru a dezvolta setul de instrumente Qiskit.
Deci, dacă sunteți familiarizat cu limbajul de programare Python, veți recunoaște o mulțime de cod.
Cadrul software este potrivit pentru cei care doresc aflați despre calculul cuantic dobândind în același timp și experiență practică.
Cel mai fundamental aspect al Qiskit este că funcționează în două etape. Unul dintre pași este etapa de construcție, în care creăm mai multe circuite cuantice și folosim acele circuite pentru a rezolva problema.
Apoi, după finalizarea etapei de construire sau a ajunge la soluție, trecem la următoarea etapă, care este cunoscută sub denumirea de etapa de execuție, în care încercăm să rulăm construcția sau soluția noastră în diferitele backend-uri (backend vectorial de stare, backend unitar, open backend ASM), iar după ce rularea este finalizată, procesăm datele din build pentru rezultatul dorit.
Începeți cu Qiskit
Pe computerul personal sau pe Notebook-ul Jupyter pe care IBM îl găzduiește, îl puteți instala local. Scrieți următorul cod pentru a instala local pe un computer Windows:
Trebuie să ne înregistrăm aici pentru a accesa tokenul API care ne permite să utilizăm dispozitivele cuantice ale IBM, apoi putem începe să lucrăm cu site-ul web al companiei. Vă puteți imagina că faceți acest lucru utilizând un notebook Jupyter instalat de Qiskit care rulează online.
Îl poți accesa selectând Profilul tău din meniul din colțul din dreapta sus al paginii, apoi selectând Informații despre cont. Puteți găsi jetonul dvs. API în secțiunea despre indicative API sub formă de ***. Este copiat și apoi introdus în următorul cod:
Odată ce acest cod a fost executat, jetonul API va fi salvat pe computer, permițându-vă să utilizați dispozitivele cuantice ale IBM. Introduceți următoarele pentru a determina dacă aveți acces la un astfel de dispozitiv:
Dacă rulează codul menționat mai sus, ar trebui să puteți rula cod nu doar pe computer, ci și prin trimiterea circuitelor cuantice încorporate către dispozitivele cuantice ale IBM și primirea rezultatelor.
Deci, folosind biblioteca de circuite, putem începe să dezvoltăm primul nostru algoritm cuantic. Începem prin a importa dependențele esențiale din Qiskit în proiectul nostru.
Apoi construim un registru cuantic de doi biți și un registru convențional de doi biți.
Deci acum avem stabilit atât un registru clasic, cât și unul cuantic. Folosind cele două, putem construi circuitul și dacă, în orice moment pe parcursul modificării circuitului, doriți să schițați cum arată circuitul cuantic, scrieți următorul cod:
Putem vedea din imagine că circuitul este format din doi biți cuantici și doi biți clasici.
Așa cum este, acest circuit nu are porți, ceea ce îl face neinteresant. Acum să construim circuitul folosind porțile cuantice. Ca clasica porți logice Porțile (ȘI, SAU) sunt pentru circuite digitale normale, porțile cuantice sunt componentele fundamentale ale circuitelor cuantice.
Aplicarea porții Hadamard la primul qubit este primul pas în crearea încurcăturii. Apoi, folosind următorul cod, vom adăuga o operație x controlată de doi qubiți:
Acum că acești doi operatori au fost folosiți pentru a construi circuitul nostru cuantic, este timpul să măsurăm biții cuantici (qubiți), să luăm acele măsurători și să le stocăm în biții clasici. Să creăm codul necesar pentru a realiza asta:
Diagrama de mai jos prezintă structura circuitului nostru:
Circuitul trebuie apoi rulat pe un simulator computerizat tradițional. Circuitul a fost finalizat. Și examinează rezultatele acelei execuții.
Informațiile obținute din efectuarea acelui circuit sunt stocate în variabila rezultat. Să afișăm aceste rezultate folosind o histogramă grafică.
Asta se întâmplă atunci când rulăm circuitul nostru cuantic. Pentru numerele 00 și 11, primim probabilități de aproximativ 50%. Circuitul tău inițial al computerului cuantic a fost construit. Felicitări!
Aplicații ale Qiskit Quantum Computing
Qiskit Finance
Qiskit Finance oferă o colecție de instrumente și aplicații demonstrative. Acestea includ traducători Ising pentru optimizarea portofoliului, furnizori de date pentru date reale sau aleatorii și implementări pentru stabilirea prețurilor diferitelor opțiuni financiare sau evaluări ale riscului de credit.
Qiskit Nature
Aplicații de genul plierea proteinelor și structura electronică/vibronică calculele atât pentru stările excitate, cât și pentru cele fundamentale sunt susținute de Qiskit Nature.
Oferă toate părțile necesare pentru conectarea codurilor clasice și convertirea automată în diferite reprezentări necesare computerelor cuantice.
Qiskit Machine Learning
Cuantic masina de învățare metodele care le folosesc pentru a aborda diverse probleme, cum ar fi regresia și clasificarea, sunt furnizate de Qiskit Machine Learning, precum și nucleele cuantice fundamentale și rețelele neuronale cuantice (QNN) ca blocuri de construcție.
De asemenea, permite conectarea QNN-urilor la PyTorch în scopul încorporării elementelor cuantice în operațiunile clasice.
Optimizarea Qiskit
Qiskit Optimization oferă întregul spectru de servicii de optimizare, inclusiv modelarea la nivel înalt a problemelor de optimizare, traducerea automată a problemelor în diferite reprezentări necesare și o colecție de metode simple de optimizare cuantică.
Concluzie
În concluzie, în timp ce cel mai rapid supercomputer disponibil acum durează ani de zile, computerele cuantice pot trece rapid prin metodele actuale de criptare.
În ciuda faptului că computerele cuantice vor putea sparge multe dintre tehnicile de criptare folosite astăzi, se anticipează că vor crea înlocuitori rezistenti la hack.
Optimizarea problemelor este un punct forte al calculatoarelor cuantice. Pentru mai multe detalii, vă rugăm să vizitați Qiskit GitHub.
Lasă un comentariu