启发式、元启发式、超启发式

 声明:本文为作者学习笔记,部分材料来源于网上学习,若侵权请联系作者。

目录

启发式(Heuristic)     

元启发式(Metaheuristic)

超启发式(Hyper-heuristic)

超启发式 vs 元启发式 区别

启发式 vs 元启发式 vs 超启发式 三者区别

参考文献


启发式(Heuristic)
     

根据问题特征、求解经验等,在可接受时间内找到一个近似解,它是依赖于问题的,不普遍适用。

     The objective of a heuristic is to produce a solution in a reasonable time frame that is good enough for solving the problem at hand. This solution may not be the best of all the solutions to this problem, or it may simply approximate the exact solution. But it is still valuable because finding it does not require a prohibitively long time.

     Heuristics may produce results by themselves, or they may be used in conjunction with optimization algorithms to improve their efficiency (e.g., they may be used to generate good seed values).

     Results about NP-hardness in theoretical computer science make heuristics the only viable option for a variety of complex optimization problems that need to be routinely solved in real-world applications.

元启发式(Metaheuristic)


     元启发法是用于搜索可能的解决方案的巨大空间以便找到“高质量”解决方案的方法。包括模拟退火、遗传算法、蚁群算法、禁忌搜索、迭代局部搜索、变邻域搜索等等。

      In computer science and mathematical optimization , a metaheuristic is a higher-level procedure or heuristic designed to find, generate, or select a heuristic (partial search algorithm ) that may provide a sufficiently good solution to an optimization problem, especially with incomplete or imperfect information or limited computation capacity.

      Compared to optimization algorithms and iterative methods, metaheuristics do not guarantee that a globally optimal solution can be found on some class of problems. Many metaheuristics implement some form of stochastic optimization, so that the solution found is dependent on the set of random variables generated. In combinatorial optimization, by searching over a large set of feasible solutions, metaheuristics can often find good solutions with less computational effort than optimization algorithms, iterative methods, or simple heuristics. As such, they are useful approaches for optimization problems.

超启发式(Hyper-heuristic)


      超启发式是一种用于选择或生成启发式来解决计算性搜索问题的自动化方法。(原则上)为非专业从业人员提供了“快速原型开发”方法。

      A hyper-heuristic is an automated methodology for selecting or generating heuristics to solve computational search problems. (Hyper-heuristics comprise a set of approaches that aim to automate the development of computational search methodologies.)

      There is an underlying theme to these two clear categories of hyper-heuristics. In both cases a high-level hyper-heuristic operates on a set of heuristics which in turn operate on the solution space. In the case of selection, we are choosing from a set of atomic predefined heuristics. In the case of generation, we are operating on a space of heuristic components.

      In a typical hyper-heuristic framework there is a high-level methodology and a set of low-level heuristics (either constructive or perturbative heuristics). Given a problem instance, the high-level method selects which low-level heuristic should be applied at any given time, depending upon the current problem state (or search stage) determined by features

超启发式 vs 元启发式 区别


     The fundamental difference between metaheuristics and hyper-heuristics is that most implementations of metaheuristics search within a search space of problem solutions, whereas hyper-heuristics always search within a search space of heuristics. Thus, when using hyper-heuristics, we are attempting to find the right method or sequence of heuristics in a given situation rather than trying to solve a problem directly. Moreover, we are searching for a generally applicable methodology rather than solving a single problem instance.

     Hyper-heuristics could be regarded as “off-the-peg” methods as opposed to “made-to-measure” metaheuristics. They aim to be generic methods, which should produce solutions of acceptable quality, based on a set of easy-to-implement low-level heuristics.

启发式 vs 元启发式 vs 超启发式 三者区别


      We differentiate between the terms heuristic, metaheuristic and hyper-heuristic.

A heuristic is a “rule of thumb” offering guidance for finding good solutions according to domain knowledge. Two main types of search heuristics can be distinguished, perturbative or local search heuristics, which operate on fully instantiated candidate solutions, and constructive heuristics which iteratively expand partial candidate solutions.
Metaheuristics are search methodologies that coordinate local search and higher-level strategies to perform a robust search on a solution space and which aim to escape local optima.
Hyper-heuristics are high-level strategies that operate on a search space of heuristics rather than directly on a search space of solutions.
      简单总结一下就是:启发式是依赖问题特定的知识和经验,构建可行解,或者进行局部搜索获得可行解;元启发式是通过对整个解空间进行随机搜索,寻优找到可行解;超启发式是优化问题的启发式空间,在解的启发式空间内搜索,自动选择或者生成启发式方法。

参考文献


[1] Handbook of metaheuristics[M]. Springer Science & Business Media, 2019. (3rd edition)
[2] https://en.wikipedia.org/wiki/Heuristic_(computer_science)
[3] https://en.wikipedia.org/wiki/Metaheuristic

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值