Hoe kwantumcomputers werken. De puzzel samenstellen

Hoe kwantumcomputers werken. De puzzel samenstellen

Quantumcomputers en quantumcomputing zijn nieuwe buzzwoorden, die zijn toegevoegd aan onze informatieruimte naast kunstmatige intelligentie, machinaal leren en andere hoogtechnologische termen. Toch kon ik op internet geen materiaal vinden dat de puzzel genaamd ā€˜hoe quantumcomputers werken’samenstelde. Ja, er zijn veel uitstekende werken, ook op Habr (zie Lijst van bronnen), waarvan de opmerkingen, zoals gebruikelijk, nog informatiever en nuttiger zijn, maar het beeld in mijn hoofd, zoals men zegt, kwam niet tot stand.

En onlangs kwamen collega's naar me toe en vroegen: ā€œBegrijp jij hoe een quantumcomputer werkt? Kun je het ons uitleggen?ā€ En toen realiseerde ik me dat ik niet de enige was met het probleem om een samenhangend beeld in mijn hoofd te krijgen.

Het resultaat was een poging om informatie over quantumcomputers te compileren in een samenhangend logisch schema, waarin op basisniveau, zonder diepgaand in de wiskunde en de structuur van de quantumwereld te duiken,verklaard wordt wat een quantumcomputer is, op welke principes hij werkt, en welke problemen wetenschappers tegenkomen bij de creatie en exploitatie ervan.


Inhoudsopgave

Disclaimer

(terug naar inhoudsopgave)

De auteur is zelf geen specialist in quantumcomputing, en de doelgroep van het artikel zijn dezelfde IT'ers, geen quantumexperts,, die ook een afbeelding willen vormen onder de titel 'Hoe quantumcomputers werken'. Om deze reden zijn veel concepten in het artikel bewust vereenvoudigd voor een beter begrip van quantumtechnologieƫn op 'basis'-niveau, maar zonder te veel vereenvoudiging die informatieve waarde en relevantie verloren zouden gaan..

In het artikel worden op sommige plaatsen materialen uit andere bronnen gebruikt, waarvan de lijst aan het einde van het artikel is opgenomen.Waar mogelijk zijn directe links en verwijzingen naar de oorspronkelijke tekst, tabellen of afbeeldingen toegevoegd. Laat het me weten als ik ergens iets (of iemand) ben vergeten – ik zal het corrigeren.

Inleiding

(terug naar inhoudsopgave)

In dit hoofdstuk bekijken we kort hoe het kwantumtijdperk begon, wat de aanjager was voor het ontstaan van het idee van de kwantumcomputer, welke landen en bedrijven momenteel de belangrijkste spelers op dit gebied zijn, en bespreken we kort de belangrijkste ontwikkelingen in kwantumcomputing.

Hoe het allemaal begon

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Het startpunt van het kwantumtijdperk wordt vaak beschouwd als het jaar 1900, toen M. Planck voor het eerst de hypothese voorstelde dat energie niet continu wordt uitgezonden en geabsorbeerd, maar in afzonderlijke quanta (porties). Dit idee werd opgepakt en verder ontwikkeld door veel vooraanstaande wetenschappers uit die tijd – Bohr, Einstein, Heisenberg, Schrƶdinger, wat uiteindelijk leidde tot de creatie en ontwikkeling van de wetenschap die we nu kennen als kwantumfysica. Er zijn veel goede materialen online over de ontwikkeling van kwantumfysica als wetenschap; in dit artikel zullen we daar niet uitvoerig op ingaan, maar het was noodzakelijk om de datum te vermelden waarop we het nieuwe kwantumtijdperk binnentraden.

Kwantumfysica heeft veel uitvindingen en technologieƫn in ons dagelijks leven gebracht, zonder welke het tegenwoordig moeilijk voor te stellen is hoe de wereld eruitziet. Bijvoorbeeld de laser, die tegenwoordig overal wordt gebruikt, van huishoudelijke apparaten (laserwaterpassen en meer) tot geavanceerde systemen (lasers voor gezichtscorrectie, hallo meklon ). Het was logisch om aan te nemen dat vroeg of laat iemand het idee zou opperen om kwantumsystemen voor berekeningen te gebruiken. En in 1980 gebeurde dat.

Wikipedia vermeldt dat de eerste die het idee van kwantumcomputing naar voren bracht, onze wetenschapper Yuri Manin in 1980 was. Het werd echter pas echt ter sprake gebracht in 1981, toen de bekende R. Feynman in een lezing op de eerste conferentie over de fysica van berekeningen, gehouden aan het Massachusetts Institute of Technology, opmerkte dat het onmogelijk was om de evolutie van een kwantumsysteem op een klassieke computer op een efficiƫnte manier te modelleren. Hij stelde een elementair model voor van een kwantumcomputer, dat in staat zou zijn om een dergelijke modellering uit te voeren.

Op het internet is er dit werk, waarin over de chronologie van de ontwikkeling van kwantumcomputing wordt meer academisch en gedetailleerd bekeken, terwijl wij het kort zullen bespreken:

Belangrijke mijlpalen in de geschiedenis van de ontwikkeling van kwantumcomputers:

De dia's voor deze sectie zijn afkomstig uit het artikel

Kwantumcomputer: een groot spel om te verhogen. Lezing bij Yandex

Belangrijke spelers

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

, van onderzoeksmedewerker Russisch KwantumcentrumAlexey Fyodorov. Laat me directe citaten maken: Alle technologisch succesvolle landen zijn momenteel actief bezig met de ontwikkeling van kwantumtechnologieën. Er wordt een enorm bedrag aan middelen in deze onderzoeken geïnvesteerd, en er worden speciale programma's ter ondersteuning van kwantumtechnologieën opgericht. Alexey Fyodorov. Ik veroorloof me om directe citaten te gebruiken:

Alle technologisch succesvolle landen zijn op dit moment actief bezig met de ontwikkeling van kwantumtechnologieƫn. Er wordt een enorme hoeveelheid middelen in deze onderzoeken gestoken, en er worden speciale ondersteuningsprogramma's voor kwantumtechnologieƫn gecreƫerd.

Hoe kwantumcomputers werken. De puzzel samenstellen

In de kwantumrace zijn niet alleen staten betrokken, maar ook particuliere bedrijven. Totaal hebben Google, IBM, Intel en Microsoft ongeveer 0,5 miljard dollar geĆÆnvesteerd in de ontwikkeling van kwantumcomputers in de afgelopen tijd, en hebben ze grote laboratoria en onderzoekscentra opgericht.
Hoe kwantumcomputers werken. De puzzel samenstellen

Op HabrƩ en op het internet zijn er vele artikelen, bijvoorbeeld, hier is, hier is en hier is, waarin de huidige stand van zaken met betrekking tot de ontwikkeling van kwantumtechnologieƫn in verschillende landen uitgebreider wordt besproken. Voor ons is momenteel het belangrijkste dat alle leidende technologisch ontwikkelde landen en spelers enorme middelen investeren in onderzoek op dit gebied, wat hoop geeft op een uitweg uit de huidige technologische impasse.

Ontwikkelingsrichtingen

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Op dit moment (ik kan het mis hebben, corrigeer me) zijn de belangrijkste inspanningen (en meer of minder significante resultaten) van alle grote spelers geconcentreerd op twee richtingen:

  • Gespecialiseerde kwantumcomputers, die zijn gericht op het oplossen van ƩƩn specifieke taak, bijvoorbeeld een optimalisatieprobleem. Een voorbeeld van een product zijn de kwantumcomputers van D-Wave.
  • Universele kwantumcomputers — die in staat zijn om willekeurige kwantumalgoritmen uit te voeren (Shor, Grover, enz.). Realisaties van IBM, Google.

Andere ontwikkelingsrichtingen die kwantumfysica ons biedt, zoals:

zijn zeker ook op de lijst van onderzoekrichtingen, maar tot nu toe lijken er nog geen significante resultaten te zijn.

Daarnaast kan je lezen over de routekaart voor de ontwikkeling van kwantumtechnologieĆ«n, en zoek op Google naar ā€œontwikkeling van kwantumtechnologieĆ«nā€, bijvoorbeeld, hier is, hier is en hier is.

