算法式和启发式

提出假设就是提出解决问题的可能途径与方案,选择恰当的解决问题的操作步骤,提出假设是问题解决的关键阶段。常用的方式主要有两种:算法式和启发式。它们之间的区别是:

一、算法式

【定义】算法式是把解决问题的所有可能的方案都列举出来,逐一尝试。此种方式虽然可以保证解决问题,但效率不高。其优点是能够保证问题的解决,但费时费力。当问题复杂、问题空间很大时,很难依靠这种策略来解决问题。另外,有些问题也许没有现成的算法或尚未发现其算法,对这种问题算法策略将是无效的。

【例子】例如:行李箱的密码共有3个转钮,每一转钮有0-9十位数字,采用算法策略找出密码打开箱子,就要逐个尝试3个数字的随机组合,比如001,002……等等,直到找到密码为止。

二、启发式

1.爬山法

爬山法是类似于手段—目的分析的一种解题策略。它是采用一定的方法逐步降低初始状态和目标的距离,以达到问题解决的一种方法。这就像登山者,为了登上山峰,需要从山脚一步一步登上山峰一样,所以叫做爬山法。

2.手段目的分析法

【定义】所谓的手段—目的分析就是将需要达到的问题的目标状态分成若干子目标,通过实现一系列的子目标最终达到总目标。手段—目的分析是一种不断减少当前状态与目标状态之间的差别而逐步前进的策略。但有时,人们为了达到目的,不得不暂时扩大目标状态与初始状态的差异,以便最终达到目标。

【特点】为达目标,有时会有迂回状态。

【例子】曲线救国:产生于抗日战争期间,指采取直接的手段不能够解决,比如正面抗击日本侵略军的话,能力不够,就只好采取间接的,效果可能慢一些的,发动军队及以外的各界人士和力量,或者从侧面迂回牵制干扰的策略,一点一点地争取和保卫胜利果实,有时候可能还要放弃一部分已经得到手的东西,但斗争的大方向不变。也就是有时候为了达到目的,不得已扩大与目标的距离。

3.逆向搜索

【定义】逆向搜索又称为目标递规策略。就是从问题的目标状态开始搜索直至找到通往初始状态的通路或方法。例如,人们要去城市的某个地方,往往是在地图上先找到目的地,然后查找一条从目的地退回到出发点的线路。

【适用范围】逆向搜索更适合于解决那些从初始状态到目标状态只有少数通路的问题,一些几何类型问题较适合采用这一策略。

【例子】例如,如果9.1开学,那么我必须在8.31到校,在8.30收拾好行李。

4.类比思维

【定义】当面对某种问题情境时,个体可以运用类比思维,先寻求与此有些相似的情境的解答。

【例子】若A对象具有属性a、b、c、d,且B对象具有属性a、b、c,猜想:B对象具有属性d。类比推理的过程,是从特殊到特殊,由此及彼的过程,可谓“他山之石,可以攻玉”。

三、对比算法式和启发式

假设你的钥匙被忘在了家中的某个地方,你想找到它。

习题

【单选题】数学老师举例“某数加上10,减去7,乘以3,除以5,等于12。这个数是多少”的解题可以从12入手,在从后往前推算的过程中,每一步都是同原来相反的运算,比如原来加的,运算时用减,原来减的,运算时用加;原来乘的,运算时用除……这种解决问题的策略是()。

A.爬山法B.联想法C.逆推法D.类比法

【答案】C。解析:本题考查问题解决的途径。在寻求答案时,存在两种解决问题的途径:算法式和启发式,启发式包括手段目的分析法、爬山法、逆推法、联想法、类比法等。逆推法是指从目标状态出发,考虑如何达到初始状态的问题解决方法。题目中,解题的方法是从结果入手,从后往前推算,因此属于逆推法。C项正确。

A项,爬山法是指采用一定的方法逐步降低初始状态和目标状态的距离,以达到问题解决的一种方法。与题干不符,排除。

B项,联想法是指根据当前的问题,充分联想自己以前解决过的相同或类似的问题,并借助该问题的解决思路来解决当前问题的方法。与题干不符,排除。

D项,类比法是指当面对某种问题情境时,个体可以运用类比思维,先寻求与此有些相似的情境的解答。与题干不符,排除。

