Package de.svws_nrw.core.kursblockung
Klasse KursblockungAlgorithmusKSchuelervorschlag
java.lang.Object
de.svws_nrw.core.kursblockung.KursblockungAlgorithmusK
de.svws_nrw.core.kursblockung.KursblockungAlgorithmusKSchuelervorschlag
Dieser Kursverteilungs-Algorithmus verteilt die Kurse auf ihre Schienen. Die SuS werden nacheinander mit einem
angepassten Matching-Algorithmus auf die Kurse verteilt. Das besondere dabei ist, dass ein S. beim Matching sich auch
wünschen kann, dass ein Kurs die Schiene wechselt.
-
Feldübersicht
Von Klasse geerbte Felder de.svws_nrw.core.kursblockung.KursblockungAlgorithmusK
_random, dynDaten, logger
-
Konstruktorübersicht
KonstruktorBeschreibungKursblockungAlgorithmusKSchuelervorschlag
(@NotNull Random pRandom, @NotNull Logger pLogger, @NotNull KursblockungDynDaten pDynDat) Im Konstruktor kann die Klasse die jeweiligen Datenstrukturen aufbauen. -
Methodenübersicht
-
Konstruktordetails
-
KursblockungAlgorithmusKSchuelervorschlag
public KursblockungAlgorithmusKSchuelervorschlag(@NotNull @NotNull Random pRandom, @NotNull @NotNull Logger pLogger, @NotNull @NotNull KursblockungDynDaten pDynDat) Im Konstruktor kann die Klasse die jeweiligen Datenstrukturen aufbauen. Kurse dürfen in diese Methode noch nicht auf Schienen verteilt werden.- Parameter:
pRandom
- EinRandom
-Objekt zur Steuerung des Zufalls über einen Anfangs-Seed.pLogger
- Logger für Benutzerhinweise, Warnungen und Fehler.pDynDat
- Die dynamischen Blockungsdaten.
-
-
Methodendetails
-
toString
-
berechne
public void berechne(long pEndzeit) Der Algorithmus entfernt zunächst alle SuS aus ihren Kursen. Anschließend werden die Kurse zufällig verteilt. Anschließend verändert der Algorithmus die Lage eines zufälligen Kurses. Falls sich die Bewertung verschlechter, wird die Veränderung rückgängig gemacht.- Angegeben von:
berechne
in KlasseKursblockungAlgorithmusK
- Parameter:
pEndzeit
- Die Endzeit (in Millisekunden).
-