L’IA et la fin du Silicium : introduction aux ordinateurs quantiques

Quantum Processor

Nous n’en avons pas conscience tous les jours mais l’industrie informatique est à l’aube d’un changement majeur : la loi de Moore, telle que nous la connaissons aujourd’hui, va s’arrêter d’ici 3 à 4 ans maximum. L’ère de la puce Silicium vit ses derniers moments de gloire. Les processeurs, les ordinateurs, la manière de programmer vont sûrement radicalement changer dans très peu de temps.

Note : cela fait suite aux 2 podcasts que Deltakosh, Meulta et moi-même avons en partie consacrés à l’ordinateur quantique et à la physique quantique. Vu le succès de ces épisodes et vos retours, j’ai décidé d’en faire un article. Attention : pour ceux qui ne nous connaissent pas, ces podcasts sont souvent à prendre au second degré ! Nous serons heureusement plus sérieux ici.

L’Intelligence Artificielle

Mais avant de tenter de vous expliquer pourquoi tout va bientôt changer, revenons sur ce qui agite l’actualité des derniers mois. Nous parlons beaucoup de plusieurs grandes thématiques qui émergent ou vont bientôt émerger. Et la plus emblématique d’entre elles est sans nul doute l’IA ou Intelligence Artificielle. Tout le monde en parle avec plus ou moins de bonheur et plus ou moins de fantasmes. C’est également devenu un fourretout à tous les trucs cools du moment.

Une des applications intéressantes que vous utilisez déjà presque tous les jours est par exemple la reconnaissance vocale. On la retrouve dans les serveurs téléphoniques vocaux, dans vos smartphones avec Cortana, Siri et autres Alexa. cognitivesvcMais ce que nous n’avez peut-être pas noté, c’est que la qualité de cette reconnaissance par une machine a atteint très récemment celle d’un être humain : Historic Achievement: Microsoft researchers reach human parity in conversational speech recognition et a donc très fortement progressée ces 5 dernières années.

Nous exposons également des services dans le fameux « Cloud » pour reconnaitre des images automatiquement et en faire des transcriptions. A chaque fois que j’y pense, cela me retourne la tête. N’importe quel développeur est forcément subjugué par les algorithmes mis en œuvre. C’est le cas chez Microsoft avec Cognitive Services Computer Vision API où vous pouvez découvrir ses capacités en jouant avec cette démo : https://www.captionbot.ai. Tous les principaux acteurs du marché se positionnent sur ces nouvelles offres. Facebook utilise des algorithmes similaires. Vous les avez d’ailleurs déjà forcément vu en œuvre lorsque l’on vous propose de tagguer automatiquement vos amis en reconnaissant leurs visages sur les photos que vous postez. Il y a également IBM avec Watson Visual Recognition et Google Cloud Vision API.

Bien sûr, il y a un côté terrifiant à ces nouvelles technologies, notamment lié à l’avenir de nos vies privées mais également sur des sujets plus fondamentaux encore. Pour vous donner une idée, je vous invite à regarder cette excellente vidéo de Laurent Alexandre : Impact de l’Intelligence Artificielle sur l’économie – Laurent ALEXANDRE au Senat (HD) sur laquelle il faut également savoir prendre du recul. Mais, comme il le dit justement, aujourd’hui, nous les français, « en matière d’Intelligence Artificielle, nous sommes un pays du tiers monde ».

Mais l’IA dispose également d’un potentiel inouï pour améliorer le quotidien de millions de personnes. Nous en avons fait la démonstration lors de la //BUILD 2016 avec Saqib Shaikh utilisant ces services couplés à une paire de lunettes « intelligentes » pour lui permettre de « voir » le monde qui l’entoure : Microsoft Cognitive Services: Introducing the Seeing AI project. Facebook vous propose également un texte alternatif à la photo que vous allez poster pour en améliorer son accessibilité pour les personnes aveugles et mal voyantes : Under the hood: Building accessibility tools for the visually impaired on Facebook. Tout cela m’a inspiré pour créer une extension permettant de reconnaitre l’image d’une page web et de la décrire à une personne potentiellement aveugle : Creating an extension for all browsers: Edge, Chrome, Firefox, Opera, Brave and Vivaldi. On peut aujourd’hui mettre en place de telles solutions en une dizaine de lignes de code !

