13.5. 内置硬性限制


硬约束有时可以构建在内,而不是实现硬约束。例如,在 school timetabling 示例中,如果 Lecture A 不应分配给 Room X,但它使用 Solution 上的 ValueRangeProvider 类,Solver 通常会尝试将其分配给 Room X,以发现它会破坏硬约束。在规划实体或过滤的选择中使用 ValueRangeProvider,以定义 Lecture A 应该只分配与 X 不同的 Room A。

这可在一些用例中获得良好的性能,不仅是因为分数计算速度更快,但大多数优化算法将花费较少的时间评估不良的解决方案。但是,这通常不是个好主意,因为交易短期的好处会带来长期的危害。

  • 许多优化算法依赖于自由在更改计划实体时中断硬限制,而不是利用本地 optima。
  • 这两种实施方法都有限制,如功能兼容性和禁用自动性能优化。
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部