Le Ministère de l'Enseignement Supérieur publie l'algorithme de Parcoursup
à la veille de ses premières réponses

Le , par Stéphane le calme, Chroniqueur Actualités
Admission Post-Bac (APB) était le système du ministère français de l'Enseignement supérieur et de la Recherche qui, entre 2009 et 2017, a permis d'orienter les nouveaux bacheliers dans les formations de l'enseignement supérieur public en France. Mais il a été remplacé le 15 janvier 2018 par Parcoursup.

La création de Parcoursup visait, entre autres, à refléter des changements opérés par le ministère pour corriger une non-conformité du traitement APB à la loi Informatique et Libertés. La CNIL a en effet demandé au ministère de « cesser de prendre des décisions concernant des personnes sur le seul fondement d’un algorithme et de faire preuve de plus de transparence dans son utilisation. »

Parcoursup reprend donc la même plateforme que son prédécesseur, avec néanmoins une nouvelle charte graphique et de nouveaux paramètres. Le nombre de vœux évolue également, tout comme les critères.

Lundi 21 mai, le Ministère de l'Enseignement Supérieur et de la Recherche (MESRI) a publié les algorithmes utilisés par la plateforme Parcoursup dans le cadre de la procédure nationale de préinscription pour l'accès aux formations initiales du premier cycle de l'enseignement supérieur.

Il faut noter que la publication est faite à titre indicatif et ne permettra donc pas aux candidats de connaître les techniques précises retenues par chaque université en vue d’opérer un tri des dossiers. En vertu du « secret des délibérations », le gouvernement a, en effet, insisté, lors du vote de la loi relative à la protection des données personnelles, lundi 14 mai, pour que les universités n’aient pas à dévoiler les algorithmes locaux mis au point pour assurer la cohérence entre le profil du candidat et les attendus de la formation demandée.

« À la différence d'Admission Post Bac, dont les règles de fonctionnement n'avaient jamais été explicitées publiquement, les règles qui régissent Parcoursup ont été clairement fixées par la loi et par les décrets et arrêtés d'application » , indiquent dans un communiqué commun le ministère de l'Enseignement supérieur et le secrétariat d'État en charge du Numérique.

Cette publication « témoigne de la volonté du gouvernement de donner la plus grande transparence à la nouvelle procédure d'accès à l'enseignement supérieur », précise le communiqué. En mars, Emmanuel Macron avait souhaité la publication des détails de l'algorithme de Parcoursup, et plus généralement tous les algorithmes utilisés par l'État.

La publication est accompagnée d'une présentation et d'une description des algorithmes. Il est par exemple précisé que le dépôt contient les algorithmes et le code Java permettant
  • le calcul de l'ordre d'appel ;
  • le calcul des propositions de formations ;
  • le calcul des propositions d'hébergement en internat.

Le dépôt contient également le code PL/SQL permettant la vérification des calculs effectués par l'implémentation Java.


Le dépôt est organisé en plusieurs dossiers.
  • Le premier comporte :
    • doc / presentation_algorithmes.pdf présentation des algorithmes
    • doc / implementation.txt description synthétique de l'implémentation des algorithmes
    • doc / exemples / exemples au format XML
    • Java / code Java
    • plsql / code PL / SQL
  • Le second concerne le calcul de l'ordre d'appel
    • java / ordreappel / calculeOrdreAppel.java procédure principale (principale) utilisée dans Parcoursup
    • java / ordreappel / algo / implémentation Java de l'algorithme de calcul de l'ordre d'appel
    • java / ordreappel / exemples / exemples
    • java / ordreappel / donnees / accès aux données (Oracle ou XML)
  • et enfin le troisième renferme le calcul des propositions à envoyer:
    • java / propositions / envoiPropositions.java procédure principale (principale) utilisée dans Parcoursup
    • java / propositions / algo / implémentation Java de l'algorithme de calcul des propositions à envoyer
    • java / propositions / exemples / exemples
    • java / propositions / donnees / accès aux donnees (Oracle ou XML)
    • java / propositions / test / vérification des résultats et test de l'implémentation

La publication du code favorisera « la pleine compréhension des mécanismes de la nouvelle procédure d'entrée dans l'enseignement supérieur : non hiérarchisation des vœux, absence de contraintes; délais de réponse qui permettent, lorsque chaque candidat fait son choix, de libérer des places qui seront immédiatement proposées à d'autres candidats », selon le communiqué. Parcoursup commencera mardi à 18 heures à envoyer des réponses aux vœux inscrits par les jeunes au printemps.