Ces dernières années, dans les sujets plus typés science-fiction (mais qui sont pourtant déjà là), nous avons pu également voir successivement un ordinateur battre un joueur humain aux échecs, au jeu de Go et plus récemment au poker, ce qui inquiète nettement plus les experts. On parle également fréquemment de la voiture autonome de Tesla et de Google. Plus récemment, Microsoft a commencé à développer une IA, DeepCoder, capable d’écrire du code !

Alors pourquoi l’IA émerge à ce point à cette période précise ? En effet, d’après Wikipedia, le concept d’intelligence artificielle a démarré avec Alan Turing et son fameux test en 1950. Pourquoi a-t-il fallu autant de temps pour en voir les premiers résultats tangibles et concrets ?

C’est qu’il fallait la convergence de 3 domaines clés : la donnée, l’infrastructure pour la capter/gérer/traiter et la puissance de calcul des puces pour la digérer. Soit en traduction technologique : le big data, le Cloud/Machine Learning (Apprentissage automatique)/Deep Learning (Apprentissage profond) et les CPU/GPU. Bref, l’équation magique semble être : IA = Big Data x Machine Learning x CPU.

En effet, pour pouvoir créer une intelligence artificielle qualifiée de « faible » par certains, donc dans un premier temps spécialisée (reconnaissance vocale, d’image, sémantique, de visage, etc.), il faut d’abord entrainer un modèle avec un algorithme particulier. La première pièce est la donnée, ou plutôt la quantité de données. En effet, il faut avoir de gigantesques volumes de données pour les injecter dans une boîte noire que l’on appelle le Machine Learning. Ces données peuvent être vous et vos habitudes de navigations dans le cas des réseaux sociaux ou ciblages publicitaires. Mais également les données de votre smartphone ou de votre véhicule pour le trafic routier/voitures autonomes, les données médicales comme votre rythme cardiaque avec les objets connectés, etc. Dans le domaine du jeu vidéo, une autre application que vous avez peut-être connue est Kinect. Pour pouvoir reconnaître vos gestes et votre « squelette », du Machine Learning a été utilisé à partir d’enregistrements vidéos de plusieurs milliers d’êtres humains comme l’explique cette vidéo : Real-World Machine Learning: How Kinect Gesture Recognition Works.

SQL-Server-and-Deep-Learning

En termes d’architecture, il faut des moyens colossaux pour aspirer ces données et pour mettre en place ce Machine Learning ou Deep Learning en termes de matériel, réseaux et logiciels. Ils sont actuellement déployés dans d’énormes Data Center que l’on appelle le Cloud, vendus par des sociétés comme Microsoft, Amazon ou Google.

Voilà pour une partir des explications des raisons de son émergence. En complément de tout cela, je vous invite également à lire l’article de mon collègue Pierre-Louis Xech : Cyclogenèse de l’IA qui propose un angle intéressant.

De mon côté, je m’intéresse à cette transformation pour 2 raisons principales. L’une est purement professionnelle. Cette transformation profonde à venir de l’industrie informatique me fascine autant qu’elle m’inquiète. Vais-je être capable de m’adapter aux nouvelles connaissances nécessaires ? Il est certain que l’IA va remplacer de nombreux postes/métiers « facilement » automatisables. Mais cela va-t-il également remplacer le métier de développeur et si oui à quelle échéance ?

Bref, en fonction du point de vue, il semblerait que nous allons devenir les acteurs de notre propre destruction ou au contraire les bâtisseurs d’un monde meilleur. J’aime par exemple cette phrase : « La puissance des algorithmes n’est ni un rêve ni un cauchemar : elle est les deux en même temps, et s’orientera selon ce que nous en ferons. La plupart des grandes innovations ont ainsi questionné la société » issue de cet article : Algorithmes, voitures autonomes, big data : bienvenue dans le pire des mondes digitaux

Pour ma part, je suis un éternel optimiste jusque dans mes modestes essaies de science-fiction : Les H-Men : une anomalie génétique couplée à la technologie pour de supers pouvoirs. Même si cela relève bien sûr du délire de geek que je suis, je pense sincèrement que l’IA pourra aider des enfants handicapés comme mon fils Nathan. C’est donc, vous l’aurez compris, la deuxième raison de mon fort intérêt pour l’IA et de l’informatique quantique. Ils pourraient grandement aider les projets actuels gérés par Microsoft autour de la génomique : MSR Genomics & Microsoft Genomics.

