Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kvanttitietokoneet ja kvanttilaskenta - uutta muotisana, joka lisättiin tietoalueeseemme yhdessä tekoäly, koneoppiminen ja muut korkean teknologian termit. Samaan aikaan en koskaan löytänyt Internetistä materiaalia, joka kokoaisi päähäni kutsutun palapelin "miten kvanttitietokoneet toimivat". Kyllä, on monia erinomaisia ​​teoksia, mukaan lukien Habr (katso. Luettelo resursseista), kommentit, joihin, kuten yleensä, ovat vieläkin informatiivisempia ja hyödyllisempiä, mutta kuva päässäni, kuten sanotaan, ei osunut yhteen.

Ja äskettäin kollegani tulivat luokseni ja kysyivät: "Ymmärrätkö kuinka kvanttitietokone toimii? Voitko kertoa meille?" Ja sitten tajusin, etten ole ainoa, jolla on ongelma saada yhteen johdonmukainen kuva päässäni.

Tämän seurauksena kvanttitietokoneita koskevaa tietoa yritettiin koota johdonmukaiseksi logiikkapiiriksi, jossa perustasolla, ilman syvää uppoamista matematiikkaan ja kvanttimaailman rakenteeseen, selitettiin mikä kvanttitietokone on, millä periaatteilla se toimii ja mitä ongelmia tiedemiehet kohtaavat luodessaan ja käyttäessään sitä.


sisällysluettelo

Vastuuvapauslauseke

(sisältöön)

Kirjoittaja ei ole kvanttilaskennan asiantuntija ja Artikkelin kohdeyleisö on samat IT-ihmiset, eivät kvanttiasiantuntijat, jotka haluavat myös koota päässään kuvan "Kuinka kvanttitietokoneet toimivat". Tämän vuoksi monia artikkelin käsitteitä yksinkertaistetaan tarkoituksella kvanttitekniikoiden ymmärtämiseksi paremmin "perustasolla", mutta ilman erittäin voimakas yksinkertaistaminen, jossa tiedon sisältö ja riittävyys menetetään.

Artikkelissa on joissain paikoissa käytetty materiaalia muista lähteistä, luettelo niistä on artikkelin lopussa. Aina kun mahdollista, lisätään suorat linkit ja viittaukset alkuperäiseen tekstiin, taulukkoon tai kuvaan. Jos unohdin jotain (tai jonkun) jonnekin, kirjoita niin korjaan sen.

Esittely

(sisältöön)

Tässä luvussa tarkastellaan lyhyesti kuinka kvanttiaikakausi alkoi, mikä oli motivoiva syy idealle kvanttitietokoneesta, ketkä (mitkä maat ja yritykset) ovat tällä hetkellä tämän alan johtavia toimijoita, sekä myös lyhyesti. kvanttilaskennan tärkeimmistä kehityssuunnista.

Kuinka kaikki alkoi

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kvanttiaikakauden lähtökohtana pidetään vuotta 1900, jolloin M. Planck esitti ensimmäisen kerran hypoteesi että energiaa ei säteile ja absorboi jatkuvasti, vaan erillisinä kvantteina (osina). Ajatuksen ottivat ja kehittivät monet tuon ajan erinomaiset tiedemiehet - Bohr, Einstein, Heisenberg, Schrödinger, mikä lopulta johti sellaisen tieteen luomiseen ja kehittämiseen kuin kvanttifysiikkaa. Internetissä on paljon hyvää materiaalia kvanttifysiikan muodostumisesta tieteenä, tässä artikkelissa emme käsittele tätä yksityiskohtaisesti, mutta oli tarpeen ilmoittaa päivämäärä, jolloin astuimme uuteen kvanttiaikakauteen.

Kvanttifysiikka on tuonut jokapäiväiseen elämäämme monia keksintöjä ja teknologioita, joita ilman on nyt vaikea kuvitella ympäröivää maailmaa. Esimerkiksi laser, jota käytetään nykyään kaikkialla kodinkoneista (lasertasot jne.) huipputeknisiin järjestelmiin (näönkorjauslaserit, hei meklon ). Olisi loogista olettaa, että ennemmin tai myöhemmin joku keksii ajatuksen, että miksipä ei käyttäisi kvanttijärjestelmiä laskennassa. Ja sitten vuonna 1980 se tapahtui.

Wikipedia osoittaa, että ensimmäisen idean kvanttilaskentaa ilmaisi vuonna 1980 tutkijamme Juri Manin. Mutta he todella alkoivat puhua siitä vasta vuonna 1981, kun tunnettu R. Feynman puhua ensimmäisessä laskennallisen fysiikan konferenssissa MIT:ssä, huomautti, että on mahdotonta simuloida kvanttijärjestelmän kehitystä klassisella tietokoneella tehokkaasti. Hän ehdotti perusmallia kvanttitietokone, joka pystyy suorittamaan tällaisen mallinnuksen.

Tuolla on se on työjossa kvanttilaskennan kehityksen aikajana tarkastellaan akateemisesti ja yksityiskohtaisemmin, mutta käymme läpi lyhyesti:

Tärkeimmät virstanpylväät kvanttitietokoneiden luomisen historiassa:

Kuten näette, idean hetkestä sen ensimmäiseen toteutukseen on kulunut 17 vuotta (vuodesta 1981 vuoteen 1998) 2 kubitin tietokoneessa ja 21 vuotta (1998 - 2019), kunnes kubittien määrä nousi 53:een. Kesti 11 vuotta (vuodesta 2001 vuoteen 2012) parantaakseen Shorin algoritmin tulosta (tarkastelemme sitä hieman myöhemmin) luvusta 15 21:een. Lisäksi vasta kolme vuotta sitten tulimme siihen pisteeseen, että toteuttaa sen, mistä Feynman puhui, ja oppia mallintamaan yksinkertaisimpia fyysisiä järjestelmiä.

Kvanttilaskennan kehitys on hidasta. Tiedemiehet ja insinöörit kohtaavat erittäin vaikeita tehtäviä, kvanttitilat ovat hyvin lyhytikäisiä ja hauraita, ja säilyttääkseen ne riittävän pitkään laskelmien suorittamiseen, heidän on rakennettava kymmenien miljoonien dollarien arvosta sarkofageja, joissa lämpötila säilyy. juuri yli absoluuttisen nollan ja jotka ovat maksimaalisesti suojattuja ulkoisilta vaikutuksilta. Seuraavaksi puhumme näistä tehtävistä ja ongelmista tarkemmin.

Johtavat pelaajat

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Tämän osion diat on otettu artikkelista Kvanttitietokone: iso härkäjuoksu. Luento Yandexissa, tutkijalta Venäjän kvanttikeskus Aleksei Fedorov. Annan sinulle suorat lainaukset:

Kaikki teknisesti menestyvät maat kehittävät tällä hetkellä aktiivisesti kvanttiteknologioita. Tähän tutkimukseen investoidaan valtavasti rahaa ja luodaan erityisiä ohjelmia kvanttiteknologioiden tukemiseksi.

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Valtioiden lisäksi myös yksityiset yritykset osallistuvat kvanttikilpailuun. Yhteensä Google, IBM, Intel ja Microsoft ovat viime aikoina investoineet noin 0,5 miljardia dollaria kvanttitietokoneiden kehittämiseen ja luoneet suuria laboratorioita ja tutkimuskeskuksia.
Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Habresta ja Internetistä löytyy monia artikkeleita, mm. täällä, täällä и täällä, jossa tarkastellaan tarkemmin kvanttiteknologian kehityksen nykytilaa eri maissa. Meille nyt tärkeintä on, että kaikki johtavat teknisesti kehittyneet maat ja toimijat investoivat valtavia summia tämänsuuntaiseen tutkimukseen, mikä antaa toivoa päästä ulos nykyisestä teknologisesta umpikujasta.

Kehityssuunnat

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Tällä hetkellä (voin olla väärässä, oikaiskaa) kaikkien johtavien toimijoiden pääponnistelut (ja enemmän tai vähemmän merkittävät tulokset) keskittyvät kahdelle alueelle:

  • Erikoistuneet kvanttitietokoneet, joiden tarkoituksena on ratkaista tietty tietty ongelma, esimerkiksi optimointiongelma. Esimerkki tuotteesta ovat D-Wave-kvanttitietokoneet.
  • Universaalit kvanttitietokoneet — jotka pystyvät toteuttamaan mielivaltaisia ​​kvanttialgoritmeja (Shor, Grover jne.). Toteutukset IBM:ltä, Googlelta.

