Main Menu

Kollegstufe

Started by aliponte, February 15, 2010, 04:44:17 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

aliponte

Als Stundenplaner eines Gymnasiums ist für mich wichtig, ob und wie ich mit FET die Kollegstufe planen kann. Prinzipiell ist die Planung mit FET möglich, da FET universell genug ausgelegt ist.
Betrachtet man nur einen Jahrgang der Kollegstufe, so gibt es darin eine Menge von Kursen. Gewisse Kurse können zeitgleich stattfinden, da sie keine gemeinsamen Schüler enthalten, gewisse andere nicht. Um dies in FET umzusetzen, wird man im Allgemeinen wie folgt vorgehen müssen.
Der Kollegstufenjahrgang wird soweit in Untergruppen unterteilt, wie es Schüler gibt. Jeder Schüler bildet eine Untergruppe. Die Vereinigung aller Schüler eines Kurses bildet eine Gruppe. Diese Gruppenbildung ist für jeden Kurs durchzuführen. Damit ist festgelegt, welche Kurse zeitgleich stattfinden können und welche nicht.

Entscheidend ist die Frage nach der Geschwindigkeit der Planerstellung. Wie viel Rechenzeit kostete es FET festzustellen, ob zwei Gruppen (=Kurse) zeitgleich vereinbar sind oder nicht? Das Programm, mit dem ich arbeite, benutzt eine sog. Kollisionsmatrix. Die Matrix listet "senkrecht" wie "waagrecht" alle Kurse auf und enthält an den Kreuzungsstellen einer Zeile und Spalte ein Bit mit der gewünschten Information. Verfügt FET intern nicht über ein solches oder ähnliches Konstrukt, so muss die Vereinbarkeit zweier Gruppen (=Kurse) jedesmal anhand der enthaltenen Untergruppen (=Schüler) festgestellt werden. Bei jeweils 20 Untergruppen wären bis zu 400 Abfragen auf Übereinstimmung durchzuführen. (Natürlich kann man die Zahl der Abfragen mit Hilfe von geeigneten Suchalgorithmen reduzieren; der Programmierer aber weiß, dass nichts schneller geht als das Nachschauen in einer Look-Up Table.) Könnte mir jemand diesbezüglich eine Auskunft geben?

Wichtig ist weiterhin die Frage der Datenerfassung für die Kollegstufe. Bei einer Jahrgangsstärke von 140 Schülern und 70 Kursen für einen Jahrgang ist die Eingabe der Daten über die Eingabedialoge von FET praktisch nicht durchführbar. Man müsste 70-mal jeweils etwa 20 Namen (oder Referenznummern) eintippen. Die Eingabe kann also nur automatisiert geschehen. Das Kollegstufenprogramm, das in Bayern verwendet wird, kann eine Liste ausgeben, die für jeden Schüler die gewählten Kurse nennt. Diese Liste ließe sich in eine Datei xx_students.csv umschreiben. Die Hilfsmittel dafür müsste man sich jedoch erst bereitstellen.

Ich würde gerne einmal FET ausprobieren, um seine Pläne vergleichend beurteilen zu können. Doch wüsste ich gerne zuvor, welche Erfolgsaussichten bestehen. Wer hat schon einmal einen Versuch unternommen? Für Hinweise wäre ich dankbar.

Gruß von aliponte

Volker Dirr

#1
QuoteBetrachtet man nur einen Jahrgang der Kollegstufe, [...] Um dies in FET umzusetzen.
Wie haben Sie das bisher gemacht? Liegen diese Daten in ihrer Schulverwaltung (Statistik Daten für das Land, Zeugnisdruck, Kursplanung, ...) vor? Die Daten können (könnten) von dort importiert werden.

Quote[...]Entscheidend ist die Frage nach der Geschwindigkeit der Planerstellung.
Ist meiner Meinung nach eher sekundär. Was habe ich davon, wenn z.B. untis zwar den Plan in kürzerer Zeit schaft, aber ich immer eine lange Liste an Konflikten erhalte. Da stelle ich bei FET lieber alles auf 100% ein und warte ein paar Minuten länger. Selbst eine Berechnung über Nacht stört mich da nicht, da FET ja nur einen Plan OHNE Konflike anbietet. Sprich: Ein Plan berechnen und fertig. Nicht so wie bei anderen Stundenplanprogrammen, hundert Pläne berechnen und den mit den wenigsten Konflikten heraussuchen.

QuoteWie viel Rechenzeit kostete es FET festzustellen [...]. Verfügt FET intern nicht über ein solches oder ähnliches Konstrukt [...]?
Natürlich macht das FET auch so. Den Quelltext können Sie sich unter /fet/src/engine/generation_pre.cpp anschauen. Die Optimierung von der Sie sprechen finden Sie in der Funktion bool computeActivitiesConflictingPercentage().

