AI用于时间表生成器软件

时间:2014-09-27 07:09:55

标签: c++ artificial-intelligence

我正在为我的大学开发一个时间表生成器软件。显然,它需要大量的约束满足,即我需要满足很多规则才能生成一堆时间表,其中类不会发生冲突。在做了一些研究和阅读this article之后,我觉得我需要在其中使用一些AI。现在,我是AI的全新手。谁能告诉我哪种算法在我的情况下效果最好?

2 个答案:

答案 0 :(得分:1)

您可以用于此问题的最简单的算法是遗传算法(或任何其他进化算法)。使用GA解决这个问题非常简单但有效。有很多论文和代码使用这种方法来解决这个问题。

如果您的规则和约束很少,您可能希望使用精确的直接技术,例如使用CSP启发式回溯来加快速度,但如果有很多类和约束,我建议使用遗传算法。

答案 1 :(得分:1)

嗯,确实不是一项微不足道的任务。像这样的问题非常难以解决。

在这里,我可以向您推荐两件事:

  1. 使用现有的CSP / COP解算器,并用其语言描述您的约束。这些求解器非常好,快速且经过调整,可以开发多年。
  2. 在离散优化领域进行自我教育(在coursera.org上有一个同名的课程,非常棒)。只有在掌握了这些工作原理的基础之后,才能尝试编写自己的求解器。但是让你受到警告!离散优化是痛苦和痛苦:-)。
  3. 这绝不是告诉您CSP / COP如何运作的合适场所。这是一个非常广泛和困难的领域。

    祝你好运!祝你好运!