我正在尝试为我的学院开发一个课程表生成软件。显然,这需要大量的约束满足,即我需要满足许多规则,以便生成一系列课程表,确保课程不会冲突。在进行了一些研究并阅读了这篇文章后,我觉得需要在其中使用一些人工智能。现在,我对AI完全是新手。谁能告诉我哪种算法在我这种情况下最有效?
回答:
你可以用于此问题的简单算法是遗传算法(或任何其他进化算法)。使用GA解决这个问题非常简单但却有效。有很多论文和代码已经使用这种方法来解决这个问题。
如果你只有少数规则和约束,你可能想使用精确的直接技术,如带有CSP启发式的回溯来加速,但如果有许多课程和约束,我建议使用遗传算法。