Quote[...] Das Kollegstufenprogramm, das in Bayern verwendet wird, kann eine Liste ausgeben, die für jeden Schüler die gewählten Kurse nennt. Diese Liste ließe sich in eine Datei xx_students.csv umschreiben. Die Hilfsmittel dafür müsste man sich jedoch erst bereitstellen.
(siehe oben) Mir am besten einfach mal so eine Datei zukommen lassen, dann kann ich mir den Import mal anschauen. Welches Programm genau ist das denn? Am besten keine "selbsterstellte" Datei, sondern möglichst die "Originaldatei". Dazu mich am besten mal direkt kontaktieren (vgl http://www.timetabling.de )

Quote[...]Doch wüsste ich gerne zuvor, welche Erfolgsaussichten bestehen. Wer hat schon einmal einen Versuch unternommen?
Kollegstufe kann ich nicht beurteilen. Realschule: Wesentlich besser als gp_untis.

aliponte

#2
Danke, Herr Dill, für das Angebot. Sie finden im Anhang einen sog. Bericht, den unser Kollegstufenprogramm ausgibt. Ich selber bin nicht der Kollegstufenbetreuer, kann Ihnen ohne Rücksprache mit diesem nichts weiter zu dem Programm sagen. Diese Datei und entsprechende für die anderen KS-Jahrgänge sind jedenfalls die Grundlage, auf der ich den KS-Stundenplan aufbaue.

Weil für Anhänge hier nur gewisse Dateitypen zugelassen sind, habe ich die anhängende txt-Datei als jpg deklariert. Drin ist freilich nach wie vor ganz gewöhnlicher ASCII-Text.

Gruß von aliponte

Volker Dirr

#3
Ok. Ich schaue mir gerade die Datei an. Ich habe sie mal vorsichtshalber aus dem Forum gelöscht, da ich mir nicht 100% sicher bin ob so viele Daten veröffentlicht werden düften. Daher in Zukunft solche Dateien bitte direkt an mich schicken. Wenn jemand anderes diese Datei benötigt, dann bitte noch einmal aliponte anschrieben und nachfragen. Ich selbst werde die Datei nicht weitergeben, da sich bisher noch kein anderer um einen Import gekümmert hat.

Ich habe nicht so viel mit Gymnasien zu schaffen und muss deshalb vorsichtshalber einmal nachfragen:
Der erste Schüler hat also den LK "c" (chemie?) und den Kundkurs "d" (deutsch?). Da diese Kuse im Jahrgang 12 sind, beginnen alle Kursbezeichnungen mit einer 2.
Der Kurs "d" hat noch eine Nummer "d1", weil es mehrere Kurse "d" (aufgrund der hohen Schülerzahl).
Dann sehe ich Kurse wie z.B. "4mu". Das wird wohl der Musikgrundkurs sein. Die "4" steht für Jahrgang 14?! Ich vermute, dass das nur ein Pseudojahrgang ist. Vielleicht, weil im Musikgrundkurs nur so wenige Schüler sind und die deshalb Schüler des 12 und 13 Jahrgangs zusammen in den selben Kurs setzen?

Bei den Kursbezeichnungen haben Sie große Buchstaben für die LKs benutzt und kleine für die Grundkurse. (Wahrscheinlich zwecks evtl Kopplung, da LKs und GK unterschiedliche Anzahl an Wochenstunden haben.)

Vom Prinzip stehen mit dieser Datei alle Daten zur Verfügung um die Schülerstruktur zu importieren. Ich würde es aber aus 2 Gründen ungern mit dieser Datei machen.
1. Die Datei ist kein reines CSV Format. Ist nicht so schlimm, es erschwert mir halt nur dem Import etwas.
2. Die Lehrer und Stundenanzahl fehlt. Die Stundenanzahl ist wahrscheinlich nicht so schwer (ich vermute für die LKs einen festen Wert und für die GK einen anderen festen Wert.)
Wenn noch die entsprechenden Lehrer dabei wären, dann könnte ich auch direkt die entsprechenden Aktivitäten importieren. Das ebenfalls viel Zeit bei der Eingabe ersparen.

Fragen Sie doch mal bitte nach dem Programm und(oder) schauen sie mal, ob es noch weitere csv Ausgabeformate gibt, die Wochenstundenzahl bzw. Lehrer enthalten. Man könnte sich dann noch viel mehr Arbeit ersparen. Die Lehrer können Sie bestimmt auch noch exportieren. Schließlich müssen Sie das ja bei der Kursplanung auch beachtet haben.

Evtl. (falls es eine Textdatei ist) mir auch einfach mal die original Datei von dem Progarmm schicken. Bitte an den Programmnamen denken. Wenn das ein "größeres" Programm ist und sich nicht um eine Insellösung von einer oder zwei Schule handelt, dann würde ich notfalls durchaus einen Import für die obrige Beispieldatei schreiben.