Heuristic :

  【科斯林】

  a heuristic computer program uses rules based on previous experience in order to solve a problem , rather than using a mathematical procedure.

  一个启发式的计算机程序使用基于先前经验的规则去解决问题,而不是使用一个数学化的步骤。

  a heuristic method of learning involves discovery and problem solving , using reasoning and past experience.

  一个启发式的方法涉及到探索和问题解决,使用推理和过去的经验。

  【牛津】

  enabling a person to discover or learn something for themselves

  使一个人能够为自己探索或学习一些东西 

  【朗文】

  the use of experience and practical efforts to find answers to questions or to improve performance .

  使用经验和实际的努力去寻找问题的答案或者是对表现的提升。

---------------------------------------------------------------------------------------------------------------------------------

  综上,通过对启发式Heuristic这个名词的英文释意来看,启发式算法的两个要点:经验的使用和探索。这两者应当是相辅相成的,通过对自身经验的使用而后再去对一些未知的领域、空间进行探索,从而完善该算法。

  熟悉的领域----基于经验                   未知的领域----探索

  通过探索,将未知变为经验。

---------------------------------------------------------------------------------------------------------------------------------

启发式算法的分类:

  1.依据是否属于自然启发的算法:譬如遗传算法、蚁群算法这些从自然中得到灵感的算法属于自然启发类算法;反之,禁忌搜索、局部搜索就属于非自然启发类算法。当面对最近出现的一些杂交算法时,不容易给该算法分类。

  2.基于人口的搜索和单点搜索:利用同一时间启发式算法使用的解的数量来分类。那些一次只能工作于一个解的算法被称为轨迹的方法。

  3.动态或者是静态算法;

  4.单一或多邻居结构;

  5.使用记忆或不使用记忆;

---------------------------------------------------------------------------------------------------------------------------------

Trajectory Methods              轨迹的方法

  1.basic local search : iterative improvement            基本的局部搜索:迭代提升         【类似于抽样的获取最优?】

  基本的局部搜索也被称为迭代提升,因为每一次只有当当前迭代的解比当前解更好,才会发生转移。

  在临近解中进行迭代,使目标函数逐步优化,直至不能再被优化为止。

  局部搜索是指能够无穷接近最优解的能力,全局收敛力是指能够找到全局最优解所在位置的能力。

---------局部搜索算法和初始点的选取有很重要的联系。

  随机选取一定数量的初始点,对每个初始点找到其最优解。而后从这些所有的随机选择的初始点中的最优解中找到最优。

  局部最优,有可能就是全局最优。但是局部最优是否是全局最优是没有什么具体的保证的,也是无法被证明的。

  局部搜索算法的五大要素:

  ·目标函数:用来判断解的优劣

  ·邻域的定义:依据不同的问题,有着不同的邻域定义

  ·初始解的产生规则

  ·新的解的产生规则和接受规则

  ·搜索终止的条件

  2.simulated annealing   模拟退火

  模拟退火的原理:我们将热力学的理论套用到统计学上,将搜寻空间内每一点想像成空气内的分子;分子的能量,就是它本身的动能;而搜寻空间内的每一点,也像空气分子一样带有“能量”,以表示该点对命题的合适程度。算法先以搜寻空间内一个任意点作起始:每一步先选择一个“邻居”,然后再计算从现有位置到达“邻居”的概率。可以证明,模拟退火算法所得解依概率收敛到全局最优解。

  模拟退火过程中温度逐渐降低,同时移动的概率也逐渐降低,从而保证了算法是趋于稳定的。模拟退火选择是随机的移动,有一定概率的跳出局部最优解,找到全局最优;也有一定的概率从全局最优解跳出。

  The fundamental idea is to allow moves resulting in solutions of worse quality than the current solution in order to escape from local minma.The probablity of doing such a move is decreased during the search.

  模拟退火的几大要点:

  ·初始解的寻找

  ·冷却规则 the choice of an apporiate cooling chedule is crucial for the performance of the algorithm.

  ·uphill move的概率和两个解之间目标函数的差值和温度这两个变量相关

  ·温度 temperature should be adapted to the particular problem instance.

  

  3.禁忌搜索 tabu search

  TS explicitly uses the history of the search ,both to escape from local minma and to implement an explorative strategy.

  简单禁忌搜索的算法流程:

  s  <-  GenerateInitialSolution()

  TabuList <- 空集

  while termination conditions not met do

    s <- ChooseBestOf( N(s)\TabuList )

    Update(TabuList)

  endwhile

   禁忌列表的使用阻止从最近访问的解中返回,因此它阻止了死循环的出现并且迫使搜索接受uphill moves【这个和模拟退火中的那个一样】。禁忌列表的长度控制着搜索过程中的记忆。禁忌列表的长度越短,搜索将会注重于在较小的区域内进行搜索;相反,禁忌列表的长度越长,将会趋使搜索进程探索更大的范围。

  However ,the implementation of short term memory as a list that contains complete solutions is not practical ,because managing a list of solutions is highly ineffecient.Therefore , instead of the solutions themselves , solution attributes are stored.

  在禁忌列表中存储解的一些属性而非解本身,相对来说是更加的高效。但是这个导致了一些信息的丢失,比如禁止一个属性值有可能被禁止的不仅仅是一个解,这样就有可能会将那些有着高质量的解排除在外。为了克服这个问题,aspiration criteria 【蔑视规则】被定义允许那些已经存在于禁忌列表中的解被包括到允许解的集合中。

  4.探索性的局部搜索方法

  4.1 greedy randmized adaptive search procedure 贪婪的随机适应搜索步骤

  GRASP 是一个迭代的步骤,由两部分组成:解的建设和解的提升【solution construction and solution improvement】。

  第一阶段,解的建设机制有两个主要的特点:动态的启发式建设和随机。假设一个解s是由一个集合的子集元素构成,这个解s一步一步的每次添加一个解逐步构成。下一个元素的选择是通过从候选列表中随机选出。候选列表中的元素按照一定的启发式规则进行排序,即判断该元素插入当前的部分解是否有效,利用一个函数给出这种有效程度的模拟,利用函数的返回值的大小进行排序。

  候选表中存储的是α个解,取决于该启发式算法对偏差的控制能力。当α=1,也就是说智能是最好的解才会被加入到候选表中,也就等价于一个贪婪的启发式算法;当α=n时,解的建设将会完全随机。因此,α的大小是一个影响搜索空间取样的参数【critical parameter】

  第二阶段,解的提升,就是一个局部搜索算法。

  如果满足下列两个条件,GRASP算法就能够时很高效的:

  ·解的建设机制在搜索空间中最令人信服的解中取样

  ·通过建设性的启发式建设的解属于不同局部最小解的吸引盆地【basins of attraction of different locally minimal solutions】

  

  4.2 variable neighborhood search 可变邻居搜索

  动态改变邻居的结构。 The algorithm is very general and  many degrees of freedom exist for designing variants and particulat instantiations.

  VNS的主循环由三个阶段组成:shaking 【抖动】、local search  和  move。

  shaking        ------当前解的第k个邻居被随机选中  --> 得到 s*

  local search ------从被选择的邻居开始作为局部搜索的起点    -->得到s**

  move            ------比较s**和s【函数来比较判断取舍】,选择最优者然后move

  这三个阶段,循环直至遇到终止条件。

  

  4.3领导的局部搜索 guided local search          the features of the solution that guide the local search

  dynamically change the objective function---- 动态的改变目标函数

  The basic GLS is to help the search to gradually move from local minima by chaging the search landscape.The mechanism used by the GLS is based on the solution features , which may be kind of properties or characteristics that can be used to discreminate between solutions.

  特征 、每个特征再给分配一定的权重。从而达到动态改变目标函数的目的。

  f* = f + λ * Σ pi * Ii(s)                   if feature i is present in solution s   Ii(s) =1   else  Ii(s)=0

  pi  are called penalty parameters and λ is called the regularization parameter.

  pi weight the importance of the features ; the regularization parameter balances the relevance of features with respect to the orginal objective function.

  4.4 iterated local search        迭代局部搜索   ----最具代表性的探索性策略

  perturbation ----- 对局部搜索得到的局部最优解的忧虑

  当这个忧虑太弱,依旧是无法逃离局部最优的困扰;太强,则会让这个算法表现的和一个随机重新开始的局部搜索算法一样。

  在得到一个局部最优的时候,“思考一下”是否应该选择该局部最优解作为最终的全局最优解---忧虑。忧虑的时候,再利用局部搜索得到一个忧虑后的解,判断这个解和原先的解的好坏决定选择哪个。

  基于种群的方法   population-based methods

  5.1 进化计算 evolutionary computation

  

转载于:https://www.cnblogs.com/dreammaker-K/p/8830433.html

