gpt4 book ai didi

Optaplanner : Add/remove constraints dynamically

转载 作者:行者123 更新时间:2023-12-04 12:59:50 27 4
gpt4 key购买 nike

我们可以使用 Java 在 optaplanner 中动态添加/删除约束吗?有没有例子。
我希望允许用户在运行时使用某些 UI 添加或删除此约束。

下面的链接说一些关于它使用流口水的东西。可以用java来完成吗?
how to dynamically add / remove constraints in optaplanner

最佳答案

1) 通常非硬编码约束就足够了。例如,而不是有一个约束说:

  • “当安周五工作时,惩罚”

  • 有:
  • 带有 Employee 和 DayOfWeek 的 DayOfWeekDislike 数据类。
    ** 输入数据有一个实例,员工 Ann 和 dayOfWeek Friday。
  • 有一个约束说:“当有一个 DayOfWeekDislike 并且有一个员工的 ShiftAssignment 到这样一个 DayOfWeek 时,惩罚”

  • 这种方法足以在大多数用例中避免动态约束。请注意,您可以使用 Solver.addProblemFactChange() 实时添加/删除 DayOfWeekDislike 数据。 .

    2) 接下来, @ConstraintConfiguration可以使用 @ConstraintWeight使用 Solver.addProblemFactChange() 实时禁用/启用约束.将约束权重设置为零分以禁用它。

    3)如果1)和2)都失败了,你真的需要动态约束。我还没有看到任何需要走这么远的用例,但我们可以支持它。如果您确实需要这种方法,那么您的用例是什么?

    关于Optaplanner : Add/remove constraints dynamically,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59751860/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com