员工安排

Workforce Scheduling API 提供了两个使用 SolveShiftGenerationSolveShiftScheduling 方法的求解器。班次生成求解器会创建一组班次,以便在给定时间范围内最大限度地覆盖员工需求。相比之下,轮班安排求解器会将特定员工分配到一组预定的班次。每个求解器都可以独立使用。具体而言,在班次调度求解器中分配给员工的班次可以由用户指定,也可以使用偏移生成求解器生成。

Shift 生成求解器

班次生成求解器会选择一组班次,以便最大限度地减少满足给定需求概况所需的员工总数。

求解器的输入是一个请求,用于描述偏移模板和员工需求。Shift 模式模板决定了求解器在创建偏移时必须遵循的规则。员工需求描述的是加班时间的员工人数,最短为 1 分钟。

求解器的输出是一个响应,其中包含一系列班次以及每班次所需的员工人数。为方便起见,每当无法涵盖所有需求时,系统也会向用户提供需求覆盖范围违规行为列表。

特性

如需深入了解求解器的各项功能,请参阅 API 文档。下面总结了该分析器最受欢迎的功能。

Shift 模板

轮班模板主要确定任意指定日期轮班的时长和可能的开始时间。此外,可以指定每个轮班模板每天的最大员工人数以及每周的休息天数。

Shift 模板还可以指定事件模板列表,以表示预定的中断,例如休息或员工培训。事件模板可确定开始时间(相对于偏移开始时间)和事件的时长。

员工需求波动

对员工的需求可能会随着时间的推移而波动。具体而言,员工需求可被指定为短至 5 分钟或与计划的时间范围一样长的时间间隔。没有指定需求的时间段相当于需求为零的员工。

轮班安排求解器

轮班安排求解器可优化员工轮班的分配,以便满足时间安排约束条件(或最大限度地减少违规行为),并将员工偏好考虑在内。

求解器的输入是一个“请求”,其中会说明员工、班次、覆盖范围要求和预算要求。对于每位员工,您可以指定角色、技能和时间安排限制,以定义每位员工的有效日程安排。员工班次决定了员工可以工作的时间和地点,而覆盖率要求决定了一段时间内对不同员工角色(和技能)的需求。

求解器的输出是包含员工-轮班-角色分配的响应,汇总了每位员工的班次和分配给他们的角色(按班次)。

特性

如需深入了解求解器的各项功能,请参阅 API 文档。下面总结了该分析器最受欢迎的功能。

员工调度限制条件

指定特定员工的时间安排应满足的规则或限制。具体来说,它支持:

  • 最短 / 最长工作时间
  • 最短 / 最长连续天数
  • 调整次数下限 / 上限
  • 轮班之间的最短休息时间
  • 资源限制条件
  • 在特定轮班期间让班次被要求上班(或不上班)

员工偏好设置

指定员工在特定轮班中拥有的数字偏好设置,并将员工名单中的偏好总和最大化。

保修范围要求

指定在特定角色工作多个时间范围内工作的员工数。覆盖范围要求可以与指定的轮班列表保持一致,但也可以为所需工作员工数量定义更精细的时间范围。

预算要求

为员工指定按固定小时费率和加班小时费率,并结合全局预算限制的合同。预算可以是员工费用的最高值,也可以表明需要最大限度地降低此类费用。

限制条件优先级

每个员工时间安排限制条件、覆盖率要求和预算要求都被赋予了优先级(强制、高、中或低)。求解器必须满足所有具有强制性优先级的约束条件。求解器可能会违反具有任何其他优先级的约束条件,但会根据优先级顺序尽量减少这些违规行为。最大限度减少每个优先级中的约束违规情况后,求解器会考虑员工偏好。

如何入手

如需获取对 Workforce Scheduling API 的访问权限,请按照可信测试员说明进行操作,然后按照setup指南获取 API 密钥。在获得 API 访问权限后,请参阅 API 示例开始使用。如果您有任何疑问,请发送电子邮件至 or-workforce-scheduling+contact@google.com