Le 22 mai « n'est pas une date fatidique » mais celle à laquelle « commencent à arriver les réponses », a souligné récemment la ministre de l'Enseignement supérieur, Frédérique Vidal, en précisant que contrairement à APB, qui publiait ses réponses lors de trois vagues successives distantes de plusieurs semaines, Parcoursup « fonctionne en continu ».

Voir le dépôt

Source : Enseignement Supérieur

Et vous ?

Réelle volonté de transparence de la part du gouvernement ou moyen d'anticiper les critiques qui pourraient fuser dès la publication des premiers résultats ?

Voir aussi :

Admission Post-Bac : la CNIL interpelle le ministère de l'Enseignement supérieur, sur plusieurs manquements à la loi Informatique et Libertés
Admission Post-Bac (APB) devient Parcoursup et la CNIL clôture la mise en demeure, estimant que le gouvernement s'est enfin mis en conformité
L'Éducation nationale envoie une partie de l'algorithme admission post-bac... sur format papier, Droit des lycéens demande de l'aide pour l'analyser
France : le ministère de l'Éducation nationale interdit les sorties de classe Apple, car elles seraient plus à titre commercial qu'éducatives
Réforme du bac : Blanquer supprime les séries au lycée pour la voie générale, quelles conséquences sur l'enseignement supérieur en informatique ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Vulcania Vulcania - Membre confirmé https://www.developpez.com
le 22/05/2018 à 7:09
Hébergé sur framegit : 3 pts
Utilisation de documents avec des standards ouverts : 5 pts
Code commenté : 5 pts
Exemples d'utilisation et de résultats : 2 pts
Documentation : 5 pts
Volonté qu'on y comprenne quelque chose : 1000 pts

Avatar de halaster08 halaster08 - Membre expert https://www.developpez.com
le 22/05/2018 à 8:04
@Neckara
Concernant les recours tenté contre les "mauvais" prof:

A la fac où j'étais certains chargé de TD étaient "particuliers" dont un vraiment horrible, résultat il restait 3 personne dans son groupe (ceux qui pouvaient bosser seul) les autres sont parti dans les autres groupes (ce qui théoriquement interdit) ce qui a largement surchargé certains groupe, plusieurs étudiants en ont alors parlé a différent professeur et même certains ont tenté avec l'administration, réponse identique de toute part: "Les enseignants-chercheurs sont recrutés par rapport à leur dossier de recherche et non leur capacité à enseigner".

Au lycée c'est différent, la première année, oui tu peux être viré, dès que tu es titulaire c'est mort, au pire tu n'as plus d'avancement jusqu'à la fin de ta carrière, mais être viré c'est vraiment très compliqué.
Avatar de DevTroglodyte DevTroglodyte - Membre éprouvé https://www.developpez.com
le 22/05/2018 à 9:28
Citation Envoyé par Neckara Voir le message
tu crois que l'EN peut se payer des vrais informaticiens ?

La plupart du temps ils font appels à des professeurs (dont professeurs des écoles) amateurs qui codent un petit truc sur leur temps libre.
Bah... oui... ils ont même un service dans chaque académie dédiée à développer les outils dont ils ont besoin (et certains sont développés à un niveau national). Et pas par des amateurs ou des profs...
Avatar de Zirak Zirak - Membre extrêmement actif https://www.developpez.com
le 22/05/2018 à 10:49
Citation Envoyé par DevTroglodyte Voir le message
Bah... oui... ils ont même un service dans chaque académie dédiée à développer les outils dont ils ont besoin (et certains sont développés à un niveau national). Et pas par des amateurs ou des profs...
Chut, Neckara a été des deux côtés de la barrière, donc il sait mieux que toi !

Avatar de Grogro Grogro - Membre extrêmement actif https://www.developpez.com
le 22/05/2018 à 16:12
Citation Envoyé par Neckara Voir le message
Si on n'était dans des filières sélectives et compétitives, en effet, comme je l'ai déjà précisé.

Mais pas dans des filières où on donne le diplôme…
Et quelles sont ces filières de l'enseignement supérieur - public, je ne parle pas de ces pseudos écoles privées ou le diplôme s'achète qui pullulent depuis une dizaine d'années - où soi disant on donne le diplôme ? Diplôme de fin d'études j'entends, je ne parle pas d'un deug. Il n'y en a pas. Ca n'existe pas en dehors des écoles d"ingés qui peuvent se permettre de donner le diplôme à tout le monde puisqu'une sélection plus ou moins rigoureuse a déjà été faite en amont. TOUTES les filières du supérieures non sélectives à l'inscription procèdent à une sélection draconienne, drastique, et souvent particulièrement brutale, parfois totalement arbitraires (des exemples, j'en ai à la pelle) tôt ou tard. Que ce soit au passage entre le M1 et le M2 dans les SHS ou entre les premiers partiels de L1 et l'inscription en M2 dans les filières plus sérieuses.