Muita kvanttifysiikan meille tarjoamia kehitysvektoreita, kuten:

Tietysti se on myös tutkimusalueiden listalla, mutta tällä hetkellä ei näytä olevan enemmän tai vähemmän merkittäviä tuloksia.

Lisäksi voit lukea tiekartta kvanttiteknologian kehittämiseksi, no, google"kvanttiteknologian kehittäminen", Esimerkiksi, täällä, täällä и täällä.

Perusasiat. Kvanttiolio ja kvanttijärjestelmät

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Tärkein asia, joka on ymmärrettävä tästä osiosta, on se

Kvantti tietokone (toisin kuin tavallisesti) käyttää tiedon välittäjinä kvanttiobjektit, ja laskelmia varten kvanttiobjektit on kytkettävä sisään kvanttijärjestelmä.

Mikä on kvanttiobjekti?

Kvanttiobjekti - mikromaailman (kvanttimaailman) esine, jolla on kvanttiominaisuuksia:

  • Sillä on määritelty tila kahdella rajatasolla
  • On tilansa superpositiossa mittaushetkeen asti
  • Kietoutuu muihin objekteihin luodakseen kvanttijärjestelmiä
  • Täyttää ei-kloonauslauseen (objektin tilaa ei voi kopioida)

Katsotaanpa jokaista omaisuutta tarkemmin:

Sillä on määritelty tila kahdella rajatasolla (lopputila)

Klassinen tosielämän esimerkki on kolikko. Sillä on "sivutila", jolla on kaksi rajatasoa - "päät" ja "hännät".

On tilansa superpositiossa mittaushetkeen asti

He heittivät kolikon, se lentää ja pyörii. Sen pyöriessä on mahdotonta sanoa, millä rajatasoilla sen "sivutila" sijaitsee. Mutta heti kun lyömme sen alas ja katsomme tulosta, tilojen superpositio romahtaa heti toiseen kahdesta rajatilasta - "päät" ja "hännät". Kolikon lyöminen on meidän tapauksessamme mitta.

Kietoutuu muihin objekteihin luodakseen kvanttijärjestelmiä

Kolikolla on vaikeaa, mutta yritetään. Kuvittele, että heitimme kolme kolikkoa niin, että ne pyörivät kiinni toisissaan, tämä on jongleerausta kolikoiden kanssa. Jokaisella ajanhetkellä jokainen niistä ei ole vain tilojen superpositiossa, vaan nämä tilat vaikuttavat toisiinsa (kolikot törmäävät).

Täyttää ei-kloonauslauseen (objektin tilaa ei voi kopioida)

Kun kolikot lentävät ja pyörivät, emme voi mitenkään luoda kopiota minkään kolikon pyörimistilasta erillään järjestelmästä. Järjestelmä elää sisällään ja on hyvin kateellinen luovuttaessaan kaikkea tietoa ulkomaailmaan.

Vielä muutama sana itse konseptista "superpositiot", melkein kaikissa artikkeleissa superpositio selitetään nimellä "on kaikissa tiloissa samaan aikaan", mikä on tietysti totta, mutta toisinaan tarpeettoman hämmentävää. Tilojen superpositio voidaan kuvitella myös se tosiasia, että kvanttiobjektilla on kullakin ajanhetkellä on olemassa tietyt todennäköisyydet romahtaa sen jokaiselle rajatasolle, ja yhteensä nämä todennäköisyydet ovat luonnollisesti yhtä kuin 1. Myöhemmin, kun tarkastelemme kubittia, käsittelemme tätä yksityiskohtaisemmin.

Kolikoiden osalta tämä voidaan visualisoida - riippuen alkunopeudesta, heittokulmasta, ympäristön tilasta, jossa kolikko lentää, todennäköisyys saada ”päät” tai ”hännät” kullakin hetkellä on erilainen. Ja kuten aiemmin mainittiin, tällaisen lentävän kolikon tila voidaan kuvitella olevan "kaikissa rajatiloissaan samaan aikaan, mutta niiden toteutumisen todennäköisyydet vaihtelevat".

Mitä tahansa objektia, jolle yllä mainitut ominaisuudet täyttyvät ja jota voimme luoda ja ohjata, voidaan käyttää tiedon välittäjänä kvanttitietokoneessa.

Hieman pidemmälle puhumme kubittien fyysisen toteuttamisen kvanttiobjekteina nykytilasta ja siitä, mitä tiedemiehet käyttävät nyt tässä ominaisuudessa.

Joten kolmas ominaisuus sanoo, että kvanttiobjektit voivat takertua luomaan kvanttijärjestelmiä. Mikä on kvanttijärjestelmä?

Kvanttijärjestelmä — kietoutuneiden kvanttiobjektien järjestelmä, jolla on seuraavat ominaisuudet:

  • Kvanttijärjestelmä on superpositiossa kaikkien mahdollisten objektien tilojen kanssa, joista se koostuu
  • On mahdotonta tietää järjestelmän tilaa ennen mittaushetkeä
  • Mittaushetkellä järjestelmä toteuttaa yhden mahdollisista rajatilojen muunnelmista

(ja vähän eteenpäin katsoen)

Kvanttiohjelmien seuraus:

  • Kvanttiohjelmalla on järjestelmän tietty tila sisääntulossa, superpositio sisällä, superpositio lähdössä
  • Ohjelman lähdössä mittauksen jälkeen meillä on todennäköisyyspohjainen toteutus jostakin järjestelmän mahdollisesta lopputilasta (plus mahdolliset virheet)
  • Kaikilla kvanttiohjelmilla on savupiippuarkkitehtuuri (tulo -> lähtö. Ei silmukoita, et voi nähdä järjestelmän tilaa kesken prosessin.)

Kvanttitietokoneen ja perinteisen tietokoneen vertailu

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Verrataan nyt tavallista tietokonetta ja kvanttitietokonetta.

tavallinen tietokone Kvantti tietokone

logiikka

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

Fysiikka

Puolijohdetransistori Kvanttiobjekti

Median välittäjä

Jännitetasot Polarisaatio, spin,…

toiminnot

EI, JA, TAI, XOR yli bittien Venttiilit: CNOT, Hadamard,…

keskinäinen suhde

Puolijohdesiru Hämmennystä keskenään

Algoritmit

Vakio (katso Whip) Erikoistarjoukset (Shore, Grover)

periaate

Digitaalinen, deterministinen Analoginen, todennäköisyys

Logiikka taso
Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Tavallisessa tietokoneessa tämä on vähän. Tuttu meille läpikotaisin deterministinen bitti. Voi ottaa arvot joko 0 tai 1. Se selviytyy täydellisesti roolista looginen yksikkö tavalliselle tietokoneelle, mutta ei täysin sovellu kuvaamaan tilaa kvanttiobjekti, joka, kuten olemme jo sanoneet, sijaitsee luonnossaniiden rajatilojen superpositiot.

Tämän he keksivät qubit. Rajatiloissaan se toteuttaa tilat, jotka ovat samanlaisia ​​kuin 0 ja 1 |0> ja |1>, ja superpositiossa edustaa todennäköisyysjakauma sen rajatilojen yli |0> и |1>:

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

a ja b edustavat todennäköisyysamplituditja niiden moduulien neliöt ovat todellisia todennäköisyyksiä saada juuri tällaiset rajatilojen arvot |0> и |1>, jos kutistat kubitin mittauksella juuri nyt.

Fyysinen kerros

Nykyisellä teknologisella kehitystasolla bitin fyysinen toteutus perinteiselle tietokoneelle on puolijohdetransistori, kvantille, kuten olemme jo sanoneet, mikä tahansa kvanttiobjekti. Seuraavassa osiossa puhumme siitä, mitä tällä hetkellä käytetään kubittien fyysisenä mediana.

Tallennusväline

Tavalliselle tietokoneelle tämä on sähköä - jännitetasot, virran olemassaolo tai puuttuminen jne. kvantille - sama kvanttiobjektin tila (polarisaation suunta, spin jne.), joka voi olla superpositiotilassa.

toiminnot