Basisprincipes. Quantumobject en quantumsystemen

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Het belangrijkste dat je uit deze sectie moet begrijpen, is dat

een kwantumcomputer (in tegenstelling tot een gewone) informatie draagt in de vorm van kwantumobjecten, en voor het uitvoeren van berekeningen moeten kwantumobjecten verbonden zijn in een kwantumsysteem..

Wat is een kwantumobject?

Een kwantumobject is een object van de microscopische wereld (de kwantumwereld) dat kwantumeigenschappen vertoont:

  • Het heeft een bepaalde toestand met twee uiterste niveaus.
  • Het bevindt zich in superpositie van zijn toestand tot het meetmoment.
  • Het verstrengelt met andere objecten om kwantumsystemen te creĆ«ren.
  • Voert de kloonverbodstelling uit (de toestand van een object kan niet worden gekopieerd)

Laten we elk kenmerk in meer detail bekijken:

Heeft een bepaalde toestand met twee grensniveaus (eindtoestand)

Een klassiek voorbeeld uit de echte wereld is een munt. Deze heeft een toestand "zijde", die twee grensniveaus aanneemt: "kop" en "munt".

Het bevindt zich in superpositie van zijn toestand tot het meetmoment.

We hebben de munt gegooid; hij vliegt en draait. Terwijl hij draait, is het onmogelijk om te zeggen in welke van de grensniveaus zijn toestand "zijde" zich bevindt. Maar zodra we hem dichtknijpen en het resultaat bekijken, zoals in superpositie, collaboreert hij onmiddellijk in een van de twee grensniveaus - "kop" of "munt". Het dichtknijpen van de munt is in ons geval de meting.

Het verstrengelt met andere objecten om kwantumsystemen te creƫren.

Het is moeilijk met de munt, maar laten we het proberen. Stel je voor dat we drie munten hebben gegooid, zodat ze draaien en aan elkaar vastgrijpen, zo een jongleren met munten. Op elk moment is niet alleen elke munt in superpositie van toestanden, maar deze toestanden beĆÆnvloeden elkaar wederzijds (de munten botsen immers op elkaar).

Voert de kloonverbodstelling uit (de toestand van een object kan niet worden gekopieerd)

Terwijl de munten vliegen en draaien, kunnen we op geen enkele manier een aparte kopie van de draaiende toestand van een van de munten creƫren. Het systeem leeft in zichzelf en is zeer beschermend ten opzichte van het vrijgeven van enige informatie naar buiten.

Nog een paar woorden over het begrip "superpositie", in praktisch alle artikelen wordt superpositie uitgelegd als "in alle toestanden tegelijkertijd zijn", wat natuurlijk waar is, maar soms verwarrend kan zijn. Superpositie van toestanden kan ook worden voorgesteld als dat een quantumobject op elk moment bepaalde waarschijnlijkheden heeft om te collapsen naar elk van zijn grensniveaus, en in totaal zijn deze waarschijnlijkheden, natuurlijk, gelijk aan 1.. Verder, bij de beschouwing van een qubit, zullen we hier dieper op ingaan.

Voor de munten kan dit visueel worden voorgesteld - afhankelijk van de initiƫle snelheid, de gooihoek, de toestand van de omgeving waarin de munt vliegt, is de kans op "kop" of "munt" op elk moment verschillend. En, zoals eerder genoemd, kan de toestand van zo'n vliegende munt worden voorgesteld als "in al zijn grenstoestanden tegelijkertijd, maar met verschillende waarschijnlijkheden van realisatie".

Elk object waarvoor de bovengenoemde eigenschappen gelden en dat we kunnen creƫren en beheren, kan dienen als drager van informatie in een quantumcomputer.

Verdereop zullen we het hebben over de huidige stand van zaken met betrekking tot de fysieke realisatie van qubits als quantumobjecten, en wat wetenschappers momenteel hiervoor gebruiken.

Dus, de derde eigenschap stelt dat quantumobjecten met elkaar verstrengeld kunnen worden om quantumsystemen te creƫren. Wat is een quantum-systeem?

Quantum-systeem is een systeem van verstrengelde quantumobjecten met de volgende eigenschappen:

  • Een quantum-systeem bevindt zich in een superpositie van alle mogelijke toestanden van de objecten waaruit het bestaat.
  • De toestand van het systeem kan niet worden gekend tot het moment van meting.
  • Op het moment van meting realiseert het systeem een van de mogelijke opties van zijn grenstoestanden.

(en vooruitlopend op de zaken)

Gevolg voor quantumprogramma's:

  • Een quantumprogramma heeft een bepaalde toestand van het systeem als invoer, superpositie binnenin, en superpositie als uitvoer.
  • Na de meting komen we op de uitvoer van het programma tot een probabilistische realisatie van een van de mogelijke eindtoestanden van het systeem (plus eventuele fouten).
  • Elk quantumprogramma heeft een pijpleidingarchitectuur (invoer -> uitvoer. Geen lussen, je kunt de toestand van het systeem niet in het midden van het proces bekijken.)

Vergelijking tussen een quantumcomputer en een gewone

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Laten we nu een gewone computer en een quantumcomputer vergelijken.

Gewone computereen kwantumcomputer

Logica

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

Fysica

Halfgeleider transistorEen kwantumobject

Drager van info.

SpanningsniveausPolarizatie, spin,…

Operaties

NOT, AND, OR, XOR op bitsPoorten: CNOT, Hadamard,…

Samenhang

HalfgeleiderchipVerstrengeling onderling

Algoritmes

Standaard (zie Knuth)Speciale (Shor, Grover)

Principe

Digitaal, deterministischAnaloog, probabilistisch

Logisch niveau
Hoe kwantumcomputers werken. De puzzel samenstellen

In een gewone computer is dit een bit. We zijn er goed mee bekend. deterministisch bit. Hij kan ofwel 0 of 1 zijn. Hij vervult uitstekend de rol van logische eenheid voor een gewone computer, maar is volkomen ongeschikt om de toestand van een quantumobjectte beschrijven, dat, zoals we al zeiden, zich in de natuur bevindt insuperpositie van zijn grenstoestanden..

Daarvoor is de qubituitgevonden. In zijn grenstoestanden realiseert hij staten die lijken op 0 en 1 |0> en |1>, en in superpositie is het waarschijnlijkheidsverdeling over zijn grenstoestanden |0> en |1>:

 a|0> + b|1>, zodanig dat a^2+b^2=1

a en b zijn de waarschijnlijkheidsamplitudes, terwijl de kwadraten van hun modulus — in feite de waarschijnlijkheden zijn om precies deze waarden van de grenstoestanden te krijgen |0> en |1>, als we de qubit nu meten.

Fysiek niveau

Op het huidige technologische niveau bestaat de fysieke realisatie van een bit voor een gewone computer uit een halfgeleidertransistor, voor quantum, zoals we al zeiden, elke quantumobject. In het volgende gedeelte zullen we bespreken wat momenteel wordt gebruikt als fysieke dragers van qubits.

Informatie-drager

Voor een gewone computer is dit elektrische stroom — spanningsniveaus, aanwezigheid of afwezigheid van stroom, enz., voor quantum — datzelfde toestand van het quantumobject (polarizatie, spin, enz.), dat in een superpositie kan verkeren.

Operaties

Voor de uitvoering van logische schema's op een gewone computer worden ons goed bekende logische operaties, voor operaties met qubits moesten we een geheel ander systeem van operaties bedenken, dat we quantumpoorten. Poorten zijn eentoonige en tweekwantumgebonden, afhankelijk van het aantal qubits waarop de transformatie wordt uitgevoerd.

Voorbeelden van quantumpoorten:
Hoe kwantumcomputers werken. De puzzel samenstellen

Er bestaat het concept van een universele set poorten, die voldoende is voor het uitvoeren van elke quantumberekening. Bijvoorbeeld, een universele set omvat de Hadamard-poort, de faseverschuivingspoort, de CNOT-poort en de π⁄8-poort. Hiermee kan elke quantumberekening op een willekeurige set qubits worden uitgevoerd.

