La suprématie quantique

La nouvelle est tombée il y a déjà plus de deux semaines, je m’attaque enfin à la suprématie quantique de Google !

Alors que puis-je dire pour compléter cette exposé ?

D’une part les « pros » de la mécanique quantique se seront probablement étranglés devant ma notation des états superposés. Je fais comme si les coefficients devant chaque état propre étaient des pourcentages, ce n’est pas le cas, il s’agit en réalité de coefficients complexes, et ce qui compte c’est le module carré. Mais bon, ceux qui le savaient déjà le savaient déjà. Les autres n’en auront probablement jamais l’usage. Ou alors ils auront droit à un « vrai » cours de mécanique quantique !

Pareil pour mon désormais habituel « à la fois » pour le principe de superposition. J’ai déjà fait une vidéo spécifique sur le sujet !

Concernant les portes quantiques, j’ai dit qu’il y en avait « beaucoup », en fait il y en a une infinité ! Mais disons que si on se limite aux portes usuelles, il y en a vite une bonne série à mémoriser. Petit détail amusant : contrairement aux portes classiques, les portes logiques quantiques sont réversibles ! On peut toujours revenir en arrière. Alors que si je vous dit que le bit de sortie d’une porte ET est 0, ça ne vous dit pas d’où on partait exactement.

Tiens d’ailleurs j’ai dit qu’on pouvait appliquer un circuit « de son choix », ce qui faisait de Sycamore un vrai processeur programmable. Techniquement chaque qbit n’est pas directement connecté avec tous les autres. Il y a une sorte de disposition des qbits et des coupleurs, qui font qu’il y a une notion de voisinage.

figure1

Les fins calculateurs auront peut-être remarqué un truc bizarre sur l’échantillonnage fait par Sycamore. On prend typiquement 10^6 échantillons alors que l’espace des états est de taille 10^{16} ! Eh bien oui, en fait on est très loin d’avoir ne serait-ce qu’un échantillon par état propre, et donc l' »histogramme » est surtout plein de 0, avec des 1 de temps en temps.

Mais ce type d’échantillon suffit pour calculer ce que les chercheurs de Google ont utilisé comme mesure de la fidélité de leur processeur : la cross-entropy qui représente en gros la probabilité qu’aucune erreur ne soit survenue lors de l’application d’un circuit. Sur les graphiques publiés, on voit que pour les cas les plus extrêmes, les valeurs sont quand même très faibles (moins d’1% !)

figure4

Ce qui signifie que dans ces régimes (et donc celui de la suprématie), le processeur passe son temps à faire des erreurs, et le résultat de la mesure est donc souvent une chaine random.

Tiens au passage signalons que toutes les chaines produites par Sycamore ont été stockées et sont disponibles, donc de futurs calculs classiques seront en mesure d’invalider le cas échéant le résultat.

J’ai été évasif sur la notion de circuit « simplifiable », il faut dire que sur ce coup je fais confiance à ce qui est écrit dans l’article. En gros un cycle consiste en l’application d’un groupe de 8 portes, et si on les choisit selon un schéma donné (par exemple ABCDABCD) il en résulte un circuit « difficile » alors qu’avec un autre schéma (EFGHGHEF) le calcul classique s’en trouve grandement facilité (circuits « patch » dans leur nomenclature)

Sur le calcul de la RAM nécessaire à stocker l’état de Sycamore, 10^16 coefficients (qui sont complexes je le rappelle !) demande disons deux fois 32 bits si on code avec des float, donc 640 millions de Go. Après on doit pouvoir gagner en faisant module et phase. IBM a une estimation un peu moins gourmande puisqu’ils annoncent 128 millions de Go pour 54 qbits. Mais je n’ai pas creusé pour comprendre la différence, on est dans le même ordre de grandeur.

