FET Forum

FET Support (International) => Italian / Italiano => Topic started by: framan82 on September 23, 2025, 08:01:50 AM

Title: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: framan82 on September 23, 2025, 08:01:50 AM
Buongiorno,
sto utilizzando da qualche giorno questo meraviglioso programma, e sono riuscito a chiudere l'orario con 793 attività e diversi vincoli importanti.
Non riesco, però, a capire come poter ottenere questo risultato: vorrei poter specificare per una determinata classe, il numero di ore giornaliere per tutti i giorni della settimana.

Esempio: la classe 4D ha un monte ore totale di 31, che dovrebbe essere diviso in 5 giorni da 6+6+6+7+6; i giorni non devono corrispondere esattamente a Lun+Mar+Mer+Gio+Ven, FET può decidere di cambiarne la posizione liberamente, l'importante è mantenere il totale di ore giornaliere specificato per i singoli giorni. Quindi la distribuzione può essere anche 6+6+6+6+7, o 7+6+6+6+6, o qualsiasi altra combinazione possibile.

Le altre classi, hanno combinazioni diverse; in totale le combinazioni sono 5:
5+5+6+6+6 (28h totali), 6+6+6+6+5 (29h), 6+6+6+6+7 (31h), 6+6+6+7+7 (32h), 6+6+7+7+7 (33h).

Come è possibile ottenere questa distribuzione?
Ho cercato in lungo e in largo, ma nessun vincolo sembra fare al caso mio: quello sulle massime ore giornaliere per intervallo, permette di specificare solo il limite massimo e fa bloccare la generazione dell'orario istantaneamente.

I vincoli fondamentali attualmente presenti nell'orario sono i seguenti:


Poi c'è questo vincolo fondamentale, applicato a ciascun insegnante (e non come regola generale a tutti gli insegnanti) perché alcuni insegnanti possono anche non rispettarlo:



La soluzione ideale (anche a livello di interfaccia) sarebbe una tabella come quella degli intervalli, con le X per selezionare le ore da assegnare a ciascun giorno della settimana, da applicare a ciascuna classe. FET potrebbe rispettare l'ordine esatto oppure no, l'importante è mantenere i totali delle ore giornaliere, a prescindere che poi lo inserisca al Lunedì o al Venerdì.

Grazie in anticipo per qualsiasi suggerimento possiate fornirmi.

P.S.: ho notato che l'ordine dei vincoli influisce sulla generazione o meno dell'orario; è possibile? Ho letto che FET si basa solo sui pesi percentuali, ma effettivamente se sposto un vincolo in cima alla lista (tramite i pulsanti "Su" e "Giù") sembra funzionare meglio.


Francesco
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: Liviu Lalescu on September 23, 2025, 08:28:27 AM
Buongiorno, e grazie per i complimenti!

The order of the constraints does not bring better timetables, but you can obtain different generations for a different order, even if the starting seed is the same.

Why can't you use students set min hours daily?
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: framan82 on September 23, 2025, 09:19:56 AM
Buongiorno Liviu,
"students set min hours daily" permette di impostare il valore per tutti i giorni allo stesso modo, a me servirebbe impostare valori diversi per ciascun giorno. E in ogni caso si tratterebbe solamente di valori minimini, a me servirebbero valori esatti.
Non voglio che la classe 4D faccia "almeno" 6 ore un giorno, ma che faccia "esattamente" 6 ore un giorno (non importa quale giorno della settimana).
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: Liviu Lalescu on September 23, 2025, 09:23:24 AM
Buongiorno, Francesco!

But can't you add min 5 and max 6?
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: framan82 on September 23, 2025, 09:46:12 AM
Ok, ho realizzato solo ora che le combinazioni di ore giornaliere presentano solo 2 coppie di abbinamenti: 6n+7n e 5n+6n. Quindi impostando per la classe con combinazione 5n+6n il valore Min 5 e Max 6 FET sarà matematicamente costretto ad utilizzare solo combinazioni di 5 e 6 per raggiungere il totale di ore giornaliere.
Il problema, quindi, sarebbe irrisolvibile se le combinazioni fossero formate da 3 o più numeri (es: 5+5+6+7+7).

Provo subito ad impostare min e max e ti aggiorno!

Grazie
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: Liviu Lalescu on September 23, 2025, 09:50:57 AM
Prego, Francesco! :)

Yes, unfortunately in the 5,5,6,7,7 case you can only add min 5 and max 7. But might be satisfactory.
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: framan82 on September 23, 2025, 09:53:40 AM
Ho 31 classi, quindi devo creare 2 vincoli (uno MIN e l'altro MAX) per ciascuna classe, giusto?
Non c'è un modo per applicare un TAG alle classi che hanno lo stesso orario, e quindi creare i vincoli solo per quei tag?
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: Liviu Lalescu on September 23, 2025, 09:55:18 AM
No, you cannot tag. You need to use the two constraints for a students set. If you add for a year, it propagates to the contained groups and subgroups, and if you add for a group, it propagates to the contained subgroups.
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: framan82 on September 23, 2025, 10:27:53 AM
Ok, ci ha messo 10:00 minuti invece dei soliti 1:10, ma alla fine è riuscito a generare l'orario.
Me la sono cavata con molti meno vincoli, perche tutte le classi 1 e 2 avevano le stesse combinazioni, e cosi le classi 3-4-5. In tutto ho dovuto creare solo 10 vincoli.

Grazie mille per il supporto (un grandissimo valore aggiunto a questo meraviglioso progetto)!
Title: Re: Specificare i numeri di ore nei giorni della settimana per una classe
Post by: Liviu Lalescu on September 23, 2025, 03:27:53 PM
Prego, Francesco! Nice to meet you (in your picture)! :)