Costruire un orario scolastico
Wikibooks, manuali e libri di testo liberi.
L'orario scolastico è una tabella che coordina questi quattro elementi:
- studenti
- insegnanti
- aule e locali destinati all’insegnamento
- unità di tempo (in generale, dette “ore”)
Gli orari scolastici solitamente hanno un ciclo settimanale, e costituiscono un problema organizzativo di capitale complessità nelle scuole medie e superiori. Le scuole primarie ed elementari solitamente sono organizzate in maniera più semplice.
Gli orari scolastici sono strutturalmente diversi dagli orari delle lezioni universitarie. La differenza principale è il fatto che nelle scuole superiori gli studenti devono essere tenuti occupati e controllati da un insegnante in ogni ora del giorno. Inoltre, gli insegnanti delle scuole superiori sono gravati da carichi di insegnamento molto più elevati che non nel caso delle università. Di conseguenza, la compilazione dell’orario scolastico è un problema estremamente complesso dal punto di vista computazionale, e ricade nella classe dei problemi detti Problemi di Soddisfazione di Vincoli o CSP.
Indice |
[modifica] Tipi di orario scolastico
Le scuole primarie ed elementari hanno necessità di un orario scolastico, ma si solito il problema è così semplice che l’orario può essere costruito manualmente o mediante un orari delle lezioni universitarie. La differenza principale è il fatto che nelle scuole superiori gli studenti devono essere tenuti occupati e controllati da un insegnante in ogni ora del giorno. Inoltre, gli insegnanti delle scuole superiori sono gravati da carichi di insegnamento molto più elevati che non nel caso delle università. Di conseguenza, la compilazione dell’orario scolastico è un problema estremamente complesso dal punto di vista computazionale, e ricade nella classe dei problemi detti Problemi di Soddisfazione di Vincoli o CSP.
[modifica] Tipi di orario scolastico
Le scuole primarie ed elementari hanno necessità di un orario scolastico, ma si solito il problema è così semplice che l’orario può essere costruito manualmente o mediante un Foglio elettronico. Ciò accade pressoché ovunque nel mondo.
Per quanto riguarda le scuole di ordine superiore la situazione è diversa. In alcuni paesi, gli studenti delle scuole superiori non dispongono di alcuna possibilità di scelta nelle materie di insegnamento, e pochi insegnanti sono incaricati di un gran numero di ore di lezioni settimanali nella stessa classe. Questo semplifica la redazione degli orari, perché gli studenti rimangono nella stessa aula per tutto il giorno, mentre pochi insegnanti vi si alternano a rotazione.
In altri paesi, come gli Stati Uniti d'America, la programmazione scolastica si basa su cicli di lezioni con ampie opzioni di scelta ammesse per gli studenti. Anche in questo caso la redazione degli orari è più semplice: gli insegnanti si coordinano da sé con l’unico obbligo di non sovrapporre gli orari dei corsi fondamentali e obbligatori. Va notato che questo sistema è antieconomico dal punto di vista dell’allocazione delle risorse edilizie, perché per organizzarsi in questo modo le scuole necessitano di un numero sovrabbondante di aule, destinate a essere sottoutilizzate.
In altri paesi, tra cui l’Italia e la maggior parte dei paesi europei, gli orari scolastici possono essere estremamente difficile da costruire. Molti insegnanti devono alternarsi nelle classi, dove svolgono solo poche ore di insegnamento settimanale. Molte lezioni tecniche impegnano laboratori, spesso utilizzati per quasi tutte le ore settimanali disponibili. L’obbligo delle lezioni di Educazione Fisica richiede l’uso alternato delle palestre, non sempre sovrabbondanti, e infine l’elevato livello di tutela sindacale degli insegnanti richiede che venga fatto ogni sforzo per accogliere le loro richieste fondate su motivazioni soggettive. Il processo di costruzione dell’orario può richiedere anche varie settimane di lavoro, e sebbene l’assistenza del computer sia assolutamente indispensabile, solo pochi programmi software sono in grado di risolvere automaticamente il problema.
[modifica] Problemi tipici e vincoli
Il compito di costruire un orario scolastico comporta tipicamente i seguenti problemi, ovvero la risoluzione di un grande numero di condizioni, che tecnicamente sono dette vincoli. Questo elenco enumera i vincoli più tipici, ma non è esaustivo:
- Buona formazione dell'orario. Vi è un calendario settimanale che prevede un massimo di ore (ad esempio 30: 5 al giorno per 6 giorni), e le classi devono avere le attività assegnate in modo che gli studenti non siano mai lasciati inattivi e senza custodia. Ad esempio, se una data classe ha solo 27 ore contro le 30 delle altre, vi saranno tre giorni alla settimana in cui essa uscirà un’ora prima, e uno di questi tre giorni dovrà essere il sabato; non è assolutamente ammissibile che la classe sia lasciata senza attività in un’ora intermedia. Nell'immagine di esempio la classe rappresentata ha un orario settimanale di 34 ore, contro le 35 di altre classi nella stessa scuola. Per questa ragione, la classe deve essere liberata un'ora prima della fine delle lezioni in un giorno qualsiasi della settimana. Non è ammissibile che la classe sia lasciata senza attività in un'ora intermedia.
- Gestione dei plessi scolastici. La scuola può avere due o più Plessi (Fabbricati), e le Classi si trovano nell'uno o nell'altro Plesso. L'orario viene generato in modo da evitare (se possibile) la transizione degli insegnanti da un Plesso a un altro durante la stessa giornata, oppure inserendo le ore buche necessarie per trasferirsi da un plesso a un altro.
- Gestione dei locali esterni alle aule. Per alcune lezioni gli studenti lasciano la propria aula e si recano in un laboratorio (fisica, chimica, elettronica, lingue), o in palestra. L’orario deve essere redatto in modo che non vi siano più classi contemporaneamente in un laboratorio che ne può accogliere solo una. Nell'immagine di esempio, abbiamo una scuola che dispone di una palestra per le lezioni di educazione fisica nella quale possono essere accolte anche tre classi contemporaneamente. L'orario è generato in modo che non vi siano mai quattro lezioni di educazione fisica contemporanee.
- Assegnazione bilanciata delle lezioni. Vi è la necessità di diffondere le lezioni dello stesso insegnante in tutto il ciclo settimanale di insegnamento, in maniera che le lezioni siano quanto più possibile distanziate tra loro nel tempo. Ad esempio, non sarebbe ammissibile un orario in cui cinque ore di italiano fossero assegnate tutte al lunedì: occorre dividerle in modo che l’insegnante di italiano veda la sua classe in quattro o cinque giorni.
- Gestione del raggruppamento delle ore. Se un insegnante ad esempio insegna per 6 ore alla settimana in una certa classe, teoricamente queste sei ore potrebbero essere distribuite con questi raggruppamenti:
- Tutte 6 in un solo giorno
- 5+1, 4+2, 4+1+1
- 3+3,
- 3+2+1, 2+2+2, 2+2+1+1, 2+1+1+1+1
- Nella realtà delle esigenze di insegnamento, questi modi di raggruppare le ore sarebbero soggetti a valutazioni molto diverse da parte degli insegnanti:
- Tutte 6 in un solo giorno: nessuno vorrebbe mai una cosa simile nella realtà
- 5+1, 4+2: egualmente, nessuno lo vorrebbe mai
- 3+3: potrebbe essere una configurazione buona per una materia tecnica o professionale, con molte ore di esercitazione in laboratorio. Altrimenti, sarebbe inaccettabile.
- 3+2+1, 2+2+2, 2+2+1+1, 2+1+1+1+1, 6 volte una sola ora: questi sono i casi richiesti per le materie che richiedono un elevato grado di attenzione da parte degli studenti come degli insegnanti. Nell'immagine di esempio, il primo insegnante insegna una materia tecnica impegnando le sue classi per molte ore settimanali, e richiede che le ore siano raggruppate almeno due a due in modo da poter svolgere le esercitazioni avendo a disposizione il tempo necessario. Il secondo insegnante insegna invece matematica, e data la difficoltà e l'alto grado di attenzione richiesto da questa materia, pretende che le lezioni siano distribuite per ogni classe a una a una per ogni giorno della settimana.
- Gestione delle lezioni tenute da due p più insegnanti. In molte scuole italiane le lezioni delle materie scientifiche o tecnologiche sono tenute dall'insegnante affiancato da un assistente alle attività di laboratrio, detto Insegnante Tecnico-Pratico (I.T.P.). Le lezioni di lingue straniere spesso prevedono alcune ore settimanali in cui l'insegnante è affiancato da un conversatore di madrelingua. Infine, vi sono corsi sperimentali nei quali è previsto l'affiancamento di due insegnanti per ragioni didattiche. In tutti questi casi la redazione dell'orario deve prevedere di gestire due insegnanti in una stessa ora e in una stessa classe. Nell'immagine di esempio, un laboratorio viene sempre impegnato da due insegnanti. Il secondo dei due è l'assistente (I.T.P.) del primo.
- Lezioni in abbinamento. Talvolta è richiesta la simultaneità di certe materie in certe classi, perché si fanno sperimentazioni o attività comuni.
- I singoli insegnanti hanno periodi in cui sono occupati in altre scuole oppure con altri compiti, e pertanto non possono insegnare in tali periodi.
- Vi sono insegnanti part-time che sono disponibili solo in determinati giorni e/ determinate ore.
- Vi sono preferenze soggettive per le prime e/o le ultime ore della giornata.
- Vi sono talvolta esigenze del tipo del car share: due o più colleghi abitano lontano dalla scuola e vicini tra loro, e poiché viaggiano con lo stesso automezzo privato richiedono la redazione di un orario quasi completamente sovrapposto.
- Infine, vi è il problema delle ore cosiddette “buche”, ossia le ore di intervallo in cui gli insegnanti non sono occupati in nessuna attività. Queste ore devono essere ridotte al minimo, perché costituiscono un grave incomodo. Ma la loro riduzione complica di molto il problema computazionale.
[modifica] Orario scolastico e informatica
A prima vista si potrebbe credere che il problema dell’orario scolastico sia ormai risolubile banalmente con tecniche informatiche: questo non è vero, tanto che le uniche applicazioni informatiche efficienti sono quelle che affrontano il problema con tecniche di intelligenza artificiale. L’approccio con gli strumenti classici della programmazione non è in grado di risolvere il problema dell’orario scolastico, e non lo sarà mai, perché l’esplosione quantitativa dei casi da analizzare rende impossibile la soluzione di ogni caso del problema in tempi ragionevolmente utili. Il problema dell'orario scolastico appartiene alla classe dei Problemi di Soddisfazione di Vincoli (Constraint Satisfaction Problem) o CSP, riguardo alla quale esistono teorizzazioni matematiche che affrontano la questione in maniera quanto più possibile generalizzata. Vedi la voce: Problema di soddisfacimento di vincoli.
Per esemplificare con semplicità la natura del problema, supponiamo di avere una scuola con 40 classi, e con 30 ore settimanali ciascuna. Un programma banale per generare l’orario scolastico attraverso una tecnica combinatoria dovrebbe esaminare ogni disposizione di 30 ore su 40 classi, agendo così:
- creare un ‘cartellino’ virtuale per ogni ora di lezione – in tutto 40 x 30 = 1200 cartellini
- assegnare a ogni ‘cartellino’ una data ora della settimana, cominciando dalla prima ora del lunedì
- esaminare se vi sono classi o insegnati assegnati due volte nella stessa ora: se sì, passare alla disposizione successiva (questa è inutilizzabile)
- altrimenti, calcolare gli errori totali rispetto ai requisiti, e conservare la disposizione che presenta il minimo errore.
- se l’errore totale è zero, fermarsi
In questa situazione però le disposizioni da esaminare sarebbero nk, ossia 3040 = 1,2157 x 1059, ovvero un numero con 59 zeri! Se anche la soluzione si trovasse dopo avere esaminato lo 0,1 per mille delle disposizioni possibili, il computer dovrebbe ripetere il ciclo per 1,2157 x 1055 volte; e se il ciclo fosse ripetibile 100.000 volte in un secondo, il tempo necessario sarebbe di 1,2157 x 1053 secondi, ovvero circa 1038 anni.
Ecco perché la soluzione a questa specie di problemi si trova soltanto attraverso tecniche di intelligenza artificiale, cioè attraverso metodi di calcolo che emulano la capacità di sintesi della mente umana.
[modifica] Libri correlati
[modifica] Collegamenti esterni
- Google list of scheduling software
- PATAT Conferences The International Series of Conferences on the Practice and Theory of Automated Timetabling
- Another directory of software products
- International Timetabling Competition 2007