L'ignorance c'est la force

Il n'y aurait pas d'algorithme locaux dans Parcoursup, mais des "Outils d'aide à la décision". Cette phrase, est répétée comme un mème, par le compte twitter @parcoursup_info mais aussi par diverses instances remplaçant le terme "algorithme" par "Outil d'aide à la décision". Or cela revient exactement au même. Il n'est pas humainement possible de classer 1000 candidatures "à la main", et l'enseignant qui ferait ça serait un idiot qui a beaucoup de temps à perdre. Depuis le 3 juin 2008, j'ai publié près de 848 articles sur ce blog. Imaginons que l'on me demande de sélectionner les 10 meilleurs. Sans algorithme, c'est impossible.



Sans algorithme, beaucoup de subjectivité...

Si l'on me demandait quel est le meilleur article de ce blog, j'irais peut-être voir dans les archives de janvier [6] ou novembre 2015 [7], ou alors peut-être indiquerais-je l'article écrit suite au décès de ma grand-mère. [8]

Ce sont des articles où j'ai utilisé mon blog comme un journal intime, parce que j'avais des choses à dire, parce que j'étais triste, parce que je ne comprenais pas. Ce ne sont pas des billets susceptibles d'intéresser quelqu'un qui vient par hasard sur ce blog.

Et si j'écris plus haut que je choisirai un article de novembre 2015, c'est parce qu'hier j'ai regardé l'incroyable documentaire de Netflix "Fluctuat Nec Mergitur". Si j'avais un classement de candidats à faire suite à cela, peut-être accorderais-je un intérêt particulier aux Valérie, ou à ceux qui portent les pompiers de Paris en héros ?


Aide à la décision de Parcoursup.

Parcoursup contient un outil d'aide à la décision, et ceux qui l'ont utilisé ont dû remplir une fiche CNIL [1]. Quelques informations sur cet outil ont été publiées par Marianne [2].


Cela n'empêche pas le développement des outils locaux...

Utilisation d'un tableur avec un seul critère.

En théorie, les dossiers sont examinés par des individus qui enseignent à l'université, donc ont un doctorat (Bac +8), voire un master ou un diplôme d'ingénieur (Bac + 5), même s'il n'est pas impossible que cette tâche ingrate ait été confié à un gestionnaire ou une stagiaire.  On peut supposer, sans trop se tromper, que les personnes qui analysent les candidatures savent manier un tableur (LibreOffice Calc par exemple) pour les enseignants-chercheurs en sciences humaines et sociales (SHS) ou python pour les autres (ou Fortran, C++, etc, etc...).

Si j'ai un seul critère pour choisir les 10 meilleurs articles de mon blog, je peux utiliser un tableur. Par exemple, je vais les classer en fonction du nombre de visites :


Le "simple" fait de classer en fonction d'un critère est déjà un traitement algorithmique. S'il s'agit d'humains, je dois être conforme au RGPD.


Or je m'aperçois que les articles qui ont le plus de visites, ne sont pas forcément les plus intéressants :
  1. Women of NASA, Margaret Hamilton [3], a eu beaucoup de visites le jour de sa publication (25 novembre 2017), sans doute parce que le titre est en anglais, et aussi parce que les fans de légo y ont trouvé un intérêt. 
  2. La dictée des CM2 [4] a été publié en 2011, et a eu beaucoup d'accès depuis Google par des enseignants qui recherchaient par exemple "Dictée Univers". 
  3. Collège 2016 et l'emploi du temps [5] est visité régulièrement, mais surtout en juin et septembre, avec des mots clés du style "Exemple emploi du temps collège". 
Women of NASA, Margaret Hamilton [3]


Algorithme avec élimination humaine.

Si le critère que j'ai utilisé produit un classement qui ne me convient pas, je peux mettre un peu d'humain au cœur de la procédure, en éliminant certains articles, jusqu'à obtenir un top 10 qui me convienne. Si je suis une université et que je décide de prendre tout le monde, je peux mettre un "OUI SI" aux articles qui ne me conviennent pas, et à ceux qui ont été vus moins de 100 fois. Je classe ensuite les OUI avant les OUI-SI et je trie par nombre de visites. Le premier article se retrouve 561ième.


