OptaPlanner 轻量级规划调度引擎

OptaPlanner 官网

OptaPlanner是一个约束求解器,它能够对商业资源规划问题进行优化,例如车辆路径规划问题(VRP),雇员排班问题(Employee Rostering),云计算资源调度问题(Cloud Optimization),任务分配问题(Task Assignment),车间调度问题(JSP)和背包问题(Bin Packing)等。许多公司都面临着这样一个调度难题:分配一组有限的资源(员工、资产、时间和金钱)来提供产品或服务。OptaPlanner做的就是提供更有效的规划方案,以提高服务质量并降低成本。

OptaPlanner是一个轻量化、可嵌入的规划引擎,它让普通的Java工程师能够有效地解决优化问题,它还与其他JVM语言(如Kotlin和Scala)兼容。在问题建模方面,OptaPlanner的约束作用在普通的域对象上,且无需键入复杂的数学公式,可以重复使用现有代码。在问题求解方面,OptaPlanner结合了许多复杂的启发式和元启发式算法(如禁忌搜索、模拟退火、逾期接受和变邻域搜索),能够提供非常有效的优化服务

求解问题类型 引擎使用特点 例子
规划问题 主要使用影子变量(shadow variable) 旅行商问题、车辆路径规划问题等路径规划问题
调度问题 较少使用影子变量 护士排班、会议调度、排课问题、考场安排、赛程安排、任务指派、病床分配、车间调度等资源调度问题

plannerExamplesAppScreenshot

猜你喜欢

转载自blog.csdn.net/ejinxian/article/details/118751747