Svet se zaradi digitalnih sprememb spreminja hitreje kot kadar koli prej.
Z bližajočim se prihodom še enega povsem novega vala tehnologije, ki lahko drastično spremeni sedanje paradigme z osupljivo hitrostjo in močjo: kvantno računalništvo, bo razumevanje temeljnih zamisli digitalne dobe postalo še bolj pomembno.
Prelomna tehnika, imenovana kvantno računalništvo, uporablja kvantno fiziko za reševanje problemov, ki presegajo obseg običajnih računalnikov.
Načela kvantne teorije kažejo, kako se snov in energija obnašata na atomskem in subatomskem nivoju, IBM-ov Qiskit pa je odprtokodni komplet za razvoj kvantne programske opreme, ki pomaga pri ustvarjanju kvantnih računalniških sistemov.
Ta članek želi to razložiti in vam ponuditi pregled kvantnega računalništva.
Našim bralcem bomo razložili s pomočjo odprtokodnega kvantnega računalništva SDK, tj. Qskit in jim dovolite, da raziskujejo z uporabo Jupyter prenosni računalniki gostuje v IBM Quantum Labu.
Kaj je kvantno računalništvo?
Kvantno računanje je veja računalništva, ki se osredotoča na razvoj računalniške tehnologije z uporabo idej iz kvantne teorije.
Izkorišča izjemno sposobnost subatomskih delcev, da istočasno obstajajo v številnih stanjih, kot sta 0 in 1.
Sposobni so obdelati veliko več podatkov kot običajni računalniki.
V procesih kvantnega računalništva je kubit narejen z uporabo kvantnega stanja predmeta. Bistveni deli informacij v kvantnem računalništvu so kubiti.
Opravljajo enako funkcijo kot biti v običajnem računalništvu v kvantnem računalništvu, vendar delujejo precej drugače. Kvantno računalništvo je področje, ki se je pojavilo v osemdesetih letih prejšnjega stoletja.
Potem je bilo odkrito, da so kvantni algoritmi bolj učinkoviti pri opravljanju nekaterih računalniških nalog kot njihovi klasični analogi.
Superpozicija in prepletenost, dva pojma iz kvantne fizike, sta temelja, na katerih temeljijo ti superračunalniki.
V primerjavi z običajnimi računalniki lahko kvantni računalniki trenutno opravljajo naloge veliko hitreje, medtem ko porabijo veliko manj energije.
Nadaljevati moramo z delovanjem kvantnih računalnikov, da bi ga v celoti razumeli. Začnimo zdaj.
Kako v resnici deluje kvantni računalnik?
V primerjavi s tradicionalnimi računalniki, ki smo jih vajeni, se kvantni računalniki drugače lotevajo reševanja problemov. Za nekatere naloge so kvantni računalniki na več načinov boljši od tradicionalnih.
Vzrok naj bi bila njihova zmožnost obstoja v številnih državah hkrati. Po drugi strani so lahko običajni računalniki hkrati le v enem samem stanju.
Če želite razumeti, kako delujejo kvantni računalniki, morate razumeti tri ključne koncepte:
- Superpozicija.
- Zapletanje.
- Motnje.
Superpozicija
Biti so temeljne komponente tradicionalnih računalnikov. Kvantni biti ali kubiti so osnovne enote kvantnih računalnikov.
V bistvu kvantni biti delujejo drugače. Binarni bit, včasih znan kot tradicionalni bit, je stikalo, ki je lahko 0 ali 1.
Trenutno stanje bita prejmemo nazaj, ko ga izmerimo. Kubiti so pri tem izjema. Qubits lahko primerjamo s puščicami, ki kažejo v treh dimenzijah.
So v pogojih 0, če kažejo navzgor. V stanju 1 so, če so usmerjeni navzdol. Enako je s klasičnimi nastavki.
Vendar pa se lahko odločijo tudi za stanje superpozicije.
Puščica je v stanju, ko kaže v katero koli drugo smer. Rezultat superpozicije 0 in 1 je to stanje. Qubit bo še vedno dal 1 ali 0 kot rezultat, ko bo izmerjen.
Vendar usmerjenost puščice določa verjetnost, ki je pomembna.
Večja je verjetnost, da boste prejeli 1, če je puščica usmerjena predvsem navzdol, in 0, če je usmerjena predvsem navzgor.
Imeli boste 50 % možnosti za zmago za vsakega, če je puščica v sredini. Na kratko, to je superpozicija.
Zapeljivanje
Biti v tradicionalnem računalniku so neodvisni drug od drugega. Stanje enega bita nima nobenega vpliva na stanje drugega bita.
Kubiti v kvantnih računalnikih se lahko zapletejo drug z drugim. To pomeni, da se združijo v eno samo veliko kvantno stanje.
Za ponazoritev razmislite o dveh kubitih, ki sta v različnih superpozicijskih stanjih, vendar še nista zapletena. V tem času njihova verjetnost ni odvisna ena od druge.
Ko jih zapletemo, moramo zavreči te neodvisne verjetnosti in določiti verjetnosti vseh alternativnih stanj, ki jim lahko ubežimo, in sicer 00, 01, 10 in 11.
Porazdelitev verjetnosti celotnega sistema se spremeni, če se spremeni smer puščice na enem kubitu, ker so kubiti prepleteni.
Neodvisnost kubitov drug od drugega je bila izgubljena. Vsak od njih je sestavni del istega velikega stanja. Ne glede na to, koliko kubitov imate, je še vedno tako.
Obstaja možna kombinacija 2n stanj za kvantni računalnik z n kubiti.
Imate verjetnostno porazdelitev v dveh stanjih, na primer za en kubit. Imate porazdelitev verjetnosti med štirimi stanji za dva kubita itd. Glavna razlika med klasičnimi in kvantnimi računalniki je ta.
Klasične računalnike lahko postavite v poljubno stanje, a le enega naenkrat. Vsa ta stanja lahko sočasno obstajajo na kvantnih računalnikih kot superpozicija.
Kako lahko računalniku koristi, če je v vseh teh stanjih hkrati? Na tej točki nastopi zadnji element motnje.
Vmešavanje
Kvantno valovno funkcijo lahko uporabimo za opis stanja kubita.
Temeljni matematični opis vsega v kvantni fiziki zagotavljajo valovne funkcije.
Ko je veliko kubitov zapletenih, se njihove posamezne valovne funkcije združijo v eno valovno funkcijo, ki opisuje celotno stanje kvantnega računalnika.
Interferenca je rezultat seštevanja teh valovnih funkcij. Ko se valovi seštejejo, lahko konstruktivno medsebojno delujejo in se združijo, da ustvarijo večji val, tako kot valovanje vode.
Lahko tudi uničujoče medsebojno delujejo, da nasprotujejo drug drugemu. Različno verjetnost različnih stanj določa splošna valovna funkcija kvantnega računalnika.
S spreminjanjem stanj različnih kubitov lahko spremenimo verjetnost, da se bodo pojavila določena stanja, ko merimo kvantni računalnik.
Čeprav lahko kvantni računalnik obstaja v več superpozicijah stanj hkrati, meritve razkrijejo le eno od teh stanj.
Zato je pri uporabi kvantnega računalnika za dokončanje računskega dela potrebna konstruktivna interferenca, da se poveča verjetnost prejema pravilnega odgovora, in destruktivna interferenca, da se zmanjša verjetnost prejema napačnega.
Zdaj pa začnimo s Qiskitom.
Kaj je Qskit?
Qiskit je programsko ogrodje, ki ga financira IBM in je zasnovano tako, da vsakomur olajša vstop na področje kvantnega računalništva.
Ker je kvantne računalnike težko dobiti, jih lahko dobite prek ponudnika v oblaku, kot je IBM, z uporabo njihovega orodja Qiskit.
Na voljo je brezplačno in vsa njegova koda je open source.
Obstaja spletni učbenik ki vas nauči vseh osnov kvantne fizike, kar je zelo koristno za tiste, ki tega predmeta ne poznate. Python se uporablja za razvoj kompleta orodij Qiskit.
Torej, če ste seznanjeni s programskim jezikom Python, boste prepoznali veliko kode.
Programsko ogrodje je primerno za tiste, ki to želijo spoznati kvantno računalništvo obenem pa pridobiti praktične izkušnje.
Najbolj temeljni vidik Qiskita je, da deluje v dveh stopnjah. Eden od korakov je stopnja konstrukta, v kateri ustvarimo več kvantnih vezij in ta vezja uporabimo za rešitev problema.
Potem, ko končamo stopnjo gradnje ali dosežemo rešitev, nadaljujemo z naslednjo stopnjo, ki je znana kot faza izvajanja, v kateri poskušamo zagnati našo gradnjo ali rešitev v različnih ozadjih (zaledju vektorja stanja, enotnem zaledju, odprtem ASM backend), in po končanem izvajanju obdelamo podatke v gradnji za želeni izhod.
Kako začeti uporabljati Qskit
Na vaš osebni računalnik ali Jupyter Notebook, ki ga gosti IBM, ga lahko namestite lokalno. Napišite to kodo za lokalno namestitev v računalnik z operacijskim sistemom Windows:
Tu se moramo registrirati, da lahko dostopamo do žetona API, ki nam omogoča uporabo IBM-ovih kvantnih naprav, nato pa lahko začnemo delati s spletnim mestom podjetja. Lahko si predstavljate, da to počnete z uporabo prenosnika Jupyter, nameščenega v Qiskitu, ki teče na spletu.
Do njega lahko dostopate tako, da v meniju v zgornjem desnem kotu strani izberete svoj profil in nato izberete Informacije o računu. Žeton API najdete v razdelku o žetonih API v obliki ***. Kopira se in nato vnese v naslednjo kodo:
Ko bo ta koda izvedena, bo vaš žeton API shranjen v vašem računalniku, kar vam bo omogočilo uporabo IBM-ovih kvantnih naprav. Vnesite naslednje, da ugotovite, ali imate dostop do takšne naprave:
Če se prej omenjena koda izvaja, bi morali biti sposobni izvajati kodo ne le v vašem računalniku, ampak tudi tako, da pošljete vgrajena kvantna vezja IBM-ovim kvantnim napravam in prejmete rezultate.
Tako lahko z uporabo knjižnice vezij začnemo razvijati naš prvi kvantni algoritem. Začnemo z uvozom bistvenih odvisnosti iz Qiskita v naš projekt.
Nato izdelamo dvo-kubitni kvantni register in dvo-bitni konvencionalni register.
Tako imamo zdaj vzpostavljen tako klasični kot kvantni register. Z uporabo teh dveh lahko sestavimo vezje in če želite kadar koli med spreminjanjem vezja skicirati, kako izgleda kvantno vezje, napišite naslednjo kodo:
Iz slike vidimo, da je vezje sestavljeno iz dveh kvantnih bitov in dveh klasičnih bitov.
Tako kot je, to vezje nima vrat, zaradi česar je nezanimivo. Sedaj pa sestavimo vezje z uporabo kvantnih vrat. Kot klasična logična vrata (Vrata IN, ALI) so za običajna digitalna vezja, kvantna vrata so temeljne komponente kvantnih vezij.
Uporaba Hadamardovih vrat na prvi kubit je prvi korak pri ustvarjanju prepletenosti. Nato bomo z uporabo naslednje kode dodali dvokubitno nadzorovano operacijo x:
Zdaj, ko sta bila ta dva operaterja uporabljena za izdelavo našega kvantnega vezja, je čas, da izmerimo kvantne bite (kubite), izvedemo te meritve in jih shranimo v klasične bite. Ustvarimo potrebno kodo, da to dosežemo:
Spodnji diagram prikazuje postavitev našega vezja:
Vezje je nato treba izvajati na tradicionalnem računalniškem simulatorju. Krog je sklenjen. In preučite rezultate te usmrtitve.
Informacije, pridobljene pri izvajanju tega kroga, so shranjene v spremenljivki rezultata. Prikažimo te rezultate z uporabo histograma.
To se zgodi, ko zaženemo naše kvantno vezje. Za številki 00 in 11 dobimo približno 50-odstotno verjetnost. Vaše prvotno kvantno računalniško vezje je bilo zgrajeno. čestitke!
Aplikacije Qskit Quantum Computing
Qskit Finance
Qskit Finance ponuja zbirko demonstracijskih orodij in aplikacij. Ti vključujejo prevajalce Ising za optimizacijo portfelja, dobavitelje podatkov za dejanske ali naključne podatke in izvedbe za določanje cen različnih finančnih možnosti ali ocene kreditnega tveganja.
Qiskit Narava
Aplikacije, kot so zvijanje beljakovin in elektronska/vibronska struktura izračune za vzbujena in osnovna stanja podpira Qiskit Nature.
Ponuja vse dele, potrebne za povezovanje klasičnih kod in samodejno pretvorbo v različne predstavitve, ki jih potrebujejo kvantni računalniki.
Strojno učenje Qiskit
Kvantna strojno učenje metode, ki jih uporabljajo za obravnavo različnih problemov, kot sta regresija in klasifikacija, zagotavlja Qiskit Machine Learning ter temeljna kvantna jedra in kvantne nevronske mreže (QNN) kot gradnike.
Omogoča tudi povezavo QNN-jev s PyTorchom z namenom vključevanja kvantnih elementov v klasične operacije.
Optimizacija Qskit
Qiskit Optimization ponuja celoten spekter optimizacijskih storitev, vključno z modeliranjem težav z optimizacijo na visoki ravni, avtomatiziranim prevajanjem problemov v različne potrebne predstavitve in zbirko preprostih metod kvantne optimizacije.
zaključek
Skratka, medtem ko najhitrejši superračunalnik, ki je zdaj na voljo, potrebuje leta, lahko kvantni računalniki hitro prebijejo trenutne metode šifriranja.
Kljub dejstvu, da bodo kvantni računalniki lahko razbili številne tehnike šifriranja, ki se danes uporabljajo, se pričakuje, da bodo ustvarili nadomestke, odporne na vdore.
Težave z optimizacijo so prednost kvantnih računalnikov. Za dodatne podrobnosti obiščite Qiskit GitHub.
Pustite Odgovori