SQD et SKQD
Dans ce chapitre, nous allons explorer comment les ordinateurs quantiques et classiques collaborent pour résoudre l'un des défis les plus importants de la science : estimer précisément l'énergie de molécules et de matériaux.
Iskandar Sitdikov décrit l'approche algorithmique dans la vidéo suivante.
Hamiltonien
La clé de ce problème est un opérateur mathématique — le Hamiltonien, qui représente l'énergie totale d'un système. À des fins de calcul, on peut considérer ce Hamiltonien comme une grande matrice. Les solutions que nous recherchons — en particulier l'état fondamental du système — correspondent aux valeurs propres les plus basses de cette matrice. Le problème, cependant, est que pour des cas pratiques, cette matrice hamiltonienne est très grande. Elle croît de façon exponentielle avec la taille du système, devenant rapidement trop volumineuse ( où est le nombre de qubits) pour que même les supercalculateurs les plus puissants puissent la stocker ou la résoudre directement.
Pour contourner ce problème, on utilise une stratégie puissante appelée la méthode des sous-espaces. Au lieu de s'attaquer à toute la matrice, on sélectionne intelligemment une petite tranche pertinente — un « sous-espace » — qui contient, selon nous, les informations les plus importantes sur la solution basse-énergie recherchée.
Une fois ce petit sous-espace défini par un ensemble d'états de base , le Hamiltonien complet est projeté sur ce sous-espace pour créer la nouvelle matrice plus petite . Chaque élément de cette matrice est calculé à partir des états de base du sous-espace et du Hamiltonien original, selon . Cette petite matrice peut alors être facilement diagonalisée sur un ordinateur classique, et les valeurs propres obtenues sont nos énergies estimées.
Comme tu peux l'imaginer, le succès de cette approche repose largement sur le choix d'un « bon » sous-espace. Si notre sous-espace ne représente pas fidèlement le vrai état fondamental, notre réponse finale sera incorrecte. C'est là qu'interviennent les ordinateurs quantiques : ils nous permettent de préparer et d'échantillonner des états quantiques complexes conçus pour identifier ces sous-espaces importants. Pour des problèmes véritablement massifs, comme des structures chimiques complexes ou des sites de liaison, même la matrice projetée peut rester difficile à diagonaliser. Ces problèmes sont donc idéalement adaptés pour tirer parti des forces des ressources de calcul quantique et classique.
Dans les sections suivantes, nous allons explorer deux algorithmes avancés, SQD et SKQD, qui exploitent la mécanique quantique pour trouver et construire ces sous-espaces. Pour aller plus loin, un cours complet sur IBM Quantum Learning est entièrement consacré à ces sujets. Dans le cadre de ce cours, nous resterons à un niveau d'explication général.
Diagonalisation quantique par échantillonnage
La diagonalisation quantique par échantillonnage (SQD, pour Sample-based Quantum Diagonalization) est un puissant algorithme variationnel qui implémente la méthode des sous-espaces de manière quantique. Elle évite des procédures coûteuses et complexes comme les tests de Hadamard en utilisant un ordinateur quantique pour préparer un état d'essai et échantillonner des chaînes de bits, qui définissent le sous-espace pour la diagonalisation classique.
L'algorithme SQD peut être décomposé en plusieurs étapes :
Étape 1 : Préparer l'état ansatz
Soit le Hamiltonien sur qubits. Bien que le vrai état fondamental puisse être supporté par les états de base, SQD est le plus efficace dans les cas où l'état fondamental peut être bien approximé par un sous-espace sparse (un ensemble de chaînes de bits de taille polynomiale).
Pour construire ce sous-espace, on part d'un état initial , comme l'état de Hartree-Fock (HF) en chimie. On applique ensuite un circuit quantique paramétré, , connu sous le nom d'ansatz.
Ce diagramme illustre l'objectif d'un bon ansatz. L'ansatz prépare un état quantique dont le support (l'ensemble des états de base qui le composent) devrait idéalement avoir un grand chevauchement avec le support du vrai état fondamental. Ce circuit nous permet de projeter rapidement l'ansatz sur des états de base computationnels, qui seront ensuite utilisés dans la diagonalisation classique. En d'autres termes : nous n'avons pas besoin de deviner un ansatz qui soit l'état fondamental ; il suffit qu'il contienne les mêmes états de base. La diagonalisation classique du Hamiltonien projeté donnera alors la superposition d'états de base qui approxime le mieux l'état fondamental.
Étape 2 : Échantillonner le sous-espace
En échantillonnant le circuit préparé par l'ansatz, on obtient une collection de chaînes de bits, . Ces chaînes de bits définissent la base de notre sous-espace choisi. Le temps d'exécution quantique pour cette étape est déterminé par la profondeur du circuit et le nombre d'échantillons prélevés.
Étape 3 : Projeter et diagonaliser classiquement
À partir des chaînes de bits échantillonnées, on projette le Hamiltonien dans le sous-espace qu'elles engendrent. Pour chaque paire de chaînes de bits , on calcule classiquement l'élément de matrice . Comme les opérateurs de Pauli sont sparse, cette étape est classiquement efficace pour les Hamiltoniens physiques. La petite matrice obtenue est ensuite diagonalisée sur un processeur classique pour estimer l'état fondamental et son énergie.
Étape 4 : Optimiser l'ansatz (optionnel)
Le processus peut être rendu itératif. En traitant l'énergie de l'état fondamental estimée comme une fonction de coût, on peut optimiser les paramètres du circuit () à l'aide de méthodes comme la descente de gradient, afin d'améliorer l'ansatz et, par conséquent, l'approximation de l'énergie à l'itération suivante.
Principaux avantages de SQD
SQD offre plusieurs fonctionnalités puissantes qui en font un candidat de premier plan pour démontrer l'avantage quantique :
- Grande robustesse au bruit : Supposons que le vrai état fondamental ne soit supporté que par deux chaînes de bits. Si celles-ci sont échantillonnées, même si leur chevauchement avec notre ansatz est faible, la diagonalisation leur attribuera les poids appropriés et ignorera efficacement toutes les autres chaînes de bits parasites ou bruitées qui auraient également pu être échantillonnées. Ce filtrage inhérent rend SQD particulièrement tolérant au bruit.
- Vérifiabilité classique : Contrairement à QPE ou aux VQAs, SQD produit une approximation classique de l'état fondamental. Cela signifie que toute personne ayant accès à la liste des chaînes de bits et de leurs poids peut recalculer et vérifier l'estimation d'énergie directement sur un ordinateur classique.
SQD a déjà été utilisé pour estimer l'énergie de dissociation de l'état fondamental de N et les propriétés électroniques des clusters [2Fe-2S] et [4Fe-4S] [2], avec des circuits pouvant aller jusqu'à 77 qubits et 10 570 portes.
Vérifie ta compréhension
Vrai ou Faux : SQD peut être appliqué à des systèmes chimiques.
Réponse :
Vrai
Vérifie ta compréhension
Appelle l'ensemble de tous les états de base computationnels qui composent ton ansatz. Appelle l'ensemble de tous les états de base computationnels qui composent le vrai état fondamental de ton système. Lesquels des énoncés suivants correspondent à un « bon » ansatz ? Sélectionne tout ce qui s'applique.
(a)
(b)
(c)
(d)
Réponse :
(c) et (d)
SKQD (Diagonalisation quantique de Krylov par échantillonnage)
La diagonalisation quantique de Krylov par échantillonnage (SKQD, pour Sample-based Krylov Quantum Diagonalization) est un autre algorithme quantique puissant basé sur l'échantillonnage, qui s'appuie sur les principes de SQD. Bien que son objectif soit le même — trouver un bon sous-espace pour la diagonalisation — SKQD emploie une méthode plus structurée pour générer les chaînes de bits, notamment pour des problèmes comme les Hamiltoniens de réseau.
L'idée centrale de SKQD est que, plutôt que d'optimiser un circuit paramétré pour trouver un bon ansatz, on peut converger de manière prouvable vers l'état fondamental en échantillonnant un ensemble d'états générés par l'évolution temporelle naturelle du système — le sous-espace de Krylov. L'algorithme SKQD peut être décomposé en plusieurs étapes :
Étape 1 : Construire le sous-espace de Krylov par évolution temporelle
Le processus commence par un état initial . Il est important de noter que cet état initial n'a pas besoin d'avoir un « bon » chevauchement avec l'état fondamental. Il suffit qu'il soit « polynomialement grand », c'est-à-dire décrit par un polynôme en taille de système. L'algorithme lui-même conduira ensuite l'état de plus en plus proche de l'état fondamental du système. SKQD applique l'opérateur d'évolution temporelle, , pour différentes durées. Cela crée un ensemble de états quantiques différents, définis comme :
Cette collection d'états évoluant dans le temps forme une base de Krylov. Cette étape est particulièrement efficace pour les Hamiltoniens de réseau où le nombre de termes du Hamiltonien n'est pas élevé. Pour les problèmes de chimie, cette évolution temporelle peut donner lieu à des circuits très profonds, ce qui explique pourquoi SQD est souvent recommandé dans ces cas.
Étape 2 : Échantillonner les états de la base de Krylov
Ensuite, des échantillons de chaînes de bits sont collectés à partir de chacun des états différents (