1

我正在尝试实施 Drools Planner 来分配时间表。目前,我对 Java 和 JavaBean 设计模式的熟练程度很低,我需要一些简单的练习

是否存在一个AI 优化问题

  1. 已知可以用'X'算法很好地解决
  2. 数据模型适合于以简单的方式在 JavaBean 设计模式中表达
  3. 使用最少数量的额外功能(如规划实体难度)

这样的问题对 Drools Planner 来说是件好事。


我现在正在尝试 N-Queens 问题,这似乎是其中最简单的。所以我正在寻找这个联盟的东西。

4

2 回答 2

1

更新:请参阅CloudBalancingHelloWorld.javaoptaplanner-examples(Drools Planner 已重命名为 OptaPlanner)。

您也可以尝试自己实施ITC2007 课程安排,然后将其与Drools Planner 中示例的源代码进行比较。如果您想保持简单但也想获得不错的结果,请遵循此食谱并选择 First Fit,然后是禁忌搜索。

另一个好主意是加入ITC2011 调度竞赛:它仍然开放到 2012 年 5 月 1 日,与课程安排示例非常相似。

于 2012-01-16T12:08:39.610 回答
0

我正在尝试简单的2X2 数独(生成和求解)。您可以在 Nqueens 代码上对其进行建模。虽然 2x2 数独很容易解决,但 3x3 数独可能会卡住。因此,您可以实施交换动作。

另一个有趣的问题是桶总和。给定 10 个桶,每个桶可以包含 5 个数字和 50 个数字;编写一个程序来分配数字,使每个桶中的数字总和或多或少是偶数。

Bucket Bucket0 3 6 19 16 11  =55
Bucket Bucket1 8 2 5 25 15  =55
...
Bucket Bucket7 3 25 4 16 8  =56
Bucket Bucket8 12 20 12 9 2  =55
Bucket Bucket9 4 9 11 12 20  =56

这具有实际意义,例如在一周内平均分配不同强度的任务。


一些问题的集合: http: //eclipseclp.org/examples/index.html

于 2012-01-20T16:28:43.593 回答