In dit artikel zullen we niet in detail ingaan op het systeem van quantumpoorten, meer details over hen en logische operaties op qubits kunnen worden gelezen, bijvoorbeeld, hier. Het belangrijkste om te onthouden is:

  • Operaties met quantumobjecten vereisen de creatie van nieuwe logische operatoren (quantumpoorten)
  • Quantumpoorten zijn eentoonige en tweekwantumgebonden
  • Er zijn universele sets van poorten waarmee elke quantumberekening kan worden uitgevoerd

Samenhang

EƩn transistor is volkomen nutteloos voor het uitvoeren van berekeningen; we moeten veel transistors met elkaar verbinden, dat wil zeggen, een halfgeleiderchip creƫren van miljoenen transistors, waarop we logische schakelingen kunnen bouwen, ALU en uiteindelijk een moderne processor in zijn klassieke vorm verkrijgen.

EƩn qubit is ook volkomen nutteloos voor ons (tenzij in academische zin),

om berekeningen uit te voeren hebben we een systeem van qubits (kwantumobjecten) nodig

dat, zoals we al zeiden, wordt gecreƫerd door qubits met elkaar te verstrikken, zodat veranderingen in hun toestanden coherent plaatsvinden.

Algoritmes

De standaardalgoritmen die de mensheid tot nu toe heeft verzameld, zijn totaal ongeschikt voor implementatie op een quantumcomputer. Eigenlijk is dat ook niet nodig. Quantumcomputers, gebaseerd op poortlogica over qubits, vereisen de creatie van totaal andere algoritmen, quantumalgoritmen. Van de meest bekende quantumalgoritmen kunnen we drie onderscheiden:

Principe

En het belangrijkste verschil is het werkingsprincipe. Bij een standaardcomputer is dit een digitale, strikt deterministische principe, gebaseerd op het idee dat als we een bepaalde beginstaat van het systeem vaststellen en deze door een gegeven algoritme leiden, het resultaat van de berekeningen steeds hetzelfde zal zijn, ongeacht hoe vaak we dezelfde berekening uitvoeren. Dit gedrag is precies wat we van een computer verwachten.

Een quantumcomputer werkt op een analoge, probabilistische principe. Het resultaat van de uitvoering van een gegeven algoritme met een bepaalde beginstaat is een steekproef uit de waarschijnlijkheidsverdeling van eindige realisaties van het algoritme plus eventuele fouten.

Deze probabilistische aard van quantumcomputing is inherent aan de probabilistische essentie van de kwantumwereld. ā€œGod speelt geen dobbelspel met het universumā€, zei de oude Einstein, maar alle experimenten en observaties bevestigen voorlopig (in de huidige wetenschappelijke paradigma) het tegendeel.

Fysieke implementaties van qubits

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

zoals we al zeiden, kan een qubit worden voorgesteld als een quantaal object, dat wil zeggen een fysiek object dat de eerder beschreven kwantum eigenschappen implementeert. Kortom, elk fysiek object dat twee toestanden heeft en waarin deze twee toestanden in een superpositie verkeren, kan worden gebruikt voor het bouwen van een quantumcomputer.

ā€œAls we een atoom in twee verschillende niveaus kunnen plaatsen en deze kunnen beheren, dan hebben we een qubit. Als we dit voor een ion kunnen doen - een qubit. Met stroom is het hetzelfde. Als we deze tegelijkertijd met de klok mee en tegen de klok in laten lopen, heb je een qubit.ā€ (C)

Er is een prachtige opmerking aan artikel, waarin de huidige verscheidenheid aan fysieke realisaties van de qubit nader wordt besproken, zullen we gewoon de bekendste en meest voorkomende opsommen:

Van deze verscheidenheid is de eerste methode voor het verkrijgen van qubits, gebaseerd op supergeleiders. Google, IBM, Intel en andere toonaangevende spelers gebruiken deze precies voor het bouwen van hun systemen.

En lees ook overzicht mogelijke fysieke realisaties qubits van Andrew Daley, 2014.

Basisprincipes. De werking van een quantumcomputer

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

De materialen voor deze sectie (opdracht en afbeeldingen) zijn ontleend aan het artikel ā€œSimpel over het complexe. Hoe een quantumcomputer werktā€.

Dus, stel je voor dat we de volgende taak hebben:

Er is een groep van drie personen: (A)ndrey, (B)olodya en (C)erezha. Er zijn twee taxi's (0 en 1).

Het is ook bekend dat:

  • (A)ndrey, (B)olodya zijn vrienden
  • (A)ndrey, (C)erezha zijn vijanden
  • (B)olodya en (C)erezha zijn vijanden

Taak: Plaats de mensen in de taxi's zodat Max(vrienden) en Min(vijanden)

Beoordeling: L = (aantal vrienden) - (aantal vijanden) voor elke mogelijke plaatsing

BELANGRIJK: Neem aan dat er geen heuristieken zijn, geen optimale oplossing is. In dit geval kan de taak alleen worden opgelost door alle mogelijkheden te doorlopen.

Hoe kwantumcomputers werken. De puzzel samenstellen

Oplossing op een normale computer

Hoe deze taak op een normale (super)computer (of cluster) op te lossen - het is duidelijk dat je alle mogelijke opties in een lus moet doorlopen.. Als we een multiprocessorsysteem hebben, kunnen we de berekening van oplossingen op verschillende processors parallel uitvoeren en dan de resultaten verzamelen.

We hebben 2 mogelijke plaatsingsopties (taxi 0 en taxi 1) en 3 mensen. Oplossingsruimte 2^3 = 8. Je kunt zelfs met een rekenmachine 8 opties doorlopen, dat is geen probleem. Laten we de taak compliceren — we hebben 20 mensen en twee bussen, de oplossingsruimte 2^20 = 1 048 576. Ook niet zo moeilijk. We verhogen het aantal mensen met 2,5 keer — laten we 50 mensen en twee treinen nemen, de oplossingsruimte is nu 2^50 = 1,12 x 10^15. Bij een gewone (super)computer beginnen er al serieuze problemen op te duiken. Als we het aantal mensen verdubbelen, zullen 100 mensen ons al geven 1,2 x 10^30 mogelijkheden.

Alles, binnen een redelijke tijd kun je deze taak niet uitrekenen.

We schakelen een supercomputer in

De krachtigste computer momenteel — nummer 1 van de Top500, is Summit, met een capaciteit van 122 Pflops. Laten we aannemen dat we voor het berekenen van ƩƩn optie 100 bewerkingen nodig hebben, dan hebben we voor het oplossen van de taak voor 100 mensen nodig:

(1,2 x 10^30 100) / 122Ɨ10^15 / (606024365) = 3 x 10^37 jaar.

Zoals we zien, bij het vergroten van de dimensie van de oorspronkelijke gegevens neemt de oplossingsruimte exponentieel toe, in het algemeen geval voor N bits hebben we 2^N mogelijke oplossingen, die bij relatief kleine N (100) ons een niet te berekenen (op het huidige technologische niveau) oplossingsruimte geven.

Zijn er alternatieven? Zoals je misschien al geraden hebt, ja, die zijn er.

Maar voordat we ingaan op hoe en waarom quantumcomputers dergelijke taken efficiƫnt kunnen oplossen, laten we even terugkijken op wat waarschijnlijkheidsverdelingis. Maak je geen zorgen, het artikel is overzichtelijk, er zal geen strenge wiskunde zijn, we beperken ons tot een klassieke voorbeeld met een zak en ballen.

Een beetje combinatoriek, kansrekening en een vreemde experimentator

Laten we een zak nemen en daar 1000 witte en 1000 zwarte ballen in doen.We zullen een experiment uitvoeren — een bal trekken, de kleur noteren, de bal terug in de zak doen en de ballen in de zak schudden.

We hebben het experiment 10 keer uitgevoerd, trok 10 zwarte ballen.Is dat mogelijk? Zeker. Geeft deze steekproef ons enige redelijke indicatie van de werkelijke verdeling in de zak? Het is duidelijk van niet. Wat moeten we doen — juist, hetexperiment een miljoen keer herhalen en de frequenties van de zwarte en witte ballen berekenen. We krijgen bijvoorbeeld 49,95% zwart en 50,05% wit.In dit geval is de structuur van de verdeling van waaruit we monsters nemen (een bal trekken) al meer of minder duidelijk.

