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ä.
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.
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.
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.
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.
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.
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.
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.
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:
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
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
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:
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:
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.
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.
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.
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.
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.
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.
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.
Voit lukea lisää Shorin algoritmista mm. täällä. Tietoja käytännön toteutuksesta - täällä.
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 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-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)
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)
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
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.
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
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.
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.
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
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.
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 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.
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.
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.
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.
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.
Hyvin lyhyesti:
Porttien avulla luodaan satunnainen piiri, jonka pituus on 20 ja 53 kubittia
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.
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.
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.