Dans ce cas, on comprend que les universitaires n'aient aucune envie de publier ces attendus bidouillés, ce qui reviendrait à reconnaître qu'ils ont agi de manière illogique "On a classé selon tel critère, mais, comme ça ne nous plaisait pas, on a supprimé X ou Y parce qu'on n'aime ni les légos, ni les dictées". Les candidats venant de La Chapelle Saint Sauveur ou de Valenciennes ne nous intéressaient pas non plus.

Traductions locales des attendus ? 

Les universités ont aussi des attendus, comme par exemple "bonnes connaissances scientifiques" ou "compétences linguistiques". Elles ont dû les traduire. Imaginons, que pour mon blog, cet attendu soit "il doit être question de recherche de vie extraterrestre". Je peux utiliser plusieurs algorithmes pour cela :
  • La catégorie SETI [8] attribuée manuellement à chaque article (donc il y a un côté subjectif), puisque c'est moi qui ai décidé que ce que je venais d'écrire était lié à la recherche de vie extraterrestre, même si l'acronyme ne figure pas dans le texte. 
  • La recherche du mot clé SETI [9]
  • Je peux aussi utiliser Google en tapant "SETI site:zazaa.blogspot.com"
Une vérification humaine des attendus "bonnes connaissances scientifiques" ou "compétences linguistiques" pourrait se traduire par une recherche dans le CV, les lettres de motivation, ou dans les appréciations du bulletin, avec un "1" mit pour les candidats chez lesquels on trouve ce critère, et un "0" pour les autres. Or comme il y a 116 articles avec le label SETI sur mon blog, je suis bien obligée d'utiliser un autre critère si je n'en veux que 10, comme par exemple le nombre de visites :  



Le modèle de ce site choisit d'afficher les derniers publiés. Le seul article qui se retrouve dans le top 10 du nombre de visites est "Survie d'une civilisation" [10].


La recherche par mot clé, produit un classement différent des deux précédents.

Quant à Google, il associe cela au SETI Institute (sur la droite), et affiche en premier la page SETI, puis l'article SETI@HOME et Apollo. [11]


Quel terme chercher dans un CV ou une lettre de motivation pour traduire "bonnes connaissances scientifiques" ? Un stage au CNRS ? Une liste de mots comme "physique, mécanique, mathématique, etc..." Et quelqu'un qui s'intéresserait aux SHS, à la sociologie, aux statistiques, n'aurait-il pas également de "bonnes connaissances scientifiques" ?

Algorithme local

Dans le milieu universitaire, on peut imaginer que n'importe qui est capable de programmer quelque chose de simple, ou de trouver un technicien, un ingénieur, un stagiaire capable d'écrire quelques lignes de code. Le langage à la mode depuis quelques années, c'est Python, et il existe de très bons manuels qui permettent de se débrouiller.


A partir des exemples de ce livre, j'ai pu en quelques minutes écrire ce petit programme auhasard.py [12]. Il utilise le fichier titre.csv [13] contenant les 115 titres des billets de blog de 2017 et 2018. Quand je le lance une première fois, j'obtiens le classement des 10 meilleurs articles de ce blog :

 1  :  Salut le non-terrien (99 visites) [14]
 2  :  Carl Sagan : bonjour SETI (189) [17]
 3  :  Les ovocytes de Barin (344) [16]
 4  :  Plein feu sur Proxima du Centaure (145)
 5  :  Le plateau de Saclay en Juillet (136)
 6  :  Technosignature (146)
 7  :  MondialeTM (190)
 8  :  Maths au quotidien (404)
 9  :  Après l'apocalypse (322)
10  :  What is Charlie? (57)

Ce classement n'est pas si mal, non ? Il y a 4 articles consacrés à SETI, le premier et le dixième sont liés à Charlie Hebdo ou aux attentats de 2015, trois comptabilisent plus de 300 visites. Quels sont les critères utilisés ? Aucun.

J'ai juste utilisé 10 fois la fonction random.choice() qui permet de choisir un élément au hasard dans une liste. Tant que cet algorithme n'est pas connu, rien ne permet de déterminer qu'une fonction aléatoire a été utilisée. Je suis capable de justifier les 10 titres sélectionnés.