Avatar de supergeoffrey supergeoffrey - Membre éprouvé https://www.developpez.com
le 22/05/2018 à 16:59
Il y a quand même des perles de codes ! J'ai envie de faire passer un sonar dessus :p
La méthode calculerOrdreAppel qui fait trop de chose https://framagit.org/parcoursup/algo...lassement.java
L'enémaration TypeCandidat qui sert à rien https://framagit.org/parcoursup/algo...oeuClasse.java
La belle méthode de log à la ligne 352 https://framagit.org/parcoursup/algo...pelOracle.java
Avatar de Keyla45 Keyla45 - Futur Membre du Club https://www.developpez.com
le 22/05/2018 à 17:08
Bon article!
Avatar de Neckara Neckara - Expert éminent sénior https://www.developpez.com
le 22/05/2018 à 22:44
Citation Envoyé par halaster08 Voir le message
A la fac où j'étais certains chargé de TD étaient "particuliers" dont un vraiment horrible
S'ils ne font que des TDs, es-tu sûr qu'ils sont bien EC et pas tout simplement des doctorants ou des ATER ?

Généralement, les EC font aussi le cours, donc à moins qu'il ne se soit déjà fait mettre au placard, cela me paraît étrange.

Citation Envoyé par halaster08 Voir le message
réponse identique de toute part: "Les enseignants-chercheurs sont recrutés par rapport à leur dossier de recherche et non leur capacité à enseigner".
Pour candidater à un poste d'EC, il faut avoir une accréditation délivrée par la section CNU de notre domaine (27 pour informatique) sur dossier. Dans ce dossier, il faut normalement justifier d'avoir déjà donné des cours.

Lors des recrutements, le projet d'insertion du candidat dans l'équipe de recherche, et aussi, dans l'équipe pédagogique est évalué. Sachant aussi que les EC peuvent avoir une période d'essai, ou maintenant être recrutés en CDD. Le CA peut aussi refuser le recrutement d'un candidat (et dans ce cas là personne n'est recruté).

Je ne sais pas de quand date ton histoire, mais ils se sont quand même un peu foutus de ta gueule. Dans ces cas là, on remonte la hiérarchie :
  • le responsable de spécialité ;
  • le responsable de formation ;
  • le responsable de la composante ;
  • le président de l'université ;
  • la COMUE ;
  • MESR / HCERES.


Cela ne résoudra peut-être pas le problème, mais aura au moins le mérite de le mettre en avant. Là ce n'est apparemment pas un problème de professeur, mais un problème systémique. Appuyez-vous sur vos représentants étudiants, vous en avez jusque dans le CA de la COMUE.

Citation Envoyé par halaster08 Voir le message
mais être viré c'est vraiment très compliqué.
Et c'est d'ailleurs l'un des gros problèmes de la fonction publique.

