De randvoorwaarde die je FET-rooster onmogelijk maakt
Eén foute randvoorwaarde kan een FET-bestand onoplosbaar maken en de zoektocht kan uren duren, dus controleer het bestand eerst: het is gratis en duurt seconden.

U voert de gegevens in. U klikt op Genereren in FET. En dan wacht u.
Tien minuten gaan voorbij. Een uur gaat voorbij. Het aantal geplaatste activiteiten bereikt nooit het totaal. Uiteindelijk stopt u het genereren en heeft u geen rooster. Erger nog, u weet niet waarom.
Het probleem is vaak één enkele randvoorwaarde
Een schoolrooster heeft honderden randvoorwaarden. De meeste daarvan zijn correct. Eén ervan is dat niet, en u kunt het niet zien.
Bijvoorbeeld:
- Een klas van 31 studenten mag alleen lokalen met 30 plaatsen gebruiken.
- Een docent heeft 26 lesuren, maar is slechts 24 tijdslots beschikbaar.
- Een regel laat een activiteit achter zonder geldige starttijd in de week.
- Vier lessen moeten op verschillende dagen plaatsvinden, maar de studentengroep heeft slechts op drie dagen les.
Elk van deze voorbeelden maakt het rooster onmogelijk. Geen enkele indeling kan hieraan voldoen. Maar het bestand ziet er normaal uit. FET opent het en begint met zoeken.
Waarom het zoekproces u niets vertelt
FET is erg goed in zijn werk. Het zoekt naar een indeling die aan elke randvoorwaarde voldoet. FET weigert sommige bestanden onmiddellijk. Voor veel andere problemen start het een zoekproces dat niet kan slagen.
Een mislukt zoekproces vertelt u maar één ding: dit zoekproces heeft geen indeling gevonden. Het kan geen onderscheid maken tussen "uw randvoorwaarden maken dit onmogelijk" en "ik heb het deze keer niet gevonden". Dus past u een weging aan, probeert u het opnieuw en wacht u opnieuw.
Daar gaan de uren naartoe. De tijd gaat naar een zoekproces dat nooit kon slagen, niet naar het oplossen zelf.
Eerst tellen, dan zoeken
Er is een snellere vraag die u kunt stellen voordat u genereert: is dit rooster überhaupt mogelijk?
Die vraag vereist geen zoekproces. Het vereist rekenwerk. De controle leest uw randvoorwaarden en telt de ruimte die ze overlaten:
- het aantal uren dat een docent moet lesgeven, versus de tijdslots die beschikbaar blijven
- de starttijden die een activiteit nog heeft nadat elke regel is toegepast
- of twee lessen die beide moeten plaatsvinden, in hetzelfde tijdslot worden gedwongen
- of een groep lessen meer dagen nodig heeft dan de week telt
Wanneer een van deze tellingen nul bereikt, is het rooster onmogelijk. Dat is geen gok over de moeilijkheidsgraad. Het is een bewijs, en de controle levert dat in seconden.
Het benoemt de regel
Een bewijs is alleen nuttig als u er iets mee kunt doen. Elke bevinding zegt in duidelijke taal wat er mis is en benoemt de betrokken regels.

In het bovenstaande voorbeeld heeft Wiskunde · 9A 31 studenten. Het grootste lokaal dat de randvoorwaarde Voorkeurslokaal voor activiteit toestaat, heeft 30 plaatsen. De oplossing is duidelijk: sta een groter lokaal toe of splits de klas.
De bevindingen zijn gegroepeerd. Bewezen onmogelijk bevat de problemen waar geen enkele oplosser voorbij kan komen. De andere groepen bevatten waarschijnlijke fouten en de zaken die een bestand moeilijk maken. Lees meer in De vier soorten bevindingen.
Twee manieren om het te gebruiken
Zonder account: de FET-helper. Ga naar fetviewer.com/check en kies uw .fet-bestand. Het is gratis en er is geen limiet op het aantal controles. Uw bestand blijft op uw computer staan. Uw browser stuurt alleen een samenvatting naar onze server, en die samenvatting bevat geen namen: docenten, lokalen en studentengroepen worden als nummers verzonden. We slaan niets op. Zie Een bestand controleren zonder account.
Binnen uw account: Pre-flight. Wanneer u uw rooster importeert, vindt u de Pre-flight-pagina bij de randvoorwaarden op het gegevensscherm. Elke sectie met randvoorwaarden toont ook een samenvatting van één regel bovenaan. Wijzig een randvoorwaarde en controleer opnieuw terwijl u werkt. Zie Wat de pre-flight-controle doet.
Wat het u niet kan vertellen
De controle bewijst de onmogelijke gevallen. Het kan niet bewijzen dat een bestand zal worden opgelost, en het kan u niet vertellen hoe lang FET erover zal doen. Een geslaagde controle neemt één reden voor mislukking weg. Het zoekproces blijft het werk van FET.
Gebruik dus beide, in deze volgorde:
- Controleer het bestand.
- Corrigeer wat de controle bewijst.
- Laat FET daarna zoeken.
Lees de volledige vergelijking in Hoe de controle verschilt van het laten oplossen door FET.
Voordat u weer lang moet wachten
De volgende keer dat het genereren te lang duurt, stop het dan. Controleer eerst het bestand. Als een randvoorwaarde het rooster onmogelijk maakt, komt u daar binnen enkele seconden achter, en ziet u welke het is.