Nouvelles

4 septembre 2024 Tom Mallah
À la recherche de l’efficacité en informatique quantique

PauliArray

Photo : Michel Caron - UdeS

On dit que la seule façon de manger un éléphant, c’est de le faire une bouchée à la fois. Cette approche se retrouve à même un projet de l’équipe de l’AlgoLab mené par Tania Belabbas et Maxime Dion, qui développent un outil permettant de manipuler plus efficacement un grand nombre de chaînes de Pauli agissant sur plusieurs qubits. Cet outil permet d’aborder des problèmes complexes et de taille plus imposante que les librairies actuelles.

Démêler les chaînes de Pauli

En informatique quantique, solutionner un problème repose en partie sur des opérateurs, c’est-à-dire des objets mathématiques qui peuvent manipuler l’état des qubits dans un circuit quantique. C’est au physicien Wolfgang Pauli à que l’on doit les matrices (de Pauli) nous permettant de représenter mathématiquement les opérateurs qui agissent sur l’état d’un spin (ou d’un qubit). Les matrices de Pauli représentent également les portes logiques quantiques X, Y et Z. Avec la matrice identité I, les matrices de Pauli peuvent être regroupées sous forme de chaînes de Pauli pour représenter des opérateurs qui agissent sur plusieurs qubits à la fois.

Ces chaînes de Pauli sont omniprésentes en informatique quantique car elles constituent un langage naturel pour les qubits. En effet, elles forment une base pour tous les opérateurs à plusieurs qubits dont on peut se servir pour construire des circuits quantiques, exprimer et mesurer des observables, calculer des commutateurs, etc. Ces chaînes sont particulièrement utiles dans le contexte des algorithmes quantiques variationnels (AQV), où des circuits quantiques paramétrés sont optimisés pour résoudre des problèmes complexes.

PauliArray : Vers un outil plus convivial

Maxime Dion qui est l’instigateur du projet et développeur au sein de l’AlgoLab, travaille avec les chaînes de Pauli depuis plusieurs années pour l’aider à traiter des problèmes complexes :

« On peut utiliser des chaînes de Pauli pour exprimer n’importe quel opérateur quantique. L’avantage c’est qu’une fois exprimé ainsi, c’est un langage naturel pour l’ordinateur quantique, souligne Maxime. On avait besoin d’un outil informatique pour représenter ces chaines et les manipuler efficacement. »

Avec Tania Belabbas, développeuse en informatique quantique à l’AlgoLab, il développe un outil pour centraliser les opérations que l’on peut appliquer sur les chaînes de Pauli. Pour rendre ces opérations efficaces, les chaînes sont encodées sous forme de tableaux multidimensionnels (NumPy), qu’ils ont nommé PauliArray. L’idée c’est d’avoir un outil général pour différentes applications en programmation quantique. « Un des défis c’est le nombre élevé de chaînes de Pauli que l’on doit manipuler pour traiter certains algorithmes plus complexes comme ADAPT. PauliArray, est un outil qui peut être plus convivial pour faire ça, » poursuit Maxime. « PauliArray offre déjà des fonctionnalités intéressantes qui s’exécutent plus rapidement qu’avec d’autres librairies existantes. » Parmi ces fonctionnalités, on retrouve la traduction fermion-qubit (Jordan-Wigner), le calcul de commutateur ainsi que des routines de partionnement d’Hamiltoniens.

Des applications tangibles 

Une des fonctionnalités implémentées dans PauliArray est le partionnement d’opérateurs comme l’explique Tania:

« En informatique quantique, on est souvent amené à devoir diagonaliser un opérateur. Par exemple, on peut vouloir diagonaliser un Hamiltonien, pour résoudre l’équation de Schrödinger et simuler l’évolution d’un système quantique ou encore simplement pour mesurer son énergie. Or, il est souvent difficile, voir impossible, de diagonaliser un Hamiltonien, dû à sa forme et à sa taille. On peut contourner ce problème grâce au partitionnement. L’idée est de regrouper les chaines de Pauli composant notre Hamiltonien en sous-groupes de chaînes de Pauli qui peuvent être diagonalisées simultanément. On peut alors effectuer l’évolution ou la mesure d’énergie sur ces partitions individuellement. »

Cette approche permet deux applications qui sont à la base du traitement de l’information quantique; simuler l’évolution temporelle d’un système et mesurer l’énergie de manière plus efficace, deux applications qui se retrouvent dans la simulation moléculaire et en optimisation quantique.

« En partitionnant et diagonalisant, ça permet de prendre plusieurs circuits qui sont légèrement différents, et parfois réussir à les résumer en un seul circuit, poursuit Tania. Ça veut dire avoir moins de circuits à traiter [potentiellement] et de mesures à faire ou encore, pour un même nombre de mesures, avoir une meilleure précision sur le résultat. »

Le duo continue d’ajouter de nouvelles fonctionnalités à PauliArray et souhaite voir des utilisateurs et utilisatrices expérimenter avec la librairie, et voir l’outil être appliqué dans différents domaines.

 

 

Restez connectés