Mais pourquoi cette longue introduction autour de l’IA alors que je vous ai promis de parler d’ordinateur quantique ?

Rappelez-vous de ma fausse équation magique : IA = Big Data x Machine Learning x CPU.

Il y a un truc qui va clocher. Le CPU. On avait pris l’habitude depuis les années 70 de voir nos chers CPUs doubler la quantité de leurs transistors tous les 2 ans et donc voir leurs performances virtuellement augmenter de manière exponentielle. Bah désolé, la fête est bientôt finie.

La loi de Moore est morte

Le transistor. Une des inventions les plus importantes du 20ème siècle. Le composant de base des processeurs. Pour augmenter la puissance de nos CPUs, on a d’abord eu l’idée d’augmenter à la fois leur nombre et la fréquence d’horloge les animant en cadence.

Gordon Moore, l’un des fondateurs d’Intel, a alors créé une sorte de règle, feuille de route pour l’industrie, prophétie auto-réalisatrice : la loi de Moore. L’idée est de doubler le nombre de transistors tous les 2 ans en les miniaturisant de plus en plus. De 1971 à aujourd’hui, nous sommes ainsi passés des 2300 transistors du premier microprocesseur d’Intel, le 4004, à des puces embarquant plusieurs milliards de transistors !

Moore's_Law_over_120_Years

Cependant, comme l’explique très bien cet article (en Anglais) : Moore’s law really is dead this time, il y a eu plusieurs barrières qui furent particulièrement difficiles dans la course à la miniaturisation. En 2005 d’abord, autour des 90nm, on se posait sérieusement la question pour repousser les limites de la miniaturisation. Cela est d’ailleurs rappelé par cet article plus récent : Processeurs : la fin de la loi de Moore… et le début de l’incertitude qui indique la complexité rencontrée : « au début des années 2000, quand l’effet conjugué de la hausse des fréquences d’horloge et de la diminution de la taille des circuits avait fait bondir la chaleur générée par les circuits. Un obstacle que les industriels ont contourné en optant pour des architectures multicoeurs, qui ont mis fin à la course à l’augmentation des fréquences d’horloge ». Enfin, plus récemment, les 22nm ne furent envisageables que grâce à l’invention du transistor tri-gate.

Aujourd’hui, les CPU que vous achetez/utilisez dans vos PC, Mac et autres smartphones sont souvent gravés à une finesse de 14nm. Plus fort encore, le dernier Snapdragon 835 annoncé au CES 2017 arrive lui à être gravé en 10nm.

Pour vous donner une idée de la prouesse que cela représente, regardons les ordres de grandeur de longueur. On s’aperçoit ainsi que 1nm correspond à la taille d’une molécule ou du rayon de la double hélice de notre ADN. Plus surprenant encore, 10nm correspondent environ à 100 atomes mis les uns à côté des autres ! 100 atomes, vous imaginez !

Le palier des 10nm semble donc être le premier candidat sérieux à l’atteinte du mur de la miniaturisation. Cependant, les dernières recherches précisées dans cet article : le plus petit transistor du monde ressuscite la loi de Moore indiquent que des nanotubes de carbone pourraient nous permettre d’envisager d’aller plus loin, vers les 5nm peut-être. Malgré tout, à force de nous rapprocher de la taille critique d’un atome, nous allons finir par être confrontés au phénomène inéluctable d’effet tunnel illustré par cette vidéo :

Ainsi, 2020 semble être une échéance couramment partagée. Bien sûr, on pourrait se dire que ce n’est pas pour autant la fin du monde numérique. Voir même la fin du monde digital comme on aime le dire, à tort, dans les sphères branchées du marketing !

En effet, on pourrait envisager d’augmenter la taille des puces à défaut de pouvoir continuer à miniaturiser. Cela nous permettrait de continuer à augmenter le nombre de transistors. Ou alors augmenter le nombre de serveurs et leur capacité de calculs distribués. Oui, mais plusieurs problèmes pointent rapidement le bout de leur nez :

– L’évolution ne pourra certainement plus être exponentielle comme avant
– On va se retrouver confrontés à nouveau aux problèmes de consommation, dissipation de chaleur que nous avions eu au début des années 2000, qui furent résolus en partie avec les multi-cœurs.