Het belangrijkste dat je moet begrijpen, is dat het experiment een probabilistische natuur heeft., met ƩƩn monster (bal) weten we de ware structuur van de verdeling niet, we moeten het experiment meerdere keren herhalen en de resultaten gemiddelde.

Laten we in onze zak toevoegen 10 rode en 10 groene ballen (fouten). Laten we het experiment 10 keer herhalen. Introkken we 5 rode en 5 groene. Is dat mogelijk? Ja. Kunnen we iets zeggen over de ware verdeling — Nee. Wat moeten we doen — nou, je begrijpt het.

Om inzicht te krijgen in de structuur van de waarschijnlijkheidsverdeling moeten we herhaaldelijk monsters nemen van deze verdeling en de resultaten gemiddelen.

We verbinden de theorie met de praktijk

Laten we nu in plaats van zwarte en witte ballen biljartballen nemen en in de zak leggen 1000 ballen met nummer 2, 1000 met nummer 7 en 10 ballen met andere nummers. Stel je een experimentator voor die getraind is in de eenvoudigste handelingen (bal pakken, nummer noteren, bal terug in de zak doen, ballen in de zak mengen) en dit doet in 150 microseconden. Nou, zo'n experimentator is op speed (geen reclame voor drugs!!!). Dan kan hij in 150 seconden ons experiment 1 miljoen keer uitvoeren en ons de gemiddeldes van de resultaten geven.

We zetten de experimentator neer, gaven de zak, keken weg, wachtten 150 seconden — kregen:

nummer 2 — 49,5%, nummer 7 — 49,5%, de overige nummers samen — 1%.

Ja, dat klopt, onze zak is een quantumcomputer met een algoritme dat onze taak oplost, en de ballen zijn mogelijke oplossingsvarianten. Aangezien er twee juiste oplossingen zijn, zal de quantumcomputer ons gelijk waarschijnlijk ƩƩn van deze mogelijke oplossingen geven, en 0,5% (10/2000) fouten, waar we later over zullen spreken.

Om het resultaat van de werking van de quantumcomputer te krijgen, moet de quantumalgoritme herhaaldelijk worden uitgevoerd op dezelfde set gegevens en het resultaat gemiddelde.

Schaalbaarheid van de quantumcomputer

Stel je nu voor dat er 100 mensen in de taak zijn betrokken (oplossingsruimte 2^100 dat herinneren we ons), en er zijn ook maar twee juiste oplossingen. Als we dan 100 qubits nemen en een algoritme schrijven dat onze doel functie (L, zie hierboven) berekent over deze qubits, krijgen we een zak met 1000 ballen met nummer van het eerste juiste antwoord, 1000 met nummer van het tweede juiste antwoord en 10 ballen met andere nummers. En onze experimentator zal ons in dezelfde 150 seconden een schatting geven van de waarschijnlijkheidsverdeling van de juiste antwoorden..

De uitvoeringstijd van het kwantumalgoritme (met enkele aannames) kan worden beschouwd als constant O(1) ten opzichte van de dimensie van de oplossingsruimte (2^N).

En precies deze eigenschap van de kwantumcomputer — de constantheid van de uitvoeringstijd ten opzichte van de exponentieel toenemende complexiteit van de oplossingsruimte is de sleutel.

Qubit en parallelle werelden

Hoe gebeurt dit? Wat stelt de kwantumcomputer in staat om zo snel berekeningen uit te voeren? Het ligt in de kwantumnatuur van de qubit.

Kijk, we zeiden dat de qubit als kwantumobject ƩƩn van zijn twee toestanden realiseert bij observatie, maar in de ā€˜levende natuur’ zich bevindt in superpositie van toestanden, dat wil zeggen dat het zich gelijktijdig in beide grenssituaties bevindt (met een bepaalde waarschijnlijkheid).

Laten we (A)ndrey nemen en zijn toestand (in welk vervoermiddel hij zich bevindt — 0 of 1) als qubit voorstellen. Dan ontstaan er (in de kwantumruimte) twee parallelle werelden, in ƩƩn (A) zit in taxi 0, in de andere wereld — in taxi 1. Tegelijkertijd in twee taxi's, maar met een bepaalde waarschijnlijkheid om hem in elk van hen te vinden bij observatie.

Laten we (V)olodya en laten we zijn toestand ook als qubit voorstellen. Er ontstaan twee andere parallelle werelden. Maar deze paren werelden (A) en (V) interageren voorlopig niet. Wat moet er gebeuren om een verbonden systeem te creĆ«ren? Juist, deze qubits moeten verbonden (verstrengeld) worden.We nemen (A) en (V) en verstrengelen ze — we krijgen een kwantumsysteem van twee qubits (A, V), dat binnenin vier onderling afhankelijke parallelle werelden realiseert. We voegen (S)ergei toe en krijgen een systeem van drie qubits (ABC), dat acht parallelle werelden realiseert. parallelle werelden realiseert. We voegen De essentie van kwantumcomputing (de uitvoering van een keten van kwantumpoorten op een systeem van verbonden qubits) is het feit dat berekeningen in alle parallelle werelden gelijktijdig plaatsvinden.

En het maakt niet uit hoeveel we ervan hebben, 2^3 of 2^100,

het kwantumalgoritme zal in een eindige tijd worden uitgevoerd over al deze parallelle werelden en ons een resultaat opleveren dat een monster is van de waarschijnlijkheidsverdeling van de antwoorden van het algoritme. Voor een beter begrip kan men zich voorstellen dat

Voor een beter begrip kan men zich voorstellen dat Een quantumcomputer op quantum-niveau start 2^N parallelle processen voor het oplossen, waarbij elk proces werkt aan ƩƩn mogelijke variant, waarna de resultaten worden verzameld — en ons antwoord wordt gegeven in de vorm van superpositie van de oplossing (probabilistische verdeling van antwoorden), waarvan we elk keer (bij elke experiment) er ƩƩn samplen.

Onthoud de tijd die onze experimentator nodig heeft (150 μs) voor het uitvoeren van het experiment, dit zal van pas komen wanneer we het hebben over de belangrijkste problemen van quantumcomputers en de tijd van decoherentie.

Quantumalgoritmen

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Zoals al eerder vermeld, zijn gewone algoritmes, gebaseerd op binaire logica, niet toepasbaar op een quantumcomputer die gebruik maakt van quantumlogica (quantumpoorten). Voor hem moest er een nieuwe worden uitgevonden, die volledig gebruik maakt van het potentieel dat in de quantumnatuur van berekeningen is gelegd.

De bekendste algoritmen tot nu toe zijn:

In tegenstelling tot klassieke computers zijn quantumcomputers niet universeel.
Tot nu toe is er slechts een klein aantal quantumalgoritmen gevonden.(C)

Dank oxoron voor de link naar Quantum Algorithm Zoo, de plek waar, volgens de auteur (Stephen Jordan), de beste vertegenwoordigers van de quantum-algoritmische wereld zijn verzameld en nog steeds worden verzameld.

In dit artikel zullen we niet uitgebreid ingaan op quantumalgoritmen, er zijn veel geweldige materialen online voor elk niveau van moeilijkheid, maar we moeten kort de drie bekendste algoritmen doornemen.

Shor's algoritme.

(terug naar inhoudsopgave)

Het bekendste quantumalgoritme is het Shor-algoritme (uitgevonden in 1994 door de Engelse wiskundige Peter Shor), dat is gericht op het oplossen van het probleem van het ontbinden van getallen in priemfactoren (factorisatieprobleem, discrete logaritme).

Dit algoritme wordt vaak als voorbeeld aangehaald wanneer men zegt dat je banksystemen en wachtwoorden binnenkort zullen worden gekraakt. Gezien de lengte van de op dit moment gebruikte sleutels van ten minste 2048 bits, is de tijd voor de hoed nog niet gekomen.

Tot op heden de resultaten zijn meer dan bescheiden. De beste resultaten voor factorizatie met behulp van het Shor-algoritme zijn getallen 15 en 21, wat veel kleiner is dan 2048 bits. Voor de overige resultaten in de tabel werd een andere algoritme berekening toegepast, maar zelfs het beste resultaat met dit algoritme (291311) ligt ver van een reƫle toepassing.