Logiikkapiirien toteuttamiseen tavallisessa tietokoneessa käytämme hyvin tunnettuja loogisia operaatioita, kubittien operaatioita varten piti keksiä täysin erilainen operaatiojärjestelmä, ns kvanttiportit. Portit voivat olla yksi- tai kaksikubitisia, riippuen siitä, kuinka monta kubittia muunnetaan.

Esimerkkejä kvanttiporteista:
Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

On käsite yleinen venttiilisarja, jotka riittävät minkä tahansa kvanttilaskelman suorittamiseen. Esimerkiksi yleissarja sisältää Hadamard-portin, vaihesiirtoportin, CNOT-portin ja π⁄8-portin. Heidän avullaan voit suorittaa minkä tahansa kvanttilaskelman mielivaltaiselle kubittijoukolle.

Tässä artikkelissa emme käsittele yksityiskohtaisesti kvanttiporttijärjestelmää, voit lukea lisää niistä ja loogisista operaatioista kubiteille mm. täällä. Tärkein asia muistaa:

  • Kvanttiobjektien toiminnot edellyttävät uusien loogisten operaattoreiden (kvanttiporttien) luomista
  • Kvanttiportteja on yksi- ja kaksoiskubitin tyyppejä.
  • On olemassa universaaleja porttijoukkoja, joita voidaan käyttää minkä tahansa kvanttilaskennan suorittamiseen

keskinäinen suhde

Yksi transistori on meille täysin hyödytön, jotta voimme tehdä laskelmia, meidän on kytkettävä useita transistoreita toisiinsa, eli luodaan miljoonista transistoreista puolijohdesiru, jolle voidaan rakentaa loogisia piirejä, ALU ja lopulta hanki moderni prosessori klassisessa muodossaan.

Yksi kubitti on myös täysin hyödytön meille (no, jos vain akateemisesti),

laskelmien suorittamiseen tarvitsemme kubittien (kvanttiobjektien) järjestelmän

joka, kuten olemme jo sanoneet, luodaan sotkemalla kubitit toisiinsa niin, että niiden tilojen muutokset tapahtuvat koordinoidusti.

Algoritmit

Ihmiskunnan tähän mennessä keräämät standardialgoritmit ovat täysin sopimattomia kvanttitietokoneella toteutettaviksi. Kyllä, yleensä ei ole tarvetta. Kvanttitietokoneet, jotka perustuvat porttilogiikkaan qubittien yli, vaativat täysin erilaisten algoritmien, kvanttialgoritmien, luomisen. Tunnetuimmista kvanttialgoritmeista voidaan erottaa kolme:

periaate

Ja tärkein ero on toimintaperiaate. Normaalille tietokoneelle tämä on digitaalinen, tiukasti deterministinen periaate, perustuu siihen tosiasiaan, että jos asetamme jonkin järjestelmän alkutilan ja ohjaamme sen tietyn algoritmin läpi, laskelmien tulos on sama riippumatta siitä, kuinka monta kertaa suoritamme tämän laskelman. Itse asiassa tämä käyttäytyminen on juuri sitä, mitä odotamme tietokoneelta.

Kvanttitietokone toimii analoginen, todennäköisyysperiaate. Tietyn algoritmin tulos tietyssä alkutilassa on näyte todennäköisyysjakaumasta algoritmin lopulliset toteutukset sekä mahdolliset virheet.

Tämä kvanttilaskennan probabilistinen luonne johtuu kvanttimaailman erittäin todennäköisyydestä. "Jumala ei leiki noppaa universumin kanssa.", sanoi vanha Einstein, mutta kaikki tähän mennessä tehdyt kokeet ja havainnot (nykyisessä tieteellisessä paradigmassa) vahvistavat päinvastaista.

Kubittien fyysiset toteutukset

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuten olemme jo sanoneet, kubitti voidaan esittää kvanttiobjektilla, eli fyysisellä objektilla, joka toteuttaa edellä kuvatut kvanttiominaisuudet. Eli karkeasti sanottuna mitä tahansa fyysistä objektia, jossa on kaksi tilaa ja nämä kaksi tilaa ovat superpositiotilassa, voidaan käyttää kvanttitietokoneen rakentamiseen.

"Jos voimme laittaa atomin kahdelle eri tasolle ja hallita niitä, sinulla on kubitti. Jos voimme tehdä tämän ionilla, se on kubitti. Sama on virralla. Jos käytämme sitä myötä- ja vastapäivään samaan aikaan, sinulla on kubitti." (C)

On ihana kommentti к статье, jossa qubitin nykyistä fyysisten toteutusten valikoimaa tarkastellaan yksityiskohtaisemmin, luetellaan vain tunnetuimmat ja yleisimmät:

Kaikesta tästä lajikkeesta kehittynein on ensimmäinen menetelmä kubittien saamiseksi, joka perustuu suprajohteet. Google, IBM, Intel ja muut johtavat toimijat käyttävät sitä järjestelmiensä rakentamiseen.

No, lue lisää yleiskatsaus mahdollista fyysiset toteutukset qubits alkaen Andrew Daley, 2014.

Perusasiat. Kuinka kvanttitietokone toimii

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Tämän osan materiaalit (tehtävä ja kuvat) on otettu artikkelista "Vain vaikeista asioista. Miten kvanttitietokone toimii?.

Kuvittele siis, että meillä on seuraava tehtävä:

Siellä on kolmen hengen ryhmä: (A)ndrey, (B)olodya ja (C)erezha. Taksia on kaksi (0 ja 1).

Tiedetään myös, että:

  • (A)ndrey, (B)olodya ovat ystäviä
  • (A)ndrey, (C)erezha ovat vihollisia
  • (B)olodya ja (C)erezha ovat vihollisia

Tehtävä: Sijoita ihmiset takseihin niin Max(ystävät) и Min(viholliset)

arviointi: L = (ystävien määrä) - (vihollisten määrä) jokaiseen majoitusvaihtoehtoon

TÄRKEÄÄ: Olettaen, että heuristiikkaa ei ole, ei ole optimaalista ratkaisua. Tässä tapauksessa ongelma voidaan ratkaista vain etsimällä vaihtoehtoja täydellisesti.

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Ratkaisu tavallisella tietokoneella

Kuinka ratkaista tämä ongelma tavallisessa (super)tietokoneessa (tai klusterissa) - se on selvää sinun täytyy käydä läpi kaikki mahdolliset vaihtoehdot. Jos meillä on moniprosessorijärjestelmä, voimme rinnakkaista ratkaisujen laskemisen useiden prosessorien kesken ja kerätä sitten tulokset.

Meillä on 2 mahdollista majoitusvaihtoehtoa (taksi 0 ja taksi 1) ja 3 henkilöä. Ratkaisutila 2 ^ 3 = 8. Voit jopa käydä läpi 8 vaihtoehtoa laskimella, tämä ei ole ongelma. Tehdään nyt ongelmasta monimutkaisempi - meillä on 20 ihmistä ja kaksi bussia, ratkaisutila 2^20 = 1 048 576. Ei myöskään mitään monimutkaista. Lisätään henkilömäärää 2.5-kertaiseksi - otetaan 50 henkilöä ja kaksi junaa, ratkaisutila on nyt 2^50 = 1.12 x 10^15. Tavallisessa (super)tietokoneessa alkaa jo olla vakavia ongelmia. Kasvatetaan ihmisten määrää 2 kertaa, 100 henkilöä antaa jo meille 1.2 x 10^30 mahdollisia vaihtoehtoja.

Siinä se, tätä tehtävää ei voida laskea kohtuullisessa ajassa.

Supertietokoneen yhdistäminen

Tällä hetkellä tehokkain tietokone on ykkönen Top500Se Huippukokous, tuottavuus 122 Pflops. Oletetaan, että tarvitsemme 100 operaatiota yhden vaihtoehdon laskemiseen, sitten 100 ihmisen ongelman ratkaisemiseksi tarvitsemme:

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

Kuten näemme lähtötiedon ulottuvuuden kasvaessa ratkaisuavaruus kasvaa potenssilain mukaan, yleisessä tapauksessa N bitille meillä on 2^N mahdollista ratkaisuvaihtoehtoa, jotka suhteellisen pienelle N:lle (100) antavat meille laskemattoman (nykyisellä teknologisella tasolla) ratkaisuavaruuden.

