Een onderzoeksteam van Google claimde dat hun quantumcomputer Sycamore een rekenklus heeft verricht die op de snelste ‘gewone’ computer, Summit van IBM, minstens tienduizend jaar zou duren. Waarop IBM liet zien dat Summit dit ook in tweeënhalve dag kan. Niettemin heeft Sycamore echt een grens verlegd.
De quantum-rekenklus van Sycamore werd deze week gepubliceerd in vakblad Nature. In een begeleidende News & Views – een minder technisch artikel waarin een onafhankelijke deskundige het onderzoek in perspectief plaatst – vergeleek computerwetenschapper William Oliver deze prestatie met de vlucht van de gebroeders Wright in 1903. Zij slaagden er als eersten in, om met een ‘zwaarder dan lucht’-voertuig op eigen kracht op te stijgen en weer veilig te landen. Het was een vlucht van maar een paar honderd meter, maar waar dat toe geleid heeft weten we inmiddels.
De rekenklus die Sycamore verrichtte, random circuit sampling (zie de uitleg verderop), is op zich net zo nutteloos als die eerste vlucht van de gebroeders Wright, maar wel bij uitstek geschikt om een quantumcomputer te laten schitteren. Hoewel het in theorie duidelijk is dat een quantumcomputer sommige rekenklussen veel en veel sneller kan verrichten dan een klassieke computer, is het experimenteel uiterst lastig om zelfs maar een heel klein werkend prototype te bouwen.
Dat Google op het punt stond ‘quantumsuprematie’ te bereiken zoemde al eerder rond, maar dat leidde toen nog niet tot een publicatie in een toonaangevend vakblad als Nature.
De term quantumsuprematie is in 2012 bedacht door natuurkundige John Preskill, waarmee hij bedoelde: de eerste keer dat een quantumcomputer echt iets uitrekent wat voor de grootste klassieke supercomputer niet meer haalbaar is. Het is onvermijdelijk een wat vaag begrip, want wat is ‘haalbaar’? Krijgt de supercomputer één week de tijd om het kunstje van de quantumcomputer na te doen? Of een jaar? Honderd jaar misschien? In Nature claimt het Google-team nu dat Sycamore tweehonderd seconden nodig had voor een berekening waar de krachtigste supercomputer van dit moment, Summit van IBM, minstens tienduizend jaar over zou doen.
Tegelijkertijd 0 en 1
Bepalend voor de capaciteit van een quantumcomputer is het aantal qubits. Een gewone bit is de eenheid van informatie die de waarde 1 of 0 heeft, en waar gewone computers mee rekenen door ze op te tellen, vermenigvuldigen, en zomeer. Maar een qubit is de quantummechanische eenheid van informatie die – onbegrijpelijk, maar echt waar – tegelijkertijd 0 en 1 is in een zekere mix, bijvoorbeeld tachtig procent 1, en twintig procent 0.
Fysiek kan een qubit een los elektron in een klein diamantje zijn, of een nanostructuur op een chip, die in twee toestanden tegelijk verkeert. Pas als je ‘kijkt’ (een meting doet) neemt de qubit met een zekere kans de waarde 0 of 1 aan. In het voorbeeld hierboven is er dus tachtig procent kans op een meting die uitkomst 1 oplevert, en twintig procent kans op uitkomst 0.
Maar zolang je geen meting doet, kunnen meerdere qubits met elkaar verstrengeld zijn, dat wil zeggen: elkaar beïnvloeden volgens de regels van de quantummechanica. Daardoor verkeren twee verstrengelde qubits samen in vier toestanden tegelijk, namelijk een mix van 00, 01, 10, 11. Met elke extra qubit verdubbelt het aantal mogelijke toestanden van het geheel. Sycamore bestaat uit een netwerk van 53 met elkaar verstrengelbare qubits, zodat het aantal toestanden 253 = 9.007.199.254.740.992 is, ruwweg het aantal regendruppels dat op een herfstige dag valt in Nederland.
Virtuele dobbelsteen
De qubits zijn onderling verbonden met instelbare koppelingen, waarmee de onderzoekers konden kiezen of naaste buren wel of niet met elkaar verstrengeld kunnen raken. Vanuit een willekeurige begintoestand – die nog met behulp van gewone toevalsgetallen werd uitgekozen – volgden twintig opeenvolgende rondes van verstrengeling, waarin de koppelingen volgens een bepaald schema telkens veranderden.
Wat je dan hebt gemaakt is een gigantische virtuele dobbelsteen met 9.007.199.254.740.992 zijvlakken, en iedere keer dat je de toestand van de 53 qubits uitleest, komt overeen met een worp van die dobbelsteen, bijvoorbeeld:
11001011000010101101010110110101001010100101010101011
Maar die dobbelsteen is niet ‘eerlijk: door de willekeurig gekozen netwerkstructuur en de opeenvolgende verstrengelingsrondes, heeft elke uitkomst een iets andere kans. De 9.007.199.254.740.992 zijvlakken van de dobbelsteen zijn als het ware verschillend van grootte.
De échte kansverdeling
Hoe check je of een gewone dobbelsteen met 6 zijvlakken eerlijk is? Door een heleboel worpen met die dobbelsteen te doen, en te kijken of elke uitkomst ongeveer even vaak voorkomt. En ‘een heleboel’ is: veel meer dan 6. Om met enige zekerheid te kunnen concluderen dat een dobbelsteen eerlijk is, zul je minstens een keer of honderd moet gooien. Om op deze manier van een niet-eerlijke dobbelsteen met enige nauwkeurigheid te bepalen wat de kans is om 1,2,3,4,5 of 6 te gooien, is nog veel lastiger. Wat je hier doet is een steekproef nemen uit alle mogelijke uitkomsten, en die geeft een benadering van de echte kansverdeling over de mogelijke worpen 1,2,…, 6.
Dit is het idee van random circuit sampling: zowel de quantumcomputer Sycamore als een klassieke supercomputer werpen een groot aantal keren met de virtuele dobbelsteen, en proberen daaruit de echte kansverdeling van de virtuele dobbelsteen te bepalen. Voor Sycamore is een worp simpelweg het uitlezen van de 53 qubits, wat ongeveer een miljoen keer kan in 200 seconden. Een klassieke computer kan alleen een worp doen door elke individuele qubit, koppeling en verstrengelingsronde apart te simuleren, wat heel veel rekenwerk is.
Om de quantumsuprematie van Sycamore aan te tonen, moet je wel een paradox omzeilen: je moet het netwerk van 53 qubits zo ingewikkeld maken dat je dit met een gewone supercomputer niet meer in een redelijke tijd door kunt rekenen. Hoe weet je dan of de worpen van Sycamore wel een goede indruk geven van de werkelijke kansverdeling voor de desbetreffende virtuele dobbelsteen?
Versimpelde versie
Als er echt sprake is van quantumsuprematie, dan is dit niet te checken. Wat de Google-onderzoekers daarom gedaan hebben, is een virtuele dobbelsteen maken met een gehalveerde versie van het qubit-netwerk, en met een volledige maar versimpelde versie van het netwerk. Deze waren nog wel klassiek door te rekenen, door de krachtigste supercomputer ter wereld, Summit van IBM. Dan blijken de kansverdelingen zoals bepaald door Sycamore zeer sterk te lijken op de kansverdelingen zoals berekend door Summit.
Het Google-team schatte op basis van deze resultaten in dat Summit aan de volwaardige virtuele dobbelsteen tienduizend jaar rekentijd kwijt zou zijn. Daarom hebben ze die miljoen worpen met de volwaardige virtuele dobbelsteen gearchiveerd, voor het geval, zo dachten ze, dat een nog krachtiger klassieke supercomputer in de verre toekomst die wel door kan rekenen.
Zwaar onderschat
Maar ze hadden de inventiviteit van de IBM-onderzoekers zwaar onderschat. Die publiceerden vrijwel gelijktijdig met het artikel in Nature een artikel waarin ze lieten zien hoe Summit met een paar slimme trucs en door veel extra geheugenruimte te gebruiken, de volwaardige virtuele dobbelsteen in tweeënhalve dag kan doorrekenen. Dit is een simulatie, en niet werkelijk gedaan, omdat zelfs IBM-onderzoekers de grootste supercomputer ter wereld niet zomaar even een paar daagjes kunnen claimen. Niettemin is de claim van Sycamores quantumsuprematie hiermee zwaar ondergraven.
Is IBM’s weerlegging belangrijk? Vooral voor de media, die gretig aanslaan op het woord quantumsuprematie. Bedenker John Preskill heeft er eigenlijk al spijt van dat hij de term ooit gelanceerd heeft. Maar het is onomstreden dat Sycamore met zijn netwerk van 53 betrouwbaar functionerende qubits een grote technische stap vooruit is in het bouwen van een echte quantumcomputer. Ook hoeft het netwerk maar met een stuk of tien qubits uitgebreid te worden om ervoor te zorgen dat Summit het ondanks al die slimme trucs toch niet meer kan bijbenen. Dat Sycamore op dit moment formeel nog geen quantumsuprematie kan claimen, is maar een detail.