Hoe kwantumcomputers werken. De puzzel samenstellen

Meer informatie over het Shor-algoritme is te vinden bijvoorbeeld hier. Over de praktische implementatie — here.

Een van de huidige schattingen van de complexiteit en benodigde capaciteit voor het factoriseren van een getal van 2048 bits is een computer met 20 miljoen qubits. We slapen rustig.

Grover's algoritme

(terug naar inhoudsopgave)

Grover's algoritme — kwantumalgoritme voor het oplossen van de doorzoekingsopgave, dat wil zeggen het vinden van de oplossing van de vergelijking F(X) = 1, waar F een Booleaanse functie van n van variabelen is. Het werd voorgesteld door de Amerikaanse wiskundige Lov Grover in in 1996..

Het Grover-algoritme kan worden gebruikt om de mediaan en van een reek van getallen te vinden. Bovendien kan het worden toegepast voor het oplossen van NP-volledige problemen door exhaustief te zoeken in een set mogelijke oplossingen. Dit kan leiden tot een aanzienlijke snelheidstoename in vergelijking met klassieke algoritmen, hoewel het geen ā€˜ polynoomoplossingā€˜ in het algemeen biedt.. Er is nog een goede uitleg van het algoritme aan de hand van dozen en een bal, maar helaas is deze site om redenen waar niemand iets aan kan doen niet bereikbaar vanuit Rusland. Als jij.(C)

Meer details kunt u lezen hier, of heredeze site hier ook geblokkeerd hebt, hier is een korte samenvatting: Het Grover-algoritme. Stel je voor dat je N genummerde gesloten dozen hebt. Ze zijn allemaal leeg behalve ƩƩn, waarin een balletje zit. Je taak is: ontdek het nummer van de doos waarin de bal zit (dit onbekende nummer wordt vaak aangeduid met de letter w). Hoe los je dit probleem op? De domste manier is om de dozen ƩƩn voor ƩƩn te openen, en vroeg of laat kom je de doos met de bal tegen. En hoeveel dozen moet je gemiddeld openen voordat je de doos met de bal vindt? Gemiddeld moet je ongeveer de helft van de dozen openen, N/2. Het belangrijkste hierbij is dat als we het aantal dozen met 100 vermenigvuldigen, het gemiddelde aantal dozen dat je moet openen ook met 100 zal toenemen voordat je de doos met de bal vindt.

Hoe het te doen? Er is een eenvoudige manier om dozen ƩƩn voor ƩƩn open te maken, en vroeg of laat zul je de doos met de bal tegenkomen. Hoeveel dozen moet je gemiddeld openen voordat je de doos met de bal vindt? Gemiddeld moet je ongeveer de helft van de dozen N/2 openen. Het belangrijkste is dat als we het aantal dozen met 100 vergroten, ook het gemiddelde aantal te openen dozen met 100 zal toenemen om de doos met de bal te vinden.
Hoe kwantumcomputers werken. De puzzel samenstellen

Hoe los je dit probleem op? De simpelste manier is om ƩƩn voor ƩƩn dozen te openen, en vroeg of laat kom je een doos met een balletje tegen. En hoeveel dozen moet je gemiddeld controleren voordat je de doos met het balletje vindt? Gemiddeld moet je ongeveer de helft van de N dozen openen. Het belangrijkste hier is dat als we het aantal dozen 100 keer verhogen, het gemiddelde aantal dozen dat geopend moet worden totdat de doos met het balletje wordt gevonden, ook 100 keer zal toenemen.

Laten we nu nog een verduidelijking maken. Stel dat we de dozen niet zelf met de hand openen en controleren of er een balletje in elke doos zit, maar dat er een soort tussenpersoon is, laten we hem Oracle (Oorakel) noemen. We zeggen tegen de Oracle: ā€œControleer doos nummer 732ā€, en de Oracle controleert eerlijk en antwoordt: ā€œEr zit geen balletje in doos nummer 732.ā€ In plaats van te zeggen hoeveel dozen we gemiddeld moeten openen, zeggen we: ā€œHoe vaak moeten we gemiddeld de Oracle raadplegen om het nummer van de doos met het balletje te vinden?ā€

Blijkt dat, als we deze taak met de dozen, het balletje en de Oracle vertalen naar de kwantumtaal, er een geweldig resultaat uitkomt: om het nummer van de doos met het balletje te vinden tussen N dozen, hoeven we de Oracle gemiddeld maar ongeveer SQRT(N) keer te storen!

Dat wil zeggen, de complexiteit van de zoektocht met behulp van het Grover-algoritme vermindert met de vierkantswortel.

Het Deutsch-Joszalgoritme

(terug naar inhoudsopgave)

Het Deutsch – Jozsa-algoritme (ook genoemd als het Deutsch – Joza-algoritme) is een [quantumalgoritme](https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%algoritme), voorgesteld David Deutsch en Richard Jozsa in in 1992, en is een van de eerste voorbeelden van algoritmen die ontworpen zijn om uitgevoerd te worden opquantumcomputers De taak van Deutsch – Jozsa bestaat uit het bepalen of een functie van meerdere binaire variabelen F(x1, x2, … xn) constant is (neemt ofwel de waarde 0 of 1 aan voor elke argument) of gebalanceerd is (voor de helft van het domein neemt het waarde 0 aan, voor de andere helft 1). Daarbij is vooraf bekend dat de functie ofwel constant is of gebalanceerd.. _

Je kunt ook meer lezen (C)

. Een eenvoudiger verklaring: hereHet Deutsch-algoritme (Deutsch – Jozsa) is gebaseerd op het doorlopen, maar maakt het mogelijk om dit sneller te doen dan normaal. Stel je voor dat er een munt op tafel ligt en je moet weten of deze vals is of niet. Hiervoor moet je twee keer naar de munt kijken en bepalen: ā€œkopā€ en ā€œmuntā€ – echt, twee ā€œkoppenā€, twee ā€œmuntenā€ – vals. Welnu, als je het kwantumalgoritme van Deutsch gebruikt, kun je die bepaling met ƩƩn blik maken – door te meten.

Bij het ontwerpen en exploiteren van quantumcomputers staan wetenschappers en ingenieurs voor een enorme hoeveelheid problemen die momenteel met wisselend succes worden opgelost. Volgens (C)

Problemen van quantumcomputers

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

en hier ook onderzoek () kunnen de volgende problemen worden onderscheiden:) kunnen de volgende reeks problemen worden onderscheiden:

  • Gevoeligheid voor de omgeving en interactie met de omgeving
  • Accumulation of errors during calculations
  • Moeilijkheden met de initiĆ«le status van qubits
  • Moeilijkheden bij het creĆ«ren van multi-qubit systemen

Ik raad ten zeerste aan om het artikel ā€œKenmerken van kwantumcomputersā€, vooral de opmerkingen erbij, te lezen.

Laten we alle belangrijkste problemen indelen in drie grote groepen en elk van hen uitgebreider bekijken:

Decohorentie

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Beschrijving van N+1.

Quantumtoestand is een zeer kwetsbaar iets, qubits in verstrengelde toestand zijn extreem onstabiel, elk extern effect kan deze verbinding vernietigen (en vernietigt deze). Een temperatuurverandering van een fractie van een graad, druk, een toevallige foton die voorbij vliegt — al deze dingen destabiliseren ons systeem.

Om dit probleem op te lossen, worden er cryogene sarcofagen gebouwd waarin de temperatuur (-273,14 graden Celsius) net iets boven het absolute nulpunt ligt, met maximale isolatie van de binnenkamer met de processor tegen alle (mogelijk) externe invloeden.

De maximale levensduur van een quantum systeem van meerdere verstrengelde qubits, gedurende welke het zijn kwantum eigenschappen behoudt en kan worden gebruikt voor het uitvoeren van berekeningen, wordt de decoherentie tijd genoemd.

Op dit moment bedraagt de decoherentie tijd in de beste quantumoplossingen ongeveer tientallen en honderden microseconden.

