Expert Chapitre 45-46 / 33

Architectures matérielles & Modèles alternatifs de calcul quantique

Révision Expert : technologies de qubits (supraconducteurs, ions piégés, photons, atomes neutres, spins) et modèles de calcul (par mesure, adiabatique, topologique) — sans prérequis mathématiques, avec du code Qiskit.

Architectures matérielles — sur quoi tourne vraiment un qubit ?

Tu écris qc.h(0) en Qiskit sans savoir physiquement ce qu’est le qubit. Pourtant plusieurs technologies très différentes se disputent l’avenir, et toutes doivent réussir le même cahier des charges. Aucune ne gagne sur tous les tableaux.

Les 3 propriétés à arbitrer

  • Cohérence — combien de temps le qubit garde son état avant que le bruit ne l’efface (les temps T1/T2). Trop court = le calcul n’a pas le temps de se terminer.
  • Connectivité — quels qubits peuvent interagir directement. Si deux qubits ne sont pas « câblés » entre eux, il faut insérer des SWAP (routage) pour les rapprocher.
  • Fidélité — la précision d’une porte ou d’une mesure (ex. 99,9 % par porte). Chaque petite erreur s’accumule le long du circuit.

S’y ajoutent la vitesse de porte et la scalabilité (savoir passer à des milliers de qubits sans tout dégrader).

Les grandes plateformes

PlateformePorteur du qubitConnectivitéVitesse / CohérenceActeurs
Supraconducteurscircuit refroidi à ~15 mK (« atome artificiel »)voisins sur grille 2D (faible)portes ns (rapides) / cohérence µs (courte)IBM, Google
Ions piégésion atomique dans le vide, piloté par laserall-to-all (forte)portes µs–ms (lentes) / cohérence ~s (longue)IonQ, Quantinuum
Photoniquesphoton (lumière)via mesure / réseau optiqueportes probabilistes / pertes de photonsPsiQuantum, Xanadu
Atomes neutresatome neutre en pinces optiques (Rydberg)reconfigurableintermédiaire / intermédiaireQuEra, Pasqal
Spin en siliciumspin d’un électron dans une boîte quantiquevoisinsrapide / réutilise les usines CMOSIntel

Intuition. Un supraconducteur est un minuscule circuit qui se comporte comme un atome : rapide mais fragile et bavard seulement avec ses voisins. Un ion piégé est un vrai atome immobilisé dans le vide : lent à manipuler mais très stable et capable de « parler » à n’importe quel autre. Le photon voyage parfaitement mais refuse d’interagir avec ses semblables — d’où des portes probabilistes.

Pourquoi ça touche ton code

  • La connectivité de la puce (sa coupling map) décide du nombre de SWAP ajoutés à la transpilation.
  • Le jeu de portes natives change d’une techno à l’autre → ton circuit abstrait doit être réécrit (basis gates).
  • Qiskit cible n’importe quel backend : transpile(qc, backend=...) réécrit ton circuit pour le jeu de portes natif et la coupling map du matériel visé.
# La connectivité matérielle décide s'il faut des SWAP.
from qiskit import QuantumCircuit, transpile
from qiskit.transpiler import CouplingMap

# « Supraconducteur » : ligne 0-1-2, donc 0 et 2 NE sont PAS voisins
supra = CouplingMap([[0, 1], [1, 2]])
# « Ions piégés » : all-to-all, tout le monde est voisin
ions  = CouplingMap([[0,1],[0,2],[1,2],[1,0],[2,0],[2,1]])

qc = QuantumCircuit(3)
qc.cx(0, 2)                          # 0 et 2 doivent interagir

print(transpile(qc, coupling_map=supra, basis_gates=['cx','u']).count_ops())  # des SWAP ajoutés
print(transpile(qc, coupling_map=ions,  basis_gates=['cx','u']).count_ops())  # aucun SWAP
# Qiskit cible n'importe quel backend : le transpileur réécrit
# ton circuit pour les portes natives et la connectivité de la puce.
from qiskit import QuantumCircuit, transpile

qc = QuantumCircuit(2)
qc.h(0)                   # l'auteur ignore la techno sous-jacente
qc.cx(0, 1)               # sur ions : direct ; sur supra : peut coûter des SWAP

# Le MÊME circuit, transpilé pour deux jeux de portes natifs :
print(transpile(qc, basis_gates=['cx','rz','sx','x']).count_ops())   # IBM Eagle
print(transpile(qc, basis_gates=['rxx','rz','rx','ry']).count_ops()) # IonQ (Aria)

