Stilare l'orario settimanale di una scuola, di un centro di formazione o di una università — un calendario senza conflitti sotto vincoli di docente, aula, gruppo e orario (in letteratura: Timetabling).
In breve
Ti suona familiare?
- A inizio periodo la direzione passa 5–10 giorni a scrivere l'orario; poi 3–7 docenti dicono 'in quell'ora non ci sono' e si rifà
- Salta fuori all'ultimo un conflitto: la stessa classe ha due materie in parallelo o due docenti condividono l'aula
- Alcuni docenti molto carichi, altri poco — squilibrio di carico annuale come tema
- Quando non si può assegnare il laboratorio (chimica, biologia, informatica) la lezione si fa teorica — perdita di qualità
- Educazione fisica alle 08:00 seguita da matematica con concentrazione alta — flusso pedagogico rotto
- Le preferenze dei docenti si prendono 'a voce', senza registrazione; lo stesso dibattito si ripete ogni periodo
- In una facoltà una persona impiega 2–3 settimane sull'orario di 50+ corsi; 1–2 mesi dopo arrivano ancora richieste di modifica
Perché è importante
Come si risolve
Profondità tecnica
Come si risolve
Profondità tecnicaIn una frase: Tieni prima la regola ‘zero conflitti’ — niente docente in due aule insieme, niente classe con due lezioni in parallelo. Poi ottimizza per preferenze del docente e flusso pedagogico (niente di impegnativo subito dopo educazione fisica). Invertire l’ordine fa sembrare l’orario pulito ma lo porta in un vicolo cieco.
Quello che il software fa davvero è questo: l’orario settimanale che la dirigenza costruisce a mano in 5–10 giorni, lo monta per 100–300 corsi in pochi secondi; con un cambio docente o un aggiornamento di preferenza pedagogica, ricalcola in minuti. Tre fasi:
1. Descrive corsi, risorse e vincoli. Per ogni corso: a quale classe è rivolto (per esempio 9A), docente, ore settimanali, tipo di aula richiesta (normale / laboratorio / palestra / aula musica) e se deve essere svolto in blocchi consecutivi (per esempio 2 ore di seguito). Disponibilità del docente (chi libero in quali giorni e ore), capacità e proprietà delle aule, mappa di conflitto dei gruppi studenti. Le preferenze pedagogiche (niente di pesante dopo educazione fisica; matematica al mattino) entrano come vincoli morbidi.
2. Produce il miglior orario. Il software non prova ogni accoppiamento possibile corso–ora–aula — per 100 corsi × 40 ore × 20 aule è matematicamente impossibile (la combinatoria è astronomica). Usa invece algoritmi di ricerca operativa (disciplina che usa matematica e computer per risolvere decisioni di business) e programmazione a vincoli (CP — metodo che bilancia automaticamente ‘questa regola + quella regola + un’altra ancora devono valere insieme’) per scorciatoie intelligenti: prima soddisfa i vincoli duri (zero conflitti), poi ottimizza le preferenze morbide (preferenze del docente, limite di ore consecutive). Il risultato arriva in pochi minuti — un orario settimanale completo: quale corso, quale giorno, quale ora, quale docente, quale aula.
3. Passa all’approvazione e alla pubblicazione. Il dirigente vede la bozza e può fissare vincoli morbidi (per esempio ‘mercoledì 09:00 musica resta fisso’); il software aggiunge il vincolo e ricalcola. L’orario approvato compare nell’app di docenti e famiglie. A metà periodo, un cambio docente o di risorsa fa ricalcolare solo la parte interessata.
Non sostituisce le scelte pedagogiche; pensalo come una calcolatrice che scala i 15–20 aggiustamenti che fai a mente fino a 300, parte da zero conflitti e bilancia numericamente le preferenze. La decisione resta tua, ma la risposta a ‘è matematicamente fattibile?’ la hai in pochi minuti.
Alternative
Carta e matita + foglio di calcolo
GratuitoGratuito (il tempo di gestione è il costo)
Per chi: 1–3 classi, 5–10 docenti, programma semplice
- + Nessun costo software
- + Flessibile — cambi immediati facili
- + Nessuna decisione di investimento
- − Con 20+ classi, 5–15 giornate di gestione sono perdita di produttività
- − I conflitti si cercano a occhio; sono frequenti dimenticanze
- − Il bilanciamento del carico docente non si controlla numericamente
- − Un cambio a metà periodo rompe l'intero piano
Modulo orario all'interno di un gestionale scolastico
Aziendale200–800 EUR di setup + 50–200 EUR/mese (prezzi pmi regionali)
Per chi: Scuola privata con 10–30 classi, centro formazione, catena per l'infanzia
- + Interfaccia e supporto in italiano
- + Comunicazione famiglie (SMS, app) integrata
- + Collegato a presenze e voti
- − Il modulo è di solito 'rilevamento conflitti' — niente vera ottimizzazione timetabling
- − Pesatura preferenze docenti assente o basilare
- − Inadeguato alla scala universitaria
Software internazionale specializzato di timetabling
Aziendale50–200 EUR/anno/scuola in abbonamento o 20.000–100.000 EUR/anno di licenza (grande scala)
Per chi: Università, scuola superiore grande, operatore multi-campus
- + Maturo: motore di programmazione a vincoli, garanzia zero conflitti, pesatura preferenze pedagogiche
- + Orari di esami ed eventi integrati
- + Algoritmi consolidati negli anni
- − Costi alti di licenza e consulenza
- − Implementazione 2–4 mesi
- − Curriculum locale (norme ministeriali, semestri, calendario esami) richiede adattamento
Sviluppo proprio su solver CP open source
Open SourceLicenza gratuita; 8–16 settimane di sviluppo interno o 50.000–200.000 EUR di consulenza
Per chi: Grande università o catena scolastica multi-campus
- + Nessun costo di licenza
- + Personalizzabile sulle proprie regole pedagogiche
- + Cloud o server proprio
- − Capacità tecnica interna + competenza CP obbligatorie
- − Manutenzione continua è lavoro reale
- − I cambi pedagogici devono essere tradotti nel modello matematico
Raccomandazione
Chiedi nell'incontro
- Il motore fa vera ottimizzazione di timetabling (vincoli duri + pesatura preferenze morbide insieme) o solo rilevamento conflitti?
- Quanto entra la pesatura preferenze del docente (per esempio 'no venerdì pomeriggio' come forte preferenza)? I pesi delle preferenze sono regolabili dalla direzione?
- Come si inseriscono i vincoli di aule speciali (per esempio laboratorio chimica con 6 ore settimanali di capacità)?
- Le norme curriculari locali (ore settimanali minime per materia e livello) sono pre-caricate per il tuo paese?
- Quando un docente cambia o due gruppi si uniscono a metà periodo, in quanto tempo si ricalcola il piano?
- Esami ed eventi (riunioni, ricevimenti) si gestiscono nello stesso motore o come moduli separati?
- Come strutturate il pilota — quante classi, quante settimane, qual è la soglia di successo?
- Se smettiamo di lavorare con voi, come recuperiamo dati di corsi, docenti, classi e storico orari? Esiste un export in formato standard?
Dettagli tecnici
Nota editoriale
Sul tavolo della direzione, questo problema si chiama ’l’orario’, ‘il calendario settimanale’ o ‘il piano del periodo’. Il nome accademico è Course Timetabling Problem. La formulazione matematica risale a Gotlieb negli anni ‘60; oggi è il problema di test più diffuso della ricerca su programmazione a vincoli (CP). La conferenza PATAT (Practice and Theory of Automated Timetabling) raccoglie il campo ogni due anni. Senza questo vocabolario, in una demo non puoi capire se il ‘modulo orario’ che ti propongono è un motore con garanzia di zero conflitti o solo un calendario visivo del piano che fai a mano.
Il punto più spesso ignorato in questo segmento: molti gestionali scolastici pubblicizzano ‘genera l’orario’ ma sotto hanno solo un sistema di allerta sui conflitti — il piano lo fai tu, loro avvisano ‘in questa classe due corsi si sovrappongono’. Un vero motore di timetabling prova combinazioni corso–ora–docente–aula in modo sistematico; filtra soluzioni a zero conflitti; poi sceglie quella con il punteggio più alto di preferenze morbide (preferenze del docente, flusso pedagogico). In ogni demo, insisti su uno scenario con 30 classi + 50 docenti + 5 laboratori + 200 corsi + 10 preferenze pedagogiche, e chiedi ’la soluzione arriva in pochi minuti, con garanzia di zero conflitti?’
Percorso passo passo per una pmi
Fase 1 — Prima misura, poi pianifica. Per gli ultimi 1–2 periodi registra quattro cose:
- Ore del dirigente/coordinatore per la preparazione dell’orario (inizio + revisioni a metà periodo)
- Numero di cambiamenti per conflitti o problemi pedagogici
- Deviazione standard del carico docente (ore settimanali) — indicatore di equità
- Tasso di utilizzo di laboratori/aule speciali
Senza questa base non puoi sapere quale software produrrà quale risultato.
Fase 2 — Lista regole e preferenze. Vincoli duri (devono valere): nessun docente in due posti, nessuna classe con due corsi insieme, nessuna aula sovraccarica, ore settimanali per materia e livello come da norma. Preferenze morbide (se possibile): orari preferiti del docente, niente di pesante dopo educazione fisica, massimo ore consecutive per docente (per esempio non più di 3 di fila). Questa lista è il tuo capitale di conoscenza — qualunque fornitore serio la chiederà per prima.
Fase 3 — Pilota. All’inizio di un periodo, esegui il software su uno o due livelli (per esempio 9–10) e confronta con l’orario manuale. Definisci il criterio di successo per iscritto, prima del pilota: per esempio ’tempo di gestione dimezzato, conflitti a zero, gap di carico del docente dal 30 % al 15 %’. Se la soglia salta, il pilota termina — tieni questo diritto nel contratto.
Fase 4 — Roll-out. Se il pilota chiude bene, scala su tutti i livelli al periodo successivo. Formazione docente 1 settimana (per lo più visualizzazione mobile); formazione del dirigente più impegnativa — deve capire come vincoli e preferenze si traducono nel software.
Rischi — cosa può andare storto
- Regole pedagogiche mancanti o errate. Il software ottimizza le regole che gli dai; una regola tacita come ’niente matematica dopo educazione fisica’ non sarà rispettata se non entra nei dati. Nel pilota, rivedi le regole con i docenti e aggiungi quelle implicite.
- Resistenza dei docenti. ‘Non voglio che il software mi imponga gli orari’ è frequente, soprattutto fra docenti esperti. Nel pilota rivedi i risultati con loro; il software deve mostrare in modo trasparente la regola applicata e perché si è scelta quell’ora.
- Cambi curriculari/normativi. Quando il ministero aggiorna ore settimanali o curriculum, la velocità di aggiornamento del fornitore è critica. Garanzia di aggiornamento normativo nel contratto.
- Dipendenza dal singolo fornitore. Software che salva la configurazione di corsi, docenti, classi e storico orari in formato proprietario rende difficile cambiare in futuro. Clausola: ‘Possiamo esportare i nostri dati in formati standard aperti (CSV, JSON o simile) in qualsiasi momento, su richiesta.’
Lezione collegata (sarà collegata alla pubblicazione): ‘Una scuola privata di medie dimensioni ha abbandonato il software di timetabling al mese 9 — cosa è stato trascurato.’
Sguardo tecnico al metodo di soluzione
Questa sezione raccoglie ciò che serve quando parli con un team software o un consulente. Non è ciò che il dirigente vede sullo schermo — è il motore dietro la tenda.
Approcci principali per timetabling:
| Approccio | Scala tipica | Tempo di soluzione | Garantisce l’ottimo? |
|---|---|---|---|
| Manuale iterativo | 30–100 corsi | Giorni | No (i conflitti possono restare) |
| Constraint Programming (CP) | 100–1.000 corsi | 1–30 minuti | Sì (garanzia zero conflitti) |
| MIP | 50–300 corsi | 5–60 minuti | Sì (con tempo sufficiente) |
| Metaeuristiche (tabu, GA) | 300–2.000 corsi | 1–15 minuti | No (quasi ottimo) |
| Ibrido (CP + LNS) | 500+ corsi | 5–30 minuti | Praticamente quasi ottimo |
Regola pratica: sotto i 100 corsi basta un solver CP puro. Con 300+ corsi, scala universitaria o multi-campus, si preferisce CP ibrido + metaeuristiche.
La scelta della funzione obiettivo cambia la forma della soluzione:
- Numero di conflitti (vincolo duro): ‘Deve essere zero’ — base non negoziabile
- Somma dei punteggi di preferenza del docente: ‘Massimizzare la soddisfazione’ — adatto a scuole che puntano alla stabilità annuale
- Qualità del flusso pedagogico: ‘Migliori condizioni di apprendimento’ — adatto a scuole orientate alla qualità
- Bilanciamento uso aule/risorse: ‘Efficienza del capitale’ — adatto a scuole con risorse limitate
In gran parte dei deployment reali, zero conflitti è il vincolo duro; gli altri tre sono ottimizzati come combinazione pesata.
Riferimenti accademici
Elencati nel blocco sources di questa pagina. Il timetabling è una delle aree di applicazione più attive della programmazione a vincoli dagli anni ‘60; la conferenza PATAT pubblica set di benchmark comparativi ogni due anni che consentono il confronto tra motori di fornitori e ricercatori.
Fonti
- Schaerf, A. (1999). A survey of automated timetabling. Artificial Intelligence Review, vol. 13 — rassegna classica del campo.
- Pillay, N. (2014). A survey of school timetabling research. Annals of Operations Research, vol. 218 — rassegna moderna del timetabling scolastico.
- Burke, E. K. e Petrovic, S. (2002). Recent research directions in automated timetabling. European Journal of Operational Research, vol. 140 — articolo fondazionale sul timetabling universitario.
- INFORMS Interfaces — casi studio di applicazioni di timetabling in istruzione. informs.org/Publications/Interfaces
Glossario
- Orario delle Lezioni
- Il problema di assegnare i corsi a docenti, classi, aule e orari in scuole o università senza conflitti.
- Programmazione a Vincoli
- Paradigma di ottimizzazione centrato sul trovare una soluzione che soddisfi un insieme di vincoli — particolarmente forte per scheduling e assegnazione.
- MIP
- Modello di ottimizzazione in cui alcune variabili decisionali devono essere numeri interi (es. numero di camion, numero di turni).