精华内容
下载资源
问答
  • 启发式算法(通俗解释)

    千次阅读 多人点赞 2020-12-09 19:33:26
    群体智能算法就是启发式算法;研究的重点就是如何平衡局部搜索与全局搜索;有效逃离局部最优解;通俗的解释就是利用类似仿生学的原理,将自然、动物中的一些现象抽象成为算法处理相应问题。当一个问题是NP难问题时,...

    定义

    群体智能算法就是启发式算法;研究的重点就是如何平衡局部搜索与全局搜索;有效逃离局部最优解;通俗的解释就是利用类似仿生学的原理,将自然、动物中的一些现象抽象成为算法处理相应问题。当一个问题是NP难问题时,是无法求解到最优解的,因此,用一种相对好的求解算法,去尽可能逼近最优解,得到一个相对优解,在很多实际情况中也是可以接受的。

    举例

    最后用网上一段描述各种搜索算法的例子来作为总结:为了找出地球上最高的山,一群有志的兔子们开始想办法。

    1. 兔子朝着比现在高的地方跳去。他们找到了不远处的最高山峰。但是这座山不一定是珠穆朗玛峰。这就是爬山法,它不能保证局部最优值就是全局最优值。
    2. 兔子喝醉了。他随机地跳了很长时间。这期间,它可能走向高处,也可能踏入平地。但是,他渐渐清醒了并朝他踏过的最方向跳去。这就是模拟退火
    3. 兔子们知道一个兔的力量是渺小的。他们互相转告着,哪里的山已经找过,并组找过的每一座山他们都留 下一只兔子做记号。他们制定了下一步去哪里寻找的策略。这就是禁忌搜索
    4. 兔子们吃了失忆药片,并被发射到太空,然后随机落到了地球上的某些地方。他们不知道自己的使命是什么。但是,如果你过几年就杀死一部分海拔低的兔子, 多产的兔子们自己就会找到珠穆朗玛峰。这就是遗传算法
    5. 一群兔子朝着各处跳去,去了最高处山的兔子发出信号影响周围的兔子朝它跳去。慢慢最高的山去了越来越多的兔子,直到所有兔子全都集中在最高山。这就是蚁群算法
    展开全文
  • 启发式算法

    2020-08-21 14:42:15
    启发式算法 (Heuristic Algorithms) 启发式算法(Heuristic Algorithm) 遗传算法详解(GA) 【优化】遗传算法介绍 优化 | 粒子群算法介绍 启发式算法简介: 人在解决问题时所采取的一种根据经验规则进行发现的方法。...

    参考:
    启发式算法 (Heuristic Algorithms)
    启发式算法(Heuristic Algorithm)
    遗传算法详解(GA)
    【优化】遗传算法介绍
    优化 | 粒子群算法介绍

    启发式算法简介:

    人在解决问题时所采取的一种根据经验规则进行发现的方法。其特点是在解决问题时,利用过去的经验,选择已经行之有效的方法,而不是系统地、以确定的 步骤去寻求答案。启发式解决问题的方法是与算法相对立的。算法是把各种可能性都一一进行尝试,最终能找到问题的答案,但它是在很大的问题空间内,花费大量 的时间和精力才能求得答案。启发式方法则是在有限的搜索空间内,大大减少尝试的数量,能迅速地达到问题的解决。但由于这种方法具有尝试错误的特点,所以也 有失败的可能性。科学家的许多重大发现,常常是利用极为简单的启发式规则。

    群体智能算法就是启发式算法;研究的重点就是如何平衡局部搜索与全局搜索;有效逃离局部最优解;
    近几年比较活跃的算法有如下:
    仿动物类的算法:粒子群优化,蚂蚁优化,鱼群算法,蜂群算法等;
    仿植物类的算法:向光性算法,杂草优化算法,等等;
    仿人类的算法有:和声搜索算法是较好的算法;
    近年开始研究情感计算的人较多。
    实际应用时差分进化算法较有优势。
    关于粒子群算法,理论成熟,应用广泛。

    粒子群算法

    过程:
    在这里插入图片描述
    通过速度更新公式我们可以看出,若需要算法快速收敛,我们需要将加速度常数调大。但是这么做可能会导致算法出现“早熟”。若把惯性权重调大,可增加粒子探测新位置的“积极性”,避免过早陷入局部最优,但也会降低算法的收敛速度。对于有些改进算法,在速度更新公式最后一项会加入一个随机项,来平衡收敛速度与避免“早熟”。并且根据位置更新公式的特点,粒子群算法更适合求解连续优化问题。

    粒子群算法虽然自提出以来就吸引了大量学者的目光,但粒子群算法也存在诸多弊端,如局部搜索能力差,容易陷入局部极值,搜索精度低等

    展开全文
  • 人工智能与信息社会 基于决策树和搜索的智能系统启发式算法 陈斌北京大学gischen@ 启发式算法 在搜索过程中启发式算法被定义成一系列 额外的规则 经验法则 利用一些特定的知识 高手怎么下我也怎么下 北京大学地球与...
  • 启发式算法(Heuristic Algorithm)

    千次阅读 2017-09-03 16:03:14
    启发式算法是什么,常用的启发式算法启发式算法与算法和贪心算法的区别

    启发式算法:利用类似仿生学的原理,将自然、动物中的一些现象抽象成为算法处理相应问题。当一个问题是NP难问题时,是无法求解到最优解的,因此,用一种相对好的求解算法,去尽可能逼近最优解,得到一个相对优解

    群体智能算法就是启发式算法
    研究的重点就是如何平衡局部搜索与全局搜索,有效逃离局部最优解。
    近几年比较活跃的算法有如下:
    仿动物类的算法:粒子群优化,蚂蚁优化,鱼群算法,蜂群算法等;
    仿植物类的算法:向光性算法,杂草优化算法,等等;
    仿人类的算法有:和声搜索算法是较好的算法;
    近年开始研究情感计算的人较多。
    实际应用时差分进化算法较有优势。
    此外,还有爬山法、 禁忌搜索(tabu search,TS)、模拟退火算法和遗传算法(Genetic Algorithm,GA)。像遗传算法、粒子群算法这一类算法某种程度上可以归为启发式算法。

    算法与启发式算法的区别:

    算法直接给你解决问题的指导,而启发式方法则告诉你该如何发现这些指导信息,或者至少到哪里去寻找它们。

    启发式算法的难点是建立符合实际问题的一系列启发式规则。

    启发式算法的优点在于它比盲目型的搜索法要高效,一个经过仔细设计的启发函数,往往在很快的时间内就可得到一个搜索问题的最优解,对于NP问题,亦可在多项式时间内得到一个较优解。

    贪心算法与启发式算法的区别

    对于大多数问题而言纯粹的遍历所有状态总比贪心来的慢,但是贪心得到确切解的前提很苛刻,因此很有可能会得到很烂的解。

    启发式算法则是通过一个启发函数对下一阶段状态进行粗略评估,这个评估是预计结果(并不确信);在遍历状态的过程中,我们优先去看可能可以得到好结果的情况,并且如果发现一个状态的理想估计比当前确实遍历过的解中最好的要差则可以放弃,这就叫启发式算法,这里我们叫确定性启发式算法或者启发式搜索。然而启发式搜索的本质仍旧是遍历所有状态,要保证确定最优解,它仍旧是个遍历,耗时仍然有可能很大。这个情况下加入一条限制:如果计算时间已经到达可承受的极限,则放弃剩下部分的搜索直接以当前找到的最好结果为结果,这样的启发式算法自然是非确定性的,于是可以算作近似算法。



    参考自:

    http://www.cnblogs.com/macula7/archive/2009/05/10/1960821.html

    https://www.zhihu.com/question/27666809/answer/43395837

    https://www.zhihu.com/question/28874818/answer/71957529

    展开全文
  • 启发式算法个人理解

    万次阅读 2016-04-09 17:19:20
    什么是启发式算法转自:p://blog.csdn.net/aris_zzy/archive/2006/05/27/757156.aspx引言: 解决实际的问题,要建模型,在求解。求解要选择算法,只有我们对各种算法的优缺点都很熟悉后才能根据实际问题选出有效的...
    

    什么是启发式算法转自:p://blog.csdn.net/aris_zzy/archive/2006/05/27/757156.aspx

    引言:
    解决实际的问题,要建模型,在求解。求解要选择算法,只有我们对各种算法的优缺点都很熟悉后才能根据实际问题选出有效的算法。但是对各种算法都了如指掌是不现实的,但多知道一些,会使你的选择集更大,找出最好算法的概率越大。现在研一,要开题了些点文献综述,愿与大家分享。大自然是神奇的,它造就了很多巧妙的手段和运行机制。受大自然的启发,人们从大自然的运行规律中找到了许多解决实际问题的方法。对于那些受大自然的运行规律或者面向具体问题的经验、规则启发出来的方法,人们常常称之为启发式算法(Heuristic Algorithm)。现在的启发式算法也不是全部来自然的规律,也有来自人类积累的工作经验。启发式算法的发展:
    启发式算法的计算量都比较大,所以启发式算法伴随着计算机技术的发展,取得了巨大的成就。
    40年代:由于实际需要,提出了启发式算法(快速有效)。
    50年代:逐步繁荣,其中 贪婪算法和局部搜索 等到人们的关注。
    60年代: 反思,发现以前提出的启发式算法速度很快,但是解得质量不能保证,而且对大规
            模的问题仍然无能为力(收敛速度慢)。启发式算法的不足和如何解决方法:
    (水平有限 仅仅提出6点)
    启发式算法目前缺乏统一、完整的理论体系。
    很难解决! 启发式算法的提出就是根据经验提出,没有什么坚实的理论基础。
    由于NP理论,启发式算法就解得全局最优性无法保证。
    等NP?=P有结果了再说吧,不知道这个世纪能不能行。
    各种启发式算法都有个自优点如何,完美结合。
    如果你没有实际经验,你就别去干这个,相结合就要做大量尝试,或许会有意外的收获。
    启发式算法中的参数对算法的效果起着至关重要的作用,如何有效设置参数。
    还是那句话,这是经验活但还要悟性,只有try again………..
    启发算法缺乏有效的迭代停止条件。
    还是经验,迭代次数100不行,就200,还不行就1000…………
    还不行估计就是算法有问题,或者你把它用错地方了………..
    启发式算法收敛速度的研究等。
    你会发现,没有完美的东西,要快你就要付出代价,就是越快你得到的解也就远差。其中(4)集中反映了超启发式算法的克服局部最优的能力。  虽然人们研究对启发式算法的研究将近50年,但它还有很多不足:1.启发式算法目前缺乏统一、完整的理论体系。2.由于NP理论,各种启发式算法都不可避免的遭遇到局部最优的问题,如何判断3.各种启发式算法都有个自优点如何,完美结合。4.启发式算法中的参数对算法的效果起着至关重要的作用,如何有效设置参数。5.启发算法缺乏有效的迭代停止条件。6.启发式算法收敛速度的研究等。
    70年代:计算复杂性理论的提出,NP问题。许多实际问题不可能在合理的时间范围内找到全局最优解。发现贪婪算法和局部搜索算法速度快,但解不好的原因主要是他们只是在局部的区域内找解,等到的解没有全局最优性。
            由此必须引入新的搜索机制和策略………..
            Holland的遗传算法出现了(Genetic Algorithm)再次引发了人们研究启发式算法的
            兴趣。
    80年代以后:
            模拟退火算法(Simulated Annealing Algorithm),人工神经网络(Artificial Neural Network),禁忌搜索(Tabu Search)相继出现。
    最近比较热或刚热过去的:
    演化算法(Evolutionary Algorithm), 蚁群算法(Ant Algorithms), 拟人拟物算法,量子算法等。
    各个算法的思想这就不再详细给出(以后会给出一些,关注我的blog) ,为什么要引出启发式算法,因为NP问题,一般的经典算法是无法求解,或求解时间过长,我们无法接受。这里要说明的是:启发式算法得到的解只是近似最优解(近似到什么程度,只有根据具体问题才能给出). 二十一世纪的最大的数学难题NP?=P,如果NP=P启发式算法就不在有存在的意义。    优胜劣汰是大自然的普遍规律,它主要通过选择和变异来实现。选择是优化的基本思想,变异(多样化)是随机搜索或非确定搜索的基本思想。“优胜劣汰”是算法搜索的核心,根据“优胜劣汰”策略的不同,可以获得不同的超启发式算法。超启发式算法的主要思想来自于人类经过长期对物理、生物、社会的自然现象仔细的观察和实践,以及对这些自然现象的深刻理解,逐步向大自然学习,模仿其中的自然现象的运行机制而得到的。遗传算法:是根据生物演化,模拟演化过程中基因染色体的选择、交叉和变异得到的算法。在进化过程中,较好的个体有较大的生存几率。模拟退火:是模拟统计物理中固体物质的结晶过程。在退火的过程中,如果搜索到好的解接受;否则,以一定的概率接受不好的解(即实现多样化或变异的思想),达到跳出局部最优解得目的。神经网络:模拟大脑神经处理的过程,通过各个神经元的竞争和协作,实现选择和变异的过程。禁忌搜索:模拟人的经验,通过禁忌表记忆最近搜索过程中的历史信息,禁忌某些解,以避免走回头路,达到跳出局部最优解的目的。蚂蚁算法:模拟蚂蚁的行为,拟人拟物,向蚂蚁的协作方式学习。这几种超启发式算法都有一个共同的特点:从随机的可行初始解出发,才用迭代改进的策略,去逼近问题的最优解。他们的基本要素:(1)随机初始可行解;(2)给定一个评价函数(常常与目标函数值有关);(3)邻域,产生新的可行解;(4)选择和接受解得准则;(5)终止准则。

    展开全文
  • 综述了VANETs的特点,并总结了最近提出的基于生物启发式算法的VANET路由协议。重点分析了这些协议的关键特性、优点和缺点。然后还总结了生物启发式算法在VANETs中面临的挑战和未来的发展趋势。
  • 启发式算法介绍

    千次阅读 2019-08-10 16:30:53
    启发式算法(Heuristic Algorithm)有不同的定义:一种定义为,一个基于直观或经验的构造的算法,对优化问题的实例能给出可接受的计算成本(计算时间、占用空间等)内,给出一个近似最优解,该近似解于真实最优解的...
  • 启发式算法(Heuristic)概述

    千次阅读 2020-10-13 10:29:47
    启发式算法(Heuristic)概述 一个启发式的例子。 驾驶汽车到达某人的家,写成算法是这样的:沿167 号高速公路往南行至Puyallup;从South Hill Mall 出口出来后往山上开 4.5 英里;在一个杂物店旁边的红绿灯路口右转...
  • 经典的启发式算法

    千次阅读 2020-05-03 23:09:35
    启发式算法一般用于解决NP-hard问题,其中NP是指非确定性多项式。 启发式算法是相对于最优化算法提出的,是基于直观或者经验构造的算法,在可接受的开销(时间和空间)内给出待解决组合优化问题的一个可行解。 例子...
  • 启发式算法(heuristic)

    千次阅读 2020-12-29 20:06:20
    我认为启发式算法称为「探索式算法」or「经验学习法」更加合适。 有一些不错的说法: 启发式一般又称人工智能算法或全局优化算法。 启发式算法是指具有自学习功能,可利用部分信息对计算产生推理的算法。 … ps:...
  • 启发式算法总结

    万次阅读 多人点赞 2018-08-02 19:22:00
    下面是一些学习到的算法,有些没有具体用到,所以只是概念的解释,方便自己以后回忆。 一、粒子群算法 1.1基本思想 粒子群算法是模拟群体智能所建立起来的一种优化算法,粒子群算法可以用鸟类在一个空间内随机...
  • 启发式算法解TSP问题

    千次阅读 2018-05-30 10:24:03
    一、前言 旅行商问题(TravelingSalesmanProblem,TSP)是一个经典的组合优化问题。经典的TSP可以描述为:一个商品推销员要去若干个城市推销商品,该推销员从一个城市出发,需要...早期的研究者使用精确算法求解该问...
  • 3)介绍了常见的启发式算法及其应用,并重点就模拟退火算法和蚁群算法为代表的启发式算法解决NP类问题进行了讲解和实践。 2 常见最优化问题及其解决方法 2.1下山最优路径问题与梯度下降法 如下图2.1所示,假设有一座...
  • 麻雀搜索算法作为一种启发式算法,模仿了掠夺性活动和麻雀群的逃逸活动,具有更好的收敛性能比其他一些群智能算法要好。
  • 启发式算法区别于盲目搜索算法,是搜索策略的一种。主要特点是 可以利用问题自身的一些特征信息(启发式信息)来指导搜索的过程,从而可以缩小搜索范围,提高搜索效率。 实际上,启发式算法也代表了"大拇指准则"...
  • 用最简单的0-1背包问题(1-0 knapsack problem)来说明穷举法、贪心算法、启发式算法。 0-1背包问题简述: 有一个背包,背包能装的物品重量是有限的,只能装C kg的物品。 现在有N个物品,每个物品都有自己的重量w和...
  • 针对模型特点设计分阶段启发式算法,分为构建初始解、修复可行解和改善优化解三个阶段,通过不断迭代寻求较优解。引用上海航空公司数据进行算例测试,并设计两种不同干扰情景有针对性地加以恢复。结果和手动顺延方案...
  • 启发式算法(heuristic algorithm)是相对于最优化算法提出的。一个问题的最优算法求得该问题每个实例的最优解。也就是说,在允许运行时长足够长的 情况下,确保得到一个最优方案。但是大量重要的ILP和INLP问题,并不...
  • 什么是启发式算法(转)

    千次阅读 2018-04-23 10:11:35
    各个算法的思想这就不再详细给出(以后会给出一些,关注我的blog) ,为什么要引出启发式算法,因为NP问题,一般的经典算法是无法求解,或求解时间过长,我们无法接受。这里要说明的是:启发式算法得到的解只是近似...
  • 机器学习:启发式算法

    千次阅读 2016-03-19 20:17:46
    启发式算法(heuristic algorithm):相对于最优化算法提出的。 一个问题的最优算法求得该问题每个实例的最优解。启发式算法可以这样定义:一个基于直观或经验构造的算法,在可接受的花费(指计算时间和空间)下给出...
  • 常用的启发式算法 什么是启发式算法 定义: 启发式算法一般用于解决NP-hard问题,其中NP是指非确定性多项式。 启发式算法是相对于最优化算法提出的,是基于直观或者经验构造的算法,在可接受的开销(时间和空间)...
  • 启发式算法之一:蝙蝠算法BA

    千次阅读 多人点赞 2019-06-18 14:51:27
    3. 特点 二、蝙蝠 1.描述 2.先进技能-声纳 1) 回声定位-Acoustics of Echolocation 2) 行为参数化分析 3. 技能属性 三、 蝙蝠算法 1.算法模型建立之规则理想化简化 2.算法模型建立之近似值应用 3....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,371
精华内容 6,548
关键字:

启发式算法特点