Enfin sur l’estimation du nombre de qbits nécessaires pour faire du Shor en suprématie quantique, c’est tiré de l’article que je cite dans la vidéo. Une notion importante (que je n’ai pas voulu introduire) est celle de qbit « logique » vs qbit « physique ». Un qbit logique c’est en supposant que tout marche sans erreur. Et en pratique on « réalise » un qbit logique à partir d’un certain nombre de qbits physiques, le tout sous la supervision d’un code correcteur. Dans le cas dont je parle et qui est discuté dans le papier, il faudrait donc 500 000 qbits physique pour réaliser un seul qbit logique suffisamment robuste.

Si vous voulez aller plus loin :

La papier de Google dans Nature, en accès libre, et notamment les 60 et quelques pages de « Supplementary Material« 

Le blog de Scott Aaronson, qui était notamment « reviewer » de l’article de Google.

Pour la distinction qbit logique et physique et les codes correcteurs : Fowler, A. G., Mariantoni, M., Martinis, J. M., & Cleland, A. N. (2012). Surface codes: Towards practical large-scale quantum computation. Physical Review A, 86(3), 032324.

La « contre-attaque » d’IBM

La communication quantique et le protocole BB84

Nouvelle vidéo sur la chaîne, une vidéo « un petit peu spéciale » en partenariat avec Echosciences PACA.

Le défi de cette vidéo était de donner quelques notions de communication quantique dans le format imposé de 3-4 minutes ! Pas la place donc pour y détailler un exemple de protocole d’échange de clé quantique comme le protocole BB84 dont j’esquisse juste le principe dans la vidéo. Voici donc quelques détails !

Non, BB84 n’est pas un lointain descendant du robot BB8, mais le nom du tout premier protocole d’échange de clé quantique qui a été imaginé en 1984 par les cryptologues Charles Bennett et Gilles Brassard. L’idée de ce protocole est de permettre l’échange sécurisé d’une clé de chiffrement, clé qui pourra être ensuite utilisée pour chiffrer un message qui sera ensuite transmis sur un canal de communication classique. Notez bien : ça n’est pas tout le message qui est transmis de façon « quantique », juste la clé de chiffrement. Lire la suite

Une intelligence artificielle peut-elle être créative ? Le cas des jeux.

La vidéo du jour parle de la créativité des IA, vue dans le contexte des jeux !

Pour ceux qui voudraient aller plus loin, quelques compléments d’usage.

Le MinMax

Un premier point que j’ai passé sous silence pour rester simple, c’est la façon dont on décide du « meilleur » coup une fois qu’on dispose de toutes les évaluations. Pour vous l’illustrer, voici une petite énigme. Lire la suite

Le jeu de la vie

La vidéo du jour traite des automates cellulaires, et en particulier de l’intriguant « jeu de la vie ».

Pour ceux que ça intéresse, je vais mettre le code en partage sur GitHub (si j’y arrive). Il est loin d’être parfait, et d’ailleurs je vous encourage à écrire le votre ! Mais vous y trouverez peut être quelques astuces intéressantes sur comment lire les fichiers RLE (qui encodent de façon compacte les situations de départ), ou bien génerer des vidéos à partir d’images MatPlotLib en Python.

Edit du 09/12 : le code est dispo sur GitHub Lire la suite

Le Bitcoin et la Blockchain

La vidéo du jour décrypte les mystères du bitcoin, et vous explique vraiment comment il marche, et ce qu’est cette mystérieuse blockchain.

Pour préparer cette vidéo, j’ai dû pas mal me documenter. J’ai trouvé beaucoup d’endroits où les grands principes du bitcoin sont expliqués, mais assez peu d’infos détaillées sur ce qu’il se passe vraiment « sous le capot ». A force de lecture, je pense avoir compris l’essentiel, et j’espère donc avoir donné à tout le monde les éléments nécessaires pour comprendre comment un système comme le bitcoin pouvait tenir debout, et en quoi le concept de la blockchain assure la décentralisation du système. Lire la suite