Kwantumcomputing begrijpen

Kwantumcomputing lijkt de oplossing te kunnen bieden voor een aantal van de grootste uitdagingen op onze planeet, bijvoorbeeld op het gebied van milieu, landbouw, gezondheid, energie, klimaat, materiaalwetenschappen en andere gebieden waar we nog mee te maken krijgen. Voor sommige van deze problemen wordt klassieke computing steeds moeilijker naarmate de grootte van het systeem groeit.

Kwantumcomputers zijn bestuurbare kwantummechanische apparaten die de eigenschappen van de kwantumfysica gebruiken om berekeningen uit te voeren. Voor sommige rekentaken biedt kwantumcomputing exponentiële versnellingen. Deze versnellingen zijn mogelijk dankzij drie verschijnselen uit de kwantummechanica: superpositie, interferentie en verstrengeling.

Net zoals bits het fundamentele informatieobject zijn in klassieke computing, zijn qubits (kwantumbits) het fundamentele object van informatie in kwantumcomputing. Hoewel een bit, of binair cijfer, een waarde van 0 of 1 kan hebben, kan een qubit een waarde hebben die 0, 1 of een kwantumsuperpositie van 0 en 1 is.

Een fundamenteel verschil tussen klassieke computers en kwantumcomputers is dat programma’s in kwantumcomputers intrinsiek probabilistisch zijn, terwijl klassieke computers meestal deterministisch zijn. In kwantumalgoritmen heeft elk mogelijk resultaat een bijbehorende waarschijnlijkheids amplitude. Na een meting wordt een van de mogelijke staten met een bepaalde waarschijnlijkheid verkregen. Dit feit staat in contrast met het klassieke computing, waar een bit alleen maar deterministisch 0 of 1 kan zijn.

Zie geschiedenis en achtergrond van kwantumcomputing voor meer informatie over het begin en de motivatie van kwantumcomputing.

Waarvoor kan kwantumcomputing worden gebruikt?

Een kwantumcomputer is geen supercomputer die alles sneller kan. Een van de doelstellingen van kwantumcomputingonderzoek is om te onderzoeken welke problemen sneller kunnen worden opgelost door een kwantumcomputer dan een klassieke computer en hoe groot de versnelling kan zijn.

Kwantumcomputers doen het uitzonderlijk goed in problemen waarvoor berekening van veel mogelijke verschillende combinaties is vereist. Dit type problemen vindt u op veel gebieden.

Kwantumsimulatie

Kwantummechanica is het onderliggende 'besturingssysteem' van ons universum. In dit artikel wordt beschreven hoe de fundamentele bouwstenen van de natuur zich gedragen. Het gedrag van de aard, zoals chemische reacties, reacties van het publiek en materiaalontwikkelingen, hebben vaak betrekking op kwantuminteracties van veel body's. Voor het simuleren van intrinsiek kwantummechanische systemen, zoalscuulmen, is kwantumcomputing een belofte, omdat qubits kunnen worden gebruikt om de natuurlijke toestanden in kwestie weer te geven.

Kwantumcryptografie

Cryptografie is de techniek van het ontsleutelen van vertrouwelijke informatie met behulp van fysieke of wiskundige middelen, zoals het gebruik van rekenkundige problemen bij het oplossen van een bepaalde taak. Klassieke cryptografie is gebaseerd op de onoplosbaarheid van problemen, zoals ontbinding in priemgetallen of afzonderlijke logaritmen. Veel van die problemen kunnen echter efficiënter kunnen worden opgelost met behulp van kwantumcomputers.

In 1994 gaf Peter Shor aan dat een schaalbare kwantumcomputer klassieke cryptografische schema's kan breken, zoals het RSA-schema (Rivest-Shamir–Adleman), dat veel wordt gebruikt in e-commerce voor beveiligde gegevensoverdracht. Dit schema is gebaseerd op de praktische problemen van het rekening houden met priemgetallen met behulp van klassieke algoritmen.