Er is een prachtige website, waarop je kunt kijken naar vergelijkende tabellen van parameters van alle gemaakte quantum systemen. In dit artikel zijn slechts twee topprocessors — van IBM — als voorbeeld meegenomen. Google Sycamore en van Kwantumovermacht. Zoals we zien, overschrijdt de decoherentie tijd (T2) niet meer dan 200 µs.

Ik heb geen exacte gegevens over Sycamore gevonden, maar in het artikel over quantum superiority worden twee cijfers genoemd — 1 miljoen berekeningen in 200 seconden, op een andere plek — in 130 seconden zonder verlies door stuurimpulsen en dergelijke.. Hoe dan ook, dit geeft ons een decoherentie tijd van ongeveer 150 µs. Vergeet onze experimentator met een zak? ŠŃƒ так вот он.

Computer NaamN QubitsMax gepaardT2 (µs)
Google Sycamore20670
Kwantumovermacht534~150-200

Wat zijn de risico's van decoherentie?

Het belangrijkste probleem is dat na 150 µs ons rekensysteem van N verstrengelde qubits in plaats van een probabilistische verdeling van juiste oplossingen — een probabilistisch wit ruis zal geven.

Dat betekent dat we moeten:

  • De qubitsysteem initialiseren
  • Voer de berekening uit (keten van poortoperaties)
  • Bepaal het resultaat

En doe dit alles in 150 µs. Heeft u dat niet gedaan, dan is het resultaat veranderd in een pompoen.

Maar dit is nog niet alles…

Mistakes

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Zoals we al zeiden, kwantumprocessen en kwantumrekeningen hebben een probabilistische aard, we kunnen niet 100% zeker zijn van iets, maar alleen met een bepaalde waarschijnlijkheid. De situatie wordt nog verergerd door het feit dat kwantumrekeningen onderhevig zijn aan fouten. De belangrijkste soorten fouten bij kwantumrekeningen zijn:

  • Decoherentie-fouten, veroorzaakt door de complexiteit van het systeem en de interactie met de externe omgeving
  • Computatiefouten in poorten (veroorzaakt door de kwantumnatuur van de berekeningen)
  • Fouten bij het uitlezen van de eindtoestand (resultaat)

Fouten gerelateerd aan decoherentie, ontstaan onmiddellijk zodra we onze qubits verstrengeld hebben en beginnen met rekenen. Hoe meer qubits we verstrengelen, hoe complexer het systeem, en hoe makkelijker het te beschadigen is. Laagtemperatuursarcofagen, beschermde kamers, al deze technologische foefjes zijn er juist op gericht om het aantal fouten te verminderen en de decoherentietijd te verlengen.

Computatiefouten in poorten — elke bewerking (poort) op qubits kan met een zekere waarschijnlijkheid eindigen met een fout, en voor het uitvoeren van het algoritme moeten we honderden poorten uitvoeren, stel je voor wat we aan het einde van ons algoritme zullen krijgen. De klassieke variant van het antwoord op de vraag - "Wat is de kans om een dinosaurier in de lift te ontmoeten?" - is 50/50, of je ontmoet hem of je ontmoet hem niet.

Het probleem wordt nog erger doordat standaard foutencorrectiemethoden (duplicatie van berekeningen en averaging) in de kwantumwereld niet werken vanwege de kloonverbodstelling. Voor foutencorrectie in kwantumrekeningen moesten we creƫren kwantummethoden voor foutencorrectie. Grof gezegd nemen we N gewone qubits en maken daar 1 logische qubit met een lager foutpercentage.

Maar dan ontstaat er een ander probleem - het totale aantal qubits. Stel je voor, we hebben een processor met 100 qubits, waarvan 80 qubits gebruikt worden voor foutencorrectie, dan blijven er voor berekeningen nog maar 20 over.

Fouten bij het uitlezen van het eindresultaat — zoals we ons herinneren, wordt het resultaat van kvantumrekeningen gepresenteerd in de vorm van waarschijnlijkheidsverdeling van de antwoorden. Maar het lezen van de eindtoestand kan ook met een fout eindigen.

Op dezelfde website zijn vergelijkende tabellen van processoren op foutniveaus. Voor de vergelijking nemen we dezelfde processoren als in het vorige voorbeeld - IBM Google Sycamore en Kwantumovermacht:

Computer1-Qubit Gate Fidelity2-Qubit Gate FidelityReadout Fidelity
Google Sycamore99.96%98.31% —
Kwantumovermacht99.84%99.38%96.2%

Hier fidelity — een maat voor de gelijkenis van twee kwantumtoestanden. De foutgrootte kan grofweg worden voorgesteld als 1-Fidelity. Zoals we zien, zijn de fouten op 2-qubit poorten en uitleesfouten de belangrijkste hindernissen voor het uitvoeren van complexe en lange algoritmes op de bestaande kwantumcomputers.

. Een eenvoudiger verklaring: roadmap van 2016 jaar van NQIT voor het oplossen van het foutencorrectieprobleem.

Processorarchitectuur

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

In theorie bouwen en opereren we met schema's van tientallen verstrengelde qubits, in de realiteit is alles ingewikkelder. Alle bestaande kwantumchips (processoren) zijn zo ontworpen dat ze pijnloze verstrengeling van ƩƩn qubit alleen met zijn buren, waarvan er niet meer dan zes zijn.

Als we qubit 1 bijvoorbeeld met qubit 12 moeten verstrengelen, moeten we een keten van extra kwantumoperaties bouwen, extra qubits en dergelijke inschakelen, wat het totale foutenniveau verhoogt. Ja, en vergeet niet de decoherentie tijd, tegen de tijd dat je klaar bent met het verbinden van de qubits in het schema dat je nodig hebt, is de tijd op en wordt het gehele schema een aangename generator van witte ruis.

Vergeet ook niet dat de architectuur van alle kwantumprocessoren verschillend is, en een programma dat in een emulator in de modus 'verbondenheid van allen met allen' is geschreven, moet worden 'gehercompileerd' voor de architectuur van de specifieke chip. Er zijn zelfs speciale optimizerprogramma's om deze operatie uit te voeren.

Maximale verbinding en maximaal aantal qubits voor dezelfde topchips:

Computer NaamN QubitsMax gepaardT2 (µs)
Google Sycamore20670
Kwantumovermacht534~150-200

En, ter vergelijking, een tabel met gegevens van de vorige generatie processoren. Vergelijk het aantal qubits, de decoherentie tijd en het percentage fouten met wat we nu hebben bij de nieuwe generatie. De vooruitgang beweegt echter langzaam maar zeker.

Hoe kwantumcomputers werken. De puzzel samenstellen

Dus:

  • Op dit moment zijn er geen volledig verbonden architecturale schema's van > 6 qubits
  • Om qubit 0 op een echte processor te verstrengelen met bijvoorbeeld qubit 15, kunnen enkele tientallen extra operaties nodig zijn.
  • Meer operaties -> meer fouten -> sterkere invloed van decoherentie.

Conclusies

(terug naar inhoudsopgave)

Decohentie is een beklemmende standaard in de moderne kwantumcomputing. In 150 μs moeten we alles onderbrengen:

  • De initialisatie van de beginstaat van qubits
  • Het oplossen van de taak met behulp van kwantumpoorten
  • Fouten corrigeren om een betekenisvol resultaat te verkrijgen
  • Het verkregen resultaat berekenen

Tot nu toe zijn de resultaten teleurstellend, hoewel hier er wordt beweerd dat er 0,5 s coherentie tijd is bereikt op een kwantumcomputer, gebaseerd op ionenvallen:

We meten een qubit coherentie tijd van meer dan 0,5 s, en met magnetische afscherming verwachten we dat dit verbeterd kan worden tot meer dan 1000 s.

Je kunt meer over deze technologie lezen hier of bijvoorbeeld, hier.

De situatie wordt verder bemoeilijkt doordat bij het uitvoeren van complexe berekeningen ook kwantum foutencorrectiecircuits moeten worden gebruikt, wat ook tijd en beschikbare qubits kost.

En tot slot, moderne architecturen stellen niet in staat om met minimale kosten betere verstrengelingsschema's te realiseren dan 1 op 4 of 1 op 6.

Oplossingen voor problemen