On pourrait également se dire que cela va nous forcer à nouveau à bien penser nos codes et nos algorithmes. Comme il y a quelques dizaines d’années finalement, avant que nous codions un peu tous comme « des porcs », profitant avec une certaine insouciance de l’augmentation régulière de la puissance des processeurs afin de cacher notre fainéantise intellectuelle.

Malgré tout, cela ne va pas suffire à combler notre addiction vis-à-vis de la loi de Moore sur laquelle beaucoup comptent toujours. Tout cela malgré le mur atomique que le silicium est sur le point de rencontrer. En effet, l’IA a besoin de toujours plus et l’industrie ne se satisfera pas de cette contrainte physique.

La mécanique quantique à la rescousse

Arrivée à une échelle si petite, les règles changent et pas qu’un peu. En effet, il faut savoir que les lois de la physique classique, celle que nous connaissons bien et que nous subissons tous les jours, ne s’appliquent plus à partir d’une certaine échelle.

Nous ne savons toujours pas exactement pourquoi mais des éminents physiciens ont fini par le constater. Nous n’avons toujours pas non plus trouvé une règle générale permettant de réunir le monde tangible dans lequel nous nous sommes habitués à vivre avec le monde étrange qu’est celui des particules quantiques. Car oui, avant d’envisager de comprendre en quoi l’ordinateur quantique pourra continuer de faire vivre la loi de Moore, il va falloir tenter de comprendre un minimum le fonctionnement de la mécanique quantique.

Bon, déjà, commençons par tous nous détendre. Il est manifestement extrêmement compliqué de vulgariser la mécanique quantique. Il faut également s’ouvrir l’esprit et lutter contre nos barrières ancrées en nous depuis des siècles car les principes apparaissent comme totalement contre intuitifs pour l’esprit humain. Certains se demandent même si le cerveau humain ne serait tout simplement pas trop limité pour en comprendre le fonctionnement !

Pour vous rassurer, j’ai découvert en écoutant l’émission de radio « la tête au carré » de France Inter dédiée à l’ordinateur quantique que Pascale Senellart, directrice de recherche CNRS au laboratoire de photonique et nanostructure, nous raconte à 32’58 que: « quelqu’un qui vous dirait qu’il a vraiment compris la physique quantique, c’est quelqu’un qui ment un peu ». Par ailleurs, je me permets d’ajouter une citation célèbre de Richard Feynman : “Je pense pouvoir dire sans trop me tromper que personne ne comprend la mécanique quantique”. Les bases sont posées. Si les experts ont déjà du mal à comprendre, n’espérez pas prétendre à un PhD de physique quantique à la fin de cet article.

Bref ce que j’essaie de vous dire est qu’il est franchement difficile de trouver de bons articles expliquant simplement ce qu’est la mécanique quantique et que par conséquent je risque moi-même d’être approximatif. Malgré tout, j’ai essayé de vous digérer tout cela du mieux que j’ai pu et de vous partager les vidéos et articles qui m’ont semblés les mieux conçus et les plus pédagogiques.

Au passage, si un physicien spécialisé en physique quantique passe par là, il serait gentil de sortir son pif de son microscope à effet tunnel, de sortir de son labo et de venir essayer de nous aider à comprendre ce qu’il se passe de si chouette dans ce monde de l’infiniment petit.

D’ailleurs, avant de se lancer, commençons par prendre une petite pause comique en regardant cet excellentissime sketch d’Alexandre Astier : Alexandre Astier – La Physique Quantique parfaitement dans le ton de notre podcast. Smile

8 principes clés

La meilleure source de vulgarisation que j’ai pu trouver sur la mécanique quantique est de loin celle de la Science Etonnante. De très loin même. Le travail effectué par David Louapre est tout à fait remarquable !

Du coup, la bonne nouvelle est que j’ai simplement besoin de vous partager son contenu. Il y a d’abord 2 vidéos à regarder.

La première explique la mécanique quantique en 7 idées :

Que vous devriez faire suivre immédiatement par celle expliquant l’intrication quantique :

Et pour couronner le tout, David a écrit un excellent billet de blog complétant sa première vidéo : La mécanique quantique où il détaille et illustre très bien les 7 idées exposées.