Onko vaihtoehtoja? Kuten ehkä arvasit, kyllä, on.

Mutta ennen kuin käsittelemme sitä, kuinka ja miksi kvanttitietokoneet voivat tehokkaasti ratkaista tällaisia ​​​​ongelmia, kerrotaanpa hetki, mitä ne ovat. todennäköisyysjakauma. Älä huolestu, tämä on katsausartikkeli, täällä ei tule olemaan kovaa matematiikkaa, vaan pärjäämme klassisella esimerkillä pussilla ja palloilla.

Vain vähän kombinatoriikkaa, todennäköisyysteoriaa ja outoa kokeilijaa

Otetaan pussi ja laitetaan se siihen 1000 valkoista ja 1000 mustaa palloa. Suoritamme kokeen - ota pallo pois, kirjoita väri ylös, palauta pallo pussiin ja sekoita pallot pussiin.

Koe suoritettiin 10 kertaa, veti ulos 10 mustaa palloa. Voi olla? Melko. Antaako tämä näyte meille mitään järkevää käsitystä pussin todellisesta jakautumisesta? Ilmiselvästi ei. Mitä on tehtävä - oikein, stoista koe miljoona kertaa ja laske mustien ja valkoisten pallojen taajuudet. Me saamme esim 49.95% mustaa ja 50.05% valkoista. Tässä tapauksessa sen jakauman rakenne, josta näytämme (otamme yhden pallon), on jo enemmän tai vähemmän selvä.

Pääasia on ymmärtää se itse kokeella on todennäköisyyspohjainen luonne, yhdellä näytteellä (pallolla) emme tiedä jakauman todellista rakennetta, meidän on toistettava koe monta kertaa ja tulosten keskiarvo.

Lisätään se laukkuun 10 punaista ja 10 vihreää palloa (virheet). Toistetaan koe 10 kertaa. SISÄÄNvedetty ulos 5 punaista ja 5 vihreää. Voi olla? Joo. Voimme sanoa jotain todellisesta jakelusta - Ei. Mitä on tehtävä - no, ymmärrät.

Todennäköisyysjakauman rakenteen ymmärtämiseksi on tarpeen ottaa toistuvasti näyte yksittäisistä tuloksista tästä jakaumasta ja laskea tuloksista.

Teorian yhdistäminen käytäntöön

Otetaan nyt mustien ja valkoisten pallojen sijaan biljardipallot ja laitetaan ne pussiin 1000 palloa numerolla 2, 1000 numerolla 7 ja 10 palloa muilla numeroilla. Kuvitellaanpa kokeilijaa, joka on koulutettu yksinkertaisimpiin toimiin (ottaa pallo esiin, kirjoittaa numero ylös, laittaa pallon takaisin pussiin, sekoittaa pallot pussiin) ja hän tekee tämän 150 mikrosekunnissa. No, sellainen nopeuden kokeilija (ei huumemainos!!!). Sitten 150 sekunnissa hän pystyy suorittamaan kokeilumme miljoona kertaa ja antaa meille keskimääräiset tulokset.

He istuttivat kokeen, antoivat hänelle pussin, kääntyivät pois, odottivat 150 sekuntia ja vastaanottivat:

numero 2 - 49.5%, numero 7 - 49.5%, loput luvut yhteensä - 1%.

Kyllä se on oikein, laukkumme on kvanttitietokone, jonka algoritmi ratkaisee ongelmamme, ja pallot ovat mahdollisia ratkaisuja. Koska on olemassa kaksi oikeaa ratkaisua kvanttitietokone antaa meille minkä tahansa näistä mahdollisista ratkaisuista yhtä todennäköisyydellä ja 0.5 % (10/2000) virheitä, josta puhumme myöhemmin.

Saadaksesi kvanttitietokoneen tuloksen, sinun on suoritettava kvanttialgoritmi useita kertoja samalla syöttötietojoukolla ja laskettava tuloksen keskiarvo.

Kvanttitietokoneen skaalautuvuus

Kuvittele nyt, että tehtävässä, jossa on 100 henkilöä (ratkaisutila 2^100 muistamme tämän), on myös vain kaksi oikeaa päätöstä. Sitten, jos otamme 100 kubittia ja kirjoitamme algoritmin, joka laskee tavoitefunktiomme (L, katso yllä) näiden kubittien päälle, niin saamme pussin, jossa on 1000 palloa ensimmäisen oikean vastauksen numerolla, 1000 toisen oikean vastauksen numero ja 10 palloa muilla numeroilla. Ja saman 150 sekunnin sisällä kokeilijamme antaa meille arvion oikeiden vastausten todennäköisyysjakaumasta.

Kvanttialgoritmin suoritusaikaa (joillakin oletuksilla) voidaan pitää vakiona O(1) suhteessa ratkaisuavaruuden (2^N) ulottuvuuteen.

Ja tämä on juuri kvanttitietokoneen ominaisuus - ajonaikainen vakioisuus suhteessa kasvavaan teholain monimutkaisuuteen ratkaisuavaruus on avain.

Qubit ja rinnakkaismaailmat

Miten tämä tapahtuu? Mikä sallii kvanttitietokoneen suorittaa laskelmia niin nopeasti? Kyse on kubitin kvanttiluonteesta.

Sanoimme, että kubitti on kuin kvanttiobjekti havaitsee toisen kahdesta tilastaan, mutta "villissä luonnossa" se on mukana tilojen superpositiot, eli se on molemmissa rajatiloissaan samanaikaisesti (jollakin todennäköisyydellä).

ottaa (A)ndreya ja kuvittele sen tila (missä ajoneuvossa se on - 0 tai 1) kubitiksi. Sitten meillä on (kvanttiavaruudessa) kaksi rinnakkaista maailmaa, yhdessä (A) istuu taksissa 0, toisessa maailmassa - taksissa 1. Kahdessa taksissa samaan aikaan, mutta jollain todennäköisyydellä löytää se jokaisesta havainnon aikana.

ottaa (B) nuori ja kuvitellaan myös sen tila kubitiksi. Kaksi muuta rinnakkaista maailmaa syntyy. Mutta nyt nämä maailmojen parit (A) и (SISÄÄN) älä ole vuorovaikutuksessa ollenkaan. Mitä on tehtävä luomiseksi liittyvät järjestelmä? Aivan oikein, me tarvitsemme näitä kubitteja sitoa (sekoittaa). Otamme sen ja sekoitamme sen (A) ja (B) - Saamme kahden kubitin kvanttijärjestelmän (A, B), oivaltaa itsessään neljä toisistaan ​​riippuvaisia rinnakkaisia ​​maailmoja. Lisätä (S)ergey ja saamme kolmen kubitin järjestelmän (ABC), toteuttaa kahdeksan toisistaan ​​riippuvaisia rinnakkaisia ​​maailmoja.

Kvanttilaskennan (kvanttiporttien ketjun toteuttaminen yhdistettyjen kubittien järjestelmän yli) ydin on se, että laskenta tapahtuu kaikissa rinnakkaisissa maailmoissa samanaikaisesti.

Ja sillä ei ole väliä kuinka monta niitä meillä on, 2^3 vai 2^100, kvanttialgoritmi suoritetaan äärellisessä ajassa kaikissa näissä rinnakkaisissa maailmoissa ja antaa meille tuloksen, joka on esimerkki algoritmin vastausten todennäköisyysjakaumasta.

Paremman ymmärtämisen vuoksi sen voi kuvitella kvanttitietokone kvanttitasolla ajaa 2^N rinnakkaista ratkaisuprosessia, joista jokainen työskentelee yhden mahdollisen vaihtoehdon parissa ja kerää sitten työn tulokset - ja antaa meille vastauksen ratkaisun superposition muodossa (vastausten todennäköisyysjakauma), josta otamme yhden näytteen joka kerta (jokaiselle kokeelle).

Muista kokeilijamme vaatima aika (150 µs) Kokeen suorittamiseksi tästä on meille hyötyä hieman pidemmälle, kun puhumme kvanttitietokoneiden pääongelmista ja dekoherenssiajasta.

Kvanttialgoritmit

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuten jo mainittiin, perinteiset binäärilogiikkaan perustuvat algoritmit eivät sovellu kvanttilogiikkaa käyttävään kvanttitietokoneeseen (kvanttiportit). Hänelle oli välttämätöntä keksiä uusia, jotka hyödynsivät täysin laskennan kvanttiluonteen potentiaalia.

