L’OMNIPRÉSENCE DES MATHÉMATIQUES

Chaque fois que vous demandez votre chemin à Google Maps, vous recourez aux mathématiques. Vous renseignez votre destination et, quelques secondes plus tard, une série d’itinéraires apparaît sur l’écran de votre téléphone. Google n’y parvient que grâce au précieux concours des sciences mathématiques.

Imaginons que les ingénieurs de Google soient assez fous pour faire calculer les itinéraires par des humains, par exemple les meilleurs déchiffreurs de cartes routières au monde. Chaque requête lancée sur le moteur de recherche serait ainsi attribuée à une personne en chair et en os. Non seulement une telle démarche prendrait un temps infini, mais elle serait en outre inefficace au possible. L’équipe devrait en effet refaire régulièrement les mêmes calculs, en particulier pour ceux qui, comme moi, sont incapables de se souvenir de l’endroit précis où habitent leurs amis. Idéalement, il faudrait que les employés analysent et enregistrent à l’avance les itinéraires les plus susceptibles d’être demandés, dans l’éventualité où quelqu’un en aurait besoin un jour.

Une telle stratégie aurait-elle du sens ? La probabilité qu’un autre utilisateur souhaite connaître exactement le même trajet que vous est infime – à moins, par exemple, que vous ne partagiez un dortoir universitaire et que vos destinations se limitent à quelques bâtiments situés sur le campus. Mes voisins n’ont pas à se rendre chez mes amis de Perpète-les-Oies dont j’oublie toujours l’adresse et n’ont – à ma connaissance – aucune intention d’aller renégocier mes contrats avec mon éditeur. Par conséquent, à moins que Google ne soit capable de prédire mes trajets au kilomètre près, les employés devraient presque toujours refaire leurs calculs à chaque nouvel itinéraire. Et même avec les collaborateurs les plus brillants du monde, l’opération prendrait un certain temps, pour ne pas dire un temps certain.

Voilà pourquoi nous la confions aux mathématiques. Un ordinateur calcule le meilleur itinéraire possible, mais utilise pour ce faire des stratégies complètement différentes des nôtres : il n’est pas capable de reconnaître les rues sur une photo satellite ni d’évaluer les distances sur une carte grâce à son échelle. Les systèmes de navigation appréhendent le monde comme un ensemble de points reliés entre eux par des lignes droites. D’ailleurs, aussi étrange que cela puisse paraître, l’être humain a lui aussi recours à cette forme d’abstraction : c’est ainsi que nous représentons les plans de métro. À titre d’illustration, voici celui de Stockholm.

Plan du métro de Stockholm

Selon la logique mathématique de Google Maps, l’idéal serait qu’un utilisateur ne se déplace qu’en métro, la carte indiquant déjà l’ordre des stations. L’ordinateur pourrait alors simuler un déplacement sur une même ligne, passant de point en point, à la manière d’un petit train. Le seul problème est que les ordinateurs ne bénéficient pas d’une vue d’ensemble du réseau. Par exemple, ce serait pour vous un jeu d’enfant de définir, à l’aide de ce plan, un itinéraire allant de Slussen (au centre de la carte) à Akalla (en haut à gauche). Akalla est située sur la ligne T11, qui croise les lignes T13, T14, T17, T18 et T19 (où se trouve Slussen) à hauteur de T-Centralen. Le trajet le plus facile et le plus rapide consiste donc probablement à emprunter, depuis Slussen, la ligne T13, T14, T17, T18 ou T19, à remonter de deux stations jusqu’à T-Centralen, puis à prendre la ligne T11 jusqu’à Akalla.

Pour sa part, un ordinateur empruntera un cheminement plus complexe pour aboutir au même itinéraire. Les mathématiques qui régissent Google Maps ne reconstruisent pas un aperçu qui permettrait de relier Slussen à Akalla : leur train imaginaire voyagera au hasard jusqu’à ce qu’il arrive à la bonne destination. L’ordinateur doit en outre savoir combien de temps il faut au métro pour se déplacer d’un point à un autre. En effet, tout le monde sait que la distance entre deux points sur un plan de métro n’est pas proportionnelle à la distance réelle entre ces deux points ni à la durée du trajet les reliant. À Stockholm, par exemple, il faut beaucoup plus de temps pour aller d’Universitetet à Bergshamra, sur la ligne T14, que pour aller d’Östermalmstorg à Karlaplan, sur la ligne T13. Or, les distances représentées entre ces points pourraient faire croire le contraire.

La solution à ce problème d’évaluation de la distance consiste à placer, à côté de chaque tronçon du réseau, un numéro correspondant à la durée de parcours dudit tronçon. L’ordinateur se sert de ces chiffres pour effectuer ses calculs. Les systèmes de navigation les plus simples passent toutes les options en revue, en essayant, à chaque nouvelle option, de trouver un itinéraire plus court que le précédent.

Une méthode qui peut sembler un rien abstraite, mais qui reste en pratique facile à suivre. Partant de Slussen, l’ordinateur recherche la station la plus proche. À une minute de trajet, Mariatorget apparaît comme la meilleure candidate. L’ordinateur poursuit-il le trajet sur la même ligne, jusqu’à Zinkensdamm ? Non, il décide de faire une deuxième tentative vers Gamla stan. Résultat : Slussen – Gamla stan prend moins de temps que Slussen – Mariatorget. Vient ensuite le tour de Medborgarplatsen. Une fois cette première étape effectuée, l’ordinateur passe alors aux deuxièmes stations sur ces mêmes lignes.

On comprend aisément que l’opération nécessitera beaucoup de temps avant d’arriver à Akalla, une station située à une demi-heure et douze arrêts de Slussen. Les tentatives de calcul de l’ordinateur ont déjà pris en compte Fruängen, tout en bas du plan, car ce trajet ne prend que quinze minutes. L’ordinateur a également calculé l’itinéraire vers Skarpnäck, en bas à droite : la station ne se situe qu’à dix-sept minutes de Slussen. Mais une fois que l’itinéraire vers Akalla vous est proposé, vous pouvez être sûr que c’est le plus court. La méthode semble inefficace, surtout lorsqu’on la compare à la nôtre, qui combine notre logique à notre sens de l’orientation. De fait, c’est uniquement grâce à sa puissance supérieure de calcul que l’ordinateur demeure beaucoup plus rapide que nous.

Google Maps fonctionne à peu près de la même manière, à cette différence près que les points du réseau ne sont pas des stations de métro, mais des croisements de voies. Une sortie d’autoroute est un point, au même titre qu’une intersection en centre-ville. La logique mathématique ne fait pas la distinction entre autoroute et route de campagne : cette information s’exprime à travers les temps de trajet plus ou moins longs, c’est-à-dire les chiffres repris à côté de chaque tronçon dans Google Maps. Pour parcourir la même distance, le temps de trajet est par définition beaucoup plus long sur une départementale que sur une autoroute, vu que la vitesse maximale autorisée y est inférieure. Ces chiffres permettent aussi d’ajuster les temps de trajet en cas d’embouteillage, passant par exemple de dix à vingt minutes lorsque le trafic est ralenti. Si vous décidez de recalculer l’itinéraire, le retard sera automatiquement pris en compte. Vous pourrez ainsi être redirigé vers une départementale qui longe le tronçon d’autoroute embouteillé, puisqu’elle sera soudain devenue plus rapide.

La méthode fonctionne très bien sur de courtes distances. Sur de plus longs trajets, les choses peuvent se compliquer. Imaginez un trajet de New York à Chicago, qui oblige Google à calculer tous les itinéraires au départ de Manhattan. Les ordinateurs peuvent travailler rapidement, mais même une machine moderne ne pourrait faire autant de calculs en si peu de temps. Par conséquent, nous supposons (la méthode exacte n’étant pas publique) que Google Maps recourt à certaines astuces afin de réduire le nombre d’opérations. Ces astuces seront examinées plus en détail au chapitre VII.

Comme nous l’avons vu, les conseils d’itinéraires reposent largement sur des opérations arithmétiques. Cette stratégie ne fait pas pour autant appel à une intelligence supérieure à la nôtre. Souvent, la recherche acharnée de la destination finale lancée par l’ordinateur est tout sauf efficace. Les mathématiques ne simplifient donc pas forcément le problème, puisqu’une machine doit finalement faire plus de travail qu’un être humain. Néanmoins, la combinaison des mathématiques et de la puissance informatique permet de gagner du temps : le calcul de l’itinéraire correct peut se faire beaucoup plus rapidement grâce au plus grand nombre d’opérations possibles à la seconde.

Les recommandations de Netflix

Une fois renseigné par Google au sujet de votre itinéraire, vous attendez le métro en consultant les nouveaux programmes disponibles sur Netflix. À côté de chaque film figure un pourcentage en vert, censé indiquer s’il s’apparente à ce que vous avez l’habitude de regarder. Bien sûr, il arrive que Netflix se trompe et que le film que vous auriez dû trouver extraordinaire soit un épouvantable navet. Mais si vous prenez la peine de vous y intéresser, vous remarquerez que, dans l’ensemble, ces pourcentages donnent une image relativement précise de vos goûts cinématographiques. Cette image évolue avec le temps, tandis que vous visionnez d’autres contenus. L’analyse s’opère de façon entièrement automatique. Quelque part dans le monde, un programme informatique est donc capable de deviner quels films et séries vous plairont, sans pour autant comprendre quoi que ce soit au septième art.

Netflix vous fournit ces indications en se fondant sur les données dont il dispose. Un nombre gigantesque de personnes utilisent en permanence la plateforme, qui conserve minutieusement toutes les données. Netflix sait quels films et séries vous regardez, et donc quel type de films et séries vous appréciez, qu’il s’agisse de documentaires sur l’établissement des horaires de métro, de films d’horreur, ou de tout autre chose. En outre, Netflix classe ses contenus vidéo par catégorie. Il lui suffit donc de croiser ces deux informations pour vous envoyer des recommandations. Si vous regardez beaucoup de films d’horreur, vous aurez sans doute envie d’en voir un nouveau ? Simple comme bonjour.

Mais Netflix va plus loin. La plateforme de streaming attribue un score d’affinité à tous les films et séries, et donc pas seulement à ceux qui appartiennent à « votre » catégorie, l’horreur en l’occurrence. Ce chiffre indique dans quelle mesure le contenu en question ressemble à ce que vous avez l’habitude de regarder. Netflix évalue donc le niveau de similitude entre, par exemple, un film d’aventure et un film d’horreur. Les films d’aventures à suspense se rapprochent davantage de ce que vous aimez voir en général que des films qui ne font pas peur du tout. C’est exactement le genre de détails que pourraient vous donner des amis à qui vous demanderiez conseil. Netflix parvient donc aussi à tenir compte de ces informations, bien que la plateforme soit loin d’atteindre le niveau des recommandations d’un authentique cinéphile.

De plus, il est possible que vous ne regardiez qu’un type précis de films d’horreur, par exemple ceux qui ne sont pas trop sanglants. Dans ce cas, les films d’horreur particulièrement gores vous correspondront moins que des films d’aventures à suspense. En d’autres termes, une préconisation uniquement fondée sur le genre ne conduit pas toujours aux meilleurs résultats, car en définitive, c’est le contenu du film qui l’emporte sur le genre. Les ordinateurs ne sont pas capables de comprendre ces subtilités. Idéalement, il faudrait engager du personnel qui analyserait, pour chaque utilisateur, le contenu des films visionnés, dans le but de proposer ensuite des films au contenu similaire. Avec des millions d’utilisateurs à travers le monde, ce n’est bien sûr pas envisageable. Les recommandations doivent donc nécessairement être automatisées. L’opération est possible, à condition de recourir à une méthode spécifique.

L’idée derrière cette méthode est d’une simplicité enfantine : une bonne recommandation est une recommandation qui correspond aux goûts de l’utilisateur. Dans le monde entier, des téléspectateurs regardent des films et des séries sur Netflix, des contenus qu’ils apprécient et qui ressemblent le plus souvent à ceux qu’ils ont déjà vus. Deux films seront jugés proches à partir du moment où un certain nombre d’utilisateurs vont regarder l’un juste après avoir vu l’autre. Ainsi, si un nombre significatif choisit Iron Man 2 après avoir vu Iron Man, l’ordinateur en déduira que ces deux films se ressemblent et ajoutera Iron Man 2 à ses recommandations. Plus le nombre d’utilisateurs de Netflix est élevé, plus les prévisions de la plateforme sont précises. Le logiciel vous proposera des films et des séries qui ont été regardés par de nombreuses personnes ayant vu les mêmes films et séries que vous auparavant.

Cette méthode comporte toutefois un problème intrinsèque. Netflix compte des millions d’utilisateurs, qui ont chacun visionné un nombre non négligeable de films et de séries. L’approche exposée ci-dessus repose sur une simple opération arithmétique : compter le nombre de vues d’un film ou d’une série par des utilisateurs qui regardent les mêmes contenus que vous. Mais dans les faits, le calcul n’est pas toujours si simple. La méthode tient aussi compte des téléspectateurs qui ont regardé les mêmes films que vous, à une ou deux exceptions près. Et si vous aimez non seulement les films d’horreur, mais aussi les documentaires ? Si vous ne vous concentrez que sur les utilisateurs qui regardent exactement les mêmes titres, il ne restera plus grand monde. Et moins il y aura d’utilisateurs, plus les prévisions seront imprécises. En pratique, la méthode, pourtant simple, devient donc vite un casse-tête.

C’est la raison pour laquelle il peut être utile de représenter l’ensemble des programmes sous la forme d’un schéma, à l’image du plan de métro exposé plus haut. Chaque film ou série constitue une étape, une sorte de station dans le monde de Netflix. Vous pouvez vous rendre de n’importe quelle station à n’importe quelle autre. Il vous suffit pour cela de naviguer d’un film à l’autre sur le site Web de Netflix.

Pour pouvoir effectuer des opérations arithmétiques à partir de cette carte, vous devez aussi lui ajouter des chiffres. Il ne s’agira évidemment pas des temps de parcours entre deux stations, mais du nombre de personnes ayant regardé les deux séries ou les deux films soumis à l’analyse. Autrement dit, combien d’utilisateurs ont voyagé d’une station à une autre. Voici un exemple ci-dessous, avec des chiffres fictifs.

L’offre de Netflix, réduite à trois films

À l’aide de ce schéma, posons-nous la question des pourcentages de similitude. Admettons que vous n’ayez vu qu’Iron Man. L’ordinateur doit à présent deviner si vous aimerez Iron Man 2 et La Planète bleue. D’après le schéma ci-dessus, Iron Man 2 doit obtenir un pourcentage de similitude élevé avec Iron Man. En effet, un film correspond mieux à vos attentes si un grand nombre de personnes dont vous partagez les goûts l’ont regardé. La Planète bleue, en revanche, doit obtenir un score plus faible, car peu de ses spectateurs ont aussi regardé Iron Man. En outre, encore moins de personnes ont vu à la fois Iron Man 2 (le film censé vous plaire selon Netflix) et La Planète bleue. Raison de plus pour attribuer un pourcentage faible à ce dernier, et donc pour ne pas le recommander.

Ainsi, l’ordinateur va avoir recours à ses propres prévisions pour améliorer les prévisions relatives à d’autres films et séries. Avec seulement trois films, la démonstration est évidente, mais essayez de faire l’exercice avec des milliers de films et de séries ! C’est possible en théorie, de même que vous pourriez, avec suffisamment de temps et d’espace, tracer à la main tous les itinéraires que vous pourriez emprunter pour relier un point A à un point B. Mais reconnaissons qu’avec l’aide de l’informatique, et notamment de la théorie des graphes, ces prévisions se voient facilitées, à condition de disposer d’un ordinateur assez puissant. La version mathématique de ce puzzle permet ainsi à Netflix de prédire de façon entièrement automatisée si un film ou une série vous plaira.

[…]

L’éditeur remercie la Fondation néerlandaise pour la littérature
pour son soutien financier.
Illustration

Titre original : Plussen en minnen
Éditeur original : Uitgeverij De Bezige Bij, Amsterdam, 2018.
© 2018 Stefan Buijsman

Conception couverture : Éric Doxat - Illustration : Geviert, Grafik & Typografie, Andrea Hollerieth
Photos de fond de couverture © Getty Images/iStockphoto - Photo de l’auteur : Tomas Oneborg

© Vuibert, 2020

La Librairie Vuibert
5, allée de la 2e D.-B., 75015 Paris
www.la-librairie-vuibert.com

Ce document numérique a été réalisé par PCA