La guerre, c'est la paix.

Pourquoi vouloir mettre en concurrence les articles de ce blog ? Cela n'a aucun sens. Créer des classements, des listes d'attente, là ou il n'y a aucune raison de le faire, c'est monter les universités les unes contre les autres, créer des tensions entre les candidats, entre les lycées, juste pour avoir la paix.

Les ovocytes de Barin [16]

La liberté, c'est l'esclavage

A coup de communication du style "Le candidat a le dernier mot", on laisse croire qu'il est libre d'aller où il veut. Sauf, qu'à deux semaines du bac, 184725 candidats se connectent chaque jour sur Parcoursup pour vérifier s'ils n'ont pas reçu une première proposition, tandis que 310840 se connectent pour connaître leur rang dans les vœux en attente [15]. Etre contraint d'exécuter chaque jour le même geste, n'est-ce pas de l'esclavage ?

Salut le non-terrien [14]

L'ignorance c'est la force

Prétendre qu'il n'y a pas d'algorithmes locaux est complètement faux. D'une part, parce qu'il serait surprenant que dans les 13297 formations de Parcoursup, aucune n'ait utilisé de programme python (ou autre) pour faire le tri. On peut appeler ça "Outil d'aide à la décision" si on veut, mais c'est un algorithme.
A moins que celui-ci ne contienne une fonction random, ou d'autres directives inavouables, il n'y a aucune raison de ne pas le publier comme je l'ai fait rapidement avec auhasard.py.  [12]

Carl Sagan : bonjour SETI[17]

Pour ce qui est des bidouilles dans les tableurs du style "Je trie en fonction du nombre de visites, mais je mets des OUI-SI pour ceux que je n'aime pas", ou "le plus important, c'est SETI, je classe d'abord ceux-là puis les autres après en fonction du nombre de visites.", on peut comprendre la difficulté d'énoncer clairement comment les choix ont été faits, puisqu'il y a une partie complètement subjective.

Tant qu'aucun algorithme, ni critère de sélection local, n'est publié, l'ignorance fait la force de Parcoursup. Chacun peut se féliciter qu'il n'y ait pas de tirage au sort, puisqu'on n'est pas au courant de ceux qui ont été utilisés... Comme le dit Orwell dans 1984 :
La guerre, c'est la paix.
La liberté, c'est l'esclavage
L'ignorance c'est la force
Le site algorithme-parcoursup.info [19] propose un modèle de lettre que chacun peut utiliser pour connaître les raisons de son classement.  Il est probable que les établissements fournissent une réponse standard du style "Nous avons classé en fonction du nombre de visites". Qui ira vérifier qu'il n'y a pas une fonction random ou que Valenciennes n'a pas automatiquement généré un "OUI-SI" ? Par exemple, si des fans de Légo s'étonnent de l'absence de billets sur "Lego NASA Women" dans ce top 10, je peux répondre individuellement qu'ils ont été mal classés, parce que je n'ai pas trouvé l'attendu "SETI" dans les articles que j'ai relus attentivement. Tant que l'algorithme local n'est pas publié, toute vérité partielle est permise.  L'ignorance c'est la force de Parcoursup !

  1. L’utilisation du module d’aide à la décision : les obligations CNIL
  2. Alexandra Saviana, Les enseignants décryptent l'algorithme "ubuesque" de Parcoursup, publié le 9 avril. 
  3. Women of NASA, Margaret Hamilton
  4. La dictée des CM2.
  5. Collège 2016 et l'emploi du temps 
  6. Archives janvier 2015.
  7. Archives novembre 2015.
  8. Articles de la catégorie SETI
  9. Article correspondant à la recherche du terme SETI.
  10. Survie d'une civilisation
  11. SETI@HOME et Apollo
  12. auhasard.py
  13. titre.csv
  14. Salut le non-terrien
  15. Indicateurs publics chiffres du 03/06/2018
  16. Les ovocytes de Barin.
  17. Carl Sagan : bonjour SETI
  18. Laurent Pointal, Une introduction à Python 3
  19. http://algorithme-parcoursup.info/


Commentaires