Automatische Spielplanerstellung
Die Generierung der Spielansetzungen entscheidet, wer gegen wen spielt. Die Spielplanerstellung entscheidet, wann und wo. FairGame übernimmt den zweiten Teil mit einem Constraint-Solver: Du beschreibst das Turnier, und der Solver platziert jedes Spiel.
Was garantiert wird
Unabhängig davon, was der Solver sonst noch tut, enthält ein erzeugter Spielplan niemals:
- zwei Spiele auf demselben Platz zur selben Zeit;
- eine Mannschaft, die gleichzeitig zwei Spiele bestreitet;
- ein Spiel außerhalb der Verfügbarkeit seines Platzes;
- einen Verstoß gegen eine Spielplanregel, die du als erforderlich markiert hast.
Das sind harte Constraints. Wenn sie nicht alle erfüllt werden können, teilt der Solver dir das mit, statt einen Spielplan auszugeben, der stillschweigend eine Regel verletzt.
Was optimiert wird
Unter den gültigen Spielplänen bevorzugt der Solver solche, die sich besser spielen und besser organisieren lassen:
- Ausgeglichene Erholungszeiten. Die Mannschaften erhalten vergleichbare Pausen zwischen ihren Spielen, statt dass eine Mannschaft drei Spiele direkt hintereinander bestreitet, während eine andere vier Stunden wartet.
- Kompakte Spieltage. Die Plätze bleiben ausgelastet, und der Spieltag endet so früh, wie es die Constraints erlauben. Unbelegte Platzzeit macht aus einem siebenstündigen Turnier schnell ein zehnstündiges.
- Planbare Struktur. Wenn eine Regel es verlangt, beginnt die letzte Runde einer Gruppe gleichzeitig, damit nichts davon abhängt, das Ergebnis des anderen Spiels zu kennen.
Ausführung
Die automatische Spielplanerstellung läuft pro Turniertag in drei sichtbaren Phasen:
- Lösen — Der Solver arbeitet am Spieltag. Große Turniere dauern wenige Sekunden bis ein paar Minuten. Der Lauf zeigt den Fortschritt an und kann abgebrochen werden.
- Prüfen — Du erhältst einen vorgeschlagenen Spielplan, den du dir ansehen kannst, bevor er etwas ersetzt.
- Anwenden — Der Vorschlag wird zum Spielplan des Turniers.
Ohne deine Bestätigung wird nichts angewendet. Einen Spieltag zu leeren und neu zu beginnen ist eine einzige Aktion.
Wenn kein Spielplan gefunden werden kann
Ein unlösbarer Spieltag ist fast immer überbestimmt und nicht defekt. In der Reihenfolge ihrer Wahrscheinlichkeit:
Es gibt nicht genug Platzstunden. Plätze × verfügbare Stunden ÷ Spieldauer ergibt deine Obergrenze. Wenn die Spiele zeitlich nicht hineinpassen, hilft keine andere Anordnung. Füge einen Platz hinzu, verlängere den Spieltag, verkürze die Spiele oder verkleinere das Teilnehmerfeld.
Eine Ruhezeit ist zu großzügig bemessen. Eine Ruhezeit von 120 Minuten für Mannschaften, die vier Spiele bestreiten, erfordert einen langen Spieltag. Ruhezeiten sind die häufigste Ursache für einen unmöglichen Spielplan. Verringere sie und prüfe, ob der Spieltag dann gelöst werden kann.
Die Verfügbarkeit ist enger als beabsichtigt. Prüfe die Zeitfenster jedes Platzes. Eine Verfügbarkeit, die für Samstag eingerichtet und für Sonntag nie angepasst wurde, wird leicht übersehen.
Regeln widersprechen sich. Zwei Mannschaften, die beide bis 14:00 Uhr fertig sein müssen und jeweils vier Spiele mit 90 Minuten Ruhezeit bestreiten müssen, können zusammen unmöglich sein. FairGame zeigt dir, welche Constraints nicht gemeinsam erfüllt werden konnten.
Teilweise und fixierte Spielpläne
Du musst nicht den gesamten Spieltag an den Solver übergeben. Spiele, die du bereits manuell platziert hast, können an ihrer Stelle bleiben, während der Rest darum herum gelöst wird. Das ist nützlich für ein Finale mit festem Anstoß, einen Zeitraum für die Eröffnungszeremonie oder ein Spiel, für das ein Verein bereits angereist ist.
Während des Turniers neu lösen
Dass ein Platz mittags geschlossen werden muss, ist ein normaler Fall. Markiere ihn als nicht verfügbar und löse den restlichen Spieltag neu: Bereits ausgetragene Spiele bleiben bestehen, und die übrigen werden um das herum neu platziert, was bereits geschehen ist. Prüfe den Vorschlag, veröffentliche dann die Änderung und kündige sie an — die Menschen sehen den Spielplan auf ihren Handys, und er aktualisiert sich nicht von selbst in ihren Köpfen.