Evaluating the Effect of the Order of Optimization Passes in Quantum Circuit Optimization
Dit artikel onderzoekt de kritieke impact van de volgorde van optimalisatiepasses in quantum circuit compilatie, waarbij door middel van systematische evaluatie met Qiskit wordt aangetoond dat de sequentie van passes de diepte van het circuit en het aantal poorten significant beïnvloedt, waarbij de native gate set de primaire factor is bij het bepalen van de optimale volgorde.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
Quantumcomputers beloven problemen op te lossen die klassieke machines er duizenden jaren over zouden doen kraken, van het ontwerpen van nieuwe medicijnen tot het modelleren van complexe klimaatstelsels. Deze machines zijn echter ongelooflijk fragiel. De kleinste verstoring vanuit de omgeving kan ervoor zorgen dat ze fouten maken, een fenomeen dat bekend staat als ruis. Om dit te bestrijden, moeten wetenschappers hoogwaardige computerprogramma's vertalen naar instructies die de specifieke quantumhardware daadwerkelijk kan begrijpen. Dit vertaalproces, genaamd compilatie, voegt vaak extra stappen toe en maakt het circuit — het pad waar de informatie doorheen reist — langer en complexer. Een langer circuit betekent meer tijd voor fouten om binnen te dringen, dus is het doel om deze circuits zo kort en eenvoudig mogelijk te maken voordat ze worden uitgevoerd. Hier komt optimalisatie kijken: een set regels die ontworpen is om overbodige stappen weg te strippen en het circuit op te schonen.
Jarenlang wisten ingenieurs dat het toepassen van deze schoonmaakregels helpt, maar ze gingen er grotendeels van uit dat de volgorde waarin ze worden toegepast er niet veel toe deed. Men dacht dat zolang de regels maar werden toegepast, het resultaat ongeveer hetzelfde zou zijn. Een nieuwe studie daagt deze aanname uit en onthult dat de volgorde van deze optimalisatiestappen cruciaal is. Net zoals een chef een ander resultaat kan krijgen door groenten te snijden vóór het aanbraden versus eerst aanbraden, ontdekten de onderzoekers dat de volgorde van optimalisatiestappen in quantumcircuits de uiteindelijke kwaliteit van het programma drastisch kan veranderen.
De onderzoekers, werkend met de populaire Qiskit-software die wordt gebruikt om quantumcomputers te programmeren, zetten zich systematisch af om dit idee te testen. Ze selecteerden zestien verschillende optimalisatietechnieken, elk ontworpen om een specifiek type inefficiëntie te verhelpen. Sommige technieken voegen kleine stappen samen tot één, andere annuleren paren van operaties die elkaar ongedaan maken, en sommige herordenen de volgorde van stappen om ze efficiënter te maken. Het team keek niet alleen naar hoe goed elke techniek op zichzelf werkte; ze testten elke mogbare combinatie van twee van deze zestien technieken. Ze draalden dezelfde quantumcircuits door de compiler, waarbij ze eerst techniek A en dan B toepasten, en vervolgens B en dan A. Ze herhaalden dit voor alle honderdtwintig mogelijke paren, waarbij ze de lengte van het circuit en het totaal aantal stappen in elk resultaat maten.
De resultaten waren duidelijk en verrassend. In twaalf van de honderdtwintig paren maakte de volgorde een aanzienlijk verschil. In sommige gevallen produceerde één sequentie een circuit dat bijna de helft van de omvang van de andere had. De studie toonde aan dat bepaalde technieken een betere basis creëren waarop anderen kunnen werken. Bijvoorbeeld: het vroegtijdig verwijderen van nutteloze stappen kan nieuwe patronen onthullen die een latere techniek vervolgens kan vereenvoudigen, maar als die latere techniek eerst wordt uitgevoerd, kan deze die patronen volledig missen. De onderzoekers ontdekten dat de beste volgorde sterk afhangt van het specifieke type quantumhardware dat wordt doelgericht, aangezien verschillende machines verschillende "talen" van basisoperaties spreken. Bijvoorbeeld: een sequentie die het beste werkte voor het ene type machine, kon ineffectief zijn voor een ander.
Het team onderzocht ook of een slechte keuze in de volgorde later kon worden hersteld. Ze vroegen zich af of het een tweede keer uitvoeren van een techniek kon een suboptimale sequentie kon repareren. Ze vroegen zich af of het een tweede keer uitvoeren van een techniek een suboptimale sequentie kon repareren. In zeven van de twaalf gevallen waarin de volgorde ertoe deed, verbeterde het opnieuw toepassen van de eerste techniek inderdaad het resultaat, en maakte het soms zelfs een beter resultaat dan de oorspronkelijk beste sequentie. Dit was echter geen universele oplossing; in andere gevallen voegde het herhalen van de stappen onnodig werk toe zonder het resultaat te verbeteren. Dit suggereert dat hoewel een tweede ronde soms een slecht begin kan redden, het veel beter is om de volgorde de eerste keer goed te krijgen om tijd en middelen te voorkomen dat ze verspild worden.
Toen de onderzoekers hun tests uitbreidden naar sequenties van drie, vier of vijf technieken, merkten ze dat de interacties nog complexer werden. De beste volgorde voor een paar technieken bleef niet altijd standhouden wanneer een derde techniek werd toegevoegd. Soms moest een techniek die het beste aan het begin van een tweetrapsproces paste, naar het midden worden verplaatst wanneer een derde stap werd geïntroduceerd. Dit geeft aan dat de relatie tussen deze regels niet slechts een eenvoudige keten van oorzaak en gevolg is, maar een web van interacties waarbij de aanwezigheid van één regel het gedrag van de anderen verandert.
Op basis van hun bevindingen stelden de auteurs een nieuwe aanbevolen volgorde voor voor het toepassen van deze optimalisatieregels. Hun voorgestelde sequentie begint met het verwijderen van gates die bijna geen effect hebben, gevolgd door het herordenen van de resterende stappen om meer vereenvoudiging mogelijk te maken, gevolgd door patroonherkenning en de annulering van tegenovergestelde operaties. Deze aanbevolen volgorde verschilt van de standaardinstellingen die momenteel worden gebruikt in standaard quantumcompilers. Toen ze deze nieuwe volgorde testten tegen de standaard, ontdekten ze dat het verschil minimaal was in een gecontroleerde omgeving met alleen optimalisatiestappen. Echter, wanneer het volledige compilatieproces werd meegenomen, presteerde de nieuwe volgorde in veel gevallen iets beter, met name bij het verminderen van het totaal aantal stappen.
De studie concludeert dat er geen enkele "perfecte" volgorde is die voor elke situatie werkt. De beste sequentie hangt af van het specifieke circuit dat wordt gedraaid, de grootte van dat circuit en, het belangrijkste, de native gate set van de doelhardware. De onderzoekers benadrukken dat hoewel hun werk een sterk fundament en een beter startpunt biedt, de optimale route voor elk gegeven quantumprogramma waarschijnlijk uniek is. Hun werk verschuift de focus van het simpelweg toepassen van een vaste lijst met regels naar het begrijpen van de dynamische relaties tussen hen, om ervoor te zorgen dat quantumprogramma's zo efficiënt en foutbestendig mogelijk zijn voordat ze de hardware überhaupt aanraken.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.