THE END
1.启发式算法课程设计理念.docx启发式算法课程设计理念一、教学目标本课程旨在通过启发式算法的学习,让学生掌握基本的算法思想和方法,培养学生的问题解决能力和创新思维能力。具体的教学目标如下:知识目标:使学生了解并理解启发式算法的基本概念、原理和常用算法。技能目标:培养学生能够运用启发式算法解决实际问题,提高学生的编程能力和算法设计能力。情感https://www.renrendoc.com/paper/370548727.html
2.人工智能算法背后的故事:从启发到创新展开 人工智能背后的那些看似神秘的算法,竟然是从大自然的奥秘、科学的启发和人类智慧的碰撞中诞生的?这些算法不仅改变了我们工作的方式,还在悄悄地塑造未来的世界。今天,就让我们一起揭秘,人工智能算法背后的故事,从最初的灵感闪现,到它如何演变成引领创新的核心力量!人工智能算法的灵感常常来自我们日常生活中的平凡https://www.sohu.com/a/839485940_121188207
3.数学建模——启发式算法(模拟退火遗传算法)启发式算法是基于直观或经验构造的算法,在可接受的计算时间和空间条件下,给出待解决优化问题的一个可行https://kaiwu.qboson.com/forum.php?mod=viewthread&tid=431&extra=page%3D1
4.有啥问啥什么是启发式算法(HeuristicAlgorithm)?什么是启发式算法(HeuristicAlgorithm)? 启发式算法是一类在解决复杂问题时利用经验规则和启发式信息进行搜索的算法。这些算法并不保证找到最优解,但在很多情况下能找到一个较好的解,且计算效率较高。启发式算法广泛应用于组合优化、人工智能、搜索问题等领域。 https://blog.csdn.net/mieshizhishou/article/details/140996716
5.经典算法研究系列:八再谈启发式搜索算法编程开发资料库A*搜索算法,作为经典算法研究系列的开篇文章,之前已在本BLOG内有所阐述。 但要真正理解A*搜索算法,还是得先从启发式搜索算法谈起。 毕竟,A*搜索算法也是启发式算法中的一种。ok,切入正题。 一、何谓启发式搜索 启发式搜索算法有点像广度优先搜索,不同的是,它会优先顺着有启发性和具有特定信息的节点搜索下去 https://soft-app.iteye.com/blog/922327
6.什么是启发式搜索?详述启发式搜索的原理?用C语言实现启发式搜索用C语言实现启发式搜索算法。内附代码。 大家好,我是贤弟! 一、什么是启发式搜索? 启发式搜索算法是一种基于经验和启发性信息的搜索算法,它通过评估每个搜索节点的启发性价值来指导搜索方向,从而在搜索空间中找到最优解。 启发式搜索算法可以应用于各种领域,如人工智能、运筹学、计算机视觉等。https://cloud.tencent.com/developer/news/1261429
7.遗传算法原理及其应用.pdf该法效率较低。 用心打造免费、绿色、专业、海量的教育文库网站 本文档来源于第一文库网:/view/9713DE425B686CA 3.html 启发式算法:寻求一种能产生可行解的启发式规则,以找到一个最优解或近似最优 解。此法对每个问题都必须找出其特有的启发式规则,不具有通用性。 https://max.book118.com/html/2021/0226/7161120004003061.shtm
8.基于启发式策略的最短路径算法【摘要】:在讨论经典Dijkstra算法和启发式策略算法(A*,矩形算法等)的基础上,提出一种基于Dijkstra算法的动态方向限制搜索算法用于求解道路网络中两节点之间最短路径.该算法结合人类的搜索思路和动态灵活的处理方式,对最短路径算法的搜索策略进行改进,动态改变搜索限制区域,减少计算时间.该算法不仅可以单独提高计算最短路径https://www.cnki.com.cn/Article/CJFDTotal-HZLG200612001.htm
9.7启发式求解器的软件结构和优化算法到目前为止,我们已经完成了数据模型的建立和处理,以及用算法构建(Konstruktiv)和评估(Evaluation)。前面的章节也提到过,启发式算法构建的解决方案未必是最优解,因此本章我们来讲解如何逐步优化启发式算法提供的解决方案,并把到目前为止已经涉及到的算法和结构体系化。 https://www.jianshu.com/p/d8d5d78b9c8c