启发式算法 Heuristic相关推荐

  1. 启发式与元启发式算法

    启发式算法(Heuristic Algorigthm)是一种基于直观或经验构造的算法,在可接受的花费(指计算时间.计算空间等)给出待解决优化问题的每一实例的一个可行解,该可行解与与最优解的偏离程度一般 ...

  2. 启发式算法与元启发式算法的区别

    启发式算法 启发式算法(Heuristic Algorigthm)是一种基于直观或经验构造的算法,在可接受的花费(指计算时间.计算空间等)给出待解决优化问题的每一实例的一个可行解,该可行解与与最优解的 ...

  3. 启发式算法求解混合整数线性优化问题—— 生产计划安排和资源分配

    问题描述和范围限定: 生产计划安排分为两种:静态和动态计划. 静态计划生成的时间距离实际生产时间较长,以假设所有预设条件都满足为前提,在给定优化目标下(比如最小延迟,最低库存金额,etc.)寻找最优计 ...

  4. matlab启发式算法

    启发式算法 (Heuristic Algorithm) 是一种基于直观或经验的局部优化算法.. 启发式算法的定义: 人们常常把从大自然的运行规律或者面向具体问题的经验和规则中启发出来的方法称之为启发式 ...

  5. 启发式算法的简要总结

    学生一枚,在网上学习的过程中发现CSDN.博客园.知乎上的一些文章被一些人抄来抄去,个人觉得很没意思:有些代码对初学者很不友好,因为门槛很高,例如,我本意是要学习某个库的接口函数A,结果搜到的代码给我 ...

  6. 启发式算法和元启发式算法

    启发式算法(Heuristic Algorigthm): 是一种基于直观或经验构造的算法,在可接受的花费(指计算时间.计算空间等)给出待解决优化问题的每一实例的一个可行解,该可行解与与最优解的偏离程度 ...

  7. 启发式算法 元启发式算法 超启发式算法 区别 是什么

    启发式算法 (Heuristic Algorithms) 是基于直观或经验构造的算法,在可接受的花费 (指计算时间.占用空间等) 下给出待解决组合优化问题每一个实例的一个可行解,该可行解与最优解的偏离 ...

  8. AI算法领域常用的39个术语(上)

    2019-12-10 15:05:02 算法是人工智能(AI)核心领域之一. 本文整理了算法领域常用的39个术语,希望可以帮助大家更好地理解这门学科. 1. Attention 机制 Attentio ...

  9. 反向非归零编码_(宏)基因组编码基因预测

    基因预测是指通过对组装的基因组序列进行分析,根据已知生物的基因结构知识或数据库序列来识别其所包含的基因等功能区域.编码基因预测,就是识别基因组序列上所包含的蛋白质编码区域(Coding sequenc ...

  10. 割平面法只能求解纯整数规划吗_离散规划 解法

    有限离散规划 可列离散规划 枚举法 Hahaha 图搜索枚举 2color 树搜索枚举 深度优先 广度优先 最大最小 蒙特卡洛 分支定界 剪枝 (混合)整数线性规划 MILP 三维整数规划 MILP ...

最新文章

  1. java length 使用方法 例题_java.util.BitSet.length()方法实例
  2. 清除window 系统中的垃圾文件-转
  3. could not initialize proxy - no Session
  4. 数据结构:线性数据结构(4)-列表(栈,队列,deques, 列表)
  5. 在程序员面前千万不要说这9句话,我一个同事就死的很惨!
  6. 【NIO】之IO和NIO的区别
  7. 开启和关闭wifi的代码段
  8. Java并发编程-synchronized底层原理
  9. vue 上下滚动的菜单_vue实现广告栏上下滚动效果
  10. ORACLE 建库过程总结
  11. iPhone的Push(推送通知)功能原理浅析
  12. generator.xml mysql_generatorConfig-mysql.xml中连接数据库的正确书写方式。
  13. T分布和T检验的理解,Python代码实现T检验的计算
  14. Ubuntu16.04+VMware15.0.4系统瘦身
  15. PowerBuilder方式下图像存储功能的研究
  16. k3s 离线部署指南
  17. MIST浏览器不能连接私有链
  18. navicat随手记
  19. js移动手机号码验证
  20. yarn Integrity check failed ... computed integrity doesn‘t match our records

热门文章

  1. java openoffic linux_Linux操作系统下安装Openoffice3.2
  2. 性能强大的家庭服务器,家庭服务器解决方案——硬件篇
  3. 一个简单的跑酷引擎-------bibibibi
  4. 对QQ保镖检测结果的几点疑问
  5. 技术设计的任务是将功能原理方案得以具体化
  6. centos7通过startx后进入图形界面,使用eog命令提示unable to open display
  7. 遍历文件夹进行点云格式转换 PCD转BIN BIN转PCD PCD转TXT TXT转PCD PLY转PCD
  8. 2021年末大盘点。IT行业那些薪资高前景好的岗位,你知道几个?
  9. 数字图像处理:实验八 遥感图像增强
  10. mac上解决Resource temporarily unavailable