Au final, vous devriez alors avoir de vagues notions de ce que sont :

– Le principe de superposition : vous savez, le coup des plusieurs états en même temps.
– L’indéterminisme de la mesure : les mesures dépendent, en partie, du hasard !
– La réduction des états quantiques : l’indéterminisme est cassé après la première mesure. Le fait de mesurer force la particule à choisir son état. C’est bizarre mais c’est comme ça. Par contre, cela énerve passablement Meulta. Mais cela ne change rien au phénomène heureusement.
– La dualité onde – corpuscule : des objets que l’on croit ponctuel se comporte en fait comme des ondes. D’ailleurs la mécanique quantique fut longtemps appelée mécanique ondulatoire.
– L’effet tunnel : l’effet ondulatoire de la matière, qui lui permet, entre autres, de passer à travers un obstacle.
– La quantification des propriétés physiques : un électron ne peut être qu’à des orbites précises autour du noyau, certaines lui sont “interdites” ! Cela avait retourné la tête de Deltakosh dans notre épisode 4. 😉
– Le principe d’incertitude de Heisenberg : on ne peut pas parfaitement définir un objet à la fois grâce à sa position ET sa vitesse. C’est un peu soit l’un, soit l’autre.
– Le spin et l’intrication quantique : le spin n’a que 2 valeurs possibles, le + ou le -… ainsi que toutes les superpositions de ces 2 états bien entendu. 😉 Plus surprenant encore, certaines particules sont liées. Cela veut dire que le changement d’état d’une particule va avoir une répercussion immédiate sur une autre pouvant se trouver à des kilomètres d’elle. 

Bon, déjà, avec tout ça, je vous promets un méchant carton à votre prochaine soirée pour épater la galerie !

Pour revenir à la loi de Moore et aux processeurs actuels, le principal problème vient de l’effet tunnel. En effet, c’est l’effet qui va se produire avec la miniaturisation des transistors. Les électrons (le courant faisant les 0 et les 1 de notre bien aimé binaire) ne resteront plus dans le chemin que nous avons défini/dessiné. Ils passeront à travers les barrières que nous aurons fixées. Bref, un monumental bazar ingérable pour conserver la stabilité de la logique du processeur.

L’ordinateur quantique

Le qubit

Le fameux ordinateur quantique repose donc sur les principes balayés précédemment afin de mettre au point le qubit, pour quantum binary digit, l’analogue quantique du bit.

Bon, gros problème : j’ai été incapable de trouver une explication totalement claire de son fonctionnement et, plus embêtant, de son utilisation.

Malgré tout, commençons par l’article Wikipedia qui lui est dédié : https://fr.wikipedia.org/wiki/Qubit

On nous explique que « le qubit se compose d’une superposition de deux états de base, par convention nommés |0> et |1> » et qu’« un état qubit est constitué d’une superposition quantique linéaire de ces deux états ». Jusque-là, rien de bien surprenant puisque cela reprend le principe de superposition et de spin vu précédemment.

Par ailleurs, on apprend toujours aussi logiquement, d’après les principes vus avant, que l’on ne peut copier la valeur d’un qubit vers un autre puisque cela impliquerait de lire sa valeur, et donc de réduire son état quantique. On peut cependant transporter son état sur un autre qubit grâce à la téléportation quantique basée sur le principe d’intrication quantique toujours décrit également dans le chapitre précédent.

Alors tout ça me permet de comprendre à peu près la structure d’un qubit mais cela ne m’aide pas pour autant à avoir la moindre idée de comment on exploite cela pour créer de l’information ou pour calculer quoi que ce soit !

Je vais quand même vous partager quelques articles qui tentent d’expliquer et qui m’ont un peu aidé :

La révolution quantique de demain. Un petit extrait : « Ce qubit peut ainsi faire 2^4=16 calculs en un seul coup. Le gain est exponentiel car avec 4 bits classiques, on ne pourrait faire qu’un seul calcul! Dans un ordinateur classique, on est obligé d’utiliser des milliards de transistors pour réaliser de nombreuses opérations rapidement. Avec un ordinateur quantique, il suffirait de 300 qubits pour obtenir 2^300 résultats, ce qui est plus que le nombre de gouttes d’eau dans nos océans, ou encore, plus que le nombre d’atomes dans notre univers observable ! ». Superbe « punch line » mais aucune explication réelle du pourquoi du comment.

