Quali sono alcuni algoritmi che possono aiutare con la pianificazione dei tempi di prenotazione?

1

Ecco il succo del problema: ci sono più fornitori di servizi che hanno ciascuno i propri programmi di disponibilità. Ci sono più clienti che cercano i loro servizi. I clienti devono essere in grado di prenotare un orario di prenotazione per il servizio, ma dovrebbero essere in grado di prenotare solo i tempi in cui alcuni provider di servizi sono disponibili (ovvero non si preoccupano davvero di quale particolare provider ottengono finchè ottengono un fornitore). Sfortunatamente, i fornitori di servizi possono cambiare gli orari tra il momento in cui il cliente si registra e quando viene fornito il servizio, il che significa che anche con le salvaguardie di prenotazione esistenti potrebbero ancora finire troppe prenotazioni per un dato periodo.

Vorrei sapere quale lavoro è già stato fatto su questo tipo di problema e inoltre:

  1. I fornitori dovrebbero essere effettivamente "assegnati" ai clienti in modo persistente anche se i provider sono intercambiabili?
  2. In base alla risposta alla domanda precedente, in che modo è possibile determinare il "prossimo incarico" del fornitore in base all'ora corrente, agli orari di altri fornitori e alle prenotazioni programmate?

Ho riflettuto molto su questo problema, ma sono perplesso e ho lasciato soluzioni insoddisfacenti. Come qualcuno che non ha esperienza in CS, apprezzerei un po 'di intuizione e / o un modo migliore per pensare al problema.

    
posta tacos_tacos_tacos 17.08.2013 - 17:52
fonte

1 risposta

1

Non è necessario associare una prenotazione a un fornitore di servizi specifico. Sai già come capire se una fascia oraria è al completo, c'è lo stesso numero di prenotazioni dei fornitori di servizi programmate durante lo slot. Quindi, se sei completamente prenotato per uno slot e un provider non vuole più essere programmato durante lo slot, negherai la modifica del programma o cancellerai una delle prenotazioni.

Se ciò non è fattibile (nel qual caso non è davvero una "prenotazione", vero?), quindi devi solo ordinare i clienti prima con il primo orario di prenotazione, e scendere la lista.

    
risposta data 18.08.2013 - 02:01
fonte

Leggi altre domande sui tag