gestire le eccezioni

Started by steej, September 04, 2010, 12:19:29 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

steej

ciao a tutti
sto usando da poco questo programma e mi sto cimentando nell'impresa per una scuola abbastanza grossa.

Qualcuno sa come si possono gestire facilmente le eccezioni? ad esempio:
voglio che tuti gli insegnanti abbiano massimo 1 ora buco a settimana, ma pochi insegnanti (3 o 4) ne possono avere molte di più.

Devo per forza inserire a mano il vincolo per ogni insegnante?

grazie

mbarsan

Si. In questo caso devi inserire tutti i vincoli per i singoli insegnanti.  :)

Diverso sarebbe stato il caso opposto, in cui avessi voluto (p. es.) tre ore buche al massimo per tutti e, solo per alcuni, massimo una o due ore buche.

In quet'ultimo caso avresti potuto impostare il vincolo per tutti gli insegnanti (max 3 ore buche) e aggiungere alcuni vincoli specifici per alcuni (max 1 o 2 ore buche).

Perché? FET tratta tutti i vincoli in AND tra loro: una soluzione è accettata se rispetta tutti i vincoli contemporaneamente.

Nel secondo caso prospettato, tutti gli insegnanti avranno un massimo di 3 ore buche. La cosa si concilia col vincolo per alcuni che ne avanno max una o due. Per questi insegnanti la soluzione di un'orario con una o due ore buche rispetta entrambi i vincoli.

Nel primo caso, invece, il vincolo di avere al massimo 1 ora buca per tutti gli insegnanti, comporterà che ne abbiano al massimo una anche quelli per i quali, eventualmene, impostiamo un vincolo con max 3 ore buche. Dovendo rispetare entrambi i vincoli, FET consentirà al massimo un'ora buca a tutti.

Spero di essere stato chiaro. Altrimenti proverò con altri esempi.

Buon lavoro!  ;)

steej

chiarissimo, anche se mi hai dato una brutta notizia :(

grazie ;)

Valdo

Ho avuto anche io questo problema e in effetti ho fatto a mano, circa 50 insegnanti, sia ore buche che giorni liberi.
Ci si mette un po' ma si fa, però una idea potrebbe essere quella di chiedere all'autore di inserire un comando che genera per tutti gli insegnanti singolarmente un vincolo. Così si dovrebbero cambiare solo i parametri magari di una minoranza.

steej

concordo  ;)
anche se rimane comunque un ottimo programma :)

utismetis

Ciao,
anch'io ho inserito uno per uno max ore buche settimanali, ore buche al giorno.. per 86 insegnanti. E' un po' lungo, ma, salvati i dati, puoi riutilizzarli l'anno prossimo!

Liviu Lalescu

Lei po usare un trucco: aggiungere per gli eccezioni insegnanti dei attivita fictive. Ogni a durata 1 e ha min giorni nelle attivita pesso = 0% e consecutive se nello stesso giorno = false. Poi aggiungere max ore buche per settimana per tutti gli insegnanti = 2 (o altra valore).

You can use a trick, add for each exception teacher some dummy activities. Each has duration 1 and has min days between activities weight = 0% and has consecutive if same day=false. Then, add max gaps per day for all teachers = 2 (or other value).

Valdo

Caro Liviu
rilancio:  una idea potrebbe essere quella di chiedere all'autore di inserire un comando che genera per tutti gli insegnanti immessi singolarmente un vincolo.


mbarsan

#8
 :o

Liviu suggerisce un trucco interessante: inserire il solito vincolo di massimo una ora buca per tutti gli insegnanti.

Per quei pochi insegnanti che possono avere due ore buche, aggiungi una attività fittizia senza studenti.
Questa, se viene piazzata da FET tra due attività reali, sarà da considerare un'ora buca.

Per quei pochi insegnanti che possono avere tre ore buche, si aggiunge una attività fittizia senza studenti della durata di due ore, due subattività, numero di giorni tra subattività con peso 0% e Consecutive se stesso giorno = Falso (ovvero no). Queste due ore, se capitano tra due attività reali, saranno da considerare ore buche.

E' un suggerimento che permette di risparmiare l'inserimento di molti vincoli... Spero solo che ti sia arrivato in tempo!
  :)

Ciao Valdo, ora devo scappare in ufficio, ma stasera dirò a Liviu (che è l'autore di FET) la tua idea (se non l'ha già capita da solo, come riesce a fare quasi sempre anche leggendo i post in italiano!).

Liviu Lalescu

QuoteCaro Liviu
rilancio:  una idea potrebbe essere quella di chiedere all'autore di inserire un comando che genera per tutti gli insegnanti immessi singolarmente un vincolo.


Bene, io va inserire questo nel suggerimenti (file TODO).

Valdo

Quote
QuoteCaro Liviu
rilancio:  una idea potrebbe essere quella di chiedere all'autore di inserire un comando che genera per tutti gli insegnanti immessi singolarmente un vincolo.


Bene, io va inserire questo nel suggerimenti (file TODO).


Grazie  ;)

steej

ottimo il suggerimento di Liviu  :D thank you  ;)
non devo nemmeno creare una classe fittizia, giusto?

per l'orario provvisorio non faccio in tempo ma per quello definitivo credo di si  :)

Liviu Lalescu

#12
Quoteottimo il suggerimento di Liviu  :D thank you  ;)
non devo nemmeno creare una classe fittizia, giusto?

per l'orario provvisorio non faccio in tempo ma per quello definitivo credo di si  :)

Giusto.

Attenti ai attivita fittizi: ogni subattivita deve avere durazione 1, min giorni pesso = 0%, consecutive se nello stesso giorno = falsa. Se lei a piu di 10 subattivita, lei po aggiungere piu attivita (per esempio, 16 ore buche permessi per un insegnante, 2 permessi per tutti gli insegnanti, poi aggiungi un'attivita divisa in 10 e un'altra divisa in 4 per questo insegnante).

Edited to add:
C'e possibile una problema: se lei usa "distribuisci le subattivita uniformemente nella settimana", FET va aggiungere/modifiche le min giorni vincoli.

Allora, io propone di aggiungere 14 attivita, ogni una divisa in solo 1 subattivita (equivalente - non divisa) con durata 1 ora - e piu sicuro. Senza pensare a min giorni o consecutivo se nella stesso giorno o distribuisci subattivita opzione.

steej