Qu’est-ce qu’un ordinateur quantique ? qui tente à nouveau d’expliquer un peu mieux mais qui nous sort aussi de grandes envolées cosmiques du genre : « Or, il pourrait bien être possible d’avoir des ordinateurs avec une architecture de 50, 100, 300 qubits, et donc d’avoir un ordinateur quantique 2^50, 2^100 et donc 2^300​​ fois plus rapide qu’un ordinateur normal ! » ou « le facteur de rapidité correspondant à 2^300 est plus grand que le nombre d’atomes dans l’univers. C’est un nombre immense et un ordinateur quantique de ce calibre serait donc immensément plus rapide qu’un ordinateur normal ». A nouveau, on ne sait pas trop pourquoi mais comme on dit par chez moi, ça claque sévère !

Ce que j’en retiens, sans vraiment comprendre totalement pourquoi :

– La puissance d’un ordinateur quantique augmente potentiellement de manière exponentielle en fonction du nombre de qubits. En effet, sa puissance de calcul double à chaque fois que l’on lui adjoint un nouveau qubit.
– Le principe du qubit permet d’envisager des calculs parallèles de manière incroyablement plus rapide que les architectures informatiques actuelles.

Par ailleurs, il faut savoir qu’il est extrêmement difficile de stabiliser ces fameux qubits. Certains laboratoires ont réussi à fabriquer des processeurs à base de quelques un d’entre eux. Cependant, leur durée de vie n’est souvent que de quelques secondes. En effet, les particules quantiques sont très sensibles au monde qui nous entoure comme le magnétisme et la lumière.

En termes de fabrication « concrète » d’un qubit, j’ai pu trouver ce dossier particulièrement intéressant : Fabrication d’un ordinateur quantique qui décrit les différentes approches actuelles. Ce dossier est d’ailleurs l’un des meilleurs que j’ai pu lire sur l’ordinateur quantique d’une manière générale. Je vous en conseille la lecture complète. On y apprend ainsi que la difficulté physique principale est de gérer la décohérence des états quantiques.

Allez, essayons maintenant d’en savoir davantage sur l’ordinateur quantique en lui-même.

D-Wave

Aujourd’hui, il semblerait qu’un seul modèle abouti et commercialisé de l’ordinateur quantique existe. Il est fabriqué par la société D-Wave Systems qui aurait réussi à fabriquer une machine stable alignant jusqu’à 2000 qubits ! C’est d’ailleurs une source de débats et d’interrogations fréquentes chez les experts dans le domaine car la quasi-totalité des labos peinent à aligner plus qu’une dizaine de qubits de manière stable.

Pour continuer sur le travail de vulgarisation, je vous invite à regarder la vidéo suivante : 10 CHOSES à SAVOIR sur l’INFORMATIQUE QUANTIQUE. Bien que souvent très approximative, elle balaie, en moins de 20 minutes, l’ensemble des thématiques abordés dans cet article. On y apprend des choses rigolotes sur le D-Wave :

– L’ordinateur D-Wave se trouve dans un caisson blindé qui diminue de 50000 fois le champ magnétique terrestre
– Il fonctionne à une température de 0,015° Kelvin, soit -273,135° Celsius. Soit plus froid que l’espace lui-même qui se trouve à 3°K ! Donc très proche du 0 absolu.
– Comparons maintenant la consommation énergétique du D-Wave 2X face au supercalculateur Pangea de Total qui était l’un des plus puissants au monde début 2016 avec 6,7 pétaFLOPS au compteur. Le Pangea nécessite 4,5 MégaWatts là où le D-Wave 2X de 1000 qubits n’a besoin que de… 25000 Watts, soit 180 fois moins.

d-wave-two-quantum-computer

Certains clients connus de D-Wave sont Google, la NSA et Lockheed Martin. La NSA a d’ailleurs annoncé qu’elle avait stoppé tous ses investissements sur les technologies non quantiques. On va comprendre pourquoi juste derrière.

Algorithmes et programmation

Vous l’aurez compris, un ordinateur quantique étant radicalement différent d’un ordinateur classique, la manière de concevoir un algorithme l’est tout autant.

