Wise Timetable

Concetti

Vincoli rigidi e vincoli flessibili, con esempi reali

La distinzione sembra accademica finché non si passa una settimana a derogare alle proprie regole perché le si erano dichiarate tutte inviolabili.

Le definizioni

Un vincolo rigido è una regola che deve valere in qualsiasi orario valido. Violarlo non produce un orario peggiore, ma un orario non valido. Un docente non può trovarsi in due aule contemporaneamente. Novanta studenti non possono sedersi in un'aula da sessanta posti. Un'esercitazione di chimica non può svolgersi in un'aula per seminari priva di cappe aspiranti.

Un vincolo flessibile è una preferenza. Soddisfarlo migliora l'orario; violarlo lo peggiora, ma resta utilizzabile. Un docente preferisce non insegnare il venerdì pomeriggio. Gli studenti non dovrebbero avere pause di tre ore. L'insegnamento dovrebbe essere concentrato in meno giorni.

Un motore di programmazione li tratta in modo completamente diverso. I vincoli rigidi definiscono lo spazio delle soluzioni ammissibili. I vincoli flessibili definiscono quale tra queste soluzioni ammissibili sia la migliore, e vengono bilanciati l'uno rispetto all'altro.

Classificare le regole che già avete

La maggior parte degli atenei ha un elenco da qualche parte. Quasi nessuno lo classifica.

RegolaTipoPerché
Il docente non può tenere due lezioni contemporaneamenteRigidoFisicamente impossibile; nessun orario che lo contenga è utilizzabile.
La capienza dell'aula deve essere adeguata al gruppoRigidoLa lezione non può svolgersi. Talvolta attenuato quando è noto che un gruppo non frequenta al completo.
La lezione richiede attrezzature specificheRigidoL'insegnamento non può svolgersi senza.
Docente indicato come non disponibile il martedì mattinaRigidoSe l'ha inserito personalmente, trattatelo come rigido. È questo il senso della disponibilità in self-service.
Non più di sei ore di insegnamento al giornoDi solito rigidoSpesso è una politica dell'ateneo o un accordo sindacale più che una preferenza.
Pausa pranzo tra le 12:00 e le 14:00Flessibile o rigidoDipende dall'ateneo. Rendetelo esplicito invece di darlo per scontato.
Il docente preferisce la mattinaFlessibileUna preferenza. Ottimizzate per rispettarla; non fallite a causa sua.
Gli studenti non dovrebbero avere pause superiori a due oreFlessibileMolto auspicabile, raramente raggiungibile del tutto.
Insegnamento concentrato in meno giorniFlessibileIn diretto conflitto con la riga precedente. È esattamente a questo che serve l'ottimizzazione.
Aula preferita per un determinato moduloFlessibileDi solito una comodità, occasionalmente rigido quando le attrezzature sono fisse.

Perché la confusione costa cara

Dichiarare rigida ogni regola sembra prudente. Non lo è. Un insieme di vincoli in cui ogni preferenza è inviolabile di solito non ammette alcuna soluzione, e il sistema segnala correttamente che un gran numero di lezioni non può essere collocato.

Ciò che segue è la parte costosa: qualcuno passa una settimana a derogare manualmente ai vincoli uno alla volta per forzare un risultato, che è proprio il lavoro manuale che l'automazione doveva eliminare — e l'orario risultante non conserva traccia di quali regole siano state piegate né perché.

L'errore opposto è più raro ma peggiore. Classificare come flessibile un vincolo che è davvero rigido produce un orario che sembra completo e contiene un'impossibilità, scoperta nella prima settimana dalle persone interessate.

Un test pratico

Ponete una sola domanda per ciascuna regola: se fosse violata, la lezione potrebbe comunque svolgersi?

Se no, è rigida. Se sì ma qualcuno sarebbe scontento, è flessibile. Se la risposta è "dipende da chi", avete trovato un vincolo politico e non di programmazione, e deve essere deciso da una persona prima di entrare in qualsiasi sistema.

Scoprite come si definiscono i vincoli in Wise Timetable.

Desiderate vederlo in funzione?

Prenotate una presentazione online di 45 minuti e la illustreremo sul problema di programmazione del Vostro ateneo.