【问题标题】:Difference of Genetic Algorithm and Constraint Programming?遗传算法和约束规划的区别?
【发布时间】:2016-01-13 13:40:23
【问题描述】:

我希望有人能就这个话题对我有所启发。如果这被认为是一个愚蠢的问题,我很乐意立即删除这个问题。

我正在设计一个课程时间表系统,通过研究,我偶然发现了 GA 和约束编程作为解决问题的方法。但是,我不太了解两者之间的区别以及两者之间的优势是什么。我希望有人能用外行的方式向我解释这一点,或者将我引导到有这个主题的网站。

提前致谢!

最好的问候。

【问题讨论】:

    标签: genetic-algorithm constraint-programming


    【解决方案1】:

    这是我对优化算法系列的看法:

    • 精确方法:蛮力、分支和绑定
    • 约束编程(可怕的名字):尝试减少域集
    • 线性规划等:单纯形,...
    • 元启发式:
      • 本地搜索:禁忌搜索、模拟退火、延迟验收、...
      • 基于种群的算法:遗传算法、群体优化……

    对于用例course timetablingITC2007 research competition 清楚地表明本地搜索为王。遗传算法始终略逊一筹,由于可扩展性问题,约束编程毫无用处。您的里程可能与 2007 年的前一段时间非常相似。

    【讨论】:

    • 我明白了。我想我没有研究更多。你能推荐一个更好的算法/方法吗?我真的很感激。谢谢!
    • 我同事的基准测试支持Late Acceptance。请注意,最佳算法取决于您的用例中的特定约束......
    • 我看到了LAHC,看来我可以在基于课程的课程时间表上使用它。有什么想法吗?抱歉问了太多问题。
    • LAHC 很棒 :) 我只是称它为 Late Acceptance,但正式名称确实是 Late Acceptance Hill Climbing。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-04-18
    • 1970-01-01
    • 2011-09-17
    • 1970-01-01
    • 2011-02-22
    • 2015-04-05
    • 1970-01-01
    相关资源
    最近更新 更多