Si je reprends l’émission de France Inter, Pascale Senellart s’est tentée à une explication que j’ai trouvée très intéressante mais perturbante (comme toujours en quantique). Elle pose le problème d’un algorithme chargé de trouver le moyen de sortir d’un labyrinthe. Si un être humain essaie de sortir du labyrinthe, ou si vous essayez d’envisager un algorithme de sortie pour un CPU classique, vous allez surement tenter de parcourir le labyrinthe en profondeur jusqu’à trouver le chemin, unique, vers la sortie. En d’autres termes, vous allez essayer d’aller à gauche, de voir que cela ne marche pas, puis d’aller à droite tout en prenant soin de noter vos réussites et erreurs. Bref, au final, vous allez sortir du labyrinthe en ayant la capacité d’expliquer le chemin que vous avez parcouru. Un ordinateur quantique va lui calculer en parallèle toutes les possibilités, il va ensuite vous dire qu’il est sorti du labyrinthe mais ne sera pas capable de vous dire comment il l’a fait !

D’après ce que j’ai compris, cela semble être lié au fait que les algorithmes quantiques sont probabilistes. Ils donnent la réponse correcte avec une haute probabilité et la probabilité d’échec peut être diminuée en répétant l’algorithme.

Au final, l’article le plus complet que j’ai pu trouver sur un calculateur quantique est sans conteste celui de Wikipedia : calculateur quantique. Il couvre absolument tout, de manière très détaillée. Il n’est pas particulièrement facile d’accès mais je permets d’extraire 2 citations intéressantes :

« Les calculateurs quantiques demandent des techniques de calcul différentes de la programmation, mais utilisant beaucoup l’algèbre linéaire classique pour conditionner et traiter simultanément des ensembles de données liées. » … « Il ne se prête donc a priori qu’aux calculs dont la complexité réside dans la combinatoire. On trouve ces problèmes dans l’ordonnancement et les autres calculs de recherche opérationnelle, en bio-informatique, et bien entendu en cryptographie. Le faible volume des entrées-sorties par rapport à celui du traitement semble rendre toutefois plausible leur usage à distance un jour à travers le réseau Internet. »

Les algorithmes quantiques

Je n’ai entendu parlé que de 2 algorithmes quantiques principaux :

Algorithme de Shor permettant de factoriser rapidement un entier naturel en nombres premiers. Pratique pour casser RSA, le moyen de chiffrement considéré le plus sûr aujourd’hui.
Algorithme de Grover permettant de chercher dans une liste.

C’est le premier qui est le plus célèbre bien évidemment et qui intéresse au plus haut point la NSA. En effet, le niveau de protection du chiffrement actuel repose sur le fait qu’il est virtuellement temporellement impossible pour un ordinateur classique de casser la clé. Cela demande en effet de pouvoir factoriser la clé publique en produit de nombres premiers. Avec les clés actuellement utilisées, il faudrait des milliers d’années pour la casser. Avec l’algorithme de Shor exécuté sur un ordinateur quantique comme le D-Wave, cela est censé être fait en quelques minutes. Vous comprenez maintenant mieux pourquoi la NSA s’y intéresse de près. Heureusement, il y existe la cryptographie quantique pour palier à cela, mais c’est encore très loin d’être exploitable.

Ce qu’il faut retenir de tout cela, c’est que les algorithmes applicables à l’ordinateur quantique sont très différents de ceux que nous avons l’habitude de voir et surtout pour l’instant très peu nombreux.

C’est pour cela que je trouve absurde de tenter de comparer la vitesse d’exécution d’un ordinateur classique avec un ordinateur quantique de manière absolue. Lorsque vous lisez qu’un ordinateur quantique est 2^300 plus puissant qu’un ordinateur classique, c’est en grande partie faux. Sur l’algorithme de Shor, cela apparaît évident. Mais aujourd’hui, un ordinateur quantique est incapable d’utiliser la quasi-totalité des algorithmes fonctionnant parfaitement sur un ordinateur classique. Peut-être qu’un jour, nous arriverons à créer un ordinateur quantique « générique » capable de fédérer les 2 mondes actuels mais il n’y a aucune certitude. L’autre possibilité, actuellement plus probable, est que les 2 seront complémentaires. Nous continuerons à avoir des ordinateurs portables et des smartphones pour les tâches classiques et nous aurons probablement des ordinateurs quantiques pour des tâches impossibles à réaliser pour un ordinateur classique. Mais l’inverse sera sûrement vrai, un ordinateur quantique ne pourra se substituer à un ordinateur classique sur certaines opérations.

