第 16 章 红帽构建的 Quarkus 上的 OptaPlanner 构建:员工调度程序快速启动指南
员工调度程序快速启动应用程序为员工分配在组织的不同位置上转换的员工。例如,您可以使用应用程序在 nurses、保护职责跨多个位置转换或在工作程序之间的装配行之间分发转换。
最佳员工调度必须考虑多个变量。例如,在不同位置上转移可能需要不同的技能。另外,一些员工可能不适用于某些时间插槽,或者可能首选使用特定的时间插槽。此外,员工还可以拥有一个合同,限制员工在单一时间段内工作的小时数。
此入门应用程序的红帽构建的 OptaPlanner 规则使用硬和软限制。在优化过程中,Planner 引擎可能无法违反硬限制,例如,如果员工不可用(sick),或者员工无法在单一转换中处理两个点。Planner 引擎会尝试遵循软限制,如员工更喜欢不工作特定转换,但如果最佳解决方案需要它,则可以违反它们。
先决条件
- 已安装了 OpenJDK 11 或更高版本。红帽构建的 Open JDK 可通过红帽客户门户网站中的 Software Downloads 页面(需要登录)。
- Apache Maven 3.8 或更高版本已安装。Maven 位于 Apache Maven Project 网站。
- 提供了 IDE,如 IntelliJ IDEA、VSCode 或 Eclipse。
16.1. 下载并运行 OptaPlanner 员工调度程序
下载 OptaPlanner 员工调度程序快速启动存档,以 Quarkus 开发模式启动它,并在浏览器中查看应用程序。Quarkus 开发模式允许您在应用程序运行时进行更改和更新。
流程
进入红帽客户门户网站中的 Software Downloads 页面(需要登录),然后从下拉菜单中选择产品和版本:
- 产品: 红帽构建的 OptaPlanner
- Version: 8.38
- 下载 红帽构建的 OptaPlanner 8.38 快速入门。
-
提取
rhbop-8.38.0-optaplanner-quickstarts-sources.zip
文件。 -
导航到
org.optaplanner.optaplanner-quickstarts-8.38.0.Final-redhat-00004/use-cases/employee-scheduling
目录。 输入以下命令在开发模式下启动 OptaPlanner employee 调度程序:
$ mvn quarkus:dev
要查看 OptaPlanner 员工调度程序,请在网页浏览器中输入以下 URL:
http://localhost:8080/
- 要运行 OptaPlanner 员工调度程序,请单击 Solve。
- 对源代码进行更改,然后按 F5 键刷新浏览器。请注意,您所做的更改现已可用。