L’histoire vraie d’une mission impossible
Imaginez que c’est votre premier jour à un nouveau boulot. Après des années de dur travail en tant qu’étudiante aux cycles supérieurs, quel soulagement de décrocher votre premier vrai emploi!
Un courriel arrive soudainement de la part de votre nouveau patron :
Fuir cette situation serait une réaction naturelle. (Notre billet de blogue précédent, daté du 10 mars 2017, peut vous guider dans votre choix de destinations.)
Nous vous présentons maintenant l’artisane à qui cette mission a été assignée lors de son premier jour de travail : c’est Geneviève Potvin, la nouvelle spécialiste en SIG de notre réseau sur l’état des lacs du Canada (la partie du superordinateur viendra plus tard, alors poursuivez votre lecture).
Un second message de votre patron suit rapidement :
Si vous connaissez une meilleure façon d’assurer l’échec de quelqu’un qui commence un nouvel emploi, nous vous en prions, écrivez-nous. Nous cherchons toujours des façons de nous améliorer.
À ce stade, si vous êtes Geneviève, soit vous relevez le défi, soit, voyons voir, la base antarctique McMurdo semble être une alternative viable. Même si Geneviève semble plutôt normale, en fait, elle ne l’est pas : elle est dans le programme de géomatique à l’Université de Sherbrooke (je m’attends à une augmentation de salaire pour cette mention), et elle est extrêmement déterminée!
Alors, qu’est-ce que nous demandons à Geneviève de faire, et pourquoi?
Notre réseau vise à offrir une évaluation de « l’état de santé » des lacs canadiens. L’état de santé d’un lac fait référence à l’écart entre le fonctionnement actuel d’un lac par rapport à son fonctionnement avant l’impact humain. Si on fait une analogie médicale, considérez l’impact humain comme une maladie, et le lac comme un corps humain. Nos mesures de lac, comme des tests conduits par un médecin (comme prendre votre température pour détecter de la fièvre), nous permettent d’effectuer un diagnostic. Par contre, puisque nous nous intéressons à la santé des « lacs canadiens » – et non à celle d’un seul lac – nous devons échantillonner plusieurs lacs à travers le Canada. De plus, puisque nous voulons extrapoler nos résultats pour les appliquer à la plupart des lacs canadiens, nous devons échantillonner de façon aléatoire (un principe de base des statistiques).
Tout cela vient avec quelques mises en garde.
Par exemple, si nous devions appeler 500 personnes à travers le Canada pour leur demander si elles se sentent malades aujourd’hui, nous obtiendrions une fraction de Canadiens qui se sentent malades (disons 1/10), et nous pourrions facilement extrapoler ces résultats sur toute la population canadienne (1/10 * 35 millions = 3.5 millions de personnes qui se sentent malades). Ceci représenterait une assez bonne estimation et serait probablement exact à quelques pourcents près.
Mais, si nous cherchons à savoir combien de gens se sentent malades dans la campagne du Québec, cette approche serait très inexacte. Même si nous connaissions la taille exacte de la population vivant dans les campagnes québécoises, que faire si la fraction du nombre de personnes qui se sentent malades est beaucoup moins grande là-bas, comparativement aux villes? En effet, puisque nous avons choisi l’échantillon de façon aléatoire, la plupart des gens que nous avons appelés vivent dans les villes (plus de 80% de la population canadienne vit dans des zones urbaines). Par conséquent, nous aurions recueilli très peu de données sur les gens vivant à la campagne au Québec.
Notre stratégie de sélection des lacs
Pour les lacs au Canada, la grande majorité est située sur le Bouclier canadien. Donc, en choisissant des lacs aléatoirement, nous échantillonnerions majoritairement des lacs dans cette région, et nous aurions de la difficulté à dire quoi que ce soit à propos du reste du pays.
De la même façon, il y a beaucoup plus de petits lacs que de grands lacs. En choisissant les lacs au hasard, nous obtiendrions une majorité de petits lacs. C’est comme si les familles canadiennes avaient toutes en moyenne 20 enfants, et que j’interrogeais celui qui répond au téléphone… Nous interrogerions surtout des enfants!
Notre réseau a aussi pour but d’examiner les lacs qui sont fortement affectés par l’activité humaine. Nous devons donc échantillonner une vaste de gamme de niveaux d’altération, allant des lacs dont l’état est intact aux lacs si fortement altérés qu’ils sont pratiquement « morts ».
- Nous avons résolu le problème concernant la distribution inégale des lacs en décidant d’avoir un nombre fixe de lacs dans les différentes régions du Canada appelées écozones.
- Afin de résoudre les problèmes reliés à la taille des lacs, nous avons décidé de choisir un nombre égal de lacs dans trois classes de tailles.
- Afin de s’assurer d’échantillonner des lacs avec divers niveaux d’altération, nous avons sélectionné les lacs parmi trois classes d’impact humain sur les bassins versants.
- Nous avons aussi limité les plus petits lacs à 0,1 km2 (il y a trop de lacs plus petits) et les plus grands lacs à 100 km2 (les plus grands lacs nécessitent des stratégies d’échantillonnage différentes).
Pour comprendre notre stratégie de sélection des lacs, imaginez que pour chaque écozone, nous avons placé un nombre égal de lacs dans chacun des carrés orange du schéma en haut à droite.
Simplifier le problème
Revenons à notre histoire… Bien sûr, nous n’avons jamais réellement souhaité l’échec de Geneviève (nous aimons bien Geneviève). Comment avons-nous simplifié le problème?
- Réduire la gamme de tailles de lacs l’a réellement laissée avec seulement 274 173 lacs entre les mains pour les 11 écozones sélectionnées.
- Nous avons décidé de nous limiter, pour cet été seulement, aux écozones de l’Est du Canada (bon, c’était surtout pour des raisons logistiques et pas tellement pour aider Geneviève). Plutôt que d’avoir des millions de lacs à éplucher, elle avait maintenant seulement environ 180 690 lacs.
- Ensuite, nous avons décidé que, du moins pour l’échantillonnage de cette année, nous devrions uniquement échantillonner les lacs ayant un accès routier. Choisir des lacs qui sont accessibles par une route a davantage contribué à faire descendre le nombre à environ 50 000 lacs (un peu de magie géomatique peut vous dire cela).
Vous vous dites peut-être – bon, c’est complètement gérable! Euh, attendez une minute… Il existe un proverbe qui dit : « Tout ce qui est multiplié par 50 000 donne quand même un gros nombre ». Ce dicton (que nous avons inventé) n’est pas toujours vrai… malheureusement dans ce cas, il l’est…
En effet, délimiter un bassin versant une fois que vous avez toutes les données en place prend environ 50 secondes sur un ordinateur décent. Un peu de mathématiques vous montrera qu’il vous prendrait environ 29 jours juste pour effectuer cette partie de calcul. Clairement, après avoir pris un mois et demi pour préparer toutes les données, il ne restait plus de temps pour effectuer les calculs. À moins, bien sûr, que vous ayez accès à un superordinateur!
Des super-solutions
Il s’avère qu’avoir accès à un superordinateur est plutôt facile en milieu universitaire au Canada. Après avoir contacté Calcul Québec (le groupe qui fournit des services de calcul intensif au Québec), Geneviève avait réfléchi à tout : si nous effectuons les calculs sur 100 processeurs, nous obtiendrons les résultats après environ 7 heures, et il y aura assez de temps libre pour finir la sélection des lacs, et peut-être même pour dormir quelques heures avant la fin des deux mois. Comme nous aimons le dire par ici : « c’est simple comme bonjour. » Ça, c’était jusqu’à ce qu’elle reçoive un courriel une semaine plus tard, disant que l’installation du logiciel nécessaire pour effectuer les calculs d’analyse de bassins versants sur le superordinateur prendrait quelques mois à installer! Afin de ne pas paniquer, nous avons essayé d’assimiler cette nouvelle de façon rationnelle… N’étions-nous pas tout de même chanceux? Apparemment, le temps d’installation des logiciels, tout comme la puissance de traitement, augmente avec de multiples processeurs. Si ce n’était pas le cas, les conversations comme celle-ci feraient la norme :
« Quoi de neuf, mec?
-Yo, je viens juste d’installer Pac Man sur mon nouveau portable.
-Comment ça s’est passé?
-Ce nouveau portable est ultrarapide, ça ne m’a pris que 51 ans! »
Si c’était le cas, les portables seraient utiles seulement pour les pins de Bristlecone ou les requins du Groenland.
Nous plaisantons ici! Nous comprenons bien sûr que l’installation et l’autorisation des logiciels pour superordinateurs sont une toute autre histoire.
(Calcul Québec : nous aimerions toujours travailler avec vous sur ce projet, sincèrement!)
Plan C, quelqu’un?
Retour à la case départ, avec une semaine en moins! C’est l’heure du « plan C » et c’est mieux d’en être un bon! Pendant que nous nous démenions pour trouver un « plan C », nous nous sommes demandé : « qu’est-ce qu’un superordinateur de nos jours, enfin? » N’est-ce pas simplement un paquet d’ordinateurs normaux reliés ensemble avec le logiciel approprié afin d’acheminer le travail efficacement sur plusieurs processeurs fonctionnant en parallèle? Les laboratoires universitaires contiennent une tonne d’ordinateurs normaux… Et si Geneviève agissait comme le « logiciel approprié afin d’acheminer le travail efficacement… »? Peut-être que le personnage « Disciple » de la bande dessinée « Léonard » vous vient en tête (image à droite).
Au moins, nous avions maintenant un plan : prendre le contrôle du laboratoire informatique pour une fin de semaine et monter des petites fractions des lacs sur 17 ordinateurs. Geneviève a dit : « Je dormirai sur place s’il le faut! » (Note à l’Université de Sherbrooke : bien sûr, elle ne l’a pas fait. Sinon, nous aurions rempli tous les formulaires nécessaires.)
Et voilà… trois jours plus tard, les calculs étaient terminés!
Voici le « superordinateur artisanal » :
(pssst… qu’a fait Geneviève après avoir accompli cette mission impossible, vous dites? Montez le volume avant de cliquer le lien!)
Le reste, c’est de l’histoire, comme ils disent…
Voici la première carte montrant l’ensemble initial des lacs sélectionnés. Cette sélection commence maintenant à être raffinée, mais elle nous permet de faire de bien meilleurs plans pour l’échantillonnage de cet été!
P.-S. : Bien que Geneviève ait été le superhéros pour ce billet, elle avait une acolyte dans cette aventure… tout Batman a son Robin, tout Sherlock a son Watson et chaque Astérix a son Obélix (sans le poids supplémentaire) si vous voulez – nous parlons de Jelena Juric, nouvellement employée, notre gourou de l’informatique et des bases de données, qui prenait fermement part à la bataille. (On nous dit que pendant que Geneviève se battait avec le Mauvaissuperordinateur, Jelena écrasait les bogues qui attaquaient le logiciel!)