Diese Seite wurde maschinell übersetzt.
Füllen Sie bitte eine 1-Minuten-Befragung zur Qualität dieser Übersetzung aus.
Verbesserung von Tensornetzwerkalgorithmen für Vielteilchen-Quantensysteme mit MATLAB
Von Dr. Anna Francuz, Universität Wien
„Mithilfe von MATLAB hat mein Team einen stabileren und effizienteren Ansatz für die Differenzierung von Tensornetzwerkalgorithmen entwickelt. … Wir wenden diesen Workflow aktiv an, um unser Verständnis stark verschränkter Quantensysteme zu vertiefen.“
Ein Leitstern der Quantencomputerforschung war von jeher, den Quantenvorteil nachzuweisen: Die Demonstration von Quantencomputern, die klassische Systeme bei praktischen Aufgaben wie Optimierung, Kryptografie oder Arzneimittelforschung übertreffen können. Bevor man jedoch Quantencomputer im großen Maßstab bauen kann, ist es notwendig, Tests im kleineren Maßstab durchzuführen und die Ergebnisse dieser Tests mit der Theorie zu vergleichen. Diese Arbeit – mit Schwerpunkt auf stark verschränkten Vielteilchen-Quantensystemen – ist der Hauptschwerpunkt meiner Forschung an der Universität Wien.
In den letzten 20 Jahren hat sich gezeigt, dass Tensornetzwerke zu den besten verfügbaren Werkzeugen für die Untersuchung stark verschränkter Systeme gehören. Dies liegt größtenteils daran, dass sie durch die Ausnutzung der Verschränkungsstruktur die Rechenkomplexität reduzieren (beispielsweise im Vergleich zu Quanten-Monte-Carlo-Methoden). Durch die Arbeit mit Tensornetzwerken können Forscher Optimierungstechniken einsetzen, um den Grundzustand eines Quantensystems zu finden. Aus diesem können sie die Magnetisierung und andere beobachtbare Größen (Observablen) berechnen, um die Eigenschaften des Systems zu verstehen und die Ergebnisse direkt mit experimentellen Daten zu vergleichen.
Bis vor Kurzem war die Durchführung dieser Optimierung problematisch, da frühere Ansätze auf Näherungsberechnungen für den Gradienten beruhten, einem entscheidenden Element im Differenzierungsprozess, der die Optimierung vorantreibt. Dieser Nachteil führte neben erheblichen Fehlern auch häufig dazu, dass Optimierungen das globale Minimum nicht fanden. Einige dieser Mängel konnten die Forscher durch die Umstellung auf automatische Differenzierung (AD) beheben. Allerdings traten auch andere Probleme zutage, wie etwa Divergenzen bei der Differenzierung einer Singulärwertzerlegung (SVD) und grundsätzliche Probleme bei der Implementierung der AD im Code.
Durch den Einsatz von MATLAB® hat mein Team einen stabileren und effizienteren Ansatz zur Differenzierung von Tensornetzwerkalgorithmen entwickelt. Wir kombinieren diese neuartige AD-Implementierung mit zwei weiteren Schlüsselelementen: Tensornetzwerkkontraktion mithilfe einer MATLAB Community-Toolbox und Hochleistungsrechnen mithilfe von MATLAB Parallel Server™. Wir wenden diesen Workflow aktiv an, um unser Verständnis stark verschränkter Quantensysteme zu vertiefen.
MATLAB und Tensornetzwerke in der Quantenphysik
Von Temo Vekua, MathWorks
Die Anwendung von Tensornetzwerken in der Quantenphysik wurde von einem herausragenden Physiker und führenden Forscher auf dem Gebiet der Quanteninformationstheorie vorangetrieben: Dr. Ignacio Cirac vom Max-Planck-Institut für Quantenoptik in München. Vor zwei Jahrzehnten entwickelten Dr. Cirac und Dr. Frank Verstraete eine Theorie der Tensornetzwerke zur Beschreibung von Quanten-Vielteilchensystemen. Dr. Francuz führt ihren akademischen Werdegang auf Dr. Cirac zurück: Ihr Mentor, Dr. Norbert Schuch, war Postdoktorand am Max-Planck-Institut, Dozent an der Technischen Universität München bei Dr. Cirac und später fest angestellter Forschungsgruppenleiter am Max-Planck-Institut für Quantenoptik in Garching, bevor er Professor an der Universität Wien wurde.
Dr. Cirac verließ sich bei seinen ersten Tensornetzwerkimplementierungen auf MATLAB. Er und sein Team aus etwa 40 Forschern verwenden es noch heute. „Ich verwende MATLAB hauptsächlich für die wissenschaftliche Programmierung“, erklärt er. „MATLAB funktioniert für mich gut und kann bei richtiger Verwendung genauso effizient sein wie kompilierte Sprachen.“ Die Anerkennung von MATLAB als wichtiges Werkzeug auf diesem Gebiet spiegelt die Ansichten von Dr. Francuz wider, die anmerkt: „Ich halte mich nicht für einen außergewöhnlichen Programmierer. Vielmehr bin ich ein Physiker, der MATLAB verwendet, um mit Tensornetzwerken etwas zu erarbeiten, was vorher noch nie gemacht wurde.“
Nachdem Dr. Cirac und sein Team den Wert von Tensornetzwerken für die Untersuchung niedrigdimensionaler (1D und 2D), stark korrelierter Quantensysteme gezeigt haben, arbeiten sie derzeit daran, die Methode auf 3D-Systeme auszuweiten.
Tensor-Netzwerkkontraktion, automatische Differenzierung und Optimierung
Wenn Forscher in der Quantenphysik Tensornetzwerke verwenden, arbeiten wir oft mit translationsinvarianten unendlichen Systemen. Solche Systeme erstrecken sich unendlich und haben Eigenschaften, die an jedem Punkt gleich sind, wenn sie um eine bestimmte Distanz verschoben (transliert) werden. Das bedeutet, dass der Hamilton-Operator – ein Operator, der die Gesamtenergie des Quantensystems darstellt – entweder eine periodische Wiederholung oder eine Gleichförmigkeit im gesamten System aufweist. Wenn wir also eine dieser Observablen berechnen, müssen wir zunächst das Tensornetzwerk auf etwas Handhabbares reduzieren (Abbildung 1). Um dies in unserem Workflow zu tun, verwenden wir ncon, eine MATLAB -Funktion, die von Robert N.C. Pfeifer, Glen Evenbly und ihren Kollegen entwickelt und mit der Community geteilt wurde. Die ncon-Funktion ermöglicht es uns, Tensornetzwerke effizient zu kontrahieren und die unendliche Umgebung einer lokalen Observablen mit einem endlichen Wert anzunähern.
Abbildung 1. Ein Zustand |Ψ(A)⟩ im quadratischen Gitter, das in B (rechts) dargestellt ist, wird durch Kontraktion der virtuellen (schwarzen) Indizes eines Tensors in A (links) erzeugt. (Bildquelle: Francuz, A., Schuch, N.,& Vanhecke, B. (2025). Stable and efficient differentiation of tensor network algorithms. Phys. Rev. Res., 7(1), 013237. American Physical Society. https://doi.org/10.1103/PhysRevResearch.7.013237. Lizenziert unter CC BY 4.0.)
Sobald wir das Tensornetzwerk kontrahiert haben, das in Form von dlarray-Objekten in MATLAB dargestellt wird, besteht der nächste Schritt darin, mit AD den Gradienten der Energie zu berechnen, der bei der Berechnung des Grundzustands minimiert werden soll. Bei der Implementierung unseres AD-Ansatzes in MATLAB haben wir drei kritische Probleme bestehender AD-Implementierungen behoben: hohe Speichernutzung, Instabilität bei Gradientenberechnungen und Ungenauigkeiten bei der Rückpropagierung von Gradienten.
Das erste Problem war der hohe Speicherverbrauch im Zusammenhang mit AD. Generische AD-Ansätze erfordern viel Speicher, um die Zwischenobjekte zu speichern, die während des iterativen Corner-Transfer-Matrix-Verfahrens (CTM) generiert werden, um lokale Observablen effizient zu berechnen. (CTM ist eine iterative Methode zur Annäherung an die Kontraktion zweidimensionaler Tensornetzwerke, insbesondere in projizierten verschränkten Paarzuständen, PEPS.) Ein alternativer Ansatz, der die Differenzierung der Festkommagleichung beinhaltet, kann dieses Speicherproblem zwar lindern, führt aber zu Komplikationen im Zusammenhang mit der Eichfixierung. Die Eichfixierung gewährleistet die Konsistenz der Tensordarstellung durch die Beseitigung von Mehrdeutigkeiten, ihre zuverlässige Umsetzung war jedoch bisher schwer fassbar. Wir haben die Grundursache dieser Schwierigkeiten ermittelt und zwei praktische Methoden vorgeschlagen, um die Eichtransformation zuverlässig zu fixieren und so das Speicherproblem zu lösen.
Das zweite bedeutende Problem war die Instabilität bei der Gradientenberechnung des SVD, einer entscheidenden Komponente des CTM-Algorithmus. Der Gradient ist schlecht konditioniert und wird in Fällen von Degenerationen undefiniert, wobei mehrere singuläre Werte gleich sind. Diese Degenerationen können Gradientenberechnungen destabilisieren, da selbst kleine Änderungen der Eingabe zu unverhältnismäßig großen Variationen der singulären Vektoren führen können. Um dieses Problem zu lösen, haben wir eine verborgene Eichsymmetrie innerhalb des CTM-Tensornetzwerks aufgedeckt und ausgenutzt. Obwohl dieser Ansatz über den herkömmlichen AD-Bereich hinausging, konnten wir dadurch eine stabile Lösung entwickeln, die mit AD-Frameworks kompatibel bleibt.
Schließlich haben wir Ungenauigkeiten in den zuvor verwendeten Gleichungen für die Rückpropagation von Gradienten durch die gekürzte SVD behoben. Diese Gleichungen gingen fälschlicherweise davon aus, dass das abgeschnittene Spektrum Null sei, wodurch ein wesentlicher Term ausgelassen wurde und es zu erheblichen Fehlern kam. Bei der Backpropagation von Gradienten, bei der berechnet wird, wie sich Parameteränderungen durch eine Abfolge von Operationen fortpflanzen, sind für eine genaue Optimierung präzise Gradientenberechnungen erforderlich. Wir haben eine korrigierte Gradientenformulierung für die gekürzte SVD abgeleitet, die das gekürzte Spektrum berücksichtigt. Diese Korrektur verbesserte die Genauigkeit erheblich und erforderte nur geringfügige Änderungen am vorhandenen AD-Code.
Nachdem wir die AD-Verbesserungen in MATLAB implementiert hatten, waren wir bereit, die von unserer AD-Implementierung generierten Gradienten in Optimierungsaufgaben zu verwenden, beispielsweise bei der Minimierung der Energie, um den Grundzustand von Quantensystemen zu finden. Für diesen Teil des Workflows verwenden wir einen Broyden-Fletcher-Goldfarb-Shanno- Algorithmus (L-BFGS) mit begrenztem Speicher, basierend auf der fminunc-Funktion aus der Optimization Toolbox™ und übergeben die benutzerdefinierte Funktion, die wir zur Berechnung des Gradienten geschrieben haben (Abbildung 2).
Abbildung 2. Optimierungsdiagramm mit zwei verschiedenen Gradienten. Bei Verwendung des Gradienten aus herkömmlicher AD (orangefarbene Quadrate) gerät die Optimierung schnell ins Stocken. Die Optimierung konvergiert zu einem globalen Minimum, indem die Optimierung mit dem Gradienten aus der verbesserten AD-Implementierung (grüne Kreise) neu gestartet wird. (Bildquelle: Bildquelle: Francuz, A., Schuch, N.,& Vanhecke, B. (2025). Stable and efficient differentiation of tensor network algorithms. Phys. Rev. Res., 7(1), 013237. American Physical Society. https://doi.org/10.1103/PhysRevResearch.7.013237. Lizenziert unter CC BY 4.0.)
Paralleles Rechnen mit MATLAB auf dem Austrian Scientific Computing
Phasendiagramme sind ein wichtiges Hilfsmittel bei der Untersuchung von Quanten-Vielteilchensystemen, da sie eine visuelle Darstellung der verschiedenen Phasen (Zustände) eines Systems als Funktion verschiedener Parameter, einschließlich der Zeit, bieten. Um Phasendiagramme zu erstellen, müssen wir einen Parameter im Hamilton-Operator über einen bestimmten Bereich variieren und den Grundzustand für jeden Parameterwert berechnen. Dies ermöglicht uns, Phasenübergänge zu identifizieren, wenn das System sein Verhalten abrupt ändert: beispielsweise beim Wechsel von einem supraleitenden in einen isolierenden Zustand.
Da die sequentielle Berechnung des Grundzustands für zahlreiche Parameterwerte auf einem einzelnen Laptop ein äußerst langsamer Prozess sein kann – und da der Speicherbedarf oft über dem liegt, was Standard-Laptops bieten – planen wir, diese Verarbeitung auf dem Austrian Scientific Computing (ASC) mit MATLAB Parallel Server™ durchzuführen. ASC beherbergt die leistungsstärksten Supercomputer Österreichs, darunter VSC-4 mit 790 Knoten und insgesamt 37.920 Kernen und VSC-5 mit 710 Knoten und insgesamt 98.560 Kernen.
Zu Beginn nahm ich an einem Workshop von MathWorks -Ingenieuren teil, in dem es um paralleles Rechnen mit MATLAB und die Verwendung von MATLAB auf den HPC-Systemen des ASC ging. Durch die parallele Ausführung von Grundzustandsberechnungen auf dem ASC kann unser Team schnell Eigenschaften virtueller Quantensysteme berechnen, die wir direkt mit experimentell gemessenen Eigenschaften realer Systeme vergleichen können.
Tatsächlich planen wir derzeit, MATLAB Parallel Server auf ASC zu verwenden, um Phasendiagramme für einen programmierbaren Quantensimulator zu untersuchen, der mit 256 Quantenbits (Qubits) arbeiten kann. Die Erforschung dieses und ähnlicher Systeme mit 2D-Tensornetzwerken ist ein Schwerpunkt unserer laufenden Forschung.
Veröffentlicht 2025