Kwantumcryptografie is een belofte van informatiebeveiliging door gebruik te maken van basisfysica in plaats van veronderstellingen over complexiteit. RSA is tegenwoordig veilig omdat er nog geen schaalbare kwantumcomputer beschikbaar is. Maar nadat kwantumcomputers op grote schaal zijn gebouwd, kunnen kwantumalgoritmen voor polynomiale tijd de onderliggende wiskundige problemen voor deze cryptosystemen aanvallen.

Met het oog op een voldoende grote en fouttolerante kwantumcomputer wordt actief onderzoek gedaan naar het volgende:

  • Schat de beveiliging voor cryptosystemen met een bepaalde bitlengte in een post-kwantumomgeving.
  • Maak een schatting van hoe lang het duurt om de huidige cryptosystemen naar nieuwe te migreren.

Zoekalgoritmen

In 1996 ontwikkelde Lov Grover een kwantumalgoritme waarmee ongestructureerde gegevenszoekopdrachten fors sneller en in minder stappen konden worden uitgevoerd dan met welk klassiek algoritme ooit tevoren.

Het zoekprobleem is ontworpen om generiek te zijn. Elk probleem waarmee u kunt controleren of een bepaalde waarde $x$ een geldige oplossing is (een 'ja of nee-probleem') kan inderdaad worden geformuleerd in termen van het zoekprobleem. Hier volgen enkele voorbeelden:

  • Booleaans vervulbaarheidsprobleem: Is de set Booleaanse waarden $x$ een interpretatie (een toewijzing van waarden aan variabelen) die de gegeven booleaanse-formule vervuld?
  • Reizende-handelaarprobleem: Beschrijft $x$ de kortst mogelijke lus die alle steden verbindt?
  • Probleem met doorzoeken van databases: Bevat de databasetabel een record $x$?
  • Probleem met gehele getallen ontbinden in priemfactoren: Is het vaste getal $N$ deelbaar door het getal $x$?

Sommige van deze problemen zijn geschikter om te profiteren van het gebruik van het algoritme van Grover dan andere. Zie de theorie van het zoekalgoritme van Grover voor meer informatie. Zie deze zelfstudie voor het implementeren van het zoekalgoritme van Grover voor een praktische implementatie van het algoritme van Grover voor het oplossen van wiskundige problemen.

Kwantum-machine learning

Machine learning op klassieke computers brengt een revolutie teweeg in de wereld van de wetenschap en het bedrijfsleven. De hoge rekenkosten voor training van de modellen belemmeren echter de ontwikkeling en het bereik ervan. Op het gebied van kwantum-machine learning wordt verkend hoe we kwantumsoftware kunnen ontwerpen en implementeren om machine learning sneller te kunnen uitvoeren dan op klassieke computers.

De Quantum Development Kit (QDK) van Microsoft wordt geleverd met de quantum machine learning-bibliotheek die u de mogelijkheid biedt om hybride kwantum-/klassieke machine learning uitvoeren. De bibliotheek bevat voorbeelden en zelfstudies en voorziet in de nodige hulpprogramma's voor het implementeren van een nieuw hybride kwantum/klassiek algoritme, de circuit-gerichte kwantumclassificatie, om geleide classificatieproblemen op te lossen.

Hoe lost kwantumcomputing problemen op?

Voor sommige rekentaken biedt kwantumcomputing exponentiële versnellingen. Deze versnellingen zijn mogelijk dankzij drie verschijnselen uit de kwantummechanica: superpositie, interferentie en verstrengeling.

Superpositie

Stel, u doet lichamelijke oefeningen in uw woonkamer. U draait helemaal naar links en vervolgens helemaal naar rechts. Draai nu tegelijkertijd naar links en rechts. Dat kunt u niet (tenzij u zichzelf in tweeën kunt splitsen). Natuurlijk kunt u zich niet in twee standen tegelijk bevinden: u kunt niet op hetzelfde moment zowel naar links als naar rechts kijken.

