Esistono degli algoritmi per la pianificazione delle risorse dei corsi: insegnanti-classi?

4

Sto sviluppando un'applicazione per aiutare i dirigenti scolastici a dedicare gli insegnanti a corsi e corsi nelle ore settimanali (programmazione). Lo scenario è grosso modo simile a questo:

  1. L'utente inserisce l'elenco degli insegnanti e i loro tempi liberi nel sistema
  2. L'utente inserisce l'elenco dei corsi per questo semestre
  3. L'utente inserisce l'elenco delle classi disponibili nel sistema

Bene, fino a qui, non c'è un grosso problema. Solo semplici operazioni CRUD e niente di straordinario. Tuttavia, ora ciò che rende questo sistema utile è che l'applicazione dovrebbe automaticamente e in base a un algoritmo creare la pianificazione semestrale.

Penso che tu abbia avuto l'idea principale qui. Ad esempio, l'applicazione dovrebbe suggerire che l'insegnante A dovrebbe andare in classe 1 per la matematica, e allo stesso tempo l'insegnante B dovrebbe andare in classe 2 per la fisica. In questo modo tutte le lezioni saranno dedicate alle lezioni e gli orari degli insegnanti non si sovrapporranno l'un l'altro. Pezzo una torta per preside di scuola.

Tuttavia, non riesco a trovare un buon algoritmo per questa dedizione alle risorse. Voglio dire, mi sembra difficile.

La ricerca su Google ha portato a articoli di diversi siti Web, ma non mi aiutano e non mi aiutano. Ad esempio:

link o link )

C'è qualche algoritmo là fuori, o qualsiasi applicazione o motore che può aiutarmi qui? Questo requisito ha un nome conosciuto, come ad esempio motore di pianificazione temporale ?

Qualsiasi aiuto sarebbe apprezzato.

    
posta Saeed Neamati 04.12.2012 - 08:47
fonte

2 risposte

1

Ho visto una soluzione personalizzata per questo. Alcuni dei punti principali:

  • Esistono diversi approcci per organizzare la settimana, ad esempio l'ordine di avviare effettivamente gli eventi di "imballaggio" può variare. Gli approcci possono includere "Lunedì prima", "Prima gli AM", "Pianificazione di 2 giorni", "Pianificazione di 6 giorni", "Pianificazione A / B".

  • Le dimensioni della classe non sono assolute. È meglio avere una dimensione "ideale" più un minimo e un massimo.

  • Gli insegnanti lavorano in orari diversi. Alcuni sono a tempo parziale. Alcuni distretti contano le ore lavorate in un dato giorno come se avessero lavorato un giorno intero. Alcuni contano mezza giornata in questo modo e alcuni contano al quarto giorno. Quindi la soluzione tende ad essere specifica per il distretto.

  • È importante consentire e creare un po 'di flessibilità e "spazio di manovra". La pianificazione delle risorse troppo "strettamente" porta a problemi quando emergono le inevitabili "cose" come insegnanti malati, bambini malati, giorni di eventi meteorologici, ecc.

  • Gli studenti entrano e escono dal distretto durante l'anno. Per alcuni distretti che possono facilmente essere il 20% del loro corpo studentesco. Gli algoritmi di pianificazione devono anche tenere conto di questo fattore.

  • L'istruzione speciale ha tutta una serie di requisiti tra cui IEP, istruzioni da solo, ecc. Anche l'istruttore si sposta tra le scuole e quindi i tempi di percorrenza e di viaggio devono essere incorporati per questi servizi.

  • Ci sono diversi ruoli da considerare tra cui insegnanti, insegnanti, assistenti, traduttori ecc.

  • Le persone mangiano pranzo:)

  • Gli insegnanti hanno bisogno di tempo per la preparazione della lezione, le riunioni e le discussioni con i genitori.

  • È bene distinguere le attività di servizio diretto (in realtà vedendo gli studenti) rispetto alle attività indirette.

Al livello più alto, date le tue esigenze, immagino che un algoritmo per te sarebbe:

For each Course
    For each available Teacher
        For each available Classroom
           Select the first Classroom available and book the resource.
           Update the course and teachers availability.
        end Classrooms
    end Teachers
end Courses
    
risposta data 06.01.2013 - 16:52
fonte
0

Quale esperienza limitata ho avuto con la risoluzione dei vincoli del dominio finito è stata con Mozart / Oz. Esiste un tutorial relativamente buono come parte della documentazione standard: link

    
risposta data 07.12.2012 - 15:56
fonte

Leggi altre domande sui tag