Nykyään tunnetuimmat algoritmit ovat:

Toisin kuin klassiset, kvanttitietokoneet eivät ole universaaleja.
Tähän mennessä on löydetty vain pieni määrä kvanttialgoritmeja.(C)

Kiitos oksoroni linkin vuoksi Kvanttialgoritmin eläintarha, paikka, jossa kirjoittajan mukaan ("Stephen Jordan"), kvanttialgoritmisen maailman parhaat edustajat on kerätty ja kerääntyy edelleen.

Tässä artikkelissa emme analysoi kvanttialgoritmeja yksityiskohtaisesti; Internetissä on paljon erinomaisia ​​materiaaleja mille tahansa monimutkaisuuden tasolle, mutta meidän on silti käydä lyhyesti läpi kolme tunnetuinta.

Shorin algoritmi.

(sisältöön)

Tunnetuin kvanttialgoritmi on Shorin algoritmi (keksi englantilainen matemaatikko vuonna 1994 Peter Shore), jonka tarkoituksena on ratkaista lukujen tekijöiden muodostaminen alkutekijöiksi (faktorointiongelma, diskreetti logaritmi).

Juuri tämä algoritmi mainitaan esimerkkinä, kun he kirjoittavat, että pankkijärjestelmäsi ja salasanasi hakkeroidaan pian. Ottaen huomioon, että nykyään käytettävien näppäinten pituus on vähintään 2048 bittiä, capin aika ei ole vielä tullut.

Tähän päivään mennessä tulokset enemmän kuin vaatimaton. Parhaat faktorointitulokset Shorin algoritmilla - Numerot 15 и 21, mikä on paljon vähemmän kuin 2048 bittiä. Taulukon jäljellä oleville tuloksille erilainen algoritmi laskelmia, mutta tämän algoritmin paras tulos (291311) on hyvin kaukana todellisesta sovelluksesta.

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Voit lukea lisää Shorin algoritmista mm. täällä. Tietoja käytännön toteutuksesta - täällä.

Yksi tämänhetkiset arviot monimutkaisuus ja tarvittava teho 2048-bittisen luvun kertomiseen on tietokone, jossa on 20 miljoonaa kubittia. Nukumme rauhassa.

Groverin algoritmi

(sisältöön)

Groverin algoritmi - kvanttialgoritmi laskentatehtävän ratkaiseminen, eli ratkaisun löytäminen yhtälöön F(X) = 1, missä F on boolen funktio alkaen n muuttujia. Sen ehdotti amerikkalainen matemaatikko Kalastus Grover в 1996 vuosi.

Groverin algoritmia voidaan käyttää etsimiseen mediaanit и aritmeettinen keskiarvo numerosarja. Lisäksi sitä voidaan käyttää ratkaisemaan NP-täydellinen ongelmiin kattavan haun avulla monien mahdollisten ratkaisujen joukosta. Tämä voi aiheuttaa merkittäviä nopeushyötyjä klassisiin algoritmeihin verrattuna, vaikkakaan ilman "polynomiratkaisu" yleisesti.(C)

Voit lukea lisää täälläTai täällä. lisää täällä Algoritmista on hyvä selitys laatikoiden ja pallon esimerkillä, mutta valitettavasti tämä sivusto ei aukea minulle kenestäkään riippumattomista syistä Venäjältä. Jos sinulla on tällä sivustolla on myös estetty, joten tässä lyhyt yhteenveto:

Groverin algoritmi. Kuvittele, että sinulla on N kappaletta numeroituja suljettuja laatikoita. Ne ovat kaikki tyhjiä paitsi yksi, joka sisältää pallon. Tehtäväsi: selvitä sen laatikon numero, jossa pallo sijaitsee (tätä tuntematonta numeroa merkitään usein kirjaimella w).
Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuinka ratkaista tämä ongelma? Tyhmin tapa on avata laatikoita vuorotellen, ja ennemmin tai myöhemmin törmäät laatikkoon, jossa on pallo. Kuinka monta laatikkoa keskimäärin pitää tarkistaa ennen kuin pallollinen laatikko löytyy? Keskimäärin sinun on avattava noin puolet N/2-laatikoista. Tärkeintä tässä on, että jos lisäämme laatikoiden määrää 100-kertaiseksi, niin myös keskimääräinen laatikoiden lukumäärä, jotka on avattava ennen kuin pallo löytyy, kasvaa samalla 100-kertaiseksi.

Tehdään nyt vielä yksi selvennys. Älkäämme avaako laatikoita itse käsillämme ja tarkistakaamme pallon läsnäoloa jokaisessa, vaan siellä on tietty välittäjä, kutsukaamme häntä Oracleksi. Kerromme Oraclelle: "valintaruutu numero 732", ja Oracle tarkistaa rehellisesti ja vastaa: "laatikossa numero 732 ei ole palloa." Sen sijaan, että sanomme, kuinka monta laatikkoa meidän on keskimäärin avattava, sanomme "kuinka monta kertaa keskimäärin meidän pitäisi mennä Oraakkeliin löytääksemme pallon sisältävän laatikon numeron"

Osoittautuu, että jos käännämme tämän ongelman laatikoilla, pallolla ja Oraakkelilla kvanttikieleksi, saamme huomattavan tuloksen: löytääksemme pallolla varustetun laatikon numeron N laatikon joukosta, meidän täytyy häiritä Oraclea vain noin SQRT: stä. (N) kertaa!

Toisin sanoen Groverin algoritmia käyttävän hakutehtävän monimutkaisuus vähenee kertaan neliöjuurella.

Deutsch-Jozi algoritmi

(sisältöön)

