Creazione di una matrice di turni con paletti.
Ciao, mi trovo a dover pianificare dei turni nel lungo periodo.
Immagino che la questione richieda l’uso di qualche tool che va a combinare per quanto possibile le cose rispettando un certo numero di paletti.
Le persone che possono coprire questi turni sono n
Ogni turno necessita contemporaneamente di due persone
Le persone hanno le loro preferenze
x persone preferiscono fare due turni consecutivi in modo da avere poi almeno 8 turni liberi. Inoltre queste persone vogliono cominciare sempre nel turno dispari (primo e secondo e poi nono e decimo, nessuno vuole o puo' fare secondo e terzo o quarto e quinto e cosi' via)
y persone preferiscono fare il singolo turno ed avranno almeno 4 turni liberi prima del successivo.
Ovviamente x+y=n
Infine preso un ciclo di 2n turni tutte le persone devono coprire almeno 4 turni.
Credo sia dimostrabile, ma non sono in grado, che se n=11 x=5 e y=6 la cosa non abbia soluzione.
Se qualcuno ha qualche idea o voglia di cimentarsi io ci ho perso qualche notte a incastrare le cose e, pur avendo qualche nozione di informatica, non saprei formalizzare un algoritmo in grado di far calcolare e pianificare al PC.
Mi chiedo le grandi aziende come gestiscano i turni o le scuole gli incastri fra i vari professori nell'orario scolastico.
Ringrazio chiunque sappia darmi qalche indicazione.
Saluti.
Immagino che la questione richieda l’uso di qualche tool che va a combinare per quanto possibile le cose rispettando un certo numero di paletti.
Le persone che possono coprire questi turni sono n
Ogni turno necessita contemporaneamente di due persone
Le persone hanno le loro preferenze
x persone preferiscono fare due turni consecutivi in modo da avere poi almeno 8 turni liberi. Inoltre queste persone vogliono cominciare sempre nel turno dispari (primo e secondo e poi nono e decimo, nessuno vuole o puo' fare secondo e terzo o quarto e quinto e cosi' via)
y persone preferiscono fare il singolo turno ed avranno almeno 4 turni liberi prima del successivo.
Ovviamente x+y=n
Infine preso un ciclo di 2n turni tutte le persone devono coprire almeno 4 turni.
Credo sia dimostrabile, ma non sono in grado, che se n=11 x=5 e y=6 la cosa non abbia soluzione.
Se qualcuno ha qualche idea o voglia di cimentarsi io ci ho perso qualche notte a incastrare le cose e, pur avendo qualche nozione di informatica, non saprei formalizzare un algoritmo in grado di far calcolare e pianificare al PC.
Mi chiedo le grandi aziende come gestiscano i turni o le scuole gli incastri fra i vari professori nell'orario scolastico.
Ringrazio chiunque sappia darmi qalche indicazione.
Saluti.
Risposte
Mi è capitato di fare un programma per gli orari scolastici... Non è una cosa semplicissima ( se si intende "parametrizzare" tutti gli eventi possibili).
Secondo me, devi iniziare a schematizzare tutti i vari eventi (crea una sorta di lista), per poi assegnare una priorità ad ognuno di essi.
In questo modo vai a collocare prima gli eventi principali, e scendendo verso il basso, tutti gli altri.
Secondo me, devi iniziare a schematizzare tutti i vari eventi (crea una sorta di lista), per poi assegnare una priorità ad ognuno di essi.
In questo modo vai a collocare prima gli eventi principali, e scendendo verso il basso, tutti gli altri.