首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我应该在哪里指定某些规划实体是不可变的?

我应该在哪里指定某些规划实体是不可变的?
EN

Stack Overflow用户
提问于 2012-01-24 07:18:03
回答 1查看 165关注 0票数 0

我正在制作一个(2X2)数独游戏,我需要完成一个难题。这意味着某些数字是不可变的(它们不能移出位置)。

在2X2游戏中,有16个Digit,问题事实是rows,columns和blocks (明白吗?)row是唯一的规划变量。

我将boolean fixed指定为Digit的属性。但是(根据用户指南),我找不到实现它的地方。

怎样才能真正使某些规划实体不可变?

我发现这些方法:

  1. 实现了一个moveFactory,该moveFactory只在不可变的情况下更改row。这个方法是不documented.
  2. If的row不等于fixed_row,破坏一个硬的fixed_row @ValueRangeFromPlanningProperty。让不可变实体具有单个元素的value_range,而可变实体具有排除固定行的列表。对于任何比数独项目更大的项目来说,这似乎是不可持续的,对吧?还有(我的?)所谓的使解决者脱轨的陷阱?

附加问题:方法3是解决诸如时间表问题(将主题教师分配给可能的时间段)之类问题的推荐方法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-24 10:06:12

选项4:固定数字是问题事实:没有@PlanningEntity注释的类的实例。非固定数字是规划实体:具有@PlanningEntity的类的实例。

如果您希望为设计目的重用相同的类:

  1. 是一种定制的MoveFactory方式。编写自定义移动工厂是有文档记录的:只是添加一个if语句来排除更改固定数字的移动。在这种情况下,
  2. 不是一个内建的硬约束,而是一个普通的硬约束,对于这个用例,我不建议这样做。请参阅有关“内置硬constraints"
  3. Overkill,,但它会工作:)

”的手册信息。

备选方案5:https://issues.jboss.org/browse/JBRULES-3359

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8983258

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档