Als u echter een kwantumdeeltje bent, is er een bepaalde kans dat u naar links kijkt én een bepaalde kans dat u naar rechts kijkt als gevolg van het verschijnsel superpositie (ook wel bekend als coherentie).

Een kwantumdeeltje, zoals een elektron, heeft zijn eigen eigenschappen voor de naar links of rechts kijkende toestand, zoals een draaiing, omhoog of omlaag. Om dit meer te relateren aan klassieke binaire computing, kunnen we die ook 1 of 0 noemen. Wanneer een kwantumdeeltje zich in een toestand van superpositie bevindt, is het een lineaire combinatie van een oneindig aantal toestanden tussen 1 en 0, maar u weet niet welke toestand totdat u deze daadwerkelijk bekijkt. Daarmee komen we toe aan het volgende verschijnsel: kwantummeting.

Verstrengeling

Een van de interessantste verschijnselen van kwantummechanica is de mogelijkheid van twee of meer kwantumdeeltjes om met elkaar verstrengeld te raken. Wanneer deeltjes verstrengeld raken, vormen ze één systeem waarvan de kwantumtoestand van elk afzonderlijk deeltje niet onafhankelijk kan worden beschreven van de kwantumtoestand van de andere deeltjes. Als u dus een bewerking of proces toepast op een deeltje, is die bewerking of dat proces ook gecorreleerd aan de andere deeltjes.

Naast deze onderlinge afhankelijkheid kunnen deeltjes deze verbinding behouden, zelfs wanneer ze worden gescheiden over zeer grote afstanden. De effecten van kwantummeting zijn ook van toepassing op verstrengelde deeltjes. Als een deeltje wordt gemeten en ineenstort, stort ook het andere deeltje in. Omdat er sprake is van een correlatie tussen de verstrengelde qubits, biedt het meten van de toestand van een qubit informatie over de toestand van de andere qubit: deze eigenschap is zeer nuttig bij kwantumcomputing.

Notitie

Niet elke correlatie tussen de metingen van de twee qubits betekent dat de twee qubits verstrengeld zijn. Klassieke bits kunnen ook gecorreleerd zijn. Twee qubits zijn verstrengeld wanneer ze correlaties presenteren die niet kunnen worden gereproduceerd met behulp van klassieke bits. Dit verschil tussen klassieke en kwantumcorrelaties is subtiel, maar essentieel voor de versnelling van kwantumcomputers.

Zie de zelfstudie kwantumverstrengeling verkennen met voor meer informatie. Q#

Qubits en waarschijnlijkheid

Op klassieke computers wordt informatie verwerkt en opgeslagen in bits, die een toestand van 1 of 0 kunnen hebben, maar nooit beide. Het equivalent van een bit in kwantumcomputing is de qubit. Qubits geven de toestand van een kwantumdeeltje aan. Vanwege superpositie kan de toestand van qubits 1 of 0 zijn, of iets er tussenin. Afhankelijk van de configuratie van een qubit, heeft deze een bepaalde kans ineen te storten tot 1 of 0. De kans dat de qubit ineenstort tot een 1 of 0 wordt bepaald door kwantuminterferentie.

Weet u nog van die vriend(in) die een foto van u nam? Stel dat er een speciaal filter op de camera zat, en wel een interferentiefilter. Als we het filter 70/30 selecteren en vervolgens foto's nemen, kijkt u in 70% van de foto's naar links en in 30% van de foto's naar rechts. Het filter heeft de normale toestand van de camera beïnvloed om de kans op het gedrag ervan te beïnvloeden.

Op soortgelijke wijze beïnvloedt kwantuminterferentie de toestand van een qubit om de kans op een bepaalde uitkomst van een meting te beïnvloeden, en deze probabilistische toestand is waarin de kracht van kwantumcomputing uitblinkt.