(terug naar inhoudsopgave)

Om de bovenstaande problemen op te lossen, worden momenteel de volgende benaderingen en methoden gebruikt:

  • Het gebruik van cryokamers bij lage temperaturen (10 mK (-273,14°C))
  • Het gebruik van maximaal beschermde processorblokken tegen externe invloeden
  • Het gebruik van systemen voor kwantum foutencorrectie (Logische qubit)
  • Het gebruik van optimalisators bij het programmeren van circuits voor specifieke processors

Er zijn ook onderzoeken gaande die gericht zijn op het verlengen van de decoherentie tijd, het vinden van nieuwe (en het verfijnen van bekende) fysieke realisaties van kwantumobjecten, het optimaliseren van correctiecircuits, enzovoort. Er is vooruitgang (kijk hierboven naar de specificaties van eerdere en huidige topchips), maar het gaat nog steeds langzaam, heel, heel langzaam.

D-Wave

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

2000-qubit computer D-Wave 2000Q. Bron: D-Wave Systems

Op de achtergrond van de aankondiging van Google over het bereiken van kwantumovermacht met een processor van 53 qubits, computers en aankondigingen van het bedrijf D-Wave, waarin het aantal qubits in duizenden wordt geteld, is een beetje verwarrend. Het is waar dat als 53 qubits kwantumovermacht konden bereiken, wat kan een computer met 2048 qubits dan doen? Maar het is niet zo goed...

Kort gezegd (genomen uit de wiki):

Computers D-Wave werken op het principe van kwantumrelaxatie (kwantumgeannuleerde simulatie), kunnen een zeer beperkte subclass van optimalisatietaken oplossen en zijn niet geschikt voor de implementatie van traditionele kwantumalgoritmen en kwantumpoorten.

Voor meer informatie kun je bijvoorbeeld lezen, here, here (let op, deze kan mogelijk niet geopend worden vanuit Rusland), of bij Scott Aaronson in artikel uit zijn de blog. Overigens raad ik aan om zijn blog te lezen, daar staat veel goed materiaal.

Eigenlijk hadden wetenschappers al vanaf het begin van de aankondigingen vragen bij de D-Wave-computers. Bijvoorbeeld, in 2014 betwiste IBM het feit dat D-Wave kwantumeffecten gebruikt. Het kwam zover dat Google in 2015 samen met NASA een van deze kwantumcomputers kocht en na onderzoek bevestigde, dat het inderdaad zo is dat de computer werkt en de taak sneller berekent dan een gewone computer. Meer over de verklaring van Google kun je lezen here en bijvoorbeeld, here.

Het belangrijkste is dat D-Wave-computers, met hun honderden en duizenden qubits, niet kunnen worden gebruikt voor het berekenen en uitvoeren van kwantumalgoritmen. Je kunt bijvoorbeeld het Shor-algoritme daar niet op draaien. Alles wat ze kunnen doen, is bepaalde optimalisatietaken oplossen met behulp van specifieke kwantummechanismen. Je zou kunnen zeggen dat D-Wave een soort kwantum ASIC is voor een specifieke taak.

Even over de emulatie van quantumcomputers

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Kwantumcomputatie kan worden geƫmiteerd op een gewone computer. Want inderdaad, kijk:

  • De toestand van een qubit kan worden weergegeven als een complex getal, dat tussen 2x32 en 2x64 bits (8-16 bytes) in beslag neemt, afhankelijk van de processorarchitectuur.
  • De toestand van N verbonden qubits kan worden weergegeven als 2^N complexe getallen, d.w.z. 2^(3+N) voor een 32-bits architectuur en 2^(4+N) voor een 64-bits.
  • Een kwantumoperatie op N qubits kan worden weergegeven als een matrix van 2^N x 2^N.

Dan:

  • Voor het opslaan van de geĆ«miteerde toestanden van 10 qubits zijn 8 KB nodig.
  • Voor het opslaan van de toestanden van 20 qubits zijn 8 MB nodig.
  • Voor het opslaan van de toestanden van 30 qubits zijn 8 GB nodig.
  • Voor het opslaan van de toestanden van 40 qubits zijn 8 Terabyte nodig.
  • Voor het opslaan van de toestanden van 50 qubits zijn 8 Petabyte nodig, enzovoorts.

(C)

Ter vergelijking, Summit (Top-1 van de Top-500) heeft slechts 2.8 Petabyte geheugen.

Het huidige record voor simulaties is 49 qubits, die vorig jaar werden geplaatst op de grootste Chinese supercomputer (Sunway Taihu Light)

De limiet voor de simulatie van een kwantumcomputer op klassieke systemen is bepaald door de hoeveelheid RAM die nodig is voor het opslaan van de toestand van qubits.

Ik raad ook aan om verder te lezen. dit commentaar. Van daar:

Wat betreft de bewerkingen — voor een nauwkeurige simulatie van de circuit op 49 qubits van 39 'taktieken' (onafhankelijke lagen van poorten) was nodig 2^63 complexe vermenigvuldigingen — 4 Pflop/s supercomputer gedurende 4 uur

De simulatie van een quantumcomputer met meer dan 50 qubits op klassieke systemen wordt als onuitvoerbaar beschouwd binnen een redelijke tijd. Ook om deze reden gebruikte Google voor zijn experiment met quantumvoordeel een processor met 53 qubits.

Quantumrekenkracht superioriteit.

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Wikipedia geeft ons de volgende definitie van quantum computing voordeel:

Quantumvoordeel — het vermogen van quantumcomputers om problemen op te lossen die klassieke computers praktisch niet kunnen oplossen.

Het bereiken van quantumvoordeel betekent feitelijk dat, bijvoorbeeld, het factoriseren van grote getallen met het Shor-algoritme in een acceptabele tijd kan worden opgelost, of dat complexe chemische moleculen op quantumniveau kunnen worden gesimuleerd, enzovoort. Dat wil zeggen, een nieuw tijdperk is aangebroken.

Maar in de formulering van de definitie is er een bepaald gat, "die klassieke computers praktisch niet kunnen oplossen". Dit betekent feitelijk dat als je een quantumcomputer van meer dan 50 qubits creƫert en een bepaalde quantumcircuit daarop uitvoert, de output van dit circuit niet op een gewone computer kan worden gesimuleerd. Dat wil zeggen, een klassieke computer zal niet in staat zijn om deze output opnieuw te creƫren.

Of dit resultaat daadwerkelijk een echt quantumvoordeel is of niet, is meer een filosofische vraag. Maar het is belangrijk te begrijpen wat Google heeft gedaan en waarop zijn recentelijke verklaring over het bereiken van quantumvoordeel op zijn nieuwe Sycamore-processor is gebaseerd.

De verklaring van Google over het bereiken van quantumvoordeel

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen
54-qubit processor Sycamore

Dus in oktober 2019 publiceerden Google-ontwikkelaars een artikel in het wetenschappelijke tijdschrift Nature genaamd "Quantumvoordeel met een programmeerbare supergeleidende processor". De auteurs maakten bekend dat ze voor het eerst in de geschiedenis quantumvoordeel hadden bereikt met behulp van de 54-qubit processor "Sycamore".

In artikelen op internet wordt Sycamore soms als een 54-qubit processor en soms als een 53-qubit processor genoemd. De waarheid is dat volgens het originele artikel, de processor bestaat fysiek uit 54 qubits, maar een daarvan is defect en buiten werking gesteld. Dit betekent dat we in werkelijkheid een 53-qubit processor hebben.

Op het net verscheen veel materiaal over dit onderwerp, waarvan de toon varieerde van enthousiast tot skeptisch.

Later verklaarden medewerkers van de afdeling quantum computing van IBM dat Google onterecht meldde dat ze quantumovermacht hadden bereikt. Het bedrijf stelt dat een klassieke computer deze taak in het slechtste geval in 2,5 dagen kan uitvoeren, en dat het resultaat nauwkeuriger zal zijn dan dat van de quantumcomputer. Deze conclusie is getrokken na een theoretische analyse van verschillende optimalisatiemethoden.

