启发式A算法
1. 启发式算法的特点是什么呢
启发式算法的特点是在理论上没有精确的行为的分析,或者可以表明存在很坏的输入,在这些输入上运行很慢
2. 近似算法和启发式算法的区别与联系
在计算机科学与运筹学,近似算法是指用来发现近似方法来解决优化问题的算法。近似算法通常与NP-hard问题相关; 由于不可能有效的多项式时间精确算来解决NP-hard问题,所以一个求解多项式时间次优解。与启发式算法不同,通常只能找到合理的解决方案相当快速,需要可证明的解决方案质量和可证明的运行时间范围。理想情况下,近似值最优可达到一个小的常数因子(例如在最优解的5%以内)。近似算法越来越多地用于已知精确多项式时间算法但由于输入大小而过于昂贵的问题。
启发式算法(heuristic algorithm)是相对于最优化算法提出的。一个问题的最优算法求得该问题每个实例的最优解。启发式算法可以这样定义:一个基于直观或经验构造的算法,在可接受的花费(指计算时间和空间)下给出待解决组合优化问题每一个实例的一个可行解,该可行解与最优解的偏离程度一般不能被预计。现阶段,启发式算法以仿自然体算法为主,主要有蚁群算法、模拟退火法、神经网络等。
3. 启发式算法的最短路径
所谓的最短路径问题有很多种意思, 在这里启发式指的是一个在一个搜寻树的节点上定义的函数h(n),用于评估从此节点到目标节点最便宜的路径。启发式通常用于资讯充分的搜寻算法,例如最好优先贪婪算法与A*。最好优先贪婪算法会为启发式函数选择最低代价的节点;A*则会为g(n) + h(n)选择最低代价的节点,此g(n)是从起始节点到目前节点的路径的确实代价。如果h(n)是可接受的(admissible)意即h(n)未曾付出超过达到目标的代价,则A*一定会找出最佳解。
最能感受到启发式算法好处的经典问题是n-puzzle。此问题在计算错误的拼图图形,与计算任两块拼图的曼哈顿距离的总和以及它距离目的有多远时,使用了本算法。注意,上述两条件都必须在可接受的范围内。
4. 智能计算/计算智能、仿生算法、启发式算法的区别与关系
我一个个讲好了,
1)启发式算法:一个基于直观或经验构造的算法,在可接受的花费(指计算时间和空间)下给出待解决组合优化问题每一个实例的一个可行解,该可行解与最优解的偏离程度不一定事先可以预计。意思就是说,启发式算法是根据经验或者某些规则来解决问题,它求得的问题的解不一定是最优解,很有可能是近似解。这个解与最优解近似到什么程度,不能确定。相对于启发式算法,最优化算法或者精确算法(比如说分支定界法、动态规划法等则能求得最优解)。元启发式算法是启发式算法中比较通用的一种高级一点的算法,主要有遗传算法、禁忌搜索算法、模拟退火算法、蚁群算法、粒子群算法、变邻域搜索算法、人工神经网络、人工免疫算法、差分进化算法等。这些算法可以在合理的计算资源条件下给出较高质量的解。
2)仿生算法:是一类模拟自然生物进化或者群体社会行为的随机搜索方法的统称。由于这些算法求解时不依赖于梯度信息,故其应用范围较广,特别适用于传统方法难以解决的大规模复杂优化问题。主要有:遗传算法、人工神经网络、蚁群算法、蛙跳算法、粒子群优化算法等。这些算法均是模仿生物进化、神经网络系统、蚂蚁寻路、鸟群觅食等生物行为。故叫仿生算法。
3)智能计算:也成为计算智能,包括遗传算法、模拟退火算法、禁忌搜索算法、进化算法、蚁群算法、人工鱼群算法,粒子群算法、混合智能算法、免疫算法、神经网络、机器学习、生物计算、DNA计算、量子计算、模糊逻辑、模式识别、知识发现、数据挖掘等。智能计算是以数据为基础,通过训练建立联系,然后进行问题求解。
所以说,你接触的很多算法,既是仿生算法,又是启发式算法,又是智能算法,这都对。分类方法不同而已。
这次楼主不要再老花了哈!
5. 元启发式算法和启发式算法有什么区别
启发式算法与元启发式算法对区别在于是否存在“随机因素”。 对一个同样的问题,启发式算法(heuristics)只要给定了一个输入,那么算法执行的步骤就固定下来了,输出也因此固定,多次运算结果保持一致。
而元启发式算法(meta-heuristics)里面包括了随机因素,如GA中的交叉因子,模拟退火中的metropolis准则,这些随机因素也使得算法有一定概率跳出局部最优解而去尝试全局最优解,因此元启发式算法在固定的输入下,而输出是不固定的。
启发式算法(Heuristic Algorigthm)是一种基于直观或经验构造的算法,在可接受的花费(指计算时间、计算空间等)给出待解决优化问题的每一实例的一个可行解,该可行解与与最优解的偏离程度一般不可以事先预计。
启发式算法是一种技术,这种算法可以在可接受的计算费用内找到最好的解,但不一定能保证所得到解的可行性及最优性,甚至大多数情况下无法阐述所得解与最优解之间的近似程度。
元启发式算法(MetaHeuristic Algorigthm)是启发式算法的改进,它是随机算法与局部搜索算法相结合的产物,常见的启发式算法包括遗传算法、模拟退火算法、禁忌搜索算法及神经网络算法等。
新兴的元启发式算法有、粒子群优化算法、差分进化算法,蚁群优化算法、萤火虫算法、布谷鸟算法、和声搜索算法、差分进化算法、随机蛙跳算法、细菌觅食算法、蝙蝠算法的算法等。
6. 网格中,各种算法是启发式调度算法,请问一下启发式调度算法是什么意思
你好~
启发式算法:
计算机科学的两大基础目标,就是发现可证明其执行效率良好且可得最佳解或次佳解的算法。而启发式算法则试图一次提供一或全部目标。 例如它常能发现很不错的解,但也没办法证明它不会得到较坏的解;它通常可在合理时间解出答案,但也没办法知道它是否每次都可以这样的速度求解。
有时候人们会发现在某些特殊情况下,启发式算法会得到很坏的答案或效率极差,然而造成那些特殊情况的数据结构,也许永远不会在现实世界出现。因此现实世界中启发式算法很常用来解决问题。启发式算法处理许多实际问题时通常可以在合理时间内得到不错的答案。
有一类的通用启发式策略称为元启发式算法(metaheuristic),通常使用乱数搜寻技巧。他们可以应用在非常广泛的问题上,但不能保证效率。
最后,顾名思义,启发式调度算法就是在调度的过程中使用的启发式算法。
望采纳哈~~谢谢~~
7. 什么是启发式算法
大自然是神奇的,它造就了很多巧妙的手段和运行机制。受大自然的启发,人们从大自然的运行规律中找到了许多解决实际问题的方法。对于那些受大自然的运行规律或者面向具体问题的经验、规则启发出来的方法,人们常常称之为启发式算法(Heuristic Algorithm)。现在的启发式算法也不是全部来自然的规律,也有来自人类积累的工作经验。 驾驶汽车到达某人的家,写成算法是这样的:沿167 号高速公路往南行至阳谷;从阳谷高速出口出来后往山上开4.5 英里;在一个杂物店旁边的红绿灯路口右转,接着在第一个路口左转;从左边褐色大房子的车道进去,就是某人的家。 启发式方法来描述则可能是这样:找出上一次我们寄给你的信,照着信上面的寄出地址开车到这个镇;到了之后你问一下我们的房子在哪里。这里每个人都认识我们——肯定有人会很愿意帮助你的;如果你找不到人,那就找个公共电话亭给我们打电话,我们会出来接你。
8. 有关启发式算法(Heuristic Algorithm)的一些总结
节选自维基网络:
启发法 ( heuristics ,源自古希腊语的εὑρίσκω,又译作:策略法、助发现法、启发力、捷思法)是指 依据有限的知识 (或“不完整的信息”)在短时间内找到问题解决方案的一种技术。
它是一种依据 关于系统的有限认知 和 假说 从而得到关于此系统的结论的分析行为。由此得到的解决方案有可能会偏离最佳方案。通过与最佳方案的对比,可以确保启发法的质量。
计算机科学的两大基础目标,就是 发现可证明其运行效率良好 且可 得最佳解或次佳解 的算法。
而启发式算法则 试图一次提供一个或全部目标 。例如它常能发现很不错的解, 但也没办法证明它不会得到较坏的解 ; 它通常可在合理时间解出答案,但也没办法知道它是否每次都可以这样的速度求解。
有时候人们会发现在某些特殊情况下,启发式算法会得到很坏的答案或效率极差, 然而造成那些特殊情况的数据结构,也许永远不会在现实世界出现 。
因此现实世界中启发式算法很常用来解决问题。启发式算法处理许多实际问题时通常可以在合理时间内得到不错的答案。
有一类的 通用启发式策略称为元启发式算法(metaheuristic) ,通常使用随机数搜索技巧。他们可以应用在非常广泛的问题上,但不能保证效率。
节选自网络:
启发式算法可以这样定义:一个 基于直观或经验构造 的算法, 在 可接受的花费(指计算时间和空间)下给出待解决组合优化问题每一个实例的一个可行解 , 该可行解与最优解的偏离程度一般不能被预计。 现阶段,启发式算法以仿自然体算法为主,主要有蚁群算法、模拟退火法、神经网络等。
目前比较通用的启发式算法一般有模拟退火算法(SA)、遗传算法(GA)、蚁群算法(ACO)。
模拟退火算法(Simulated Annealing, SA)的思想借鉴于固体的退火原理,当固体的温度很高的时候,内能比较大,固体的内部粒子处于快速无序运动,当温度慢慢降低的过程中,固体的内能减小,粒子的慢慢趋于有序,最终,当固体处于常温时,内能达到最小,此时,粒子最为稳定。模拟退火算法便是基于这样的原理设计而成。
求解给定函数的最小值:其中,0<=x<=100,给定任意y的值,求解x为多少的时候,F(x)最小?
遗传算法(Genetic Algorithm, GA)起源于对生物系统所进行的计算机模拟研究。它是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,借鉴了达尔文的进化论和孟德尔的遗传学说。其本质是一种 高效、并行、全局搜索 的方法,能在搜索过程中自动获取和积累有关搜索空间的知识,并 自适应 地控制搜索过程以求得最佳解。
给定一组五个基因,每一个基因可以保存一个二进制值 0 或 1。这里的适应度是基因组中 1 的数量。如果基因组内共有五个 1,则该个体适应度达到最大值。如果基因组内没有 1,那么个体的适应度达到最小值。该遗传算法希望 最大化适应度 ,并提供适应度达到最大的个体所组成的群体。
想象有一只蚂蚁找到了食物,那么它就需要将这个食物待会蚂蚁穴。对于这只蚂蚁来说,它并不知道应该怎么回到蚂蚁穴。
这只蚂蚁有可能会随机选择一条路线,这条路可能路程比较远,但是这只蚂蚁在这条路上留下了记号(一种化学物质,信息素)。如果这只蚂蚁继续不停地搬运食物的时候,有其它许多蚂蚁一起搬运的话,它们总会有运气好的时候走到更快返回蚂蚁穴的路线。当蚂蚁选择的路线越优,相同时间内蚂蚁往返的次数就会越多,这样就在这条路上留下了更多的信息素。
这时候,蚂蚁们就会选择一些路径上信息素越浓的,这些路径就是较优的路径。当蚂蚁们不断重复这个过程,蚂蚁们就会更多地向更浓的信息素的路径上偏移,这样最终会确定一条路径,这条路径就是最优路径。