2024-05-29 11:26:42 +02:00
|
|
|
# disengagement-controller
|
|
|
|
|
2024-05-29 11:38:41 +02:00
|
|
|
Ekspercki sterownik rozmyty Mamdaniego obliczający poziom zjawiska
|
|
|
|
disengagement przyjmuje na wejściu dwie zmienne lingwistyczne:
|
|
|
|
|
|
|
|
1. **jakość nauki** (*learning_quality*),
|
|
|
|
2. **czas pozostały do zamknięcia testu zaliczeniowego, liczony w
|
|
|
|
momencie pierwszego wejścia do kursu** (*remaining_time*).
|
|
|
|
|
|
|
|
Jakość nauki została zdefiniowana jako agregacja trzech zmiennych:
|
|
|
|
|
|
|
|
- **średni czas spędzony w jednym elemencie kursu** (*time*) - w
|
|
|
|
proponowanym rozwiązaniu ze względu na uwarunkowania techniczne
|
|
|
|
(czas spędzony w danym komponencie kursu był odnotowywany co pół
|
|
|
|
minuty) zaproponowano algorytm normalizacji czasu, w którym każde
|
|
|
|
pół minuty spędzone w kursie to jeden punkt - przyjęto czas
|
|
|
|
maksymalny na 40 punktów (w zależności od kursu, autor może określić
|
|
|
|
inny górny limit punktów), czyli 20 minut - jeśli student spędził
|
|
|
|
więcej czasu, to otrzymywał również 40 punktów - tak zdefiniowany
|
|
|
|
czas został znormalizowany do przedziału [0, 1],
|
|
|
|
- **liczba rozwiązanych ćwiczeń w kursie** (*interactions*) - wartość
|
|
|
|
została znormalizowana do przedziału [0, 1],
|
|
|
|
- **liczba elementów, których student nie odwiedził**
|
|
|
|
(*not_visited*) - jeśli student w danym komponencie spędził mniej
|
|
|
|
niż pół minuty (czyli nie zdobył punktów dla zmiennej *time*), to
|
|
|
|
komponent był oznaczany jako nieodwiedzony - wartość została także
|
|
|
|
znormalizowana do przedziału [0, 1].
|
|
|
|
|
|
|
|
Jakość nauki została określona wzorem:
|
|
|
|
|
|
|
|
$$learning\_quality=\frac{\textit{interactions} + 2 \cdot \textit{time} - \textit{not\_visited}}{3}$$
|
|
|
|
|
|
|
|
Czas pozostały do zamknięcia testu zaliczeniowego, liczony w momencie
|
|
|
|
pierwszego wejścia do kursu został natomiast znormalizowany do
|
|
|
|
przedziału [0, 1] zgodnie ze wzorem:
|
|
|
|
|
|
|
|
$$remaining\_time = \frac{end - student\_start}{end - start}$$
|
|
|
|
|
|
|
|
gdzie:
|
|
|
|
|
|
|
|
- *start* to data otwarcia dostępu do kursu (reprezentowana
|
|
|
|
jako *timestamp*),
|
|
|
|
|
|
|
|
- *end* to data zamknięcia dostępu do testu zaliczeniowego
|
|
|
|
(reprezentowana jako *timestamp*),
|
|
|
|
|
|
|
|
- *student\_start* to data pierwszego wejścia
|
|
|
|
studenta do kursu (reprezentowana jako *timestamp*).
|