Zo kunt u bijvoorbeeld met twee bits op een klassieke computer, waarbij elke bit 1 of 0 bevat, vier mogelijke waarden opslaan: 00, 01, 10 en 11, maar slechts één tegelijk. Met twee qubits in superpositie kan elke qubit 1 of 0 of beide zijn. Daarmee kunnen dus dezelfde vier waarden tegelijkertijd worden uitgedrukt. Met drie qubits kunnen acht waarden worden uitgedrukt, met vier qubits kunnen zestien waarden worden uitgedrukt, enzovoort.

Kwantumcomputers versus kwantumsimulators

Een kwantumcomputer is een computer die de kracht van klassieke en kwantumcomputing combineert. De huidige kwantumcomputers komen overeen met en hybride model: een klassieke computer die een kwantumprocessor beheert.

De ontwikkeling van kwantumcomputers staat nog in de ontwikkeling van deze computers in de ontwikkeling. De kwantumhardware en hun onderhoud zijn duur en de meeste systemen bevinden zich in universiteiten en onderzoekslabs. In klassieke computers worden welbekende siliciumchips gebruikt, terwijl in kwantumcomputers kwantumsystemen zoals atomen, ionen, fotonen of elektronen worden gebruikt. Ze gebruiken hun kwantumeigenschappen om bits te vertegenwoordigen die kunnen worden voorbereid in andere kwantumsuperposities van 1 en 0. De technologie gaat echter vooruit en sommige systemen zijn (beperkt) vrij toegankelijk.

Kwantumhardware

Een kwantumcomputer heeft drie primaire onderdelen: een apparaat dat de qubits bevat, een methode voor het uitvoeren van kwantumbewerkingen (ook wel kwantumpoorten genoemd) naar de qubits en het meten ervan, en een klassieke computer om een programma uit te voeren en instructies te verzenden. Het type qubit dat is gekozen om een kwantumcomputer te bouwen, bepaalt de implementatie hiervan.

  • Het kwantummateriaal dat voor qubits wordt gebruikt, is kwetsbaar en zeer gevoelig voor storingen uit de omgeving. Voor supergeleidende qubits wordt de eenheid met de qubits bijvoorbeeld op een temperatuur net boven absolute nul gehouden om de samenhang te maximaliseren. Bij andere typen systemen die qubits bevatten, wordt gebruikgemaakt van een vacuümkamer om trillingen te minimaliseren en de qubits te stabiliseren.
  • Bewerkingen of kwantumpoorten kunnen worden uitgevoerd met behulp van verschillende methoden, waaronder deing, laser en spanning, afhankelijk van het type qubit.

Het bedienen van kwantumcomputers kent een groot aantal uitdagingen. Foutcorrectie in kwantumcomputers vormt een aanzienlijk probleem en het opschalen (toevoegen van meer qubits) verhoogt het aantal fouten dat optreedt. Vanwege deze beperkingen is een kwantum-pc voor op het bureau nog toekomstmuziek; een commercieel interessante kwantumcomputer in een laboratorium is echter dichterbij.

Microsoft is bezig met de ontwikkeling van een kwantumcomputer op basis van topologische qubits. Een topologische qubit wordt minder beïnvloed door wijzigingen in de omgeving, waardoor de vereiste mate van externe foutcorrectie wordt verkleind. Topologische qubits zijn stabieler en beter bestand tegen omgevingsruis, wat betekent dat ze makkelijker kunnen worden geschaald en langer betrouwbaar blijven.

Kwantumsimulators

Het gebruik van echte kwantumhardware is momenteel beperkt vanwege resources en budget. In de tussentijd dienen kwantumsimulators om kwantumalgoritmen uit te voeren, waardoor het eenvoudig is om een algoritme te testen en fouten op te sporen en het vervolgens op echte hardware uit te voeren met het vertrouwen dat het resultaat aan de verwachtingen zal voldoen.

Kwantumsimulators zijn softwareprogramma's die worden uitgevoerd op klassieke computers en die het mogelijk maken om kwantumprogramma's uit te voeren en te testen in een omgeving die voorspelt hoe qubits reageren op verschillende bewerkingen. De Quantum Development Kit (QDK) van Microsoft bevat verschillende klassen kwantumsimulators die verschillende manieren vertegenwoordigen om hetzelfde kwantumalgoritme te simuleren, waaronder een ruissimulator voor het simuleren van kwantumalgoritmen onder de aanwezigheid van ruis en een resource-estimator.

Zie Quantum Simulators (Kwantumsimulators) voor meer informatie.

Het proces van kwantumcomputing

Het uitvoeren van berekeningen op een kwantumcomputer of kwantumsimulator volgt een eenvoudig proces:

  • Toegang tot de qubits
  • Initialiseren van de qubits tot de gewenste toestand
  • Bewerkingen uitvoeren om de toestanden van de qubits te transformeren
  • Meten van de nieuwe toestanden van de qubits

Het initialiseren en transformeren van qubits wordt uitgevoerd met behulp van kwantumbewerkingen (ook wel kwantumpoorten genoemd). Kwantumbewerkingen zijn vergelijkbaar met logische bewerkingen in het klassieke computing, zoals AND, OR, NOT en XOR. Een bewerking kan heel eenvoudig zijn, bijvoorbeeld het omkeren van de toestand van een qubit van 1 naar 0. Het kan ook ingewikkelder zijn, zoals het verstrengelen van een paar qubits of het gebruik van meerdere bewerkingen in serie om de kans te beïnvloeden dat een qubit in superpositie ineenstort (naar een van beide toestanden).

Notitie

De Q#-bibliotheken bieden ingebouwde bewerkingen waarmee complexe combinaties van kwantumbewerkingen op een lager niveau worden gedefinieerd. U kunt de bewerkingen uit de bibliotheek gebruiken om qubits te transformeren en om complexe, door de gebruiker gedefinieerde bewerkingen te creëren.

Als de uitkomst van de berekening wordt gemeten, hebben we een antwoord, maar voor sommige kwantumalgoritmen is dat niet noodzakelijkerwijs het juiste antwoord. Omdat de uitkomst van bepaalde kwantumalgoritmen is gebaseerd op de waarschijnlijkheid die is geconfigureerd door de kwantumbewerkingen, worden deze berekeningen meerdere keren uitgevoerd om een kansverdeling te krijgen en de nauwkeurigheid van de uitkomsten te verfijnen. Zekerheid dat een bewerking een correct antwoord retourneert, wordt wel kwantumverificatie genoemd en vormt een aanzienlijke uitdaging voor de kwantumcomputing.

Azure Quantum computinghardwarepartners

Microsoft is een partnerschap aangegaan met kwantumhardwarebedrijven om ontwikkelaars cloudtoegang tot kwantumhardware te bieden. Met het Azure Quantum-platform en de taal Q# kunnen ontwikkelaars kwantumalgoritmen verkennen en hun kwantumprogramma's uitvoeren op verschillende typen kwantumhardware.

  • Quantum Solutions( Kwantumoplossingen) : een systeem met een hoge betrouwbaarheid, volledig verbonden qubits en de mogelijkheid om metingen in het middencircuit uit te voeren.
  • IONQ:dynamisch herconfigureerbare, vastgelopen ionen kwantumcomputer voor maximaal 11 volledig verbonden qubits, waarmee u een twee-qubit-gate tussen elk paar kunt uitvoeren.
  • Quantum Circuits, Inc:snelle en hoogwaardige supergeleidende circuits met krachtige realtime feedback om foutcorrectie mogelijk te maken.

Zie de volledige doellijst voor Kwantumcomputing voor meer informatie.

Volgende stappen