-
Notifications
You must be signed in to change notification settings - Fork 346
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Job priority #246
Comments
Is it possible to force the algorithm to assign all jobs? |
No, not if it means breaking some of the constraints you described in input. If you are willing to break some constraints to include more jobs, it might be an indication that your constraints are too tight in the first place. This ticket is about providing a way to influence what jobs will be unassigned in a situation where not all jobs can be done. |
The sketch for the API addition is simply to add an optional
|
On second though, the problem of a job with priority 10 getting unassigned because we favor 11 priority-1 jobs instead can be leveraged by allowing 0-priority jobs. Then those jobs will have no impact on priority sum but it does not mean we won't consider including them at all. Indeed the multi-level objective will tend to favour solutions with less unassigned jobs (at equal priority sum). So I'm thinking of defining valid |
The current optimization objective has two levels:
So whenever the number of unassigned jobs is the same for two different solutions, we'll consider the one that has the lowest total travel time.
As a result, we'll tend to return as unassigned the jobs that are "more expensive" (e.g. furthest or with higher amount). This is clearly not ideal in settings where jobs can have different levels of priority. Think "this job is due today", or "it would be nice if this jobs fits in but no big deal if not".
What we could do is add a new
priority
key for jobs in input, and then change the first objective above to minimize the sum of priority scores over unassigned jobs. The current behaviour would match the situation where allpriority
values are equal, which we could also use as default.The text was updated successfully, but these errors were encountered: