超启发式算法(hyper heuristic)

简介

超启发式算法是新近提出的一类解决复杂优化问题的概念模型。该模型主要通过一种高层次启发式策略(High-level Heuristic,简称 HLH)管理和操纵一系列低层次启发式(Low-level Heuristics,简称 LLH)方法以实现在解空间中的寻优。
作为一种有效的搜索方法,超启发式算法可以自动选择、组合或生成多个简单的 LLH 方法以解决复杂的优化问题。
超启发式算法与传统的启发式方法最主要的区别在于它搜索的是启发式算法,而不是问题的解,并通过搜索过程得到的相关信息控制搜索过程。在组合优化领域,超启发式算法被描述为“搜索启发式算法的启发式算法”。给定一个问题实例和一些底层启发式算法集,高层算法就可以在算法搜索过程中,在相应的决策点做出恰当的“指挥”,从而选择并应用最合适的低层启发算法,而选择出来的算法将被直接用于问题的求解。

分类

根据搜索空间的性质的不同进行分类
由上文可知,超启发式算法搜索的不是问题的解,而是求解问题所使用的一些启发式方法。这些启发式算法也被称作低层启发式算法,根据他们的性质的不同,分成建设型扰动型两种方式。
其中,建设型是指从现有的启发式中选择合适的进行利用;
扰动型是指从现有的启发式方法中的某些部分进行扰动,从而产生出新的启发式方法。

根据信息反馈方式的不同进行分类。主要包括在线信息反馈,离线信息反馈和不反馈三种方式。
(1)在线信息反馈:在算法正在运行的过程中,低层算法的表现被实时地反馈给高层策略,然后根据高层策略进行评定哪些低层算法最适合在当前使用。
(2)离线信息反馈:将实例集合分为训练实例和待求解实例两部分,训练实例主要用于积累LLH的历史信息,而待求解实例则可以根据这些历史信息来决定LLH的取舍。
(3)信息反馈:在处理的过程中,信息不进行传递。

按照高层策略的不同进行分类,参考Hyperheuristics: Recent Developments一文
(1)高层策略为随机选择:从给定的低层算法池中随机选择一个,或者选择一些进行组合,形成新的算法。
(2)高层策略为贪心机制:算法每次都挑选那些能够最大化改进当前解的低层启发式算法来构造新的算法。缺点在于每次挑选时需要对所有的低层算法进行评估,工作量巨大,因此这种方法效率较低。
(3)高层策略为元启发式算法:元启发式算法的研究已经有诸多成熟的成果,超启发式的现有研究中,选择元启发式算法作为高层策略的研究比较多,例如禁忌搜索、遗传算法、蚁群算法等。染色体的基因是调度的优先规则,规则组成了启发式集,目的是找到这些启发式的最优应用顺序。
(4)高层策略为基于学习的:超启发式运用各种技术来学习低水平启发式的历史表现。 超启发式根据在其运行的早期阶段(或在以前的运行中)积累的关于每个低级别启发式的有效性的信息,在每个决策点选择一个有前途的低级别启发式)。
(5)其他

LLH 策略与方法

作为超启发式算法框架的重要组成部分,LLH 方法是 HLH 策略管理和操纵的主要对象。过于复杂的 LLH 方法将会导致算法复杂度的提升,进而影响超启发式算法的整体性能。因此,对于 LLH 方法的选择和设计,其最主要的原则是简单且易于实现。

HLH 策略与方法

HLH 策略对超启发式算法有着重要的影响,合适的 HLH 策略将极大提高算法性能。
算法的高层启发式策略,包括选择策略和解的接受准则两个部分。可用的 LLH 选择方法包括简单随机、选择函数、禁忌搜索和强化学习等,而移动接受策略则包括仅改进、任何移动、Metropolis 条件、模拟退火、延迟和Naive等。

参考文献

基于超启发式算法的复杂多技能资源受限项目调度问题研究_朱磊、基于Q_学习的超启发式模型及算法求解多模式资源约束项目调度问题_崔建双
Hyperheuristics: Recent Developments

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值