Sari la conținutul principal

Constrângeri

Regulile care decid unde pot fi plasate activitățile — cum se adaugă una, ce înseamnă de fapt ponderea și de ce contează ordinea listei.

Activitățile spun ce trebuie predat. Constrângerile spun unde poate merge: acest profesor este indisponibil vineri, acel laborator poate găzdui o singură clasă la un moment dat, această disciplină nu ar trebui să fie ultima lecție a zilei.

Ele sunt împărțite în două secțiuni, deoarece FET le tratează ca două probleme separate. Constrângerile de timp se referă la când. Constrângerile de spațiu se referă la unde.

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.

Cele două reguli pe care nu le-ați scris

Fiecare orar conține două constrângeri pe care nu le-a creat: o regulă de bază obligatorie pentru timp și una pentru spațiu. Ele sunt baza — niciun profesor sau grup de studenți în două locuri simultan, nicio sală rezervată dublu.

FET le cere, deci sunt întotdeauna la greutate maximă și nu pot fi dezactivate. Ele apar în listă marcate Obligatoriu, cu comutatorul lor blocat.

Greutatea este întreaga idee

Fiecare altă constrângere are o greutate între 0 și 100. Puteți alege acel număr pentru unele tipuri și nu pentru altele — regula este mai jos pe această pagină.

100% este rigid. Trebuie să se respecte. Dacă nu se poate, nu există orar.

Sub 100% este o preferință, iar greutatea sa indică cât de puternic o doriți. O regulă la 95% va fi respectată, cu excepția cazului în care respectarea ei face imposibil altceva; o regulă la 40% este o sugestie. Acesta este ceea ce permite ca un orar să fie bun, mai degrabă decât doar legal — puteți exprima Aș prefera să nu, dar o voi face dacă trebuie, ceea ce este modul în care funcționează școlile reale.

Lista etichetează fiecare rând Rigidă sau Flexibilă exact pe această bază, și puteți filtra lista după intervalul de greutate pentru a găsi tot ce ați făcut rigid, sau tot ce ați lăsat ca o dorință.

Majoritatea tipurilor de constrângeri nu pot fi ponderate deloc. FET păstrează o listă a tipurilor pe care le puteți pondera liber, și refuză orice tip care nu se află pe ea.

⛔ Aceasta nu este o formalitate. FET refuză valoarea de două ori: propriul său dialog nu o va salva, iar generatorul său se oprește înainte de a porni. Un fișier care conține unul dintre aceste tipuri sub 100% nu vă oferă un orar mai prost. Vă oferă niciunul.

Editorul dezactivează câmpul de greutate pentru acele tipuri și vă spune de ce. Prin urmare, nu puteți introduce un număr pe care FET l-ar refuza.

Încă două cazuri forțează 100%:

  • regulile obligatorii de mai sus
  • o regulă de sală preferată pentru o sală virtuală care a fost fixată la săli reale specifice — cerința proprie a FET. Aceasta depinde de ceea ce conține regula, nu de tipul său, deci se modifică pe măsură ce editați lista de săli.

Există o mică problemă sinceră. Un fișier importat din FET nu este niciodată ajustat, chiar dacă conține una dintre acele reguli sub greutatea maximă. Rescrierea silențioasă a fișierului cuiva ar încălca promisiunea că ceea ce intră, iese. Deci lista arată greutatea care este stocată, cu motivul afișat ca o indicație, în loc să vă arate un număr care nu se află în fișier.

Adăugarea uneia

Adăugare deschide un selector pentru fiecare tip de constrângere pe care FET îl suportă, grupat pe categorii și căutabil. Sunt foarte multe, iar caseta de căutare este calea de urmat — tastați sală, sau pauză, sau consecutive, și vedeți ce există.

Alegerea unui tip deschide editorul său, care este construit din propria definiție a acelui tip, deci câmpurile pe care le obțineți sunt câmpurile pe care acel tip le are de fapt. Lângă el se află un panou de ajutor care descrie ce face constrângerea. Merită citit: numele constrângerilor sunt concise, și mai multe tipuri sunt înrudite, dar diferă într-un aspect important.

Acolo unde o constrângere necesită intervale orare, nu completați o listă — obțineți o grilă zile × ore și faceți clic pe celule. Câteva tipuri necesită seturi de intervale orare, mai degrabă decât o singură selecție; acelea vă oferă o singură grilă unde fiecare celulă este colorată într-un set numerotat, astfel încât să puteți vedea seturile unul față de celălalt în loc să mențineți mai multe liste una lângă alta.

Fiecare activitate, sau doar unele?

Acest lucru îi încurcă pe oameni, și merită să fie declarat clar: la multe tipuri de constrângeri, câmpurile care denumesc un profesor, o disciplină sau un grup nu decid cine este afectat — ele decid la ce activități se uită regula.

Ele sunt un filtru peste activități, nu o țintă. Citirea unui câmp de formular ca această regulă este despre domnul Smith atunci când înseamnă luați în considerare lecțiile care îl implică pe domnul Smith duce la reguli care nu fac nimic în tăcere. Panoul de ajutor pentru fiecare tip spune care este cazul.

Ordine

Lista are o ordine, și nu este decorativă: este ordinea în care constrângerile sunt scrise în fișierul exportat.

Trageți rândurile de mânerul lor pentru a le aranja, sau utilizați Sortare A→Z pentru a alfabetiza întreaga secțiune și a salva acest lucru. Tragerea este oferită doar atunci când vizualizați lista completă în ordinea sa naturală — în timp ce o căutare, sortare sau filtrare o restrânge, poziția în care trageți ar fi lipsită de sens. Regulile obligatorii sunt gestionate de FET și nu se mișcă niciodată.

Reordonarea poate fi anulată.

Lucrul cu o listă lungă

Secțiunea are o bară de categorii, o casetă de căutare, un filtru activ/inactiv și un cursor pentru intervalul de greutate. Între ele, de obicei, puteți ajunge de la ceva nu este în regulă cu ziua de vineri la cele câteva reguli care o menționează.

Selectarea rândurilor vă permite să activați, dezactivați, setați o greutate sau ștergeți într-o singură acțiune. Dezactivarea este cea utilă — păstrează regula și setările sale, scoțând-o din joc, ceea ce este modul în care testați dacă o regulă este cea care face orarul dumneavoastră imposibil.

Fiecare constrângere dintr-o acțiune în masă este autorizată individual. Cineva care lucrează printr-un link de partajare cu domeniu de aplicare modifică ceea ce i se permite să modifice, iar restul este lăsat neschimbat, în loc ca întreaga acțiune să eșueze. O modificare în masă a greutății numește, de asemenea, orice a refuzat să mute.

Deasupra listei, editorii primesc un rezumat pre-verificare pe o singură linie. Dacă raportează un conflict blocant, acesta este o dovadă, mai degrabă decât un avertisment, și merită să fie urmat înainte de a merge mai departe.