Title: | Distributes Teachers Lessons On Days in a Balanced Manner |
Version: | 0.1.3 |
Description: | The set of teacher/class lessons is completed with a column that allocates a day to each lesson, so that the distribution of lessons by day, by class, and by teacher is as uniform as possible. https://vlad.bazon.net/. |
License: | MIT + file LICENSE |
Encoding: | UTF-8 |
Language: | ro |
RoxygenNote: | 7.3.2 |
Depends: | R (≥ 3.5.0) |
LazyData: | true |
Imports: | dplyr, magrittr, purrr, rlang, stats |
Suggests: | knitr, rmarkdown |
VignetteBuilder: | knitr |
NeedsCompilation: | no |
Packaged: | 2025-05-20 14:20:53 UTC; vb |
Author: | Vlad Bazon [aut, cre] |
Maintainer: | Vlad Bazon <vlad.bazon@gmail.com> |
Repository: | CRAN |
Date/Publication: | 2025-05-20 14:40:02 UTC |
days2lessons: Distributes Teachers Lessons On Days in a Balanced Manner
Description
The set of teacher/class lessons is completed with a column that allocates a day to each lesson, so that the distribution of lessons by day, by class, and by teacher is as uniform as possible. https://vlad.bazon.net/.
Author(s)
Maintainer: Vlad Bazon vlad.bazon@gmail.com
Pipe operator
Description
See magrittr::%>%
for details.
Usage
lhs %>% rhs
Arguments
lhs |
A value or the magrittr placeholder. |
rhs |
A function call using the magrittr semantics. |
Value
The result of calling rhs(lhs)
.
Lecții (inclusiv cuplaje) pentru o săptămână de lucru într-o școală.
Description
Set numit 'LSS' de 870 lecții prof|cls (cu 66 profesori din care 4 cuplaje și cu 32 clase). Pe săptămână, profesorii din 'LSS' au între 1 și 28 de lecții, iar clasele între 25 și 31 de ore.
Usage
LSS
Format
- prof
Cod de 3 sau 6 caractere, reprezentând un profesor, respectiv un cuplaj (doi profesori, pe grupe ale unei clase); primele două litere abreviază disciplina pe care este încadrat profesorul, iar cifra care urmează indexează profesorii de pe aceeași disciplină
- cls
Clasa (două sau trei caractere) la care profesorul are de făcut o lecție
Exemplu de tuplaje; lecțiile dintr-un tuplaj au a se desfășura simultan.
Description
Set numit 'TPL', conținând 27 de tuplaje asociate setului 'LSS'. Un tuplaj va angaja într-un același moment (zi și oră), doi (sau trei) profesori și două (respectiv, trei) clase (după anumite criterii, elevii reuniți ai claselor respective sunt redistribuiți ad-hoc în noi "clase", în locul și cu numele celor inițiale). De separat cu câte un spațiu, profesorii, respectiv clasele tuplajului. Atenție: considerăm că niciun profesor "extern" (fără ore proprii, ci numai în cuplaje) NU poate face parte din vreun tuplaj.
Usage
TPL
Format
- prof
Profesorii care trebuie să intre în același moment, la câte una dintre clasele respective
- cls
Clasele la care profesorii din tuplaj au de făcut câte o lecție, în câte o aceeași zi (și oră).
Repartizarea pe zile a tuplajelor
Description
Din distribuția pe zile a tuturor lecțiilor se deduc zilele în care au fost repartizate tuplajele existente.
Usage
days2tupl(DZ, TP)
Arguments
DZ |
distribuția pe zile returnată de 'mount_days()'. |
TP |
setul tuplajelor, dacă există. |
Value
setul tuplajelor, completat cu un câmp conținând ziua (sau zilele) în care a fost repartizat fiecare.
Lista lecțiilor repartizate în câte o aceeași zi
Description
Asociază fiecărei zile, setul lecțiilor repartizate în acea zi (în format lung, 'prof/cls')
Usage
less2days(DZ)
Arguments
DZ |
distribuția pe zile a tuturor lecțiilor |
Value
Listă conținând pentru fiecare zi, lecțiile acelei zile
Montează zilele pe lecții, echilibrat
Description
Repartizarea pe zile decurge separat: lecțiile celor neimplicați în cuplaje (plus dacă există, cuplajele "externe"), respectiv ale cuplajelor și membrilor acestora; în final, se adaugă repartizarea lecțiilor din tuplaje (dacă există). Repartiția pe zile a cuplajelor și respectiv, a tuplajelor are caracter "dinamic", repetându-se până când îmbinând cele trei repartiții, distribuția lecțiilor la fiecare clasă este cât se poate de echilibrată (numărul de ore/zi diferă cu cel mult 2 sau 3 ore).
Usage
mount_days(LSS, TPL = NULL, Dfh = 2)
Arguments
LSS |
Setul lecțiilor profesorilor și cuplajelor. |
TPL |
Setul tuplajelor. |
Dfh |
Diferența maximă între maximul și minimul de ore/zi la clase. |
Value
O repartiție pe zile a tuturor lecțiilor, relativ echilibrată.
Examples
R123 <- mount_days(LSS, TPL, Dfh = 3)