trier, je pense que c'est le terme correct même si s'agissant d'élèves ça peut sonner bizarrement.
Soit un ensemble de ~ 170 élèves (un niveau), 6 classes et des contraintes :
- le choix des élèves pour les options (entre 0 et 5 options)
- le profilage des classes (tous les élèves de section foot dans la classe 3, les LV2 espagnol dans les classes 5 et 6, à peu près moitié-moitié
- équilibre filles-garçons partout
- 30 élèves max par classe
enfin, vous voyez je suppose le problème : constituer les classes
Question : existe-t-il des outils libres (libres par principe et gratuit par économie), RGPD compatibles, simples à prendre en main (d'ici mercredi ;-)) qui pourrait faire le boulot, au moins en partie.
Les données brutes seront de toute façon à reformater : je connais hélas trop les mésusages des tableurs par mon administration !
Conseils, avis et propositions bienvenus
# recherche ?
Posté par BAud (site web personnel) . Évalué à 3 (+1/-0).
tu préfères le tri à bulle ?
plus sérieusement :
après une recherche ddg : https://duckduckgo.com/?q=logiciel+constitution+classe+d%27%C3%A9l%C3%A8ves&t=ftsa&ia=web
https://www.laurentleguidec.fr/le-blog/outils-de-repartition-des-classes/ étude de l'existant : 2 en ligne, un via tableur (mais pas de licence précisée :/) https://www.tilekol.org/voici-reparticlass-2020
en GNU/GPL, en ligne (mais données restant dans navigateur a priori) ou en local : https://educajou.forge.apps.education.fr/repartition/ et le code https://forge.apps.education.fr/educajou/repartition
bah, je te laisse fouiller et faire un retour sur celui que tu choisis
[^] # Re: recherche ?
Posté par cévhé . Évalué à 4 (+2/-0). Dernière modification le 21 juin 2025 à 15:29.
Merci mais ça ne convient pas vraiment : ce sont des outils prévu pour créer les structures de classes à l'échelle d'une école (primaire : faire 2 CP, un CP-CE1, un CE1, etc.) or je cherche à remplir une structure imposée par les contraintes :
En 3e1 : des élèves LV1 anglais et LV2 allemand
En 3e3 : tous les élèves de section foot et des LV2 anglais
etc.
et arriver à placer Kevin en 3e2, Jessica en 3e1 etc.
# Formulation formelle
Posté par gUI (Mastodon) . Évalué à 6 (+3/-0).
Je doute qu'un tel outil existe, le soucis serait dans la difficulté de donner formellement les contraintes.
Pour avoir vu mon père faire ça pendant des années (ancien proviseur-adjoint en lycée technique), je sais que c'est un vrai casse-tête, bon courage !
En théorie, la théorie et la pratique c'est pareil. En pratique c'est pas vrai.
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 7 (+5/-0).
Vu le petit nombre d'élève un tout petit code stochastique ne pourrait-il pas faire l'affaire ?
NB : ce que je viens de décrire est un algorithme de recuit-simulé dit Monte-Carlo Metropolis ; à peu prêt la première idée qui viendrait à tout physicien pour résoudre ce genre de problème, et l'une seulement des très nombreuses méthodes qui devraient vous permettre de résoudre facilement un tel problème, au prix d'un peu de programmation, de la définition d'une fonction de coût appropriée. Si vous avez besoin d'aide, y a qu'à demander…
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par BAud (site web personnel) . Évalué à 4 (+2/-0). Dernière modification le 21 juin 2025 à 17:20.
reprendre la classe de l'année précédente telle quelle plutôt :-) puis appliquer les contraintes
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 8 (+6/-0).
Avec la canicule, je n'étais pas motivé pour travailler. J'ai donc écris le code selon vos spécifications. C'est un peu brouillon. Mais ça marche parfaitement. À ceci prêt que la contrainte sur les options n'étant pas explicite, il n'était pas possible de l'appliquer ; mais équilibrer les classes par sexe, répartir les hispanisants, et placer les footeux, là, pas de problèmes, l'algorithme de Metropolis fonctionne comme un charme. Avec 170 élèves, il faut moins de mille itérations pour atteindre une répartition optimale sur 6 classes. Si le code vous intéresse…
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par cévhé . Évalué à 5 (+3/-0).
Merci. Je veux bien voir à quoi ça ressemble. Reste à savoir si je serai capable de le comprendre et de l’adapter et réutiliser… Ça c’est autre chose ;-)
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 9 (+7/-0).
Le code est en deux parties. Un premier fichier qui me génère une liste d'élèves. Pour vous ça permettra de voir le format des données à produire pour faire tourner le code.
Voici le code qui applique l'algorithme.
J'ai essayé d'ajouter beaucoup de commentaires pour aider… J'espère que ça sera suffisant car mon code est assez brouillon.
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par BAud (site web personnel) . Évalué à 2 (+1/-1).
manque une licence tout de même ;-)
ça permettra de proposer des contributions et généraliser à d'autres structures de classes / contraintes de remplissage :p
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 3 (+1/-0).
Au temps pour moi : vous avez posté si vite que le bouton "modifier" était gardé par Gandalf.
Licence AGPL v3 ou ultérieure.
Bon, en fait mon code n'a rien d'original qui traduise ma personnalité, etc. Donc fondamentalement je trouve un peu étrange d'y appliquer du droit d'auteur. Mais bon.
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par BAud (site web personnel) . Évalué à 4 (+2/-0).
c'est après 5 min ou dès qu'une personne a répondu (ce que j'ai fait mais 6 min après toi, fallait bien relire au moins 2 fois le code pour en comprendre quelques choix "en dur" :D)
moui bon choix l'AGPLv3 même si c'est un peu overkill :D
bin c'est le droit français (et pas seulement) qui veut ça, faut bien laisser du boulot aux avocats et juristes :p
c'est pour cela que — pour du code interprété — la MIT, la BSD-2 clause et la WTFPL ont l'avantage d'être courtes et équivalentes à la GPLv3+ (pour l'AGPLv3+ quand le code est exécuté sur le serveur mais pas directement appelé par un utilisateur, pour moi ça revient quasiment à de la GPLv3+, faudrait que j'approfondisse un jour :p).
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 7 (+5/-0).
Sûre, mais on ne se refait pas. En tant que fonctionnaire j'accepte de travailler gratuitement pour le bien public une part importante de mon temps. Ce fameux bien public est une préoccupation majeure pour moi. Donc logique, chaque fois que l'occasion se présente, de vouloir y ajouter tout et n'importe quoi…
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par BAud (site web personnel) . Évalué à 5 (+3/-0).
tu as https://docs.forge.apps.education.fr/ qui te permettrait de publier ton code versionné à vocation publique pour https://communs-numeriques.forge.apps.education.fr/
Revoie tout de même avec ta hiérarchie (et sans doute la DINUM) les conditions de publication qui s'appliquent à ton cas (légitime àmha).
Il font du bon boulot àmha :p
cf. https://data.education.gouv.fr/p/forge-des-communs-numeriques-educatifs/
d'autant que c'est ouvert en interne et (un peu) en externe avec des initiatives connexes (oui, ça part un peu dans tous les sens, faut réussir à s'y retrouver :p)
https://forge.din.developpement-durable.gouv.fr/
cf. https://gitlab-forge.din.developpement-durable.gouv.fr/pub/gitlab-forge.infos/-/blob/master/README.md pour plus d'infos.
[^] # Re: Formulation formelle
Posté par ǝpɐןƃu∀ nǝıɥʇʇɐW-ǝɹɹǝıԀ (site web personnel) . Évalué à 2 (+0/-0).
PS : plutôt qu'un recuit simulé, mon algorithme fait une trempe ici (un gros bogue dans le recuit). Ça tombe bien : ça donne le résultat optimal plus vite pour un problème simple de ce type. Si jamais le problème se complexifie et qu'il faille la version sans bogue, je l'ai écrite. Il y manque juste de quoi imprimer la configuration optimale atteinte.
« IRAFURORBREVISESTANIMUMREGEQUINISIPARETIMPERAT » — Odes — Horace
[^] # Re: Formulation formelle
Posté par Marc Quinton . Évalué à 6 (+4/-0). Dernière modification le 21 juin 2025 à 17:19.
open-source constraints solver ?
- https://www.minizinc.org/
- https://choco-solver.org/
il y a fort longtemps, j'avais expérimenté avec "Turbo-Prolog" ; tu donnais des indications sur un input et un résultat attendu ; ensuite le logiciel se débrouillait pour trouver une solution.
[^] # Re: Formulation formelle
Posté par BAud (site web personnel) . Évalué à 2 (+0/-0).
trop générique
et faut apprendre un nouveau langage, mais oui ça fait le taf' (mais faut apprendre un langage) et ensuite d'aucuns pourraient croire qu'un marteau suffit à enfoncer des vis (z'ont qu'un marteau /o\)
# résultats : humains : 1 - IA : 0
Posté par cévhé . Évalué à 4 (+2/-0). Dernière modification le 27 juin 2025 à 19:13.
Bon, finalement on a fait ça à la main…
Dans la pratique, il y a des contraintes qui n'en sont pas vraiment et qui auraient été délicates à implémenter
[les profs] Cheffe, on a un problème. Si on mets les bilingues seulement dans la 51 et la 52 et que les latinistes ne peuvent pas être en 51, on a forcément 32 élèves en 52 à cause de la section bidule.
[la cheffe] Pas grave, mettez-en aussi en 51, mais alors ne mettez pas les LV2 allemand en 54 mais seulement en 52, 53 et 55 parce que j'ai prévu d'aligner les cours de Mme X avec ceux de Mme Y pour ce niveau et elles sont 4 à pouvoir prendre les regroupement de LV1 anglais en même temps.
[moi] : gniii ?
[l'adjointe] : mais c'est évident, je t'explique
[moi] : nan nan, c'est bon, on vous fait confiance
Bon, libreoffice est quand même plus pratique que les fiches T pour filtrer, trier, compter, etc.
[^] # Re: résultats : humains : 1 - IA : 0
Posté par BAud (site web personnel) . Évalué à 4 (+2/-0). Dernière modification le 27 juin 2025 à 19:57.
t'en as trop dit ou pas assez :p
ça vaudrait un journal ;-)
d'autant que bon sur 170 élèves, c'est gérable
et sinon, tu as les affectations proposées par le programme de pmanglade< qui fait le taf' (et a des chances de converger)
les « fiches T » ?!
PS : stait pas mercredi pour le faire ?
[^] # Re: résultats : humains : 1 - IA : 0
Posté par cévhé . Évalué à 3 (+1/-0). Dernière modification le 27 juin 2025 à 21:48.
Choix politique et pas algorithmique : brasser autant que possible les élèves d'une année à l'autre. Ce qui n'est pas possible dans certains cas : les sections sportives ne peuvent pas être répartis sur deux classes différentes parce que cela augmente le nombre d'alignements de classe et les trous dans les emplois du temps. Par exemple, on met les footeux dans une seule classe. Les horaires de section sont placés sur la fin de matinée et une partie de la pause de midi. Les non-footeux sont libérés la dernière heure pour passer à la cantine mais il ne serait pas forcément possible de mettre des élèves avec une autre options dans la même classe si l'effectif ne colle pas. On y est arrivé avec la section basket et l'atelier chant choral, mais pas plus.
Ensuite je ne suis même pas sûr que l'on arrive à 130 « stabilités » : à chaque passage de classe correspond des nouveautés. En 5e la LV2 est obligatoire, même si on en a déjà beaucoup en 6e. En 5e toujours le latin (pardon, langues et culture de l'antiquité) débute. etc.
C'est à peu près le temps que l'on a mis. Y compris le temps de comprendre que les LV1 allemand avaient juste été oubliés dans les contraintes ;-)
J'ai récupéré les données des futurs 6e, on fait ça lundi (et je préfère encore aux autres « ateliers » prévus) faut que je vois ce que je peux en faire. Mais je n'ai pas les contraintes pour ceux-là :-(
Je ferai, si j'en ai encore le courage, des tests (il me faudra votre aide) après coup.
C'est ça :
et ça s'utilise avec ça :
Autrefois utilisé aussi pour les emplois du temps !
si si mais brevet, surveillance, secrétariat, réunions, conseils de classe tardifs… pas eu l'occasion de faire un retour avant
[^] # Re: résultats : humains : 1 - IA : 0
Posté par BAud (site web personnel) . Évalué à 4 (+2/-0).
ça fait depuis le millénaire dernier que je n'en ai pas vu (ça ne me manque pas, j'ai eu le bac !) ; bienvenue au siècle dernier !)
au moins c'est de la technologie éprouvée :D moi qui me demandais avec mon pov' diplôme d'ingénieur du siècle dernier ce que je pourrais apporter à des enseignants du XXIè ! la pointe de la techno !
ça c'est une erreur : les potes se soutiennent, les amitiés perdurent et se renforcent d'une année à l'autre
t'façon les profs sont des cons :p ce qui est foncièrement faux : moui le prof' principal spa gagné, mais maths et français en seconde jusque terminale c'est déterminant, physique un peu moins, biolo ça dépend de l'option (pour agro faut savoir dessiner)
[^] # Re: résultats : humains : 1 - IA : 0
Posté par BAud (site web personnel) . Évalué à 3 (+1/-0).
Envoyer un commentaire
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.