Live data from Hacker News

Employee Scheduling

developers.google.com

11–20 of 137 posts

Re: Employee Scheduling

#11
post #6

I see their documentation also covers routing vehicles across multiple deliveries, with time windows. Can someone who's tested this stuff out advise on how many deliveries it can handle at a time? The examples only list trivial problems, but that might just be to keep the examples short.

I can chime in. Googler here, who knows the OR team very well. They are solving EXTREMELY large problems for customers. I can't tell you who, and I can't tell what problems, but they are among the biggest OR problems you can imagine.

(No, I don't mean within Google, although they solve scheduling problems there as well.)

EDIT: There are articles:

https://cloud.google.com/press-releases/2020/0120/lufthansa

https://www.cnbc.com/2020/01/19/lufthansa-taps-googles-cloud...

Re: Employee Scheduling

#12
I would imagine that this tool would be helpful if you connect it with a social graph, i.e. self organizing Facebook groups which help each other take care of each other’s children during the Corona outbreak or schedule incident response teams in an organization,like:” who has to work together? Are there any hidden connections between employees?”

Re: Employee Scheduling

#13
post #8

Can someone chime in on how this compares with the software that takes part in the yearly planning competition, eg. FastDownward etc. What subset of PDDL is supported?

The CP-SAT solver would be used for combinatorial optimization problems. These solvers are very different than the ones you'd use for planning problems a la PDDL.

Re: Employee Scheduling

#14

I’m a bit uncertain about what Google OR-Tools is…it seems to be some sort of framework for solving optimization problems, but based on the example here I am curious how general such a tool can be, as normally I find that a “drop in” algorithms framework is generally quite difficult to make or use. Is anyone using this for something useful? Does it perform faster than a hand-rolled implementation tailored to the prob…

It depends on how good your hand-rolled implementation is.

Will it find the shortest path in a graph faster than your Dijkstra implementation? No, leave the simple problems to hand-rolled code. Can it run e.g. TSP faster than a dedicated TSP solver written by an expert? No, but it sure will beat what you or I can code up of TSP over a week. These things have great heuristics and can solve/approximate a very wide of variety of NP-hard problems much better than you could yourself.

I've used the CP solver to plan sports tournament schedules (make sure everybody gets equal time on the streamed field, make sure that special team that arrives with the late train doesn't have the first game, nobody has to play two games in a row, etc.). I made the mistake of using the Python frontend (which is much worse documented than the C++ API), but otherwise, it was a good experience. Constraint programming feels a bit odd at first, though.

Re: Employee Scheduling

#15
State of the art for employee scheduling seems to be column generation; see benchmarks here: http://www.schedulingbenchmarks.org/nurse.html

Here is an open-source column generation solver that currently achieves the best solutions on that benchmark: https://github.com/PetterS/monolith/tree/master/minimum/line...

Re: Employee Scheduling

#16
Are there any good projects that implement this in a user-friendly system that allows schedulers to choose from multiple options and make adjustments based day-to-day conditions?

Algorithms like this look cool but can end up being too rigid for many real-world scenarios. You can’t just take the output and force everyone to follow that schedule.

Re: Employee Scheduling

#17

Are there any good projects that implement this in a user-friendly system that allows schedulers to choose from multiple options and make adjustments based day-to-day conditions? Algorithms like this look cool but can end up being too rigid for many real-world scenarios. You can’t just take the output and force everyone to follow that schedule.

What kind of use cases do you have in mind?

Re: Employee Scheduling

#18
Really nice. OR is not my field, and when I must dabble, in the past, I always used MiniZinc constraint solving language (sometimes with Python bindings).

On the page above the linked page, on Google’s OR tools, there is mention that their tools won four gold medals in the MiniZinc completions.

Re: Employee Scheduling

#19
post #6

I see their documentation also covers routing vehicles across multiple deliveries, with time windows. Can someone who's tested this stuff out advise on how many deliveries it can handle at a time? The examples only list trivial problems, but that might just be to keep the examples short.

I can chime in. Googler here, who knows the OR team very well. They are solving EXTREMELY large problems for customers. I can't tell you who, and I can't tell what problems, but they are among the biggest OR problems you can imagine. (No, I don't mean within Google, although they solve scheduling problems there as well.) EDIT: There are articles: https://cloud.google.com/press-releases/2020/0120/lufthansa https://www…

I heard of some projects involved at air controllers?

Re: Employee Scheduling

#20
post #17

Are there any good projects that implement this in a user-friendly system that allows schedulers to choose from multiple options and make adjustments based day-to-day conditions? Algorithms like this look cool but can end up being too rigid for many real-world scenarios. You can’t just take the output and force everyone to follow that schedule.

What kind of use cases do you have in mind?

Most likely I am guessing he is thinking about the food service industry.
Post reply on HN