Skočiť na hlavný obsah

Obmedzenia

Obmedzenia, ktoré určujú umiestnenie aktivít – ako pridať nové, čo znamená váha a prečo je poradie zoznamu dôležité.

Aktivity hovoria, čo sa má učiť. Obmedzenia hovoria, kam to môže ísť: tento učiteľ je v piatok nedostupný, to laboratórium môže naraz pojať iba jednu triedu, tento predmet by nemal byť poslednou hodinou dňa.

Sú rozdelené do dvoch sekcií, pretože FET ich považuje za dva samostatné problémy. Časové obmedzenia sú o tom, kedy. Priestorové obmedzenia sú o tom, kde.

Time constraints as FET models them, in a plain list rather than nested dialogs.
Time constraints as FET models them, in a plain list rather than nested dialogs.

Dve pravidlá, ktoré ste nenapísali

Každý rozvrh obsahuje dve obmedzenia, ktoré nevytvoril: základné povinné pravidlo pre čas a jedno pre priestor. Sú základom – žiadny učiteľ ani skupina študentov na dvoch miestach naraz, žiadna miestnosť dvakrát obsadená.

FET ich vyžaduje, takže majú vždy plnú váhu a nedajú sa vypnúť. Zobrazujú sa v zozname označené ako Povinné, s uzamknutým prepínačom.

Váha je celá myšlienka

Každé iné obmedzenie má váhu medzi 0 a 100. Toto číslo môžete zvoliť pri niektorých typoch, pri iných nie — pravidlo je ďalej na tejto stránke.

100% je pevné. Musí platiť. Ak nemôže, neexistuje žiadny rozvrh.

Pod 100% je preferencia a jej váha vyjadruje, ako veľmi si ju želáte. Pravidlo s 95% bude dodržané, pokiaľ jeho dodržanie neznemožní niečo iné; pravidlo so 40% je len mierne odporúčanie. To je to, čo umožňuje, aby bol rozvrh dobrý, a nie len legálny – môžete vyjadriť radšej by som nie, ale urobím to, ak musím, čo je spôsob, akým fungujú skutočné školy.

Zoznam označuje každý riadok ako Pevné alebo Mäkké presne na tomto základe a zoznam môžete filtrovať podľa rozsahu váhy, aby ste našli všetko, čo ste urobili pevným, alebo všetko, čo ste nechali ako želanie.

Väčšinu typov obmedzení nemožno vôbec vážiť. FET udržiava zoznam typov, ktoré môžete voľne vážiť, a odmieta každý typ, ktorý na ňom nie je.

⛔ Toto nie je formalita. FET odmieta hodnotu dvakrát: jeho vlastné dialógové okno ju neuloží a jeho generátor sa zastaví skôr, ako začne. Súbor, ktorý obsahuje jeden z týchto typov pod 100%, vám nedá horší rozvrh. Nedá vám žiadny.

Editor pre tieto typy zakáže pole váhy a povie vám prečo. Preto nemôžete zadať číslo, ktoré by FET odmietol.

Ďalšie dva prípady vynucujú 100%:

  • vyššie uvedené povinné pravidlá
  • pravidlo preferovanej miestnosti pre virtuálnu miestnosť, ktorá bola priradená ku konkrétnym skutočným miestnostiam — vlastná požiadavka FET. Toto závisí od toho, čo pravidlo obsahuje, nie od jeho typu, takže sa mení pri úprave zoznamu miestností.

Existuje jedna úprimná zvláštnosť. Súbor importovaný z FET sa nikdy neupravuje, aj keď obsahuje jedno z týchto pravidiel pod plnou váhou. Tiché prepísanie súboru niekoho iného by porušilo sľub, že čo sa vloží, to sa aj získa. Zoznam teda zobrazuje váhu, ktorá je uložená, s dôvodom zobrazeným ako popis, namiesto toho, aby vám ukazoval číslo, ktoré nie je v súbore.

Pridanie

Pridať otvorí výber všetkých typov obmedzení, ktoré FET podporuje, zoskupených podľa kategórií a s možnosťou vyhľadávania. Je ich veľmi veľa a vyhľadávacie pole je cesta – zadajte miestnosť, alebo medzera, alebo po sebe idúce a uvidíte, čo existuje.

Výber typu otvorí jeho editor, ktorý je postavený na vlastnej definícii daného typu, takže polia, ktoré získate, sú polia, ktoré daný typ skutočne má. Vedľa neho je panel pomoci popisujúci, čo obmedzenie robí. Oplatí sa ho prečítať: názvy obmedzení sú stručné a niekoľko typov sú blízki susedia, ktoré sa líšia v jednom dôležitom ohľade.

Tam, kde obmedzenie potrebuje časové sloty, nevyplňujete zoznam – dostanete mriežku dní × hodín a klikáte na bunky. Niekoľko typov potrebuje sady slotov namiesto jedného výberu; tie vám poskytnú jednu mriežku, kde je každá bunka namaľovaná do očíslovanej sady, takže môžete vidieť sady oproti sebe namiesto udržiavania niekoľkých zoznamov vedľa seba.

Každá aktivita, alebo len niektoré?

Toto ľudí mätie a stojí za to to jasne uviesť: pri mnohých typoch obmedzení polia, ktoré pomenúvajú učiteľa, predmet alebo skupinu, nerozhodujú o tom, kto je ovplyvnený – rozhodujú o tom, na ktoré aktivity sa pravidlo pozerá.

Sú filtrom pre aktivity, nie cieľom. Čítanie poľa formulára ako toto pravidlo je o pánovi Smithovi, keď to znamená zvážte hodiny, ktoré zahŕňajú pána Smitha, vedie k pravidlám, ktoré potichu nerobia nič. Panel pomoci pre každý typ hovorí, o čo ide.

Poradie

Zoznam má poradie a nie je to len dekorácia: je to poradie, v akom sú obmedzenia zapísané do exportovaného súboru.

Ťahajte riadky za ich úchyt, aby ste ich usporiadali, alebo použite Zoradiť A→Z na abecedné zoradenie celej sekcie a uloženie. Ťahanie je ponúkané iba vtedy, keď prezeráte celý zoznam v jeho prirodzenom poradí – zatiaľ čo vyhľadávanie, zoradenie alebo filter ho zužuje, pozícia, na ktorú ťaháte, by bola bezvýznamná. Povinné pravidlá sú spravované FET a nikdy sa nepohybujú.

Zmenu poradia možno vrátiť späť.

Práca s dlhým zoznamom

Sekcia má panel kategórií, vyhľadávacie pole, filter aktívnych/neaktívnych a posuvník rozsahu váhy. Medzi nimi sa zvyčajne dostanete od niečo nie je v poriadku s piatkom k hŕstke pravidiel, ktoré ho spomínajú.

Výber riadkov vám umožňuje aktivovať, deaktivovať, nastaviť váhu alebo odstrániť jedným úkonom. Deaktivácia je tá užitočná – zachováva pravidlo a jeho nastavenia, zatiaľ čo ho vyradí z hry, čo je spôsob, ako otestovať, či je pravidlo to, čo robí váš rozvrh nemožným.

Každé obmedzenie v hromadnej akcii je autorizované samostatne. Niekto, kto pracuje prostredníctvom zdieľaného odkazu s obmedzeným rozsahom, mení to, čo mu je povolené zmeniť, a zvyšok zostane nedotknutý, namiesto toho, aby celá akcia zlyhala. Hromadná zmena váhy tiež pomenuje všetko, čo odmietla presunúť.

Nad zoznamom dostanú editori jednoriadkový predbežný súhrn. Ak hlási blokujúci konflikt, je to dôkaz a nie varovanie, a oplatí sa ho sledovať, než pôjdete ďalej.