Natuurlijk, Scott Aaronson in je blog kon deze uitspraak niet negeren. Zijn de analyse met alle links en Scott’s Supreme Quantum Supremacy FAQ! zijn zoals altijd de moeite waard om te lezen. Op HabrĆ© is een vertaling van deze FAQ, en lees zeker de opmerkingen, daar staan links naar voorlopige documenten die vóór de officiĆ«le aankondiging online zijn gekomen.

Wat heeft Google in werkelijkheid gedaan? Voor een gedetailleerd begrip kunt u Aaronson lezen, maar kort samengevat:

Ik kan het je natuurlijk vertellen, maar ik voel me er een beetje dom bij. De berekening is als volgt: de experimentator genereert een willekeurige quantumstructuur C (d.w.z. een willekeurige reeks 1-qubit en 2-qubit– tussen naaste buren – poorten, met een diepte van bijvoorbeeld 20, die werkt op een 2D-netwerk van n=50-60 qubits). Vervolgens stuurt de experimentator C naar de quantumcomputer en vraagt hem om C toe te passen op de beginstaat van 0, het resultaat te meten in de basis {0,1}, een n-bits observatiereeks (string) terug te sturen en dit enkele duizenden of miljoenen keren te herhalen. Tenslotte, gebruikmakend van zijn kennis over C, voert de experimentator een statistische check uit op de overeenstemming van het resultaat met de verwachte output van de quantumcomputer.

Hoe kwantumcomputers werken. De puzzel samenstellen

Heel kort:

  • Er wordt een willekeurige structuur van 20 gemaakt uit 53 qubits met behulp van poorten.
  • De structuur wordt uitgevoerd met de beginstaat [0…0].
  • De uitvoer van de structuur is een willekeurige bitstring (sample).
  • De verdeling van het resultaat is niet willekeurig (interferentie).
  • De verdeling van de verkregen samples wordt vergeleken met de verwachte.
  • Er wordt geconcludeerd dat er sprake is van kwantumovermacht.

Dit betekent dat Google een synthetische taak heeft uitgevoerd op een 53-qubitprocessor, en zijn verklaring over het bereiken van kwantumovermacht baseert op het feit dat het onmogelijk is om zo'n processor te emuleren op standaard systemen binnen een redelijke tijd.

Om het te begrijpen — in dit deel wordt de prestatie van Google geenszins verminderd., de ingenieurs hebben echt geweldig werk geleverd, en de vraag of dit als echte kwantumovermacht kan worden beschouwd of niet, is zoals eerder gezegd, meer filosofisch dan technisch. Maar men moet begrijpen dat we, door dit rekenvoordeel te bereiken, niet ƩƩn stap dichterbij zijn gekomen om Shor's algoritme op 2048-bits getallen te draaien.

Samenvatting

(terug naar inhoudsopgave)
Hoe kwantumcomputers werken. De puzzel samenstellen

Kwantumcomputers en kwantumcomputing zijn een zeer veelbelovende, zeer jonge en voorlopig weinig toegepaste sector van de informatie-technologie.

De ontwikkeling van kwantumcomputing zal (ooit) het oplossen van de volgende taken mogelijk maken:

  • Het modelleren van ingewikkelde fysieke systemen op kwantumniveau.
  • Onoplosbaar op een gewone computer vanwege de rekenkundige complexiteit.

De belangrijkste problemen bij het creƫren en exploiteren van kwantumcomputers:

  • Decohorentie
  • Fouten (decoherentie en poorten).
  • De architectuur van processors (volledig verbonden configuraties van qubits).

De huidige stand van zaken:

  • Feitelijk - het meest basale. R&D..
  • ER IS NOG GEEN ECHTE commerciĆ«le exploitatie (en het is onduidelijk wanneer dit zal gebeuren).

Wat kan helpen:

  • Een fysieke ontdekking die de kosten voor de omhulling en exploitatie van processors verlaagt.
  • De ontdekking van iets dat de decoherentietijd met een orde van grote verhoogt en/of het aantal fouten verlaagt.

Naar mijn mening (uitsluitend een persoonlijke mening), zullen we in het huidige wetenschappelijke paradigma van kennis geen significante vooruitgang boeken in de ontwikkeling van kwantumtechnologie., hier is een kwalitatieve doorbraak in een of andere fundamentele of toegepaste wetenschap nodig, die nieuwe ideeƫn en methoden stimuleert.

Maar voorlopig – we verzamelen ervaring in kwantumprogrammering, bouwen en creĆ«ren kwantumalgoritmes, testen ideeĆ«n en nog veel meer. We wachten op een doorbraak.

Conclusie

(terug naar inhoudsopgave)

In dit artikel hebben we de belangrijkste mijlpalen in de ontwikkeling van quantumcomputing en quantumcomputers besproken, hun werking uitgelegd, de belangrijkste problemen bekeken waarmee ingenieurs te maken hebben bij de ontwikkeling en exploitatie van quantumprocessoren, en gekeken naar wat multi-qubit computers van D-Wave werkelijk zijn en de recente verklaring van Google over het bereiken van quantumovermacht.

Achter de schermen zijn er vragen over het programmeren van quantumcomputers (talen, benaderingen, methoden, enz.) en vragen met betrekking tot de specifieke fysieke realisatie van de processoren, zoals het beheer van qubits, de verbinding, het uitlezen, enz. Misschien is dit een onderwerp voor het volgende artikel of artikelen.

Bedankt voor uw aandacht, ik hoop dat dit artikel nuttig zal zijn voor iemand.

(C) Kruegger

Waardering

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

@Oxoron voor het redigeren en de opmerkingen op de oorspronkelijke tekst, evenals voor het artikel ā€œKenmerken van quantumcomputersā€

@a5b voor de informatieve en rijke opmerkingen bij ā€œKenmerken van quantumcomputersā€, en niet alleen bij haar, die me in grote mate hielpen deze puzzel te begrijpen.

Aan alle auteurs van artikelen en publicaties wiens materiaal is gebruikt bij het schrijven van dit artikel.

Lijst van bronnen

(terug naar inhoudsopgave)

Hoe kwantumcomputers werken. De puzzel samenstellen

Artikelen over de huidige situatie van [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

Artikelen van Habr (in willekeurige volgorde)

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/

Niet-gesorteerde (maar zeker interessante) artikelen van het internet

http://homepages.spa.umn.edu/~duplij/publications/Duplij-Shapoval_TOPOLOGICAL-QUANTUM-COMPUTERS.pdf
https://quantum.country/qcvc
http://extremal-mechanics.org/wp-content/uploads/2015/07/RIFFEL.pdf
https://thecode.media/quantum/
https://naked-science.ru/article/nakedscience/quantum-computers
https://ru.ihodl.com/technologies/2018-10-29/prosto-o-slozhnom-kak-rabotaet-kvantovyj-kompyuter/
https://pikabu.ru/story/chto_takoe_kvantovyiy_kompyuter_5204054
https://nplus1.ru/search?q=%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D0%B0%D1%8F+%D0%B0%D0%B7%D0%B1%D1%83%D0%BA%D0%B0
https://www.scottaaronson.com/blog/?p=4372
https://ru.wikipedia.org/wiki/%D0%9A%D0%B2%D0%B0%D0%BD%D1%82%D0%BE%D0%B2%D1%8B%D0%B9_%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80
https://quantumcomputingreport.com/scorecards/qubit-quality/
https://quantumcomputing.stackexchange.com/questions/2499/is-quantum-computing-just-pie-in-the-sky
https://quantumcomputing.stackexchange.com/questions/1289/how-does-a-quantum-computer-do-basic-math-at-the-hardware-level
https://www.extremetech.com/extreme/284306-how-quantum-computing-works
https://techno.nv.ua/it-industry/chto-takoe-kvantovyy-kompyuter-i-kvantovoe-prevoshodstvo-google-protiv-ibm-50049940.html
https://www.nature.com/articles/s41586-019-1666-5?utm_source=commission_junction&utm_medium=affiliate
https://petrimazepa.com/nemnogo_o_kvantovykh_kompyuterakh
https://www.forbes.ru/tehnologii/371669-ibm-protiv-d-wave-nastupila-li-era-kvantovyh-kompyuterov

Cursussen en lezingen

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

Bron: habr.com

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers šŸ”„ Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster