vendredi, juin 12, 2009

L'insoutenable durabilité de l'environnement : Microsoft contre le réchauffement climatique


La France qui s'était bien tardivement mise au financement privé de
ses universités avec, en particulier, la loi LRU de 2007 qui
s'inspirait pour ces partenariats public-privé des pratiques
américaines déjà anciennes, y plaçait alors de grands espoirs. (Le
trouble jeté dans les cénacles hexagonaux de l'enseignement par le
trop fameux « Classement de Shanghaï » n'y était d'ailleurs
probablement pas pour rien : notre prestigieuse et plus que
bicentenaire Ecole des Mines relevait elle-même le gant en publiant
son propre classement mondial des universités et des grandes écoles,
ne s'y octroyant elle-même — suprême élégance — que le dixième rang
!) Mais ces ambitieuses espérances furent largement tempérées par la
timidité et à tout le moins le manque d'enthousiasme constaté dans la
mise en place de ces fondations destinées à lever de l'argent privé.



Alors que la loi Pécresse visait a priori les industriels français
pour les encourager à participer au financement de l'enseignement
supérieur — une idée qui est loin d'être naturelle sous nos cieux —
c'est Microsoft qui s'était alors avancé pour se prêter au jeu. Un
premier partenariat signé en octobre 2007 avec Sciences Po comportait,
notamment, le soutien financier de deux chaires (« Humanités
scientifiques », sur le rôle de l'innovation dans la société
contemporaine, et « Régulation » sur l'innovation et les questions de
propriété intellectuelle — on voit assez bien les ficelles du
dispositif). M. Martin-Lalande, député du Loir-et-Cher organisateur du
passage éclair de l'impétueux Steve Ballmer à l'Assemblée Nationale
proféra alors cette sentence impérissable : « ce partenariat permet à
Microsoft d'acquérir de la respectabilité ». Décidément, on ne change
pas notre classe politique nationale !



Le — donc — respectable Microsoft signait ensuite un partenariat
avec l'Université de Lyon 1 sur les questions de systèmes de soins et
de gestion du dossier médical. Mais les efforts de Microsoft
culminaient avec la création en 2007 du
Laboratoire commun de recherche INRIA - Microsoft Research qui fêtait
ses deux ans d'existence et
présentait ses premiers résultats en janvier dernier à L'Ecole
polytechnique — en pleine agitation de campagne KES. La semaine
dernière, le respectable Microsoft culminait à nouveau, dans les mêmes
lieux — mais cette fois en pleine agitation préparatoire au
Point Gamma, décidément ! — pour inaugurer la nouvelle chaire
Polytechnique - CNRS - Microsoft : « Optimisation et Développement
durable ».



Fruit de deux ans d'un laborieux travail de préparation qui doit
beaucoup à la ténacité et à l'énergie d'Eric Boustouller et de ses
équipes menées notamment par Marc Jalabert et Pierre-Louis Xech,
l'initiative ne manque pas d'un certain courage dans le climat actuel
qui prévaut dans la recherche et les universités françaises. La chaire
OSD — puisqu'il faut sacrifier à l'anglais international à mon plus
grand désespoir, cette chaire de l'X et du CNRS est officiellement
baptisée Optimization for Sustainable Development, d'où OSD (ODD
serait, je le reconnais, plutôt curieux en anglais !) — est animée
par Philippe Baptiste, chercheur CNRS et directeur du Laboratoire de
recherche informatique de l'Ecole Polytechnique (unité mixte de
recherche CNRS / Ecole Polytechnique) et par Youssef Hamadi,
responsable du « Constraint Reasoning Group » à Microsoft Research
Cambridge et co-responsable du projet « Adaptative Combinatorial
Search » au sein du Centre de Recherche Commun INRIA-Microsoft
Research.



Car voilà bien le thème finalement retenu, bien dans l'air du temps :
la programmation par contraintes au secours de l'environnement.



L'idée peut sembler au premier abord fort étrange au béotien. En quoi,
ce qui dans mes souvenirs confus de la discipline alors naissante de
l'Intelligence Artificielle de la fin des années 70, début des années
80, apparaissait comme une ramification algorithmique éthérée adulée
d'une cohorte obscure de zélateurs de la cinquième génération,
d'Edimbourg et d'Alain Colmerauer pouvait-elle prétendre à lutter
contre le changement climatique et préserver l'environnement ?



En 2008, dans le cadre de la Clinton Global Initiative, l'Université
de Cornell avait alloué $50m à un nouveau centre de recherche, le
Center for a Sustainable Future destiné à encourager la recherche
multidisciplinaire pour un avenir durable pour tous. (La durabilité de
l'avenir me pose un problème presque philosophique dans ses termes,
mais passons...) Et c'est précisément en ce moment que se tient son
premier Symposium, CompSust09, pour — accrochons-nous — la
« durabilité calculatoire » (meilleur que le « comput durable » me
semble-t-il, pour essayer de tradiure computational sustainability ?).



Perplexité à nouveau.



C'est qu'en fait, en plus de vingt ans, les domaines théorique et
pratique de la programmation par contrainte se sont particulièrement
développés, défrichant de nouveaux champs d'applications et récoltant
les fruits de profondes découvertes théoriques. C'est ce qui
transparaissait dans le séminaire scientifique de l'après-midi qui
suivit l'inauguration officielle du matin, en « téléprésence » vidéo
de la Secrétaire d'Etat Nathalie Kosciusko-Morizet qui rayonnait de
voir réunis là deux de ses centres d'intérêt, écologie et numérique.




  • L'optimisation combinatoire stochastique était le premier sujet
    abordé par Pascal Van Hentenryck. On s'y pose la question
    d'optimiser tout une série de mesures (ou de contraintes) dans un
    univers de données probabilisé. C'est cette prise en compte des
    probabilités qui la distingue des techniques « dures » de la
    recherche opérationnelle et qui est particulièrement adaptée aux
    données en ligne — qui sont engendrées au vol sans distribution
    connue a priori — et aux problèmes liés à l'environnement lui-même
    incertain.


  • Une excellente introduction à la première grande problématique que
    l'on pourrait qualifier d'économique ou de bio-économique dont
    l'objet est d'optimiser l'usage des ressources naturelles sur la
    base de modèles économiques de la gestion de l'environnement.


  • La seconde grande problématique est évidemment liée à
    l'optimisation de la production d'eau et d'énergie et à
    l'optimisation de leur distribution et leur usage. Des applications
    immédiates : optimisation de la distribution et de l'usage de
    l'énergie électrique dans les usines, réduction de la consommation
    des datacenters informatiques des géants de l'Internet et du
    cloud computing, optimisation de la charge et de la décharge des
    batteries pour des applications qui vont du lecteur MP3 au moteur
    des voitures électriques...



Au passage ce dernier sujet était abordé en profondeur par Bernard
Ourghanlian à l'occasion du lancement de SIMBIOSYS, communauté
française dédiée à la simulation, qui notait qu'à « budget
transistors » égal, et pour un budget énergie que l'on veut faire
décroître, chaque coeur d'une puce multicoeurs disposait donc de moins
de watts que son cousin monocoeur. La réponse technologique à ces
nouvelles contraintes réside dans le développement de puces manycores,
plutôt que multicoeurs, constituées de plusieurs coeurs hétérogènes
aux fonctions dédiées (logique, graphique, I/O, etc.), qui se prêtent
alors à une planification et une optimisation de la dépense
énergétique en fonction des tâches allouées. Cette révolution annoncée
à l'échelle du matériel entraîne aussi son lot de bouleversements à
venir à l'échelle des logiciels systèmes et des logiciels applicatifs
reposant sur cette nouvelle architecture. Se posent non seulement les
problèmes de parallélisation des algorithmes, pour utiliser la
multiplicité des coeurs, mais la question plus pressante de
l'interopérabilité de jeux d'instruction et de langages de
programmation conceptuellement différents pour ces coeurs hétérogènes
: la programmation d'un coeur graphique NVidia, par exemple, est bien
différente de celle d'un coeur logique base X86. (Des
projets comme LLVM sont ici intéressants à suivre de ce point de vue.)



En conclusion de cette journée sur un campus inondé de soleil,
Rick Rashid en personne, le patron et fondateur de Microsoft Research,
donnait un aperçu à couper le souffle des travaux de recherche en
cours dans son organisation.




  • Réseaux de capteurs. Ici, une mention particulière pour
    l'utilisation de capteurs communicants (IEEE 802.15.4)
    autoalimentés pour surveiller la température de ses datacenters
    voici donc l'invasion des genomotes, anticipée par les Xipehuz de
    Rosny aîné ! En retour de boucle, ces données mesurées sont
    utilisées en temps réel pour modifier l'algorithme de répartition
    des travaux sur les serveurs afin de refroidir la salle. Au
    registre de la protection de l'environnement, étaient également
    présentées des applications de réseaux de capteurs en hydrologie et
    en météorologie (SensorMap).


  • Santé. Les projets tournent ici autour de la médecine personnalisée
    et l'application des technologies d'Intelligence Artificielle à la
    recherche de nouvelles molécules et de vaccins. (Clin d'oeil à mon
    complice de jadis, Alain Rappaport.) En Europe, Microsoft a créé
    avec l'Université de Trento en Italie un laboratoire joint de
    recherche sur la modélisation des systèmes biologiques de même
    nature.


  • Preuves de code. C'est le sujet théorique creusé, en particulier,
    par le laboratoire joint de recherche créé avec l'INRIA en
    France. Nous avions récemment vu comment la saisie, sans commission
    rogatoire, des travaux de recherche du laboratoire public par le
    (respectable !) géant au généreux porte-monnaie leur insufflait une
    seconde vie dans F#.


  • Education et Enseignement. Rick Rashid rappelait également les
    projets de Tablet PC pour les écoliers, l'utilisation de robots
    pour enseigner la programmation avec Microsoft Robotics Studio, la
    version moderne et in real life de la tortue virtuelle de Logo qui
    fit la joie d'une toute jeune génération affairée au
    rez-de-chaussée du Centre Mondial Informatique et Ressource Humaine
    — dans ces âges reculés pré-Internet où la mémoire titube. Il y a
    enfin l'extraordinaire WorldWide Telescope qui fait resurgir tout
    le merveilleux scientifique (Maurice Renard) de notre enfance.



Rick Rashid concluait sur une note résolument futuriste en dépeignant
Kodu un langage de programmation visuelle à l'intention des enfants
(Cocoa d'Apple avait connu un modeste début tout à fait comparable
(KidSim), fruit de l'imagination fertile de Larry Tesler ; sans parler
de Logo de Seymour Papert). Mais ici, le patron de Microsoft Research
ne s'en cache pas, son idéal serait d'apprendre aux enfants le
computational thinking, à penser, finalement, comme un
ordinateur. Outre la difficulté technique que présente cette ambition
quasi-philosophique à l'heure où l'on n'arrête pas de redéfinir les
frontières du calculatoire et le territoire de la computation — elle
va durablement sauver l'environnement et incessamment nous protéger
des pirates numériques nous dit-on — il me semble qu'on peut
légitimement se demander si c'est vraiment souhaitable...



Beaux sujets pour l'épreuve de philosophie du Bac 2009, ce 18 juin :



Est-il possible, est-il moral de penser comme un quadcore ? Vous
rédigerez votre analyse en F#, en faisant référence aux oeuvres
étudiées pendant l'année, puis la prouverez. (On rappelle que tout
usage de genomotes ou de réseaux sociaux pendant l'épreuve est strictment
interdit et donnera lieu à une riposte graduée.)
Vous avez quatre heures.



ShareThis