问题标签 [optaplanner]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
drools - CompositePlanningValueRangeDescriptor.extractValues 中的空指针异常
我在尝试解决我的解决方案时面临 NPE:
我使用以下注释对我的计划实体进行了注释,以从解决方案中的两个列表中收集值范围:
这是解决方案:
奇怪的是,在调试过程中,我发现参数“planningEntity”为空,而不是解决方案中的值。
有没有人遇到同样的问题或知道如何解决这个问题?
谢谢和最好的问候!
PS:这似乎来自方法 initSelectedPlanningValueList:
PSPS:问题解决了。出现问题是因为我忘记将克隆的虚拟属性链接到原始虚拟列表。所以克隆解决方案中的虚拟列表为空。
optaplanner - 当计划变量可以为空时,为什么构造启发式不起作用
我正在尝试使用 optaplanner 5.5.0 为收银员制定时间表。计划实体与护士排班示例 (shiftAssignment) 相同,但计划变量(员工)可以为空(可以有未分配的班次)。所以 TS 工作得很好,但是构造启发式(第一次拟合)什么都不做(因为在我的情况下,我认为所有空值的解决方案是可行的)。我应该怎么做才能使构造启发式工作?
drools - Explanation of Drools Rules in NurseRostering application
I am facing issues in understanding the Drools rules which are implemented in one of the OptaPlanner demo example (NurseRostering application). Can anyone explain how the below rule works :
Are there any resources which states in detail about the explanation of the rules and the way they are implemented? When I check some of the examples online and in some books, i find it pretty easy to understand, however when i check the samples provided in Drools, i am unable to get an idea.
drools - Drools 能否在这个调度项目中提供接近最优的解决方案?
我被分配了一个项目,该项目要求安排(制定时间表)约 30 个资源,每天 2 个班次,为期 6 个月,具有非常复杂的硬约束,例如
- 没有连续的天班
- 对于每个资源:总夜班(和白班)总和,精细分布....SumShifts(Mondays)=SumShifts(Tuesdays)....
- 对于所有资源:SumTotalDayShifts(和夜班)分发
- 无法使用 resource_y 为 day_x 上的各种其他约束(如 resource_a)分配班次。
最初,我决定构建数学模型,对其进行编码并用 GA 求解。然后我发现了 Drools,它看起来很有前途……但有一个学习期。
选择哪种方式?有任何想法吗?
drools - Drools:变量不能在绑定中使用
我得到错误
变量不能在绑定中使用
在以下 Drools 规则代码上
尽管我从另一个问题中找到了这篇文章,但这对我没有多大帮助,因为我需要为所有其他 AppointmentRequests 调用函数getOccupiedSurroundingsValue,因为它们是相关的。
任何帮助表示赞赏。
optimization - OptaPlanner 是否支持对连续变量的优化和约束?
我正在阅读文档中的矛盾内容。
一方面,这段话似乎表明连续的计划变量是可能的:
计划值范围是计划变量的一组可能的计划值。该集合可以是离散的(例如第 1、2、3 或 4 行)或连续的(例如 0.0 和 1.0 之间的任何双精度)。
另一方面,在定义计划变量时,您必须ValueRangeProvider
在字段上指定注释以用于值集:
解决方案实现具有返回集合的方法。该集合中的任何值都是此计划变量的可能计划值。
这两个片段都在文档的同一部分(http://docs.jboss.org/drools/release/latest/optaplanner-docs/html_single/#d0e2518)
那么,它是什么?我可以使用完整double
的作为我的计划变量,还是需要将其范围限制为特定的值Collection
?
查看所提供的实际算法,我没有看到任何真正适合优化连续变量的算法,所以我怀疑它是否可能,但最好能澄清并明确说明。
c++ - 在 c++/c# 中替代 drools-planner/optaplanner?
C++ 或 C# 中的 optaplanner/drools planner 是否有类似的替代方案?我只找到了 2007 年的一个非常古老的 C# 移植。或者你如何解决 C++/C# 中的 NP-hard 优化问题?
drools-planner - 路由异构车队
我知道使用 OptaPlanner 可以解决 VRP 问题。我想知道是否可以使用 OptaPlanner 对异构车队进行路由。
drools - optaplanner 规则无法正确解决
我制定了 optaplanner 规则(见下文)。
optaplanner 在解决问题时,$e1 is not properly chosen.
问题是什么?
请告诉我。谢谢。
optaplanner - VRP 变体,如何修改提供的 VRP 示例
我是 optaplanner 的新手,我正在尝试调整 VRP 示例以解决“类似”问题......但有一些不同之处:
我们有一个中央仓库、n 个客户和一个由一辆或多辆汽车组成的车队。
每个客户都有一定的“最大容量”(并非所有客户都相同)。
每辆车都一样。
问题的初始条件包括:每个客户的“实际容量”和“期望容量”,因此:
实际容量 >=0 且 <= 最大容量
所需容量 >=0 且 <= 最大容量
“实际仓库容量”是仓库可用的物品数量
我们希望重新分配一些项目,以便每个客户都能获得他的“所需容量”。
(通常大多数物品会从一个客户重新分配给另一个客户)
硬约束是不能超过“最大容量”软约束是车辆距离(最小化)和与“所需容量”的差异(最小化)
我首先为具有负客户需求的 VRP 示例生成数据文件(以模拟期望容量 < 实际容量),但很快发现 drl 中总结所有客户需求以满足车辆容量限制的约束并不是我们这里需要的。
¿ 你认为这个问题“足够相似”到值得修改 VRP 示例吗?