遗传算法和约束规划的区别?

Posted

技术标签:

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

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

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

提前致谢!

最好的问候。

【问题讨论】:

【参考方案1】:

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

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

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

【讨论】:

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

以上是关于遗传算法和约束规划的区别?的主要内容,如果未能解决你的问题,请参考以下文章

遗传算法混合模拟退火算法求解带约束的流水线调度问题matlab代码

python遗传算法之单/多目标规划问题

python遗传算法之单/多目标规划问题

路径规划基于matlab粒子群和遗传算法求解充电量和时间窗约束下的多AGV路径规划问题含Matlab源码 2399期

TWVRP基于matlab遗传算法求解带时间窗的载重约束外卖配送车辆路径规划问题含Matlab源码 1417期

配送路径规划基于matlab遗传算法求解无人机和货车配送路径规划问题含Matlab源码 361期