Pour résumer, voici une citation (dont je ne trouve malheureusement plus la source) qui m’a paru bien résumer la situation : « L’ordinateur classique est déterministe, l’ordinateur quantique est probabiliste »

Domaines d’applications

Les domaines d’applications théoriquement envisagés pour l’ordinateur quantique sont prometteurs :

– Le Machine Learning et plus spécifiquement le Deep Learning se prêtant parfaitement au côté probabiliste de l’informatique quantique.
– Pouvoir prévoir la météo de manière exacte.
– L’Intelligence Artificielle de manière plus générale, avec un jour une IA potentiellement « forte » ayant conscience d’elle-même.
– La Génomique
Maîtriser la matière

Expérimenter l’algorithmique quantique

Si vous souhaitez tenter de comprendre l’algorithmique quantique, Microsoft, Google et IBM fournissent 3 projets pour « simuler » des qubits sur des ordinateurs actuels.

Côté Microsoft, le projet s’appelle LIQ| pour Language Integrated Quantum Operations Simulator : http://stationq.github.io/Liquid. Il a pour but d’aider au développement et à la compréhension de protocoles quantiques, d’algorithmes quantiques, de correction d’erreurs quantiques et de périphériques quantiques. Il utilise F# et simule un circuit de 30 qubits sur une machine équipée de 32 Go de RAM.

Côté Google, il y a un projet nommé « Quantum Computing Playground » : http://www.quantumplayground.net qui se trouve être une expérimentation Chrome basée sur WebGL. L’idée est de simuler, à l’aide du GPU, un ordinateur quantique de 22 qubits.

Enfin côté IBM, le projet s’appelle IBM Quantum Experience : https://www.research.ibm.com/ibm-q/qx. Il vous permet d’exécuter, à travers le Cloud, des algorithmes quantiques et d’expérimenter ce qu’il est possible de faire avec l’informatique quantique.

L’approche de Microsoft

L’approche de D-Wave est intéressante mais pour certains « la machine actuelle n’est pas un calculateur quantique général, mais optimisé pour un type de calcul nommé le recuit simulé ».

Les grandes entreprises comme Google, IBM ou Microsoft planchent donc toutes à trouver un moyen de créer un calculateur quantique général.

Microsoft a choisi une approche différente des autres suite à la découverte, en 2012, d’une particule appelée fermion de Majorana qui avait été théorisée en 1937. Cette particule permettrait de mettre au point un qubit dit topologique, plus stable car moins sensibles à la décohérence et plus prometteurs pour une fabrication industrielle de l’ordinateur quantique. Pour en savoir davantage, je vous invite à lire ces 2 articles :

Ordinateur quantique : Microsoft et Alcatel-Lucent sont-ils sur la bonne piste ?
Des ordinateurs quantiques topologiques avec des fermions de Majorana ?

Aussi, pour comprendre notre approche et son potentiel, je vous invite à regarder cette courte vidéo de Bernard Ourghanlian, le directeur technique et sécurité de Microsoft France :

Pour finir, sachez que Microsoft a tout simplement une division complète dédiée à la réalisation d’un ordinateur quantique qui se nomme Station Q. Vous pouvez en connaître davantage sur ces différents sites :

https://stationq.microsoft.com/
https://www.microsoft.com/en-us/research/group/station-q/

Vous y trouverez pléthores d’articles et vidéos passionnantes à découvrir.

J’espère que ce long et détaillé article vous aura aidé à mieux appréhender ce futur qui se précipite depuis quelques mois. L’informatique quantique semble être incontournable pour continuer notre course à la puissance de calcul et à la fabrication de l’IA. Il existe d’autres approches moins médiatiques comme les processeurs neuromorphiques. Par exemple, IBM a réussi à reconstituer un cerveau numérique de rongeur avec 48 puces neuromorphiques. Mais cela est une autre histoire…

N’hésitez pas à partager vos commentaires sur ce blog ou sur twitter : @davrous. twitter-icon-download-18

Leave a Reply

Your email address will not be published. Required fields are marked *