Citation Envoyé par Grogro Voir le message
Et quelles sont ces filières de l'enseignement supérieur - public, je ne parle pas de ces pseudos écoles privées ou le diplôme s'achète qui pullulent depuis une dizaine d'années - où soi disant on donne le diplôme ?
Par exemple les formations (plus école) où seul une petite dizaine d'étudiants valident tous leurs modules dès la session 1, et très étrangement, tout le monde réussi la session 2… et puis même si tu as échoué, le jury te donne quand même ton module. Faut pas faire baisser les stats de l'école quand même.
Mais aussi les formations (plus FAC) où tout se compense, que tu peux choisir tes matières, et te reposer sur tes points d'avances… Te permettant de faire l'impasse totale sur certaines matières.
Les formations d'un an ayant 4 examens, où il te suffit d'apprendre tes cours en une semaine, sans être jamais allé en cours, pour te chopper un ~13 de moyenne (et je sais de quoi je parle: je l'ai moi-même fait).
Le formations où tu as des deadlines pour rendre un projet… qui sont continuellement repoussées, jusqu'à plusieurs mois !
Les formations où on considère que tu passes en n'ayant retenu et compris même pas 20% du cours !
Les formations où on te donne entre 13 et 16 en projets, même si tu n'as rien foutu. Les formations où tu peux te reposer sur ton binôme en TP et utiliser les points gagnés pour compenser l'examen, faisant que tu sors de la formation sans avoir jamais écrit une ligne de code (véridicte !). Les formations où tu as des travail en groupes, et la même note pour tous, même pour une personne qui n'a jamais été foutu de bosser en groupe, ne faisant rien de ce qu'on lui demandait, voire même allant jusqu'à se fritter avec le chef de projet d'un autre groupe !

Les formations tellement dure que tu peux en faire 3 en même temps ! Et je parle de vrai diplômes BAC+5 !

Tiens la petite anecdote, un binôme de Projet/TP, où il faut faire un petit jeu en console, avec des points bonus s'il y a, en plus, une interface graphique. Le premier élève à tout fait, le lundi, il demande au second ce qu'il a fait, un peu énervé. Et bien il a essayé de travailler sur le menu du jeu, plus exactement, à faire "une flèche verte en 3D qui tourne", mais il a pas réussi, donc il a abandonné.
Et quand ce genre de personnes réussissent à avoir le diplôme, ne me dîtes pas qu'on ne le donne pas !

Citation Envoyé par Grogro Voir le message
Diplôme de fin d'études j'entends, je ne parle pas d'un deug. Il n'y en a pas. Ca n'existe pas en dehors des écoles d"ingés qui peuvent se permettre de donner le diplôme à tout le monde puisqu'une sélection plus ou moins rigoureuse a déjà été faite en amont.
Faut voir le niveau de sélection aussi, à part pour le top des écoles d'ingénieur qui ne prennent que les majors de promo, ça ne vole pas haut.
Et encore… j'ai déjà vu un major de promo BAC+2 se révéler être un boulet fini, je n'ose même pas imaginer le reste de la promo.

Citation Envoyé par Grogro Voir le message
TOUTES les filières du supérieures non sélectives à l'inscription procèdent à une sélection draconienne, drastique, et souvent particulièrement brutale, parfois totalement arbitraires (des exemples, j'en ai à la pelle) tôt ou tard. Que ce soit au passage entre le M1 et le M2 dans les SHS ou entre les premiers partiels de L1 et l'inscription en M2 dans les filières plus sérieuses.
À part les formations qui sacquent au premier examen pour décourager les moins motivés, je n'ai rien vu de tel.

Et pour ton image parlant du biais du survivant:
  • le fait qu'une personne ai réussie, est la preuve que cette réussite est possible;
  • ce biais s'appuie souvent sur le fait que la personne néglige la part du hasard, or, ici, on ne peut pas dire que ce soit ce qui garantie le plus la réussite;
  • et ensuite tu commets un fallacy fallacy.
Avatar de Pyramidev Pyramidev - Membre émérite https://www.developpez.com
le 23/05/2018 à 1:04
Citation Envoyé par supergeoffrey Voir le message
La méthode calculerOrdreAppel qui fait trop de chose https://framagit.org/parcoursup/algo...lassement.java
Après analyse, ce qui m'étonne le plus dans la classe qui contient calculerOrdreAppel, c'est qu'il s'agit d'un code en procédural, mais avec une syntaxe qui sous-entend que c'est de l'objet.

Si le code avait été :
Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
public class GroupeClassement {

    static OrdreAppel calculerOrdreAppel(List<VoeuClasse> voeuxClasses, int tauxMinBoursiersPourcents, int tauxMinResidentsPourcents)
    {
        // code
    }

    // fonctions statiques privées

}
alors son auteur aurait clairement annoncé qu'il s'agissait d'un code en procédural.

Alors, le fait que cette fonction fasse indirectement tout le calcul ne me choquerait pas, même s'il aurait fallu, à mon sens, la découper en sous-fonctions statiques privées pour que l'on identifie plus facilement les étapes de l'algorithme.

Mais, dans le code actuel, à la place, voeuxClasses, tauxMinBoursiersPourcents et tauxMinResidentsPourcents sont des variables membres publiques, donc ne sont pas plus encapsulées que des paramètres que l'on passerait directement à une fonction.

En outre, on a une variable membre publique C_GP_COD qui s'incruste mais n'est pas utilisée dans calculerOrdreAppel.
Et, pour faire joli, on a un constructeur qui initialise C_GP_COD, tauxMinBoursiersPourcents et tauxMinResidentsPourcents et une méthode ajouterVoeu qui ajoute un élément dans voeuxClasses.
Avatar de Neckara Neckara - Expert éminent sénior https://www.developpez.com
le 23/05/2018 à 7:38
Un taux sous forme d'un entier ???

Ils sont sérieux ?
Et le jour où tu veux un taux à 2,5%, tu fais comment ?
Contacter le responsable de la rubrique Accueil