Deutsch-Jozsa-algoritmi (kutsutaan myös nimellä Deutsch-Jozsa-algoritmi) - [kvanttialgoritmi](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 в 1992 vuosi, ja siitä tuli yksi ensimmäisistä esimerkeistä algoritmeista, jotka on suunniteltu suoritettavaksi kvanttitietokoneet. _

Deutsch-Jozsin ongelman tarkoituksena on määrittää, onko useiden binäärimuuttujien F(x1, x2, ... xn) funktio vakio (ottaa joko arvon 0 tai 1 kaikille argumenteille) vai tasapainoinen (puolet toimialueesta arvo 0, toiselle puolikkaalle 1). Tässä tapauksessa katsotaan etukäteen tiedoksi, että funktio on joko vakio tai balansoitu. (C)

Lisää voi lukea täällä. Yksinkertaisempi selitys:

Deutsch (Deutsch-Jozsi) -algoritmi perustuu raakaan voimaan, mutta mahdollistaa sen tekemisen tavallista nopeammin. Kuvittele, että pöydällä on kolikko ja sinun on selvitettävä, onko se väärennös vai ei. Tätä varten sinun on katsottava kolikkoa kahdesti ja määritettävä: "päät" ja "hännät" ovat todellisia, kaksi "päätä", kaksi "häntä" ovat väärennettyjä. Joten jos käytät Deutschin kvanttialgoritmia, tämä määritys voidaan tehdä yhdellä silmäyksellä - mittauksella. (C)

Kvanttitietokoneiden ongelmat

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kvanttitietokoneita suunniteltaessa ja käytettäessä tiedemiehet ja insinöörit kohtaavat valtavan määrän ongelmia, joita on tähän mennessä ratkaistu vaihtelevalla menestyksellä. Mukaan tutkiminen (ja myös täällä) voidaan tunnistaa seuraavat ongelmat:

  • Herkkyys ympäristölle ja vuorovaikutus ympäristön kanssa
  • Virheiden kertyminen laskelmien aikana
  • Vaikeudet qubit-tilojen alustamisessa
  • Vaikeuksia monikubitisten järjestelmien luomisessa

Suosittelen lukemaan artikkelin "Kvanttitietokoneiden ominaisuudet”, varsinkin sen kommentit.

Järjestetään kaikki pääongelmat kolmeen suureen ryhmään ja tarkastellaan kutakin niistä lähemmin:

Epäkoherenssi

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuvaus N+1:stä.

Kvanttitila erittäin hauras asiasotkeutuneessa tilassa olevat kubitit ovat erittäin epävakaita, mikä tahansa ulkoinen vaikutus voi (ja tuhoaa) tämän yhteyden. Lämpötilan muutos asteen pienimmällä murto-osalla, paine, lähellä lentävä satunnainen fotoni - kaikki tämä horjuttaa järjestelmäämme.

Tämän ongelman ratkaisemiseksi rakennetaan matalan lämpötilan sarkofageja, joissa lämpötila (-273.14 celsiusastetta) on hieman yli absoluuttisen nollan, ja prosessorin sisäinen kammio on eristetty maksimaalisesti kaikista (mahdollisista) ulkoisen ympäristön vaikutuksista.

Useista kietoutuneista kubiteista koostuvan kvanttijärjestelmän enimmäiselinaikaa, jonka aikana se säilyttää kvanttiominaisuutensa ja jota voidaan käyttää laskelmiin, kutsutaan dekoherenssiajaksi.

Tällä hetkellä parhaiden kvanttiratkaisujen dekoherenssiaika on luokkaa kymmeniä ja satoja mikrosekunteja.

Siellä on upea сайтmistä voi katsoa parametrien vertailutaulukot kaikista luoduista kvanttijärjestelmistä. Tämä artikkeli sisältää vain kaksi huippusuoritinta esimerkkinä - IBM:ltä IBM Q System One Ja vuodesta Google Sycamore. Kuten näemme, dekoherenssiaika (T2) ei ylitä 200 μs.

En löytänyt tarkkoja tietoja Sycamoresta, mutta useimmista artikkeli kvanttiylivallasta kaksi numeroa annetaan - Miljoona laskutoimitusta 1 sekunnissa, toisessa paikassa - varten 130 sekuntia ilman ohjaussignaalien menetystä jne.. Joka tapauksessa tämä antaa meille dekoherenssiaika on noin 150 μs. Muista meidän kokeilija pussin kanssa? No, tässä hän on.

tietokone Name N Qubits Max paritettu T2 (µs)
IBM Q System One 20 6 70
Google Sycamore 53 4 ~ 150-200

Millä dekoherenssi uhkaa meitä?

Suurin ongelma on, että 150 μs:n jälkeen N:n kietoutuvan kubitin laskentajärjestelmämme alkaa tuottaa todennäköisyyttä valkoista kohinaa oikeiden ratkaisujen todennäköisyysjakauman sijaan.

Eli tarvitsemme:

  • Alusta qubit-järjestelmä
  • Suorita laskelma (porttitoimintojen ketju)
  • Lue tulos

Ja tee kaikki tämä 150 mikrosekunnissa. Minulla ei ollut aikaa - tuloksesta tuli kurpitsa.

Mutta ei siinä kaikki…

Virheitä

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kuten sanoimme, kvanttiprosessit ja kvanttilaskenta ovat luonteeltaan todennäköisyyspohjaisia, emme voi olla 100 % varmoja mistään, mutta vain jollain todennäköisyydellä. Tilannetta pahentaa entisestään se, että kvanttilaskenta on virhealtista. Kvanttilaskennan tärkeimmät virhetyypit ovat:

  • Dekoherenssivirheet johtuvat järjestelmän monimutkaisuudesta ja vuorovaikutuksesta ulkoisen ympäristön kanssa
  • Portin laskentavirheet (laskennan kvanttiluonteesta johtuen)
  • Virheet lopullisen tilan lukemisessa (tulos)

Epäkoherenssiin liittyvät virheet, ilmestyvät heti, kun sotkemme kubitimme ja alamme tehdä laskelmia. Mitä enemmän kubitteja sotkemme, sitä monimutkaisempi järjestelmä on, ja sitä helpompi se on tuhota. Matalan lämpötilan sarkofagit, suojatut kammiot, kaikki nämä tekniset temput on tarkoitettu juuri virheiden vähentämiseen ja dekoherenssiajan pidentämiseen.

Portin laskentavirheet - mikä tahansa operaatio (portti) kubiteille voi jollain todennäköisyydellä päättyä virheeseen, ja algoritmin toteuttamiseksi meidän on suoritettava satoja portteja, joten kuvittele mitä saamme algoritmimme suorituksen lopussa. Klassinen vastaus kysymykseen on "Millä todennäköisyydellä kohdataan dinosaurus hississä?" - 50x50, joko tapaat tai et.

Ongelman pahentamiseksi normaalit virheenkorjausmenetelmät (laskentojen päällekkäisyys ja keskiarvo) eivät toimi kvanttimaailmassa ei-kloonauslauseen vuoksi. varten virheen korjaus kvanttilaskenta piti keksiä kvanttikorjausmenetelmät. Karkeasti ottaen otamme N tavallista kubittia ja teemme niistä yhden looginen qubit pienemmällä virheprosentilla.

Mutta tässä syntyy toinen ongelma - kubittien kokonaismäärä. Oletetaan, että meillä on prosessori, jossa on 100 kubittia, joista 80 kubittia käytetään virheenkorjaukseen, niin meillä on vain 20 jäljellä laskelmia varten.

Virheitä lopputuloksen lukemisessa — kuten muistamme, kvanttilaskelmien tulos esitetään meille muodossa vastausten todennäköisyysjakauma. Mutta lopullisen tilan lukeminen voi myös epäonnistua virheen vuoksi.

Samalla Online Prosessoreista on vertailutaulukoita virhetasoittain. Otetaan vertailuksi samat prosessorit kuin edellisessä esimerkissä - IBM IBM Q System One и Google Sycamore:

tietokonetta 1-Qubit Gate Fidelity 2-Qubit Gate Fidelity Readout Fidelity
IBM Q System One 99.96% 98.31% -
Google Sycamore 99.84% 99.38% 96.2%

Täällä uskollisuus on kahden kvanttitilan samankaltaisuuden mitta. Virheen suuruus voidaan ilmaista karkeasti 1-tarkkuudella. Kuten näemme, virheet 2-kubitisissa porteissa ja lukuvirheet ovat suurin este monimutkaisten ja pitkien algoritmien suorittamiselle olemassa olevissa kvanttitietokoneissa.

Lisää voi lukea tiekartta vuodelta 2016 vuoden päästä NQIT ratkaisemaan virheenkorjausongelman.

Prosessorin arkkitehtuuri

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Teoriassa rakennamme ja toimimme kymmenien kietoutuneiden kubittien piirit, todellisuudessa kaikki on monimutkaisempaa. Kaikki olemassa olevat kvanttisirut (prosessorit) on rakennettu siten, että ne tarjoavat kivuttomia yhden kubitin sotkeutuminen vain naapureihinsa, joita on enintään kuusi.

Jos meidän on sotkettava ensimmäinen kubitti esimerkiksi 1:een, meidän on rakentaa ylimääräisten kvanttioperaatioiden ketju, sisältävät lisäkubitteja jne., mikä lisää yleistä virhetasoa. Kyllä, ja älä unohda dekoherenssiaika, ehkä siihen mennessä kun olet yhdistänyt qubitit tarvitsemaasi piiriin, aika loppuu ja koko piiri muuttuu hieno valkoisen kohinan generaattori.

Älä myöskään unohda sitä Kaikkien kvanttiprosessorien arkkitehtuuri on erilainen, ja emulaattorissa "all-to-all-yhteys"-tilassa kirjoitettu ohjelma on "käännettävä uudelleen" tietyn sirun arkkitehtuuriin. Niitä on jopa erityiset optimointiohjelmat suorittaaksesi tämän toiminnon.

Maksimiyhteys ja kubittien enimmäismäärä samoilla huippusiruilla:

tietokone Name N Qubits Max paritettu T2 (µs)
IBM Q System One 20 6 70
Google Sycamore 53 4 ~ 150-200

Ja vertailun vuoksi taulukko, jossa on tiedot edellisen sukupolven prosessoreista. Vertaa kubittien määrää, dekoherenssiaikaa ja virhesuhdetta siihen, mitä meillä on nyt uuden sukupolven kanssa. Edistyminen on kuitenkin hidasta, mutta liikkuvaa.

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Joten:

  • Tällä hetkellä ei ole olemassa täysin yhdistettyjä arkkitehtuureja, joissa on > 6 kubittiä
  • Esimerkiksi kubitin 0 sotkeminen todelliseen prosessoriin kubitti 15 voi vaatia useita kymmeniä lisätoimintoja
  • Enemmän operaatioita -> enemmän virheitä -> voimakkaampi dekoherenssivaikutus

Tulokset

(sisältöön)

Dekoherenssi on nykyaikaisen kvanttilaskennan Prokrustelainen perusta. Meidän on sovitettava kaikki 150 μs: iin:

  • Kubittien alkutilan alustus
  • Ongelman laskeminen kvanttiporttien avulla
  • Korjaa virheet saadaksesi merkityksellisiä tuloksia
  • Lue tulos

Toistaiseksi tulokset ovat kuitenkin pettymys täällä väittävät saavuttavansa 0.5 s koherenssin säilytysajan kvanttitietokoneella ioniloukut:

Mittaamme kubitin koherenssiaikaa yli 0.5 s, ja magneettisuojauksella odotamme tämän paranevan yli 1000 s

Voit myös lukea tästä tekniikasta täällä tai esimerkiksi täällä.

Tilannetta vaikeuttaa entisestään se, että monimutkaisia ​​laskelmia suoritettaessa on tarpeen käyttää kvanttivirheenkorjauspiirejä, mikä myös syö sekä aikaa että käytettävissä olevia kubitteja.

Ja lopuksi, nykyaikaiset arkkitehtuurit eivät salli sotkeutumissuunnitelmien toteuttamista paremmin kuin 1:4 tai 1:6 minimaalisin kustannuksin.

Ongelmanratkaisukeinot

(sisältöön)

Yllä olevien ongelmien ratkaisemiseksi käytetään tällä hetkellä seuraavia lähestymistapoja ja menetelmiä:

  • Kryokammioiden käyttäminen alhaisissa lämpötiloissa (10 mK (–273,14 °C))
  • Käytä prosessoriyksiköitä, jotka ovat mahdollisimman suojattuja ulkoisilta vaikutuksilta
  • Kvanttivirheenkorjausjärjestelmien käyttäminen (Logic Qubit)
  • Optimoijien käyttö ohjelmoitaessa piirejä tietylle prosessorille

Tutkimuksia tehdään myös dekoherenssiajan pidentämiseen, kvanttiobjektien uusien (ja tunnettujen) fyysisten toteutusten etsimiseen, korjauspiirien optimointiin jne., jne. Edistystä on tapahtunut (katso ylhäältä aikaisempien ja nykyisten huippuluokan pelimerkkien ominaisuuksia), mutta toistaiseksi se on hidasta, erittäin, hyvin hidasta.

D-Wave

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

D-Wave 2000Q 2000 qubit tietokone. Lähde: D-Wave Systems

Keskellä Googlen ilmoitusta kvanttiylivallan saavuttamisesta 53 kubitin prosessorilla, tietokoneet и ilmoituksia D-Wave-yhtiöltä, jossa kubittien määrä on tuhansia, on hieman hämmentävää. No, todellakin, jos 53 kubittia pystyivät saavuttamaan kvanttiylivallan, niin mihin tietokone, jossa on 2048 kubittia, pystyy? Mutta kaikki ei ole niin hyvin...

Lyhyesti (otettu wikistä):

Tietokoneet D-Wave työskennellä periaatteella kvanttirelaksaatio (kvanttihehkutus), voivat ratkaista hyvin rajoitetun alaluokan optimointiongelmia, eivätkä ne sovellu perinteisten kvanttialgoritmien ja kvanttiporttien toteuttamiseen.

Tarkemmat tiedot voit lukea esim. täällä, täällä (varo, ei välttämättä avaudu Venäjältä), tai Scott Aaronson в статье hänen blogiviesti. Suosittelen muuten lämpimästi hänen bloginsa lukemista yleisesti, siellä on paljon hyvää materiaalia

Yleisesti ottaen tiedeyhteisöllä oli ilmoitusten alusta lähtien kysymyksiä D-Wave-tietokoneista. Esimerkiksi vuonna 2014 IBM kyseenalaisti sen tosiasian, että D-Wave käyttää kvanttiefektejä. Asia meni siihen pisteeseen, että vuonna 2015 Google osti yhdessä NASAn kanssa yhden näistä kvanttitietokoneista ja tutkimuksen jälkeen vahvistettu, että kyllä, tietokone toimii ja laskee ongelman tavallista nopeammin. Voit lukea lisää Googlen lausunnosta täällä ja esimerkiksi täällä.

Pääasia on, että D-Wave-tietokoneita, niiden satoja ja tuhansia kubitteja, ei voida käyttää kvanttialgoritmien laskemiseen ja suorittamiseen. Et voi ajaa niillä esimerkiksi Shorin algoritmia. He voivat vain käyttää tiettyjä kvanttimekanismeja tietyn optimointiongelman ratkaisemiseen. Voimme ajatella, että D-Wave on kvantti-ASIC tietylle tehtävälle.

Hieman kvanttitietokoneemulaatiosta

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kvanttilaskentaa voidaan emuloida tavallisella tietokoneella. Todellakin, katso:

  • Kubitin tila voi olla esittää kompleksiluku, vie 2x32 - 2x64 bittiä (8-16 tavua) prosessorin arkkitehtuurista riippuen
  • N:n yhdistetyn kubitin tila voidaan esittää 2^N kompleksilukuna, ts. 2^(3+N) 32-bittiselle arkkitehtuurille ja 2^(4+N) 64-bittiselle.
  • Kvanttioperaatio N kubitillä voidaan esittää 2^N x 2^N matriisilla

sitten:

  • 10 kubitin emuloitujen tilojen tallentamiseen tarvitaan 8 kt
  • 20 kubitin tilojen tallentamiseen tarvitset 8 Mt
  • 30 kubitin tilojen tallentamiseen tarvitaan 8 Gt
  • 40 kubitin tilojen tallentamiseen tarvitaan 8 teratavua
  • 50 kubitin tilojen tallentamiseen tarvitaan 8 petatavua jne.

(C)

Vertailun vuoksi: Huippukokous (Top-1 Top-500:sta) sisältää vain 2.8 petatavua muistia.

Nykyinen simulaatioennätys — 49 qubit toimitettiin viime vuonna Kiinan suurimmalle supertietokoneelle (Sunway Taihu Light)

Kvanttitietokoneen simuloinnin raja klassisissa järjestelmissä määräytyy kubittien tilan tallentamiseen tarvittavan RAM-muistin määrän mukaan.

Suosittelen myös lukemista tämä kommentti. Sieltä:

Toiminnan avulla - 49 qubitin piirin tarkkaan emulointiin, joka koostuu noin 39 "jaksosta" (itsenäiset porttikerrokset) se otti 2^63 monimutkaista kertolaskua - 4 Pflopsia supertietokoneesta 4 tunnin ajan

Yli 50 kubitin kvanttitietokoneen emulointi klassisissa järjestelmissä katsotaan mahdottomaksi kohtuullisessa ajassa. Tästä syystä Google käytti 53 kubitin prosessoria kvanttiylivaltakokeilussaan.

Kvanttilaskennan ylivalta.

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Wikipedia antaa meille seuraavan määritelmän kvanttilaskennan ylivallasta:

Kvanttiylivalta - kyky kvanttilaskenta laitteet ratkaisemaan ongelmia, joita perinteiset tietokoneet eivät käytännössä pysty ratkaisemaan.

Itse asiassa kvanttiylivallan saavuttaminen tarkoittaa sitä, että esimerkiksi suurten lukujen tekijöihin jakaminen Shor-algoritmilla voidaan ratkaista riittävässä ajassa tai monimutkaisia ​​kemiallisia molekyylejä voidaan emuloida kvanttitasolla ja niin edelleen. Eli uusi aikakausi on saapunut.

Mutta määritelmän sanamuodossa on porsaanreikä, "joita perinteiset tietokoneet eivät käytännössä pysty ratkaisemaan" Itse asiassa tämä tarkoittaa, että jos luot yli 50 kubitin kvanttitietokoneen ja käytät siinä jonkin kvanttipiirin, niin, kuten edellä keskustelimme, tämän piirin tulosta ei voida emuloida tavallisella tietokoneella. Tuo on klassinen tietokone ei pysty luomaan uudelleen sellaisen piirin tulosta.

Se, muodostaako tällainen tulos todellisen kvanttiylivallan vai ei, on pikemminkin filosofinen kysymys. Mutta ymmärrä, mitä Google teki ja mihin se perustuu ilmoitti äskettäin saavuttaneensa kvanttiylivallan uudella Sycamore-prosessorilla tarpeellista.

Googlen Quantum Supremacy Statement

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen
Sycamore 54 qubit prosessori

Joten lokakuussa 2019 Googlen kehittäjät julkaisivat artikkelin tieteellisessä julkaisussa Nature "Kvanttiylivalta ohjelmoitavalla suprajohtavalla prosessorilla" Kirjoittajat ilmoittivat saavuttaneensa kvanttiylivallan ensimmäistä kertaa historiassa käyttämällä 54 qubit Sycamore-prosessoria.

Sycamore-artikkeleissa verkossa viitataan usein joko 54-kubitiseen tai 53-kubitiseen prosessoriin. Totuus on, että sen mukaan alkuperäinen artikkeli, prosessori koostuu fyysisesti 54 kubitista, mutta yksi niistä ei toimi ja on poistettu käytöstä. Siten todellisuudessa meillä on 53 qubit prosessori.

Siellä netissä ilmestyi monet materiaalia tästä aiheesta, joiden aste vaihteli innostunut до skeptinen.

IBM:n kvanttilaskentatiimi totesi myöhemmin tämän Google raportoi virheellisesti saavuttavansa kvanttiylivallan. Yhtiö väittää, että perinteinen tietokone selviytyy tästä tehtävästä pahimmillaan 2,5 päivässä ja tuloksena oleva vastaus on tarkempi kuin kvanttitietokone. Tämä johtopäätös tehtiin useiden optimointimenetelmien teoreettisen analyysin tulosten perusteella.

Ja tietenkin, Scott Aaronson hänen blogin viesti En voinut sivuuttaa tätä lausuntoa. Hänen analyysi sekä kaikki linkit ja Scottin Supreme Quantum Supremacy UKK! kuten tavallista, niihin kannattaa käyttää aikaa. Keskittimessä on käännös Tässä FAQ:ssa ja muista lukea kommentit, siellä on linkkejä alustaviin asiakirjoihin, jotka vuotivat verkossa ennen virallista ilmoitusta.

Mitä Google oikeastaan ​​teki? Yksityiskohtaista ymmärrystä varten lue Aaronson, mutta lyhyesti tästä:

Voin tietysti kertoa, mutta tunnen itseni melko tyhmäksi. Laskenta on seuraava: kokeilija generoi satunnaisen kvanttipiirin C (eli satunnaisen 1-kubitin ja 2-kubitin porttien sarjan lähimpien naapureiden välillä, jonka syvyys on esimerkiksi 20 ja joka vaikuttaa n:n 2D-verkkoon = 50-60 qubit). Tämän jälkeen kokeilija lähettää C:n kvanttitietokoneelle ja pyytää sitä soveltamaan C:n alkutilaan 0, mittaamaan tuloksen {0,1}-perusteella, lähettämään takaisin n-bittisen havaitun sekvenssin (merkkijonon) ja toistamaan useita tuhat tai miljoonia kertoja. Lopuksi kokeen suorittaja käyttää C-tietoaan ja suorittaa tilastollisen testin nähdäkseen, vastaako tulos kvanttitietokoneen odotettua tulosta.

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Hyvin lyhyesti:

  • Porttien avulla luodaan satunnainen piiri, jonka pituus on 20 ja 53 kubittia
  • Piiri alkaa suorituksen alkutilasta [0…0]
  • Piirin lähtö on satunnainen bittijono (näyte)
  • Tuloksen jakauma ei ole satunnainen (häiriö)
  • Saatujen näytteiden jakautumista verrataan odotettuun
  • Quantum Supremacy päättää

Toisin sanoen Google toteutti synteettisen ongelman 53 kubitin prosessoriin ja perustaa vaatimuksensa kvanttien ylivallan saavuttamisesta siihen tosiasiaan, että tällaista prosessoria on mahdoton jäljitellä standardijärjestelmissä kohtuullisessa ajassa.

Ymmärryksen vuoksi - Tämä osio ei millään tavalla vähennä Googlen saavutusta, insinöörit ovat todella mahtavia, ja kysymys siitä, voidaanko tätä pitää todellisena kvanttiylivoimana vai ei, kuten aiemmin mainittiin, on enemmän filosofinen kuin suunnittelu. Mutta meidän on ymmärrettävä, että saavutettuamme tällaisen laskennallisen paremmuuden emme ole edenneet askeltakaan kohti kykyä ajaa Shorin algoritmia 2048-bittisillä luvuilla.

Yhteenveto

(sisältöön)
Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Kvanttitietokoneet ja kvanttilaskenta ovat erittäin lupaava, hyvin nuori ja toistaiseksi vähän teollisesti käyttökelpoinen tietotekniikan alue.

Kvanttilaskennan kehitys antaa meille (jona päivänä) mahdollisuuden ratkaista ongelmia:

  • Monimutkaisten fyysisten järjestelmien mallintaminen kvanttitasolla
  • Ratkaisematon tavallisella tietokoneella laskennan monimutkaisuuden vuoksi

Tärkeimmät ongelmat kvanttitietokoneiden luomisessa ja käytössä:

  • Epäkoherenssi
  • Virheet (epäkoherenssi ja portti)
  • Prosessorin arkkitehtuuri (täysin kytketyt qubit-piirit)

Tämänhetkinen tilanne:

  • Itse asiassa - aivan alussa T & K-.
  • TODELLISTA kaupallista hyväksikäyttöä ei vielä ole (ja on epäselvää, milloin se tapahtuu)

Mikä voi auttaa:

  • Jonkinlainen fyysinen löytö, joka vähentää johdotuksen ja prosessorien käyttökustannuksia
  • Löytää jotain, joka lisää dekoherenssiaikaa suuruusluokkaa ja/tai vähentää virheitä

Omasta mielestäni (puhtaasti henkilökohtainen mielipide) Nykyisessä tieteellisessä tiedon paradigmassa emme saavuta merkittävää menestystä kvanttiteknologioiden kehittämisessä, tässä tarvitsemme laadullista läpimurtoa jollain perus- tai soveltavan tieteen alueella, joka antaa sysäyksen uusille ideoille ja menetelmille.

Sillä välin hankimme kokemusta kvanttiohjelmoinnista, kvanttialgoritmien keräämisestä ja luomisesta, ideoiden testaamisesta jne., jne. Odotamme läpimurtoa.

Johtopäätös

(sisältöön)

Tässä artikkelissa kävimme läpi tärkeimmät virstanpylväät kvanttilaskennan ja kvanttitietokoneiden kehityksessä, tarkastelimme niiden toimintaperiaatetta, tarkastelimme insinöörien keskeisiä ongelmia kvanttiprosessorien kehittämisessä ja käytössä sekä tarkastelimme myös mitä monikubittisia D-tietokoneet todella ovat. Wave ja Googlen äskettäinen ilmoitus kvanttiylivallan saavuttamisesta.

Kulissien taakse jää kysymyksiä kvanttitietokoneiden ohjelmoinnista (kielet, lähestymistavat, menetelmät jne.) sekä kysymyksiä, jotka liittyvät prosessorien erityiseen fyysiseen toteutukseen, miten kubitteja hallitaan, linkitetään, luetaan jne. Ehkä tämä on seuraavan artikkelin tai artikkeleiden aihe.

Kiitos huomiostasi, toivon, että tämä artikkeli on hyödyllinen jollekin.

(C) Kruegger

Kiitokset

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

@Oxoron lähdetekstin oikolukua ja kommentteja sekä artikkelia varten "Kvanttitietokoneiden ominaisuudet"

@a5b tietoa sisältäville kommenteille "Kvanttitietokoneiden ominaisuudet", eikä vain hänelle, mikä suurelta osin auttoi minua selvittämään tämän palapelin.

Kaikille artikkelien ja julkaisujen tekijöille, joiden materiaalia on käytetty tämän artikkelin kirjoittamisessa.

Luettelo resursseista

(sisältöön)

Kuinka kvanttitietokoneet toimivat. Palapelin kokoaminen

Ajankohtaisia ​​artikkeleita [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

Habrin artikkelit (satunnaisessa järjestyksessä)

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/

Lajittelemattomia (mutta ei vähemmän mielenkiintoisia) artikkeleita Internetistä

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

Kurssit ja luennot

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

Lähde: will.com

Lisää kommentti