Wer Stundenplansoftware auswählt, wählt in Wahrheit keine Oberfläche. Bildschirme ähneln sich, Knöpfe lernt man an einem Nachmittag. Worüber sich entscheidet, wie viel von Ihrem August Sie zurückbekommen, ist der Motor hinter dem Knopf „Generieren“ — und in fast jedem Produkt ist dieser Motor eine geschlossene Kiste.
Dieser Beitrag öffnet unsere. Der Bildena-Motor besteht aus fünf Schichten. Wir gehen der Reihe nach durch, was jede tut, warum sie dort ist und woran wir merken würden, dass sie still falsch arbeitet.
1. Schuldaten werden verlustfrei in ein Modell übersetzt
Der Motor arbeitet nicht mit Unterrichtskarten, sondern mit Entscheidungsvariablen. Jede Karte wird gemäß ihrer Wochenstunden in Blöcke zerlegt, und jeder Block wählt einen Tag, aufeinanderfolgende Stunden und, wo es zählt, einen Raum. Die ganze Woche einer Schule ist eine widerspruchsfreie Kombination dieser Entscheidungen.
Für diese Übersetzung gilt genau eine Regel, und sie ist streng: sie muss verlustfrei sein. Der Motor sagt nie „diese Bedingung habe ich nicht verstanden, ich überspringe sie“. Gekoppelter Unterricht, geteilte Klassen, Wahlpflichtbänder, A/B-Wochen, Schichtbetrieb — alles lebt im selben Variablenraum und wird in derselben Mathematik ausgedrückt. Jedes Feld, nach dem die Oberfläche fragt, hat eine Entsprechung im Modell; ein Feld ohne Entsprechung wird gar nicht erst abgefragt.
Das ist eine größere Zusage, als es klingt. Eine Bedingung in die Oberfläche zu setzen, ohne sie ans Modell zu binden, ist eine stille Lüge: Sie setzen den Haken, der Plan entsteht, die Regel wurde nie angewendet — und im September merkt es eine Lehrkraft.
2. Unmöglichkeit wird erkannt, bevor gerechnet wird
Der teure Weg, herauszufinden, dass ein Plan nicht baubar ist, heißt: probieren. Klassische Prüfungen betrachten jede Dimension für sich — hat die Klasse genug offene Stunden, hat die Lehrkraft genug freie? Beides kann bequem bestehen, und der Plan bleibt trotzdem unmöglich. Denn eine Stunde kann nur dort liegen, wo die Klasse offen und die Lehrkraft frei ist; sind beide Mengen weit, ihre Schnittmenge aber eng, sehen Zähltests nichts.
Bildena baut stattdessen für jede Klasse und jede Lehrkraft eine zweiteilige Zuordnung zwischen Unterrichtsstunden und zulässigen Zeitfenstern. Eine Klasse hat zur selben Zeit einen Unterricht, eine Lehrkraft steht an einem Ort; die Stunden müssen also eindeutig auf Fenster abgebildet werden. Gibt es keine vollständige Zuordnung, ist der Plan sicher unmöglich — keine Schätzung, sondern eine Folge der Hall-Bedingung.
Eine Regel dieser Schicht steht nicht zur Verhandlung: sie liefert keine falschen Alarme. Die Kandidatenmengen werden bewusst weit gehalten. Sagt der Scan „baubar“, heißt das nur, dass dieser Test bestanden wurde; sagt er „unmöglich“, dann ist es unmöglich. Eine Planerin in eine Sackgasse zu schicken, die es gar nicht gibt, kostet mehr als zu spät zu kommen.
3. Harte Bedingungen und Wünsche teilen sich nie eine Schublade
Im Kern arbeitet ein Constraint-Solver auf Basis von Googles Optimierungstechnologie, von uns für die Schulplanung angepasst. Genau in dieser Anpassung liegt die Arbeit: über das Ergebnis entscheidet nicht der Kern selbst, sondern wie genau ihm eine Schule beschrieben wurde.
Im Zentrum dieser Beschreibung steht eine einzige Unterscheidung. Manches darf nicht verletzt werden, anderes ist bloß erwünscht, und beides teilt sich nie eine Schublade.
| Hart — nie verletzt | Weich — konkurriert über Gewichte |
|---|---|
| Kollisionen bei Lehrkraft, Klasse, Gruppe, Raum | Verteilung eines Fachs über die Woche |
| Schülerkollisionen (bei schülerbezogener Planung) | Lücken bei Lehrkräften |
| Sperrzeiten und geschlossene Tage | Tägliche Lastverteilung |
| Trennung von A- und B-Woche | Weiche Reihenfolgewünsche |
| Tages- und Wochenlimits der Lehrkraft | Nutzung markierter Stunden |
| Harte Reihenfolgeregeln, Vorbereitungsgrenzen |
4. „Nichts Besseres“ ist eine Schranke, kein Gefühl
Während der Suche führt der Solver zwei Zahlen mit: die Kosten des besten Plans, den er hat, und die theoretische untere Schranke, unter die keine Anordnung kommen kann. Im Verlauf sinkt die eine, die andere steigt. Treffen sie sich, ist die Arbeit fertig — und das Ergebnis ist nicht nur gut, seine Optimalität ist bewiesen.
Treffen sie sich nicht, erfahren Sie den verbleibenden Abstand. „Dieser Plan ist höchstens so weit vom bestmöglichen entfernt“ ist der Satz, mit dem Sie entscheiden, ob Sie den Plan annehmen oder den Motor weiterlaufen lassen. Eine Heuristik kann diesen Satz nicht bilden: ohne Darstellung des Ideals lässt sich der Abstand dazu nicht messen. Sie weiß am Ende nur, dass sie aufgehört hat.
Diesen Unterschied haben wir in einem eigenen Beitrag behandelt: was es heißt, dass ein Stundenplan beweisbar optimal ist.
5. Das Ergebnis hat eine Kennzahl — aber nicht die des Solvers
Jeder Lauf bekommt eine Perfektionspunktzahl von 100. Achtzig Punkte entfallen auf die Platzierung: volle Punktzahl, wenn jede Unterrichtsstunde einen Platz gefunden hat. Die übrigen zwanzig sind messbare Qualität — Klassenlücken, Lehrerlücken, bedingte Situationen und verletzte Planungsregeln.
Diese Wahl ist bewusst: die Strafsumme des Solvers wird nicht als Punktzahl verwendet. Sie ist eine einzige Summe, zwischen Schulen nicht vergleichbar, und ihre Bedeutung verschiebt sich, sobald Sie ein Gewicht ändern — die 1.240 von letzter Woche und die 980 von dieser messen nicht dasselbe. Die Punktzahl wird deshalb am Plan selbst neu gemessen, und dieselbe Formel läuft auf dem Server wie im Browser: Ziehen Sie eine Stunde auf dem Bildschirm, ändert sich der Wert, bevor Sie gespeichert haben.
Wer prüft den Motor?
Der gefährlichste Fehler eines Planungsmotors ist kein Absturz, sondern still falsch zu rechnen. Der Plan entsteht, der Bildschirm ist grün, und eine Bedingung wurde nie angewendet. Diese Fehlerklasse findet man nicht durch Hinsehen — man findet sie mit Tests. Allein auf der Motorseite laufen über 2.800 automatisierte Tests, und drei Familien davon zielen genau auf dieses Risiko:
- Bindungstests. Für jede harte Bedingung bauen wir eine Eingabe, die sie absichtlich verletzt, und verlangen vom Motor die Antwort nicht lösbar. Zu bestätigen, dass ein Plan „richtig aussieht“, genügt nicht: nur so zeigt sich, ob eine Regel aus dem Code wirklich im Modell angekommen ist.
- Regression an echten Schulen. Läufe auf importierten Daten realer Schulen mit festem Startwert. Verschlechtert eine Verbesserung am Motor den Plan einer anderen Schule, sieht man es vor dem Release.
- Äquivalenz der Formulierung. Dasselbe Problem wird auf zwei Arten beschrieben und die Ergebnisse werden auf Gleichwertigkeit geprüft — der Beweis, dass ein geändertes Modell seine Bedeutung behalten hat.
Aufsicht läuft über denselben Motor, aber in einem eigenen Modell
Auch die Lehreraufsicht läuft über denselben Kern und bildet pausenbasierte wie tagesbasierte Ordnungen ab. Entscheidend ist die architektonische Grenze: der Aufsichtsplaner liest die Stundenplatzierungen und schreibt sie nie. Ein neu erzeugter Aufsichtsplan verändert Ihren Stundenplan nicht. Diese Regel wird im Code-Review durchgesetzt, nicht dem guten Willen überlassen.
Was wir nicht versprechen
Die Grenzen vorab zu nennen ist billiger, als sie später zu erklären.
- Optimalität gilt für das Ziel, das Sie definiert haben. Gewichten Sie Lehrerlücken mit null, erzeugt der Motor bereitwillig einen Plan voller Lücken und beweist dessen Optimalität. Die Mathematik ist Ihren Prioritäten treu — auch Ihren Fehlern.
- Er erfindet keine Ressourcen. Kein Solver schafft einen Raum, den Sie nicht haben, oder eine Stunde, die es nicht gibt. Er kann nur früh und präzise sagen, dass sie fehlen.
- Der Beweis gelingt nicht immer im Zeitlimit. Bei sehr großen oder sehr engen Schulen kann der Motor mit einem kleinen Restabstand stoppen. Der Unterschied: er nennt diesen Abstand, statt eine halbe Suche als fertige Antwort auszugeben.
Die Zusage, die wir geben
Am Ende eines Laufs wissen Sie, welcher von drei Fällen eingetreten ist: dieser Plan ist optimal; dieser Plan ist zulässig und höchstens so weit vom Optimum entfernt; oder diese Anforderungen sind nicht alle gleichzeitig erfüllbar, und das ist die Menge, die kollidiert.
„Mehr habe ich nicht geschafft“ bekommen Sie nie. Das ist der Unterschied.
Bildena Scheduler ist ein webbasiertes System für die Schulstundenplanung auf Basis von Googles Optimierungstechnologie und eigenen Planungsalgorithmen, entwickelt und gehostet in Deutschland. In der kostenlosen Testphase können Sie einen vollständigen Lauf auf Ihren eigenen Daten starten — importiert aus aSc TimeTables, Untis oder Excel — und das Ergebnis mit Ihrem heutigen Plan vergleichen.