⚠️ « Plus de qubits » ≠ « plus puissant ». Une puce de 1000 qubits bruités, mal connectés et peu fidèles peut être inférieure à 30 qubits all-to-all très fidèles. Compare toujours fidélité × connectivité × cohérence, jamais le seul compte de qubits.


Modèles alternatifs de calcul quantique

Depuis le début, tu programmes en modèle par circuit : une suite de portes appliquées dans le temps. Mais ce n’est qu’un modèle parmi plusieurs. Les autres calculent la même chose — la même puissance — mais autrement, et certains collent bien mieux à certains matériels.

ModèlePrincipe / ressource« Programmer » =Matériel naturelUniversel ?
Par circuit (référence)suite de portes unitaireschoisir l’ordre des portessupraconducteurs, ionsoui
Par mesure (one-way)grand état intriqué (cluster state)mesurer dans des bases adaptativesphotoniqueoui
Adiabatique / recuitétat fondamental d’un Hamiltonienencoder le problème en « énergie »recuit (D-Wave)oui (théorique) ; D-Wave = restreint
Topologiqueanyons, information non-localetresser les anyonsMajorana (Microsoft)oui (visé)

Calcul par mesure (one-way / MBQC)

On prépare d’abord un grand état intriqué en forme de grille — le cluster state (ou état graphe). Ici l’intrication EST la ressource. On calcule ensuite en mesurant les qubits un par un, dans des bases choisies, où la base de chaque mesure dépend des résultats précédents (feed-forward, adaptatif).

Analogie. Au lieu d’un programme d’opérations, on prépare un échafaudage richement connecté, puis on « sculpte » la réponse en mesurant. Idéal pour la photonique (les portes à 2 qubits y sont difficiles, mais la mesure est facile).

Adiabatique & recuit quantique

On fabrique un « paysage d’énergie » (un Hamiltonien) dont le point le plus bas (l’état fondamental) est exactement la solution du problème. On démarre dans le creux facile d’un Hamiltonien simple, puis on déforme le paysage lentement (« adiabatiquement ») : le système reste au fond et finit dans la réponse.

Analogie. Une bille se loge dans la vallée la plus basse si on incline le relief assez doucement pour qu’elle ne soit jamais éjectée.

Calcul topologique

On stocke l’information de façon non-locale dans des quasi-particules exotiques (les anyons) et on calcule en les tressant (en les déplaçant les unes autour des autres). Comme l’information est inscrite dans la « forme du nœud », un bruit local ne peut pas la défaire : protection contre les erreurs intrinsèque. C’est le pari de Microsoft (qubits de Majorana), encore largement expérimental.

# Ressource de départ du calcul par mesure : un « état graphe »
# (cluster state). On intrique des voisins avec des CZ ; ensuite
# on CALCULE en mesurant les qubits un à un (bases adaptatives).
from qiskit import QuantumCircuit
g = QuantumCircuit(4)
g.h(range(4))                         # tous en superposition
g.cz(0, 1); g.cz(1, 2); g.cz(2, 3)    # arêtes du graphe (intrication)
# Étape suivante : mesurer 0,1,2,3 dans des bases choisies.
# Même un état-ressource « par mesure » se prépare avec des portes
# dans un simulateur : H partout, puis un CZ sur chaque arête.
from qiskit import QuantumCircuit

def cluster_state(n: int) -> QuantumCircuit:
    qc = QuantumCircuit(n)
    qc.h(range(n))                            # superposition
    for i in range(n - 1):
        qc.cz(i, i + 1)                       # arête entre voisins
    return qc
    # Le « calcul » consisterait ensuite à mesurer adaptativement.

g = cluster_state(4)

⚠️ Deux pièges. (1) Les modèles alternatifs ne sont pas plus puissants : même classe BQP, à un surcoût polynomial près. (2) Le recuit commercial (D-Wave) n’est ni prouvé universel ni prouvé plus rapide que le classique sur l’optimisation générale — c’est une heuristique, à ne pas confondre avec le calcul adiabatique universel (théorique).


Quiz — teste tes connaissances
Expert 7 questions Objectif : 5/7 minimum
0/7
bonnes reponses
Objectif non atteint (minimum 5/7 requis).
Remonte relire la fiche memo ci-dessus en pretant attention aux points rates, puis clique sur « Recommencer » pour retenter.